All functions:
  Elements:
  - 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*::GetObjectClass
    - JNIEnv*::DeleteLocalRef
    - assert
    - JNIEnv*::GetMethodID
    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:
    - LOGE
    - malloc
    - AttachCurrentThread
    - gf_th_id
    - memset
    - gpac_jni_set_java_env
    - pthread_setspecific
    - pthread_getspecific
    - 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::NewStringUTF
    - JavaEnvTh*::env::CallVoidMethod
    - JavaEnvTh*::env::PopLocalFrame
    - JavaEnvTh*::env::PushLocalFrame
    - 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_new_defaults
    - gf_sc_set_size
    - gf_log_set_callback
    - gf_filter_get_udta
    - gf_file_exists
    - gf_fopen
    - GF_LOG
    - gf_fs_set_ui_callback
    - gf_sys_init
    - gf_log_set_tools_levels
    - gf_set_progress_callback
    - gf_sc_set_option
    - strcmp
    - gf_fs_load_filter
    - gf_opts_get_key
    - gf_opts_set_key
    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: gf_strlcpy
      Src: /src/gpac/applications/gpac_android/src/main/jni/gpac_jni.cpp:271,1
    - Dst: gf_strlcat
      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: gf_strlcat
      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:
    - LOGE
    - gf_sys_set_android_paths
    - JNIEnv*::ReleaseStringUTFChars
    - JNIEnv*::GetStringUTFChars
    - malloc
    - gf_fs_del
    - gf_dir_exists
    - show_message
    - gf_sc_user_event
    - gpac_init_gui
    - free
    - memset
    - gf_strlcat
    - gf_strlcpy
    - JNIEnv*::NewGlobalRef
    - gf_opts_set_key
    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_fs_del
    - gf_fs_abort
    - GF_LOG
    - 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
    - gpac_uninit
    - JavaEnvTh*::env::DeleteGlobalRef
    - gpac_jni_get_env
    - free
    - gf_opts_set_key
    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:
    - JNIEnv*::ReleaseStringUTFChars
    - malloc
    - gpac_main
    - stop_logger
    - gf_opts_set_key
    - gf_log_set_callback
    - memcpy
    - gf_sc_user_event
    - JNIEnv*::GetStringUTFChars
    - start_logger
    - gpac_uninit
    - strnicmp
    - mp4box_main
    - strlen
    - realloc
    - GET_GPAC_JNI
    - free
    - memset
    - gpac_init_gui
    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:
    - gf_sc_frame_was_produced
    - GET_GPAC_JNI
    - gf_sc_invalidate_next_frame
    - gf_fs_run
    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:
    - memset
    - GET_GPAC_JNI
    - 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:
    - memset
    - GET_GPAC_JNI
    - translate_key_to_gpac
    - gf_sc_user_event
    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:
    - read
    - show_message
    - fwrite
    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:
    - fopen
    - pthread_detach
    - pthread_create
    - setvbuf
    - dup2
    - pipe
    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:
    - fflush
    - gf_sleep
    - close
    - fclose
    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:
    - sprintf
    - vsprintf
    - gf_log_tool_name
    - fflush
    - show_message
    - vsnprintf
    - va_end
    - __android_log_vprint
    - vfprintf
    - va_copy
    - realloc
    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::NewStringUTF
    - JavaEnvTh*::env::CallVoidMethod
    - JavaEnvTh*::env::PopLocalFrame
    - JavaEnvTh*::env::PushLocalFrame
    - 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:
    - on_progress_cbk
    - GF_LOG
    - gf_sc_navigate_to
    - JavaEnvTh*::env::CallVoidMethod
    - show_message
    - gf_sc_is_supported_url
    - gpac_jni_get_env
    - gf_error_to_string
    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:
    - DetachCurrentThread
    - memset
    - gf_free
    - pthread_setspecific
    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*::RegisterNatives
    - LOGE
    - JNIEnv*::FindClass
    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:
    - pthread_key_delete
    - LOGW
    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:
    - LOGE
    - jniRegisterNativeMethods
    - pthread_key_create
    - JavaVM*::GetEnv
    - LOGW
    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_print_arg
    - gf_sys_format_help
    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:
    - fprintf
    - sprintf
    - gf_sys_get_rti
    - gf_sys_clock
    - gf_sc_get_time_in_ms
    - gf_sc_get_fps
    - gf_sc_user_event
    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:
    - fprintf
    - gf_sc_set_speed
    - 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:
    - fprintf
    - do_set_speed
    - gf_sc_switch_quality
    - gf_assert
    - gf_sc_set_option
    - switch_bench
    - gf_sc_get_option
    - gf_sc_set_speed
    - gf_fatal_assert
    - print_time
    - gf_sc_user_event
    - gf_sc_scene_update
    - gf_sc_toggle_addons
    - sensor_start
    - gf_sc_navigate_to
    - gf_set_progress
    - strlen
    - gf_error_to_string
    - gf_sc_set_size
    - GF_LOG
    - gf_sc_is_supported_url
    - sensor_stop
    - gf_sc_get_time_in_ms
    - gf_sc_get_fps
    - set_window_caption
    - gf_read_line_input
    - sensor_create
    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:
    - fprintf
    - gf_getch
    - gf_sc_get_option
    - gf_sc_set_option
    - gf_error_to_string
    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:
    - vsnprintf
    - update_rti
    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:
    - fprintf
    - gf_log_set_tool_level
    - gf_fclose
    - gf_log_set_callback
    - gf_fopen
    - GF_LOG
    - gf_sys_clock_high_res
    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:
    - atof
    - FLT2FIX
    - get_u32
    - stricmp
    - strcmp
    - get_s32
    - sscanf
    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_opts_set_key
    - sprintf
    - fprintf
    - gf_sys_get_rti
    - init_rti_logs
    - gf_filter_get_udta
    - gf_opts_discard_changes
    - gf_sys_clock
    - gf_sc_set_option
    - carbon_set_hook
    - update_rti
    - gf_opts_get_key
    - gf_sc_connect_from_time
    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:
    - gf_sc_get_url
    - do_set_speed
    - mp4c_take_screenshot
    - gf_sc_set_option
    - set_navigation
    - gf_sc_dump_scene
    - gf_sc_set_viewpoint
    - switch_bench
    - gf_sc_get_selected_text
    - gf_sc_user_event
    - gf_sc_scene_update
    - gf_sc_toggle_addons
    - gf_sc_get_world_info
    - gf_sc_get_simulation_frame_rate
    - gf_sc_has_text_selection
    - mp4c_handle_prompt
    - gf_sc_add_object
    - gf_sc_navigate_to
    - gf_sc_get_viewpoint
    - gf_list_new
    - get_gui_cmd
    - gf_list_del
    - gf_sc_paste_text
    - gpac_open_urls
    - gf_sc_get_current_service_id
    - memset
    - gf_sc_connect_from_time
    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:
    - close_console
    - gf_fclose
    - gf_free
    - mp4c_coverage
    - carbon_remove_hook
    - sensor_stop
    - update_rti
    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_sc_disconnect
    - gf_free
    - gf_sc_get_url
    - gf_sc_get_option
    - gf_sc_select_service
    - gf_strdup
    - update_rti
    - gf_sc_play_from_time
    - gf_sc_scene_update
    - gf_sc_connect_from_time
    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:
    - fprintf
    - init_rti_logs
    - gf_log_modify_tools_levels
    - mp4c_take_screenshot
    - gf_sc_set_option
    - set_navigation
    - mp4c_print_help
    - gf_sc_dump_scene
    - gf_sc_disconnect
    - gf_sc_get_option
    - gf_log_get_tools_levels
    - print_time
    - gf_sc_scene_update
    - fflush
    - strnicmp
    - strrchr
    - get_gui_cmd
    - gf_error_to_string
    - gf_free
    - scanf
    - stricmp
    - gf_sc_get_time_in_ms
    - set_window_caption
    - gf_sc_play_from_time
    - gf_sc_connect_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:
    - fprintf
    - sprintf
    - gf_fclose
    - scanf
    - gf_sc_get_screen_buffer
    - gf_malloc
    - gf_free
    - gf_fopen
    - gf_img_png_enc
    - gf_sc_get_offscreen_buffer
    - gf_sc_get_option
    - gf_sc_release_screen_buffer
    - gf_net_get_utc
    - gf_file_delete
    - gf_fwrite
    - gf_error_to_string
    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:
    - CloseHandle
    - Process32Next
    - Process32First
    - 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:
    - OpenProcess
    - CloseHandle
    - GetModuleFileNameEx
    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:
    - getProcessName
    - getParentPID
    - GetModuleHandle
    - ShowWindow
    - GetConsoleWindow
    - GetProcAddress
    - GetCurrentProcessId
    - strstr
    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_localized
    - gf_sys_format_help
    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:
    - fprintf
    - gf_modules_load_by_name
    - gf_modules_get_file_name
    - gf_sys_format_help
    - gf_modules_count
    - gf_modules_close_interface
    - gf_sys_print_arg
    - strncmp
    - gf_opts_set_key
    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_opts_get_key_count
    - gf_sys_localized
    - gf_opts_get_key_name
    - gf_sys_format_help
    - 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:
    - gf_gpac_version
    - gf_opts_get_key_count
    - gf_sys_format_help
    - gf_gpac_copyright_cite
    - gf_sys_print_arg
    - gpac_alias_help
    - gf_sys_print_core_help
    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_print_arg
    - gf_sys_localized
    - gf_sys_format_help
    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_sys_localized
    - gf_opts_get_filename
    - gf_sys_format_help
    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_localized
    - gf_sys_format_help
    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_gpac_version
    - gf_url_concatenate
    - strchr
    - gf_fs_get_filter_register
    - gf_cfg_del_section
    - gf_dynstrcat
    - gf_cfg_get_key
    - gf_opts_get_bool
    - gf_fs_new
    - gf_cfg_del
    - gf_cfg_force_new
    - strcmp
    - gf_free
    - gf_fs_del
    - gf_sys_format_help
    - gf_cfg_set_key
    - gf_strdup
    - gf_opts_get_filename
    - gf_fs_filters_registers_count
    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_sys_word_match
    - GF_LOG
    - gf_opts_get_key_count
    - gf_opts_get_key_name
    - gf_sys_get_options
    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_word_match
    - gf_props_get_description
    - GF_LOG
    - gf_opts_get_key_count
    - gf_opts_get_key_name
    - gf_sys_get_options
    - gf_sys_format_help
    - gf_fs_get_filter_register
    - strcmp
    - gf_opts_get_key
    - gf_fs_filters_registers_count
    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_sys_word_match
    - sprintf
    - strchr
    - gf_free
    - gf_malloc
    - gf_fs_get_filters_count
    - GF_LOG
    - gf_cfg_get_key_count
    - gf_cfg_get_key_name
    - strcmp
    - gf_cfg_get_key
    - gf_opts_get_bool
    - strlen
    - strstr
    - gf_fs_get_filter_stats
    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
    - gpac_suggest_filter_arg
    - GF_LOG
    - gf_cfg_del
    - gf_url_concatenate
    - gf_cfg_new
    - gf_opts_get_filename
    - gf_fs_enum_unmapped_options
    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_codecid_name
    - gf_sys_format_help
    - gf_props_dump_val
    - gf_props_4cc_get_name
    - gf_4cc_to_str
    - 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:
    - strchr
    - gf_sys_format_help
    - gf_props_get_type_name
    - strcmp
    - gf_sys_print_arg
    - memset
    - strstr
    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_sys_word_match
    - fprintf
    - gf_filter_get_name
    - print_filter_arg
    - gf_filter_get_args
    - strcmp
    - strstr
    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_count
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - 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: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2016,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2017,1
    - Dst: gf_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:
    - fprintf
    - gf_list_count
    - gf_filter_get_author
    - gf_filter_get_description
    - gf_filter_get_help
    - gf_filter_get_version
    - gf_list_add
    - strstr
    - strchr
    - print_filter_arg
    - gf_fopen
    - dump_caps
    - get_filter_class
    - gf_list_get
    - gf_list_insert
    - gf_strcpy
    - strcmp
    - strlen
    - gf_filter_get_caps
    - sprintf
    - gf_fclose
    - gf_strcat
    - exit
    - gf_filter_get_args
    - gf_sys_format_help
    - gf_filter_get_class_hint
    - gf_strdup
    - strncmp
    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:
    - strnicmp
    - tolower
    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: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2126,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_file_ext_start
    - print_filter
    - gf_filter_get_description
    - gf_sys_format_help
    - gf_fs_load_filter
    - strcmp
    linkageType: ''
    returnType: Bool
    signature: Bool jsinfo_enum(void *cbck, char *item_name, char *item_path, GF_FileEnumInfo
      *file_info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2146,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2147,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_enum_directory
    - gf_strcat
    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_list_count
    - sprintf
    - gf_fclose
    - feof
    - gf_free
    - gf_fgets
    - gf_file_exists
    - gf_fopen
    - gf_list_pop_front
    - gf_list_del
    - gf_fwrite
    - gf_dynstrcat
    - gf_fprintf
    - strlen
    - gf_list_pop_back
    - strstr
    - strncmp
    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: gf_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: gf_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: memcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2372,1
    - Dst: gf_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: gf_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:
    - strlwr
    - gpac_suggest_filter
    - gf_file_basename
    - strstr
    - gf_enum_directory
    - gf_opts_set_key
    - strchr
    - print_filter
    - print_filter_single_opt
    - gf_log_set_tools_levels
    - patch_mkdocs_yml
    - gf_fs_get_filter_register
    - gf_filter_get_register
    - memcpy
    - gf_strcpy
    - gf_file_ext_start
    - gf_opts_default_shared_directory
    - strrchr
    - strcmp
    - gf_fs_load_filter
    - strlen
    - gf_free
    - gf_strcat
    - GF_LOG
    - gf_sys_format_help
    - strstr_nocase
    - gf_strdup
    - memset
    - gf_opts_get_key
    - strncmp
    - gf_fs_filters_registers_count
    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:
    - fprintf
    - gf_props_sanity_check
    - GF_4CC
    - strcmp
    - strlen
    - gf_props_4cc_get_name
    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: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2539,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2540,1
    - Dst: gf_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: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2574,1
    - Dst: gf_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:
    - gf_cicp_color_primaries_name
    - gf_strnistr
    - gf_props_get_description
    - gf_audio_fmt_enum
    - gf_pixel_fmt_all_names
    - gf_stream_types_enum
    - gf_pixel_fmt_enum
    - gf_props_enum_all_names
    - gf_strcpy
    - gf_sys_word_match
    - gf_cicp_color_matrix_name
    - gf_audio_fmt_all_shortnames
    - gf_pixel_fmt_all_shortnames
    - gf_audio_fmt_all_names
    - gf_audio_fmt_cicp_enum
    - strcmp
    - strlen
    - gf_codecid_enum
    - gf_pixel_fmt_to_qt_type
    - gf_strcat
    - gf_props_type_is_enum
    - gf_sys_format_help
    - gf_props_get_type_desc
    - gf_props_get_type_name
    - gf_cicp_color_transfer_name
    - gf_4cc_to_str
    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_audio_fmt_cicp_enum
    - gf_sys_format_help
    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: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2841,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2842,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2843,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2844,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2845,1
    - Dst: gf_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: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac_help.c:2906,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2907,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac_help.c:2908,1
    - Dst: gf_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:
    - gf_list_count
    - gf_codecid_mime
    - gf_codecid_type
    - gf_list_add
    - strchr
    - gf_fs_check_filter_register_cap
    - gf_list_find
    - gf_fs_get_filter_register
    - gf_list_get
    - gf_list_rem
    - gf_strcpy
    - gf_codecid_4cc_type
    - strcmp
    - strlen
    - gf_list_new
    - gf_codecid_enum
    - gf_strcat
    - gf_list_del
    - gf_list_del_item
    - gf_sys_format_help
    - gf_codecid_alt
    - gf_4cc_to_str
    - gf_fs_filters_registers_count
    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_list_count
    - strchr
    - gf_free
    - gf_list_new
    - get_best_mime
    - gf_list_find
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_list_add
    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_list_count
    - strchr
    - sprintf
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_new
    - gf_sys_format_help
    - gf_fs_get_filter_register
    - push_ext_mime
    - GF_FilterRegister*::probe_url
    - gf_list_add
    - gf_list_pop_back
    - gf_fs_filters_registers_count
    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_list_count
    - strchr
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_opts_get_key_count
    - gf_opts_get_key_name
    - gf_list_enum
    - gf_sys_format_help
    - GF_SAFEALLOC
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - gf_opts_get_key
    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_sys_get_options
    - gf_opts_set_key
    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_enum
    - gf_opts_get_key
    - gf_codecid_mime
    - 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
    - strchr
    - gf_fs_get_filter_register
    - gf_opts_get_key
    - gf_fs_filters_registers_count
    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:
    - sprintf
    - gf_cfg_get_key
    - atoi
    - gf_cfg_set_key
    - gf_crc_32
    - gf_sys_format_help
    - 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_fs_new_defaults
    - fprintf
    - gf_fclose
    - gf_file_exists
    - gf_fopen
    - gf_fs_del
    - gf_cfg_discard_changes
    - gf_cfg_del
    - gf_sys_get_options
    - gf_sys_format_help
    - gf_sys_init
    - gf_cfg_new
    - gpac_lang_set_key
    - gf_fs_get_filter_register
    - gf_sys_close
    - gf_props_get_description
    - gf_fs_filters_registers_count
    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_realloc
    - gf_list_new
    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: gf_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:
    - fprintf
    - gf_strcpy
    - strchr
    - gpac_expand_alias_arg
    - push_arg
    - strstr
    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:
    - fprintf
    - strchr
    - gf_free
    - atoi
    - check_param_extension
    - gf_list_new
    - gf_list_add
    - gf_dynstrcat
    - strlen
    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:
    - strchr
    - gf_free
    - gf_malloc
    - check_param_extension
    - gf_assert
    - gf_list_find
    - strcmp
    - push_arg
    - gf_opts_get_key
    - strstr
    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: gf_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: gf_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_strcpy
    - strchr
    - GF_LOG
    - MIN
    - strlen
    - memcpy
    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:
    - DisposeAEEventHandlerUPP
    - AERemoveEventHandler
    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:
    - AEDisposeDesc
    - gf_free
    - FSRefMakePath
    - gpac_open_urls
    - AEGetParamDesc
    - gf_dynstrcat
    - AEGetNthPtr
    - AECountItems
    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:
    - gpac_print_report
    - gf_fs_abort
    - 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_prompt_get_char
    - gf_sleep
    - gpac_handle_prompt
    - gf_prompt_has_input
    - mp4c_handle_prompt
    - gf_fs_abort
    - exit
    - gf_sys_clock_high_res
    - gf_fs_is_last_task
    - mp4c_task
    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:
    - fprintf
    - gf_list_count
    - reset_em_thread
    - gf_file_handles_count
    - gf_memory_print
    - gf_sys_is_arg_used
    - gf_memory_size
    - gf_sys_get_argc
    - cleanup_logs
    - gf_log_set_tool_level
    - gf_sys_get_arg
    - MAIN_THREAD_EM_ASM
    - __lsan_do_leak_check
    - gf_sys_close
    - gf_list_pop_back
    - gf_free
    - gf_fclose
    - gpac_done
    - GF_LOG
    - gf_list_del
    - gf_gpac_copyright
    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:
    - emscripten_cancel_main_loop
    - gpac_done
    - gf_fs_stop
    - gf_fs_run
    - gf_fs_is_last_task
    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:
    - fprintf
    - gf_fs_force_non_blocking
    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:
    - fprintf
    - gpac_print_report
    - gf_fs_enable_reporting
    - gf_fs_abort
    - gf_fs_set_ui_callback
    - SET_CONSOLE
    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: gf_strlcpy
      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: 1
    functionLinenumber: 464
    functionLinenumberEnd: 479
    functionName: enum_net_ifces
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_strlcpy
    - strcmp
    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:
    - fprintf
    - emscripten_cancel_main_loop
    - gf_fs_print_stats
    - gf_fs_stop
    - gpac_exit
    - gpac_run
    - gf_log_reset_file
    - gpac_print_report
    - gf_log_set_callback
    - gf_fs_get_last_connect_error
    - cleanup_file_io
    - gf_fs_get_last_process_error
    - gf_fs_print_non_connected_ex
    - fflush
    - gf_net_reload_netcap
    - gf_error_to_string
    - gpac_check_session_args
    - gf_fs_run
    - gf_fs_del
    - exit
    - gf_list_del
    - unload_compositor
    - gf_opts_get_bool
    - SET_CONSOLE
    - gf_fs_print_connections
    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:
    - stricmp
    - getenv
    - gpac_main
    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:
    - reset_em_thread
    - gpac_done
    - MAIN_THREAD_EM_ASM
    - pthread_self
    - gpac_main
    - mp4box_main
    - emscripten_set_thread_name
    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:
    - pthread_create
    - gpac_done
    - pthread_attr_destroy
    - stricmp
    - gf_th_id
    - gpac_main
    - emscripten_stack_get_end
    - pthread_attr_init
    - emscripten_pthread_attr_settransferredcanvases
    - mp4box_main
    - pthread_attr_setstacksize
    - EM_ASM
    - EM_ASM_INT
    - memset
    - gf_set_mainloop_thread
    - emscripten_stack_get_base
    - pthread_attr_setdetachstate
    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_list_count
    - strchr
    - gf_filter_get_name
    - atoi
    - gf_fs_check_filter
    - gf_fs_get_filters_count
    - GF_LOG
    - gf_list_get
    - gf_fs_get_filter
    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:
    - extract_filter_and_pid
    - gf_filter_get_name
    - GF_LOG
    - gf_filter_pid_enum_properties
    - gf_filter_pid_get_name
    - gf_filter_pid_enum_info
    - gf_props_dump
    - gf_filter_get_opid
    - gf_props_4cc_get_name
    - gf_filter_get_opid_count
    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:
    - strchr
    - extract_filter_and_pid
    - gf_filter_get_name
    - gf_filter_probe_links
    - gf_free
    - GF_LOG
    - sscanf
    - gf_filter_probe_link
    - gf_error_to_string
    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:
    - extract_filter_and_pid
    - gf_free
    - gf_filter_get_name
    - GF_LOG
    - gf_filter_get_possible_destinations
    - gf_error_to_string
    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: gf_strcpy
      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:
    - fprintf
    - gf_fs_print_stats
    - gf_filter_remove
    - gf_fs_get_filter_stats
    - strchr
    - gf_fs_get_filters_count
    - gpac_fsess_task_help
    - gf_fs_load_destination
    - gf_filter_reconnect_output
    - get_cmd
    - gf_fs_lock_filters
    - gf_filter_set_source
    - gf_strcpy
    - atoi
    - gf_fs_abort
    - strcmp
    - gf_fs_load_filter
    - gf_error_to_string
    - scanf
    - gf_fs_send_update
    - gf_fs_load_source
    - strncmp
    - gf_fs_print_connections
    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
    - memset
    - vsnprintf
    - gf_net_get_utc
    - va_end
    - strcmp
    - gf_strdup
    - memmove
    - gf_realloc
    - va_copy
    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: 2332
      start: 2329
    functionDepth: 2
    functionLinenumber: 2329
    functionLinenumberEnd: 2332
    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: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - time
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2333
    functionDepth: 0
    functionLinenumber: 2333
    functionLinenumberEnd: 2341
    functionName: print_dur
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_dur(u64 time)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2352,1
    - Dst: gf_log_use_file
      Src: /src/gpac/applications/gpac/gpac.c:2354,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac.c:2357,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:2358,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/gpac/gpac.c:2359,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:2361,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:2365,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2371,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/applications/gpac/gpac.c:2373,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2374,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2375,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2376,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2377,1
    - Dst: print_dur
      Src: /src/gpac/applications/gpac/gpac.c:2378,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/gpac/gpac.c:2378,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2379,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2381,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/applications/gpac/gpac.c:2382,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/applications/gpac/gpac.c:2385,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2390,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2393,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2394,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2395,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2396,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2397,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2398,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2401,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2404,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/applications/gpac/gpac.c:2404,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2406,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/gpac/gpac.c:2406,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2413,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2416,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2418,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2421,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2422,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2425,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2429,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2433,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2435,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2436,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2437,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2438,1
    - Dst: print_date
      Src: /src/gpac/applications/gpac/gpac.c:2440,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2443,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2445,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:2446,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2448,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/applications/gpac/gpac.c:2450,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac/gpac.c:2451,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 93
    argCount: 3
    argNames:
    - fsess
    - is_init
    - is_final
    argTypes:
    - GF_FilterSession*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2452
      start: 2343
    functionDepth: 3
    functionLinenumber: 2343
    functionLinenumberEnd: 2452
    functionName: gpac_print_report
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 3
    functionsReached:
    - fprintf
    - gf_codecid_name
    - print_dur
    - strstr
    - gf_fs_get_filter_stats
    - gf_stream_type_name
    - gf_malloc
    - gf_log_set_callback
    - gf_sys_get_rti
    - gf_fs_get_filters_count
    - gf_fs_lock_filters
    - fflush
    - gf_sys_clock_high_res
    - gf_sys_clock
    - strcmp
    - print_date
    - gf_log_use_file
    - memset
    - SET_CONSOLE
    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:2471,1
    - Dst: gmtime
      Src: /src/gpac/applications/gpac/gpac.c:2471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - time
    - szDate
    argTypes:
    - u64
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2473
      start: 2468
    functionDepth: 0
    functionLinenumber: 2468
    functionLinenumberEnd: 2473
    functionName: format_date
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - strftime
    - gmtime
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE *format_date(u64 time, char *szDate)
  - BBCount: 54
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/applications/gpac/gpac.c:2480,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/gpac/gpac.c:2481,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2483,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2485,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2486,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2487,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2490,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2498,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2501,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2513,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2514,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2519,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2524,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2525,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2528,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2531,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2537,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2542,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2544,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2550,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2552,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2557,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2559,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2564,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2567,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2575,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2577,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2584,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2588,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2594,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2595,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2597,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:2600,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:2603,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2604,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:2605,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2607,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2610,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:2612,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2614,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2614,1
    - Dst: gf_format_duration
      Src: /src/gpac/applications/gpac/gpac.c:2614,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2617,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2619,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2620,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2620,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2623,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:2625,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2626,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2626,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2630,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2632,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2633,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2640,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2646,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:2649,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:2653,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac.c:2654,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac/gpac.c:2655,1
    - Dst: gf_dir_exists
      Src: /src/gpac/applications/gpac/gpac.c:2662,1
    - Dst: gf_mkdir
      Src: /src/gpac/applications/gpac/gpac.c:2663,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/gpac.c:2667,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac.c:2670,1
    - Dst: gf_file_move
      Src: /src/gpac/applications/gpac/gpac.c:2671,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2675,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:2677,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2678,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: 2681
      start: 2475
    functionDepth: 1
    functionLinenumber: 2475
    functionLinenumberEnd: 2681
    functionName: cache_file_op
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_format_duration
    - gf_cfg_get_key_name
    - strstr
    - gf_malloc
    - format_date
    - gf_dir_exists
    - gf_file_move
    - gf_cfg_new
    - gf_net_get_utc
    - gf_cfg_get_key
    - memcpy
    - atoi
    - gf_file_exists
    - gf_cfg_del
    - gf_cfg_get_key_count
    - strrchr
    - strcmp
    - strlen
    - gf_fprintf
    - sscanf
    - gf_free
    - gf_file_delete
    - gf_mkdir
    - strncmp
    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:2685,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:2691,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2694,1
    - Dst: strstr
      Src: /src/gpac/applications/gpac/gpac.c:2696,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/applications/gpac/gpac.c:2697,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2698,1
    - Dst: atoi
      Src: /src/gpac/applications/gpac/gpac.c:2699,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/gpac/gpac.c:2711,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2714,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/applications/gpac/gpac.c:2717,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:2725,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2725,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2727,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2727,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2728,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2730,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2730,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2731,1
    - Dst: format_date
      Src: /src/gpac/applications/gpac/gpac.c:2731,1
    - Dst: gf_fprintf
      Src: /src/gpac/applications/gpac/gpac.c:2735,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 2
    argNames:
    - op_type
    - arg_val
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2738
      start: 2683
    functionDepth: 1
    functionLinenumber: 2683
    functionLinenumberEnd: 2738
    functionName: do_cache_check
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fprintf
    - strchr
    - atoi
    - gf_opts_get_int
    - format_date
    - gf_net_get_utc
    - gf_net_parse_date
    - strcmp
    - gf_fprintf
    - gf_opts_get_key
    - strstr
    - gf_enum_directory
    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:2756,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/gpac/gpac.c:2758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2760
      start: 2754
    functionDepth: 1
    functionLinenumber: 2754
    functionLinenumberEnd: 2760
    functionName: fio_seek
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    - gf_fseek
    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:2763,1
    - Dst: gf_fread
      Src: /src/gpac/applications/gpac/gpac.c:2767,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2768
      start: 2761
    functionDepth: 1
    functionLinenumber: 2761
    functionLinenumberEnd: 2768
    functionName: fio_read
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    - gf_fread
    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:2771,1
    - Dst: fflush
      Src: /src/gpac/applications/gpac/gpac.c:2774,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/gpac/gpac.c:2777,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2778
      start: 2769
    functionDepth: 1
    functionLinenumber: 2769
    functionLinenumberEnd: 2778
    functionName: fio_write
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fflush
    - gf_fileio_get_udta
    - gf_fwrite
    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:2781,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/gpac/gpac.c:2783,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2784
      start: 2779
    functionDepth: 1
    functionLinenumber: 2779
    functionLinenumberEnd: 2784
    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:2787,1
    - Dst: feof
      Src: /src/gpac/applications/gpac/gpac.c:2789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2790
      start: 2785
    functionDepth: 1
    functionLinenumber: 2785
    functionLinenumberEnd: 2790
    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:2793,1
    - Dst: vfprintf
      Src: /src/gpac/applications/gpac/gpac.c:2795,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - fileio
    - format
    - args
    argTypes:
    - GF_FileIO*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2796
      start: 2791
    functionDepth: 1
    functionLinenumber: 2791
    functionLinenumberEnd: 2796
    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:2807,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2811,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac.c:2812,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:2813,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2817,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2827,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:2829,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac.c:2831,1
    - Dst: gf_fileio_new
      Src: /src/gpac/applications/gpac/gpac.c:2833,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2835,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2836,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:2840,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2843,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac.c:2844,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:2849,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/gpac/gpac.c:2853,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:2854,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2855,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2856,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/gpac.c:2862,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2862,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:2863,1
    - Dst: gf_fsize
      Src: /src/gpac/applications/gpac/gpac.c:2868,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2870,1
    - Dst: gf_fileio_set_stats
      Src: /src/gpac/applications/gpac/gpac.c:2871,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:2879,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/gpac/gpac.c:2881,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2882,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:2883,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:2894,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/gpac.c:2899,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:2901,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac.c:2903,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:2905,1
    - Dst: gf_fileio_new
      Src: /src/gpac/applications/gpac/gpac.c:2907,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2909,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2910,1
    - Dst: strnicmp
      Src: /src/gpac/applications/gpac/gpac.c:2915,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:2916,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:2918,1
    - Dst: gf_list_del_item
      Src: /src/gpac/applications/gpac/gpac.c:2923,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:2924,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2925,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2926,1
    - Dst: gf_fsize
      Src: /src/gpac/applications/gpac/gpac.c:2930,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:2931,1
    - Dst: gf_fileio_set_stats
      Src: /src/gpac/applications/gpac/gpac.c:2932,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: 2934
      start: 2800
    functionDepth: 1
    functionLinenumber: 2800
    functionLinenumberEnd: 2934
    functionName: fio_open
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fileio_set_stats
    - gf_url_concatenate
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_list_add
    - strchr
    - gf_fopen
    - gf_list_find
    - gf_fileio_del
    - gf_fsize
    - gf_list_get
    - gf_file_exists
    - strnicmp
    - strcmp
    - gf_free
    - gf_fclose
    - gf_list_del_item
    - gf_strdup
    - 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:2942,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac.c:2943,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2945,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2947,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/applications/gpac/gpac.c:2951,1
    - Dst: gf_list_find
      Src: /src/gpac/applications/gpac/gpac.c:2952,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:2954,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/gpac/gpac.c:2957,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/gpac/gpac.c:2959,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2960,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - url
    - parent_gfio
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2964
      start: 2936
    functionDepth: 1
    functionLinenumber: 2936
    functionLinenumberEnd: 2964
    functionName: gpac_gfio_del
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_from_url
    - gf_url_concatenate
    - gf_list_find
    - 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:2972,1
    - Dst: gf_fileio_register_delete_proc
      Src: /src/gpac/applications/gpac/gpac.c:2978,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:2981,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:2983,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2985,1
    - Dst: gf_fileio_new
      Src: /src/gpac/applications/gpac/gpac.c:2992,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2994,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:2995,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/gpac/gpac.c:3000,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:3003,1
    - Dst: gf_fileio_url
      Src: /src/gpac/applications/gpac/gpac.c:3007,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: 3008
      start: 2968
    functionDepth: 1
    functionLinenumber: 2968
    functionLinenumberEnd: 3008
    functionName: make_fileio
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_register_delete_proc
    - gf_url_colon_suffix
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_fileio_url
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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:3025,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/gpac/gpac.c:3029,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/gpac/gpac.c:3033,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/gpac/gpac.c:3035,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3037,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:3041,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3043,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3044,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/gpac/gpac.c:3052,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/applications/gpac/gpac.c:3056,1
    - Dst: gf_fileio_url
      Src: /src/gpac/applications/gpac/gpac.c:3057,1
    - Dst: gf_blob_register
      Src: /src/gpac/applications/gpac/gpac.c:3060,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3062,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3063,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3064,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: 3069
      start: 3021
    functionDepth: 1
    functionLinenumber: 3021
    functionLinenumberEnd: 3069
    functionName: make_blob
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_file_load_data
    - gf_fileio_from_mem
    - gf_url_colon_suffix
    - GF_SAFEALLOC
    - gf_blob_register
    - gf_fileio_url
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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:3074,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:3077,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac.c:3078,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/applications/gpac/gpac.c:3079,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:3080,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3083,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:3084,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3086,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3087,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:3089,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/gpac/gpac.c:3092,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/gpac/gpac.c:3093,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:3095,1
    - Dst: gf_fileio_del
      Src: /src/gpac/applications/gpac/gpac.c:3096,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/applications/gpac/gpac.c:3101,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3102,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3104,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3105,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3106,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/gpac/gpac.c:3108,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3110
      start: 3070
    functionDepth: 1
    functionLinenumber: 3070
    functionLinenumberEnd: 3110
    functionName: cleanup_file_io
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 1
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_fclose
    - gf_free
    - gf_list_del
    - gf_fileio_del
    - gf_blob_unregister
    - gf_fileio_unregister_delete_proc
    - gf_list_pop_back
    - 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:3117,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/applications/gpac/gpac.c:3118,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/applications/gpac/gpac.c:3119,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: 3121
      start: 3112
    functionDepth: 1
    functionLinenumber: 3112
    functionLinenumberEnd: 3121
    functionName: cust_configure_pid
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - gf_filter_pid_set_framing_mode
    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:3125,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/applications/gpac/gpac.c:3126,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/applications/gpac/gpac.c:3127,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/applications/gpac/gpac.c:3129,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3131,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/applications/gpac/gpac.c:3131,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/applications/gpac/gpac.c:3132,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3122
    functionDepth: 1
    functionLinenumber: 3122
    functionLinenumberEnd: 3136
    functionName: cust_process
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_name
    - gf_filter_pck_get_cts
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    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:3140,1
    - Dst: gf_filter_push_caps
      Src: /src/gpac/applications/gpac/gpac.c:3143,1
    - Dst: PROP_UINT
      Src: /src/gpac/applications/gpac/gpac.c:3143,1
    - Dst: gf_filter_set_configure_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3145,1
    - Dst: gf_filter_set_process_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3147,1
    - Dst: gf_filter_set_process_event_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3149,1
    - Dst: gf_filter_set_reconfigure_output_ckb
      Src: /src/gpac/applications/gpac/gpac.c:3151,1
    - Dst: gf_filter_set_probe_data_cbk
      Src: /src/gpac/applications/gpac/gpac.c:3153,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - sess
    - opts
    - e
    argTypes:
    - GF_FilterSession*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3157
      start: 3138
    functionDepth: 1
    functionLinenumber: 3138
    functionLinenumberEnd: 3157
    functionName: load_custom_filter
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_configure_ckb
    - gf_filter_set_reconfigure_output_ckb
    - gf_filter_set_process_event_ckb
    - gf_filter_set_probe_data_cbk
    - PROP_UINT
    - gf_filter_push_caps
    - gf_filter_set_process_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:3183,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac.c:3185,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3193,1
    - Dst: gf_getch
      Src: /src/gpac/applications/gpac/gpac.c:3196,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3203,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3208,1
    - Dst: exit
      Src: /src/gpac/applications/gpac/gpac.c:3214,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/applications/gpac/gpac.c:3230,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/gpac/gpac.c:3231,1
    - Dst: gpac_print_report
      Src: /src/gpac/applications/gpac/gpac.c:3233,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/gpac/gpac.c:3236,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:3237,1
    - Dst: SET_CONSOLE
      Src: /src/gpac/applications/gpac/gpac.c:3238,1
    - Dst: gf_fs_print_debug_info
      Src: /src/gpac/applications/gpac/gpac.c:3248,1
    - Dst: gf_fs_print_debug_info
      Src: /src/gpac/applications/gpac/gpac.c:3255,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3264,1
    - Dst: scanf
      Src: /src/gpac/applications/gpac/gpac.c:3265,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3266,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/applications/gpac/gpac.c:3269,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3274,1
    - Dst: gf_fs_abort
      Src: /src/gpac/applications/gpac/gpac.c:3280,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 103
    argCount: 1
    argNames:
    - sig
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3287
      start: 3174
    functionDepth: 4
    functionLinenumber: 3174
    functionLinenumberEnd: 3287
    functionName: gpac_sig_handler
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gpac_print_report
    - gf_fs_enable_reporting
    - scanf
    - exit
    - gf_getch
    - gf_fs_abort
    - gf_fs_set_ui_callback
    - gf_log_set_tools_levels
    - gf_fs_print_debug_info
    - SET_CONSOLE
    linkageType: ''
    returnType: void
    signature: void gpac_sig_handler(int sig)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_calloc
      Src: /src/gpac/applications/gpac/gpac.c:3318,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3319,1
    - Dst: gpac_handle_prompt
      Src: /src/gpac/applications/gpac/gpac.c:3323,1
    - Dst: gpac_fsess_task_help
      Src: /src/gpac/applications/gpac/gpac.c:3325,1
    - Dst: gf_dm_sess_last_error
      Src: /src/gpac/applications/gpac/gpac.c:3326,1
    - Dst: gf_log_use_color
      Src: /src/gpac/applications/gpac/gpac.c:3327,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/applications/gpac/gpac.c:3328,1
    - Dst: gf_gpac_abi_micro
      Src: /src/gpac/applications/gpac/gpac.c:3329,1
    - Dst: gf_audio_fmt_get_layout_from_name
      Src: /src/gpac/applications/gpac/gpac.c:3330,1
    - Dst: gf_audio_fmt_get_dolby_chanmap
      Src: /src/gpac/applications/gpac/gpac.c:3331,1
    - Dst: gf_itags_get_id3tag
      Src: /src/gpac/applications/gpac/gpac.c:3332,1
    - Dst: gf_itags_enum_tags
      Src: /src/gpac/applications/gpac/gpac.c:3334,1
    - Dst: gf_fs_in_final_flush
      Src: /src/gpac/applications/gpac/gpac.c:3336,1
    - Dst: gf_fs_get_rt_udta
      Src: /src/gpac/applications/gpac/gpac.c:3337,1
    - Dst: gf_fs_set_external_gl_provider
      Src: /src/gpac/applications/gpac/gpac.c:3338,1
    - Dst: gf_filter_print_all_connections
      Src: /src/gpac/applications/gpac/gpac.c:3339,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3341,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:3361,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3362,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3370,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3371,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3381,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3382,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3392,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3393,1
    - Dst: utf8_to_ucs4
      Src: /src/gpac/applications/gpac/gpac.c:3398,1
    - Dst: gf_base16_encode
      Src: /src/gpac/applications/gpac/gpac.c:3403,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3405,1
    - Dst: gf_base16_decode
      Src: /src/gpac/applications/gpac/gpac.c:3408,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3410,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:3420,1
    - Dst: gf_gz_compress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3422,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3422,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3424,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3425,1
    - Dst: gf_gz_decompress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3430,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3431,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3432,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3434,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/gpac/gpac.c:3439,1
    - Dst: gf_lz_compress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3441,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3441,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3443,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3444,1
    - Dst: gf_lz_decompress_payload
      Src: /src/gpac/applications/gpac/gpac.c:3449,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3450,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3451,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3453,1
    - Dst: gf_htonl
      Src: /src/gpac/applications/gpac/gpac.c:3457,1
    - Dst: gf_ntohl
      Src: /src/gpac/applications/gpac/gpac.c:3458,1
    - Dst: gf_htons
      Src: /src/gpac/applications/gpac/gpac.c:3459,1
    - Dst: gf_ntohs
      Src: /src/gpac/applications/gpac/gpac.c:3460,1
    - Dst: gf_errno_str
      Src: /src/gpac/applications/gpac/gpac.c:3461,1
    - Dst: gf_prompt_set_echo_off
      Src: /src/gpac/applications/gpac/gpac.c:3463,1
    - Dst: gf_getch
      Src: /src/gpac/applications/gpac/gpac.c:3464,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/gpac/gpac.c:3465,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/gpac.c:3466,1
    - Dst: gf_net_set_ntp_shift
      Src: /src/gpac/applications/gpac/gpac.c:3468,1
    - Dst: gf_net_get_ntp_diff_ms
      Src: /src/gpac/applications/gpac/gpac.c:3469,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/applications/gpac/gpac.c:3469,1
    - Dst: gf_net_get_timezone
      Src: /src/gpac/applications/gpac/gpac.c:3470,1
    - Dst: gf_net_get_utc_ts
      Src: /src/gpac/applications/gpac/gpac.c:3471,1
    - Dst: gf_net_ntp_diff_ms
      Src: /src/gpac/applications/gpac/gpac.c:3472,1
    - Dst: gf_lang_get_count
      Src: /src/gpac/applications/gpac/gpac.c:3473,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/applications/gpac/gpac.c:3474,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3476,1
    - Dst: gf_blob_register
      Src: /src/gpac/applications/gpac/gpac.c:3483,1
    - Dst: gf_blob_get
      Src: /src/gpac/applications/gpac/gpac.c:3485,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/applications/gpac/gpac.c:3486,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3487,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3489,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/gpac/gpac.c:3490,1
    - Dst: gf_sys_get_battery_state
      Src: /src/gpac/applications/gpac/gpac.c:3493,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/applications/gpac/gpac.c:3494,1
    - Dst: gf_log_get_tools_levels
      Src: /src/gpac/applications/gpac/gpac.c:3495,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3496,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/applications/gpac/gpac.c:3498,1
    - Dst: gf_sys_get_argv
      Src: /src/gpac/applications/gpac/gpac.c:3499,1
    - Dst: gf_mx_get_num_locks
      Src: /src/gpac/applications/gpac/gpac.c:3500,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/applications/gpac/gpac.c:3503,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3507,1
    - Dst: gf_crypt_open
      Src: /src/gpac/applications/gpac/gpac.c:3508,1
    - Dst: gf_crypt_init
      Src: /src/gpac/applications/gpac/gpac.c:3509,1
    - Dst: gf_crypt_encrypt
      Src: /src/gpac/applications/gpac/gpac.c:3510,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/applications/gpac/gpac.c:3511,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/applications/gpac/gpac.c:3512,1
    - Dst: gf_crypt_get_IV
      Src: /src/gpac/applications/gpac/gpac.c:3514,1
    - Dst: gf_crypt_close
      Src: /src/gpac/applications/gpac/gpac.c:3515,1
    - Dst: gpac_sig_handler
      Src: /src/gpac/applications/gpac/gpac.c:3519,1
    - Dst: gpac_sig_handler
      Src: /src/gpac/applications/gpac/gpac.c:3521,1
    - Dst: gpac_sig_handler
      Src: /src/gpac/applications/gpac/gpac.c:3522,1
    - Dst: gf_mkdir
      Src: /src/gpac/applications/gpac/gpac.c:3525,1
    - Dst: gf_mkdir
      Src: /src/gpac/applications/gpac/gpac.c:3526,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac.c:3527,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/gpac/gpac.c:3528,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3529,1
    - Dst: gf_memory_print
      Src: /src/gpac/applications/gpac/gpac.c:3531,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/gpac/gpac.c:3533,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/applications/gpac/gpac.c:3534,1
    - Dst: gf_m2ts_probe_file
      Src: /src/gpac/applications/gpac/gpac.c:3535,1
    - Dst: gf_dir_cleanup
      Src: /src/gpac/applications/gpac/gpac.c:3537,1
    - Dst: gf_rmdir
      Src: /src/gpac/applications/gpac/gpac.c:3538,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/applications/gpac/gpac.c:3542,1
    - Dst: gf_mx2d_add_skew
      Src: /src/gpac/applications/gpac/gpac.c:3543,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/applications/gpac/gpac.c:3544,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/applications/gpac/gpac.c:3545,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/applications/gpac/gpac.c:3548,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3550,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3551,1
    - Dst: gf_rect_equal
      Src: /src/gpac/applications/gpac/gpac.c:3552,1
    - Dst: gf_mx_init
      Src: /src/gpac/applications/gpac/gpac.c:3555,1
    - Dst: gf_mx_get_yaw_pitch_roll
      Src: /src/gpac/applications/gpac/gpac.c:3557,1
    - Dst: gf_mx_ortho_reverse_z
      Src: /src/gpac/applications/gpac/gpac.c:3558,1
    - Dst: gf_mx_perspective_reverse_z
      Src: /src/gpac/applications/gpac/gpac.c:3559,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3563,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3565,1
    - Dst: gf_ray_hit_sphere
      Src: /src/gpac/applications/gpac/gpac.c:3566,1
    - Dst: gf_closest_point_to_line
      Src: /src/gpac/applications/gpac/gpac.c:3568,1
    - Dst: gf_plane_intersect_line
      Src: /src/gpac/applications/gpac/gpac.c:3573,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/applications/gpac/gpac.c:3579,1
    - Dst: gf_quat_get_inv
      Src: /src/gpac/applications/gpac/gpac.c:3580,1
    - Dst: gf_quat_rotate
      Src: /src/gpac/applications/gpac/gpac.c:3581,1
    - Dst: gf_quat_slerp
      Src: /src/gpac/applications/gpac/gpac.c:3582,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3584,1
    - Dst: gf_bbox_equal
      Src: /src/gpac/applications/gpac/gpac.c:3585,1
    - Dst: gf_bbox_refresh
      Src: /src/gpac/applications/gpac/gpac.c:3589,1
    - Dst: gf_mx_apply_bbox_4x4
      Src: /src/gpac/applications/gpac/gpac.c:3590,1
    - Dst: gf_vec_scale_p
      Src: /src/gpac/applications/gpac/gpac.c:3595,1
    - Dst: gf_token_get_strip
      Src: /src/gpac/applications/gpac/gpac.c:3599,1
    - Dst: gf_sk_get_host_name
      Src: /src/gpac/applications/gpac/gpac.c:3603,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/applications/gpac/gpac.c:3604,1
    - Dst: gf_sk_get_local_info
      Src: /src/gpac/applications/gpac/gpac.c:3608,1
    - Dst: gf_path_new
      Src: /src/gpac/applications/gpac/gpac.c:3611,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/applications/gpac/gpac.c:3612,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/applications/gpac/gpac.c:3613,1
    - Dst: gf_path_point_over
      Src: /src/gpac/applications/gpac/gpac.c:3614,1
    - Dst: gf_path_del
      Src: /src/gpac/applications/gpac/gpac.c:3615,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/gpac/gpac.c:3618,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/applications/gpac/gpac.c:3619,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/gpac/gpac.c:3620,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/applications/gpac/gpac.c:3621,1
    - Dst: gf_xml_dom_get_root_nodes_count
      Src: /src/gpac/applications/gpac/gpac.c:3622,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/gpac/gpac.c:3623,1
    - Dst: gf_dm_new
      Src: /src/gpac/applications/gpac/gpac.c:3626,1
    - Dst: gf_dm_set_auth_callback
      Src: /src/gpac/applications/gpac/gpac.c:3627,1
    - Dst: gf_dm_set_data_rate
      Src: /src/gpac/applications/gpac/gpac.c:3629,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/applications/gpac/gpac.c:3630,1
    - Dst: gf_dm_set_localcache_provider
      Src: /src/gpac/applications/gpac/gpac.c:3631,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/applications/gpac/gpac.c:3632,1
    - Dst: gf_dm_del
      Src: /src/gpac/applications/gpac/gpac.c:3633,1
    - Dst: gf_stream_type_afx_name
      Src: /src/gpac/applications/gpac/gpac.c:3636,1
    - Dst: gf_th_stop
      Src: /src/gpac/applications/gpac/gpac.c:3638,1
    - Dst: gf_list_swap
      Src: /src/gpac/applications/gpac/gpac.c:3639,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/gpac/gpac.c:3641,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/applications/gpac/gpac.c:3642,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/applications/gpac/gpac.c:3643,1
    - Dst: gf_bs_read_vluimsbf5
      Src: /src/gpac/applications/gpac/gpac.c:3644,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/gpac/gpac.c:3645,1
    - Dst: gf_module_load_static
      Src: /src/gpac/applications/gpac/gpac.c:3647,1
    - Dst: gf_mp3_version_name
      Src: /src/gpac/applications/gpac/gpac.c:3649,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3652,1
    - Dst: memset
      Src: /src/gpac/applications/gpac/gpac.c:3653,1
    - Dst: gf_m2ts_restamp
      Src: /src/gpac/applications/gpac/gpac.c:3662,1
    - Dst: gf_filter_post_task
      Src: /src/gpac/applications/gpac/gpac.c:3665,1
    - Dst: gf_filter_get_arg_str
      Src: /src/gpac/applications/gpac/gpac.c:3666,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/applications/gpac/gpac.c:3667,1
    - Dst: gf_opts_discard_changes
      Src: /src/gpac/applications/gpac/gpac.c:3669,1
    - Dst: gf_rtp_reset_ssrc
      Src: /src/gpac/applications/gpac/gpac.c:3671,1
    - Dst: gf_rtp_enable_nat_keepalive
      Src: /src/gpac/applications/gpac/gpac.c:3672,1
    - Dst: gf_rtp_stop
      Src: /src/gpac/applications/gpac/gpac.c:3673,1
    - Dst: gf_rtp_streamer_get_payload_type
      Src: /src/gpac/applications/gpac/gpac.c:3674,1
    - Dst: gf_rtsp_unregister_interleave
      Src: /src/gpac/applications/gpac/gpac.c:3675,1
    - Dst: gf_rtsp_reset_aggregation
      Src: /src/gpac/applications/gpac/gpac.c:3676,1
    - Dst: get_cmd
      Src: /src/gpac/applications/gpac/gpac.c:3678,1
    - Dst: gpac_suggest_arg
      Src: /src/gpac/applications/gpac/gpac.c:3679,1
    - Dst: gpac_suggest_filter
      Src: /src/gpac/applications/gpac/gpac.c:3680,1
    - Dst: gf_filter_pid_negotiate_property_str
      Src: /src/gpac/applications/gpac/gpac.c:3682,1
    - Dst: gf_filter_pid_negotiate_property_dyn
      Src: /src/gpac/applications/gpac/gpac.c:3683,1
    - Dst: gf_props_parse_type
      Src: /src/gpac/applications/gpac/gpac.c:3685,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/applications/gpac/gpac.c:3687,1
    - Dst: gf_filter_get_max_extra_input_pids
      Src: /src/gpac/applications/gpac/gpac.c:3688,1
    - Dst: gf_filter_remove
      Src: /src/gpac/applications/gpac/gpac.c:3689,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/applications/gpac/gpac.c:3690,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/applications/gpac/gpac.c:3691,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/applications/gpac/gpac.c:3693,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/applications/gpac/gpac.c:3694,1
    - Dst: gf_audio_fmt_get_layout_name_from_cicp
      Src: /src/gpac/applications/gpac/gpac.c:3695,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/applications/gpac/gpac.c:3696,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/gpac/gpac.c:3699,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/gpac/gpac.c:3699,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/gpac/gpac.c:3700,1
    - Dst: gf_odf_get_text_config
      Src: /src/gpac/applications/gpac/gpac.c:3701,1
    - Dst: gf_odf_dump_txtcfg
      Src: /src/gpac/applications/gpac/gpac.c:3702,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/gpac/gpac.c:3703,1
    - Dst: gf_hevc_read_pps_bs
      Src: /src/gpac/applications/gpac/gpac.c:3706,1
    - Dst: gf_hevc_read_sps_bs
      Src: /src/gpac/applications/gpac/gpac.c:3707,1
    - Dst: gf_hevc_read_vps_bs
      Src: /src/gpac/applications/gpac/gpac.c:3708,1
    - Dst: gf_mpegv12_get_config
      Src: /src/gpac/applications/gpac/gpac.c:3709,1
    - Dst: gf_isom_hint_pck_new
      Src: /src/gpac/applications/gpac/gpac.c:3712,1
    - Dst: gf_isom_hint_pck_length
      Src: /src/gpac/applications/gpac/gpac.c:3713,1
    - Dst: gf_isom_hint_pck_size
      Src: /src/gpac/applications/gpac/gpac.c:3714,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/gpac/gpac.c:3715,1
    - Dst: gf_isom_hint_pck_write
      Src: /src/gpac/applications/gpac/gpac.c:3716,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/applications/gpac/gpac.c:3719,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/gpac/gpac.c:3720,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/gpac/gpac.c:3721,1
    - Dst: gf_isom_hint_pck_read
      Src: /src/gpac/applications/gpac/gpac.c:3722,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/gpac/gpac.c:3723,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3724,1
    - Dst: gf_isom_hint_pck_del
      Src: /src/gpac/applications/gpac/gpac.c:3725,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/gpac/gpac.c:3727,1
    - Dst: gf_isom_get_media_time
      Src: /src/gpac/applications/gpac/gpac.c:3728,1
    - Dst: gf_isom_get_sample_description_index
      Src: /src/gpac/applications/gpac/gpac.c:3729,1
    - Dst: gf_sg_has_scripting
      Src: /src/gpac/applications/gpac/gpac.c:3731,1
    - Dst: gf_node_get_proto_root
      Src: /src/gpac/applications/gpac/gpac.c:3732,1
    - Dst: gf_node_proto_is_grouping
      Src: /src/gpac/applications/gpac/gpac.c:3733,1
    - Dst: gf_sg_proto_get_id
      Src: /src/gpac/applications/gpac/gpac.c:3734,1
    - Dst: gf_sg_proto_instance_set_ised
      Src: /src/gpac/applications/gpac/gpac.c:3735,1
    - Dst: gf_audio_fmt_to_isobmf
      Src: /src/gpac/applications/gpac/gpac.c:3737,1
    - Dst: gf_pixel_fmt_probe
      Src: /src/gpac/applications/gpac/gpac.c:3738,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/applications/gpac/gpac.c:3739,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 306
    argCount: 1
    argNames:
    - mem_track
    argTypes:
    - GF_MemTrackerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3744
      start: 3311
    functionDepth: 5
    functionLinenumber: 3311
    functionLinenumberEnd: 3744
    functionName: gpac_unit_tests
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_parse_string
    - gf_4cc_parse
    - gf_xml_dom_del
    - gf_isom_last_error
    - gf_filter_remove
    - gf_isom_hint_pck_read
    - gf_rtp_stop
    - gf_bs_new
    - gf_mx_apply_bbox_4x4
    - gf_pixel_fmt_probe
    - gf_blob_get
    - gf_base16_encode
    - gf_rtp_reset_ssrc
    - gf_node_proto_is_grouping
    - gf_htonl
    - gf_plane_intersect_line
    - gf_memory_print
    - gf_filter_pid_negotiate_property_dyn
    - gf_file_modification_time
    - gf_htons
    - gf_hevc_read_pps_bs
    - gf_log_get_tools_levels
    - gf_closest_point_to_line
    - gf_vec_scale_p
    - gf_mx2d_decompose
    - gf_bbox_refresh
    - gf_fs_get_rt_udta
    - gf_bs_bits_available
    - get_cmd
    - gf_strcpy
    - gf_lz_compress_payload
    - gf_rtsp_reset_aggregation
    - gf_audio_fmt_get_layout_from_name
    - gf_quat_slerp
    - gf_mx_init
    - gf_path_del
    - gf_filter_post_task
    - gf_ntohs
    - gf_isom_hint_pck_length
    - gf_bbox_equal
    - gf_audio_fmt_get_cicp_layout
    - gf_filter_print_all_connections
    - gf_sg_proto_instance_set_ised
    - gf_crypt_get_IV
    - gf_fclose
    - gf_dm_set_data_rate
    - gf_opts_discard_changes
    - gf_getch
    - gf_isom_get_sample_description_index
    - gf_lang_get_2cc
    - gf_odf_desc_new
    - gf_dm_del
    - gf_strdup
    - gf_sg_has_scripting
    - utf8_to_ucs4
    - gf_rtp_enable_nat_keepalive
    - gf_bs_get_content
    - gf_filter_pck_new_copy
    - gf_quat_get_inv
    - gf_mx_ortho_reverse_z
    - gf_crypt_encrypt
    - gf_sk_set_usec_wait
    - gf_quat_from_rotation
    - gf_audio_fmt_get_cicp_from_layout
    - gf_dm_set_auth_callback
    - gf_mp3_version_name
    - gf_dm_set_localcache_provider
    - gf_audio_fmt_to_isobmf
    - gf_isom_hint_pck_write
    - gf_filter_reconnect_output
    - gf_sys_get_battery_state
    - gf_odf_dump_txtcfg
    - gf_mx2d_add_skew_x
    - gf_path_add_quadratic_to
    - gf_list_swap
    - gpac_handle_prompt
    - gf_lang_get_count
    - gf_dm_sess_abort
    - gf_mx_perspective_reverse_z
    - gf_xml_dom_new
    - strlen
    - gf_lz_decompress_payload
    - gf_stream_type_afx_name
    - gf_bs_read_vluimsbf5
    - gf_props_parse_type
    - gf_path_point_over
    - gf_ntohl
    - gf_mx_get_yaw_pitch_roll
    - gf_audio_fmt_get_layout_from_cicp
    - gf_fs_in_final_flush
    - gf_token_get_strip
    - gf_filter_all_sinks_done
    - gf_isom_hint_pck_new
    - gf_log_use_color
    - gf_th_stop
    - gf_isom_hint_pck_del
    - gf_sk_get_host_name
    - gf_calloc
    - gf_itags_enum_tags
    - gf_xml_dom_get_root_nodes_count
    - gf_gz_compress_payload
    - gf_path_add_move_to
    - gpac_suggest_filter
    - gf_net_ntp_to_utc
    - gf_isom_get_media_time
    - gf_xml_dom_get_error
    - gf_net_get_ntp_diff_ms
    - gf_fs_set_external_gl_provider
    - gf_mx2d_add_skew
    - gf_fopen
    - gf_module_load_static
    - gf_net_get_timezone
    - gf_path_new
    - gf_odf_get_text_config
    - gf_mx2d_add_skew_y
    - gf_crypt_decrypt
    - gf_rect_equal
    - gf_audio_fmt_get_dolby_chanmap
    - gf_m2ts_restamp
    - gf_dir_cleanup
    - strcmp
    - gf_isom_hint_pck_size
    - gf_hevc_read_sps_bs
    - gf_gpac_abi_micro
    - gf_net_get_utc_ts
    - gf_odf_desc_del
    - gf_free
    - gf_dm_get_data_rate
    - gf_filter_get_arg_str
    - gf_crypt_set_IV
    - gf_prompt_set_echo_off
    - gf_dm_sess_last_error
    - gf_crypt_init
    - gf_crypt_open
    - gf_filter_pid_negotiate_property_str
    - gf_bs_get_bit_offset
    - fprintf
    - gf_mx2d_init
    - gf_rtsp_unregister_interleave
    - gf_m2ts_probe_file
    - gf_bs_del
    - gpac_sig_handler
    - gf_gz_decompress_payload
    - gf_url_is_relative
    - gf_dm_new
    - gf_mx_get_num_locks
    - gpac_fsess_task_help
    - gf_itags_get_id3tag
    - gf_xml_dom_get_line
    - gf_net_get_ntp_ts
    - gf_quat_rotate
    - gf_filter_pid_get_udta_flags
    - gf_node_get_proto_root
    - gf_base16_decode
    - gf_filter_get_max_extra_input_pids
    - gf_sys_get_process_id
    - gf_sys_is_quiet
    - gf_blob_register
    - gf_blob_unregister
    - gf_audio_fmt_get_layout_name_from_cicp
    - gf_hevc_read_vps_bs
    - gf_rmdir
    - gf_sg_proto_get_id
    - gf_sys_get_argv
    - gf_prompt_get_char
    - gf_sk_get_local_info
    - gf_ray_hit_sphere
    - gf_rtp_streamer_get_payload_type
    - gf_errno_str
    - GF_LOG
    - gf_mpegv12_get_config
    - gf_net_ntp_diff_ms
    - gf_net_set_ntp_shift
    - gf_mkdir
    - gf_read_line_input
    - gpac_suggest_arg
    - memset
    - gf_crypt_close
    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:3755,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - len
    - out
    argTypes:
    - u8*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3758
      start: 3750
    functionDepth: 0
    functionLinenumber: 3750
    functionLinenumberEnd: 3758
    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:3773,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3773,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:3774,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3775,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3775,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3777,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3777,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3779,1
    - Dst: gf_rand
      Src: /src/gpac/applications/gpac/gpac.c:3779,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3787,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/gpac/gpac.c:3788,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac/gpac.c:3789,1
    - Dst: memcpy
      Src: /src/gpac/applications/gpac/gpac.c:3791,1
    - Dst: gf_sha256_csum
      Src: /src/gpac/applications/gpac/gpac.c:3793,1
    - Dst: to_hex
      Src: /src/gpac/applications/gpac/gpac.c:3794,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3795,1
    - Dst: to_hex
      Src: /src/gpac/applications/gpac/gpac.c:3796,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3797,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/applications/gpac/gpac.c:3799,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac.c:3800,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3801,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 35
    argCount: 3
    argNames:
    - creds
    - user
    - passwd
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3804
      start: 3766
    functionDepth: 1
    functionLinenumber: 3766
    functionLinenumberEnd: 3804
    functionName: creds_set_pass
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_free
    - gf_rand
    - gf_malloc
    - gf_cfg_set_key
    - to_hex
    - gf_sys_clock_high_res
    - gf_sha256_csum
    - strlen
    - memcpy
    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:3808,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:3811,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3813,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:3814,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3820,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3821,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3823,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - creds
    - group
    - user
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3825
      start: 3806
    functionDepth: 1
    functionLinenumber: 3806
    functionLinenumberEnd: 3825
    functionName: rem_user_from_group
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - gf_cfg_get_key
    - strchr
    - gf_free
    - gf_cfg_set_key
    - strcmp
    - gf_dynstrcat
    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:3833,1
    - Dst: gf_opts_get_filename
      Src: /src/gpac/applications/gpac/gpac.c:3836,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3838,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/gpac/gpac.c:3842,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/gpac.c:3843,1
    - Dst: strrchr
      Src: /src/gpac/applications/gpac/gpac.c:3844,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/gpac/gpac.c:3846,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3847,1
    - Dst: gf_opts_save
      Src: /src/gpac/applications/gpac/gpac.c:3848,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3849,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3851,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3856,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/gpac/gpac.c:3857,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/gpac/gpac.c:3860,1
    - Dst: fwrite
      Src: /src/gpac/applications/gpac/gpac.c:3861,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3862,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3864,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3868,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3869,1
    - Dst: gf_cfg_force_new
      Src: /src/gpac/applications/gpac/gpac.c:3873,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3875,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:3886,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3893,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3894,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3897,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3899,1
    - Dst: gf_token_find_word
      Src: /src/gpac/applications/gpac/gpac.c:3904,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3906,1
    - Dst: rem_user_from_group
      Src: /src/gpac/applications/gpac/gpac.c:3909,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3911,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3912,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:3920,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3922,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3924,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:3926,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3933,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:3934,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:3936,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3939,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3941,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3943,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/gpac/gpac.c:3945,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:3946,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:3955,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3957,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/gpac/gpac.c:3959,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:3960,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/gpac/gpac.c:3970,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:3972,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3976,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/gpac.c:3977,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3979,1
    - Dst: gf_creds_check_password
      Src: /src/gpac/applications/gpac/gpac.c:3981,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3982,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: strlen
      Src: /src/gpac/applications/gpac/gpac.c:3991,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3992,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3995,1
    - Dst: gf_read_line_input
      Src: /src/gpac/applications/gpac/gpac.c:3996,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:3998,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:3999,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4000,1
    - Dst: creds_set_pass
      Src: /src/gpac/applications/gpac/gpac.c:4004,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4006,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4018,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4019,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4020,1
    - Dst: UPDATE_FIELD
      Src: /src/gpac/applications/gpac/gpac.c:4021,1
    - Dst: sprintf
      Src: /src/gpac/applications/gpac/gpac.c:4024,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:4025,1
    - Dst: gf_opts_save
      Src: /src/gpac/applications/gpac/gpac.c:4028,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4030,1
    - Dst: gf_token_find_word
      Src: /src/gpac/applications/gpac/gpac.c:4031,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:4033,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/gpac/gpac.c:4034,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:4035,1
    - Dst: gf_free
      Src: /src/gpac/applications/gpac/gpac.c:4036,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4039,1
    - Dst: gf_cfg_del_section
      Src: /src/gpac/applications/gpac/gpac.c:4040,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:4041,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:4043,1
    - Dst: rem_user_from_group
      Src: /src/gpac/applications/gpac/gpac.c:4044,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4047,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:4048,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:4050,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4051,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4052,1
    - Dst: strlen
      Src: /src/gpac/applications/gpac/gpac.c:4053,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4055,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4057,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4061,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4061,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4061,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4063,1
    - Dst: sscanf
      Src: /src/gpac/applications/gpac/gpac.c:4065,1
    - Dst: print_date_ex
      Src: /src/gpac/applications/gpac/gpac.c:4066,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4069,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4069,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/applications/gpac/gpac.c:4072,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/applications/gpac/gpac.c:4074,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/gpac/gpac.c:4075,1
    - Dst: gf_token_find_word
      Src: /src/gpac/applications/gpac/gpac.c:4076,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4078,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4081,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4083,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:4089,1
    - Dst: strchr
      Src: /src/gpac/applications/gpac/gpac.c:4091,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4094,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4095,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4096,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4097,1
    - Dst: fprintf
      Src: /src/gpac/applications/gpac/gpac.c:4099,1
    - Dst: strcmp
      Src: /src/gpac/applications/gpac/gpac.c:4104,1
    - Dst: creds_set_pass
      Src: /src/gpac/applications/gpac/gpac.c:4105,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/applications/gpac/gpac.c:4107,1
    - Dst: gf_cfg_save
      Src: /src/gpac/applications/gpac/gpac.c:4120,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:4121,1
    - Dst: gf_cfg_del
      Src: /src/gpac/applications/gpac/gpac.c:4127,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 274
    argCount: 1
    argNames:
    - creds_args
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4132
      start: 3828
    functionDepth: 2
    functionLinenumber: 3828
    functionLinenumberEnd: 4132
    functionName: gpac_do_creds
    functionSourceFile: /src/gpac/applications/gpac/gpac.c
    functionUses: 0
    functionsReached:
    - fprintf
    - creds_set_pass
    - gf_opts_get_key
    - gf_cfg_get_key_name
    - gf_opts_save
    - gf_opts_set_key
    - strchr
    - gf_read_line_input
    - gf_net_get_utc
    - gf_token_find_word
    - gf_cfg_get_key
    - gf_dynstrcat
    - gf_sys_is_test_mode
    - gf_cfg_del_section
    - gf_strcpy
    - gf_file_exists
    - gf_cfg_del
    - gf_cfg_get_key_count
    - gf_cfg_force_new
    - strrchr
    - strcmp
    - strlen
    - print_date_ex
    - sscanf
    - gf_cfg_save
    - UPDATE_FIELD
    - sprintf
    - gf_free
    - gf_file_load_data
    - gf_strcat
    - gf_creds_check_password
    - fwrite
    - gf_cfg_set_key
    - rem_user_from_group
    - gf_opts_get_filename
    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: 4017
      start: 4010
    functionDepth: 0
    functionLinenumber: 4010
    functionLinenumberEnd: 4017
    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_isom_remove_user_data
    - gf_free
    - gf_malloc
    - gf_file_load_data
    - M4_LOG
    - strnicmp
    - gf_base64_decode
    - gf_isom_add_user_data_boxes
    - gf_isom_add_user_data
    - strlen
    - memset
    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: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:246,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:249,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/mp4box/fileimport.c:249,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:250,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 134
    argCount: 2
    argNames:
    - inName
    - track_id
    argTypes:
    - char*
    - TrackIdentifier*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 252
    functionName: convert_file_info
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_free
    - gf_malloc
    - gf_codecid_name
    - M4_LOG
    - gf_file_basename
    - gf_media_import
    - memset
    - gf_4cc_to_str
    - gf_error_to_string
    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:260,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/fileimport.c:260,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/applications/mp4box/fileimport.c:262,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:265,1
    - Dst: gf_isom_get_media_duration
      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_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:268,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:272,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:272,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:274,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:278,1
    - Dst: gf_isom_get_sample_size
      Src: /src/gpac/applications/mp4box/fileimport.c:284,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:285,1
    - Dst: gf_isom_get_sample_from_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:286,1
    - Dst: gf_isom_set_sample_padding
      Src: /src/gpac/applications/mp4box/fileimport.c:287,1
    - Dst: gf_isom_has_padding_bits
      Src: /src/gpac/applications/mp4box/fileimport.c:288,1
    - Dst: gf_isom_get_sample_padding_bits
      Src: /src/gpac/applications/mp4box/fileimport.c:289,1
    - Dst: gf_isom_keep_utc_times
      Src: /src/gpac/applications/mp4box/fileimport.c:290,1
    - Dst: gf_isom_set_single_moof_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:292,1
    - Dst: gf_isom_reset_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:293,1
    - Dst: gf_isom_set_traf_mss_timeext
      Src: /src/gpac/applications/mp4box/fileimport.c:294,1
    - Dst: gf_isom_get_next_moof_number
      Src: /src/gpac/applications/mp4box/fileimport.c:295,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/applications/mp4box/fileimport.c:296,1
    - Dst: gf_isom_get_audio_layout
      Src: /src/gpac/applications/mp4box/fileimport.c:299,1
    - Dst: gf_isom_get_track_switch_parameter
      Src: /src/gpac/applications/mp4box/fileimport.c:301,1
    - Dst: gf_isom_sample_has_subsamples
      Src: /src/gpac/applications/mp4box/fileimport.c:302,1
    - Dst: gf_isom_sample_get_subsample
      Src: /src/gpac/applications/mp4box/fileimport.c:303,1
    - Dst: gf_isom_hint_blank_data
      Src: /src/gpac/applications/mp4box/fileimport.c:305,1
    - Dst: gf_isom_hint_sample_description_data
      Src: /src/gpac/applications/mp4box/fileimport.c:306,1
    - Dst: gf_isom_get_payt_info
      Src: /src/gpac/applications/mp4box/fileimport.c:307,1
    - Dst: gf_isom_estimate_size
      Src: /src/gpac/applications/mp4box/fileimport.c:309,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: 314
      start: 254
    functionDepth: 1
    functionLinenumber: 254
    functionLinenumberEnd: 314
    functionName: set_chapter_track
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_duration
    - gf_isom_get_sample_count
    - gf_isom_get_audio_layout
    - gf_isom_set_sample_padding
    - gf_isom_set_single_moof_mode
    - gf_isom_get_sample_duration
    - gf_isom_get_sample_from_dts
    - gf_isom_hint_blank_data
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_dts
    - gf_isom_get_next_moof_number
    - gf_isom_reset_sample_count
    - gf_isom_set_fragment_reference_time
    - gf_isom_set_traf_mss_timeext
    - gf_isom_get_sample_size
    - gf_isom_estimate_size
    - gf_isom_hint_sample_description_data
    - gf_isom_set_track_reference
    - gf_isom_sample_get_subsample
    - gf_isom_set_track_enabled
    - gf_isom_get_track_id
    - gf_isom_get_sample_padding_bits
    - gf_isom_set_last_sample_duration
    - gf_isom_get_payt_info
    - gf_isom_keep_utc_times
    - gf_isom_has_padding_bits
    - gf_isom_get_track_switch_parameter
    - gf_sys_is_cov_mode
    - gf_isom_sample_has_subsamples
    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:320,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:324,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/applications/mp4box/fileimport.c:331,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - str
    - f
    - dur
    argTypes:
    - char*
    - GF_Fraction64*
    - GF_Fraction64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 333
    functionName: parse_fracs
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_parse_lfrac
    - strchr
    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:337,1
    - Dst: gf_cicp_parse_color_primaries
      Src: /src/gpac/applications/mp4box/fileimport.c:340,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:345,1
    - Dst: gf_cicp_parse_color_transfer
      Src: /src/gpac/applications/mp4box/fileimport.c:348,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:353,1
    - Dst: gf_cicp_parse_color_matrix
      Src: /src/gpac/applications/mp4box/fileimport.c:355,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:361,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:361,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:365,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:365,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:370,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: 374
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 374
    functionName: scan_color
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_cicp_parse_color_primaries
    - strchr
    - gf_cicp_parse_color_transfer
    - strcmp
    - gf_cicp_parse_color_matrix
    - sscanf
    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:386,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: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:395,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:396,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:398,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:406,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:409,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:412,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:421,1
    - Dst: gf_isom_set_dolby_vision_profile
      Src: /src/gpac/applications/mp4box/fileimport.c:429,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:430,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:434,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:436,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:441,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:456,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:459,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:460,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:462,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:468,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:473,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:483,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:485,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:495,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/fileimport.c:498,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/fileimport.c:500,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:502,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/applications/mp4box/fileimport.c:503,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/applications/mp4box/fileimport.c:509,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_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:514,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/applications/mp4box/fileimport.c:519,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:523,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/applications/mp4box/fileimport.c:529,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:530,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/applications/mp4box/fileimport.c:533,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:534,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/fileimport.c:536,1
    - Dst: gf_bs_seek
      Src: /src/gpac/applications/mp4box/fileimport.c:542,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:548,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:549,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:556,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:557,1
    - Dst: gf_dolby_vision_level
      Src: /src/gpac/applications/mp4box/fileimport.c:568,1
    - Dst: gf_isom_set_dolby_vision_profile
      Src: /src/gpac/applications/mp4box/fileimport.c:569,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: 570
      start: 378
    functionDepth: 1
    functionLinenumber: 378
    functionLinenumberEnd: 570
    functionName: set_dv_profile
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_odf_dovi_cfg_del
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_isom_get_media_duration
    - gf_isom_av1_config_get
    - gf_isom_get_sample_count
    - gf_bs_new
    - gf_bs_del
    - gf_isom_get_sample
    - gf_bs_seek
    - gf_odf_av1_cfg_del
    - gf_bs_skip_bytes
    - gf_isom_get_visual_info
    - strchr
    - gf_isom_get_media_timescale
    - gf_odf_hevc_cfg_del
    - M4_LOG
    - parse_u32
    - gf_isom_hevc_config_get
    - gf_isom_dovi_config_get
    - gf_dolby_vision_level
    - gf_isom_set_dolby_vision_profile
    - gf_bs_read_int
    - strcmp
    - gf_odf_avc_cfg_del
    - gf_av1_parse_obu_header
    - gf_av1_leb128_read
    - gf_isom_sample_del
    - memset
    - gf_isom_avc_config_get
    - gf_bs_available
    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:786,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:791,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:793,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/fileimport.c:808,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/fileimport.c:828,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:829,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:830,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:834,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:837,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:837,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/fileimport.c:841,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:849,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:860,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:865,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:866,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:868,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:869,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/fileimport.c:872,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:875,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:876,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/fileimport.c:877,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:879,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:882,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:884,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:886,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:887,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:888,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:892,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:893,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:895,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:897,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:903,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:908,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:909,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:914,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:915,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:922,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:923,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:926,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:931,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:932,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:933,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:936,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:940,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:941,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:943,1
    - Dst: CHECK_FAKEIMPORT
      Src: /src/gpac/applications/mp4box/fileimport.c:944,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:947,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:949,1
    - Dst: gf_dynstrcat
      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: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:1314,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1316,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1317,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1320,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1324,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1328,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1329,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:1330,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1332,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1333,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1333,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1334,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1334,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1337,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1340,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/applications/mp4box/fileimport.c:1341,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1343,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1350,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1353,1
    - Dst: gf_cicp_parse_color_primaries
      Src: /src/gpac/applications/mp4box/fileimport.c:1354,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1357,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1360,1
    - Dst: gf_cicp_parse_color_transfer
      Src: /src/gpac/applications/mp4box/fileimport.c:1361,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1364,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1367,1
    - Dst: gf_cicp_parse_color_matrix
      Src: /src/gpac/applications/mp4box/fileimport.c:1368,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1371,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1374,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1381,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1382,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1383,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:1390,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1393,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1397,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1402,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1405,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:1406,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1408,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1410,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:1411,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/fileimport.c:1413,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1418,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:1419,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1421,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:1423,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1425,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:1428,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:1429,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:1429,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1432,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:1440,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:1441,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1445,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:1452,1
    - Dst: mp4box_check_isom_fileopt
      Src: /src/gpac/applications/mp4box/fileimport.c:1454,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1455,1
    - Dst: mp4box_check_non_extk_fileopt
      Src: /src/gpac/applications/mp4box/fileimport.c:1457,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:1460,1
    - Dst: GOTO_EXIT
      Src: /src/gpac/applications/mp4box/fileimport.c:1462,1
    CyclomaticComplexity: 228
    EdgeCount: 228
    ICount: 776
    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: 1479
      start: 699
    functionDepth: 2
    functionLinenumber: 699
    functionLinenumberEnd: 1479
    functionName: import_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_cicp_parse_color_primaries
    - atof
    - GF_ARRAY_LENGTH
    - mp4box_check_non_extk_fileopt
    - gf_sys_old_arch_compat
    - gf_4cc_to_str
    - gf_list_add
    - strstr
    - mp4box_check_isom_fileopt
    - strchr
    - gf_malloc
    - gf_fopen
    - M4_LOG
    - parse_s32
    - gf_url_colon_suffix
    - gf_isom_get_next_alternate_group_id
    - gf_dynstrcat
    - CHECK_FAKEIMPORT_2
    - parse_u32
    - gf_strcpy
    - gf_file_ext_start
    - atoi
    - strnicmp
    - gf_ftell
    - strrchr
    - strcmp
    - gf_isom_probe_file
    - gf_list_new
    - strlen
    - gf_cicp_parse_color_matrix
    - sscanf
    - CHECK_FAKEIMPORT
    - gf_free
    - gf_fclose
    - GOTO_EXIT
    - stricmp
    - GF_4CC
    - scan_color
    - gf_fseek
    - gf_cicp_parse_color_transfer
    - gf_fread
    - gf_strdup
    - memset
    - gf_parse_frac
    - strncmp
    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: 852
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 852
    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: 854
      start: 853
    functionDepth: 0
    functionLinenumber: 853
    functionLinenumberEnd: 854
    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: 855
      start: 854
    functionDepth: 0
    functionLinenumber: 854
    functionLinenumberEnd: 855
    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:2294,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2296,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2303,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2305,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - _udta
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2278
    functionDepth: 1
    functionLinenumber: 2278
    functionLinenumberEnd: 2309
    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: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:2344,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2345,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/applications/mp4box/fileimport.c:2348,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2350,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2355,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/mp4box/fileimport.c:2356,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2359,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2359,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2360,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:2365,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2366,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2369,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2372,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2374,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2375,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2380,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2382,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2384,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/applications/mp4box/fileimport.c:2385,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2386,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/applications/mp4box/fileimport.c:2389,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2390,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2397,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2398,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2401,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2406,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2409,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2411,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2413,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2417,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2418,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2419,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2425,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2426,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2432,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2433,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2435,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2436,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2443,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2444,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2447,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2448,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2453,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2454,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:2460,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2461,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2467,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2469,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2472,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2475,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2478,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2481,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2482,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2484,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2487,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2488,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2489,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2494,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/mp4box/fileimport.c:2496,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2497,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2500,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2500,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2501,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2506,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:2508,1
    - Dst: gf_dir_exists
      Src: /src/gpac/applications/mp4box/fileimport.c:2510,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:2511,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2513,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2515,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2516,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2517,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2520,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:2520,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:2520,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/fileimport.c:2521,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2523,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2524,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2528,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2529,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2530,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2533,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2537,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:2539,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2540,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:2543,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/applications/mp4box/fileimport.c:2545,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2547,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2547,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2548,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/applications/mp4box/fileimport.c:2552,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:2554,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/applications/mp4box/fileimport.c:2556,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/applications/mp4box/fileimport.c:2558,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/applications/mp4box/fileimport.c:2560,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/applications/mp4box/fileimport.c:2561,1
    - Dst: on_split_event
      Src: /src/gpac/applications/mp4box/fileimport.c:2565,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/mp4box/fileimport.c:2570,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/applications/mp4box/fileimport.c:2572,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/applications/mp4box/fileimport.c:2574,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/applications/mp4box/fileimport.c:2576,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/applications/mp4box/fileimport.c:2577,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/applications/mp4box/fileimport.c:2578,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2580,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2583,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:2583,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: 2585
      start: 2315
    functionDepth: 2
    functionLinenumber: 2315
    functionLinenumberEnd: 2585
    functionName: split_isomedia_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_fs_enable_reporting
    - gf_fs_print_stats
    - gf_fs_set_ui_callback
    - gf_fs_print_non_connected
    - strchr
    - gf_fs_get_last_connect_error
    - M4_LOG
    - gf_dir_exists
    - gf_fs_load_destination
    - gf_dynstrcat
    - gf_sys_is_test_mode
    - gf_filter_set_source
    - gf_strcpy
    - gf_file_ext_start
    - gf_fs_get_last_process_error
    - strrchr
    - gf_sys_is_quiet
    - gf_fs_load_filter
    - strcmp
    - strlen
    - gf_error_to_string
    - gf_fs_new_defaults
    - sprintf
    - gf_free
    - gf_sys_find_global_arg
    - gf_fs_del
    - gf_strcat
    - gf_fs_run
    - stricmp
    - gf_isom_get_duration
    - gf_log_get_tool_level
    - on_split_event
    - gf_isom_get_timescale
    - gf_fs_print_connections
    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:2565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2566
      start: 2564
    functionDepth: 2
    functionLinenumber: 2564
    functionLinenumberEnd: 2566
    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:2592,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2594,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2595,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2596,1
    - Dst: memcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:2597,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - src
    - dst
    - name
    argTypes:
    - GF_List*
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2607
      start: 2589
    functionDepth: 1
    functionLinenumber: 2589
    functionLinenumberEnd: 2607
    functionName: merge_parameter_set
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - memcmp
    - gf_list_get
    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:2613,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2615,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2616,1
    - Dst: gf_media_nal_rewrite_samples
      Src: /src/gpac/applications/mp4box/fileimport.c:2628,1
    - Dst: merge_parameter_set
      Src: /src/gpac/applications/mp4box/fileimport.c:2636,1
    - Dst: merge_parameter_set
      Src: /src/gpac/applications/mp4box/fileimport.c:2638,1
    - Dst: gf_isom_avc_config_update
      Src: /src/gpac/applications/mp4box/fileimport.c:2641,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2645,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2646,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2650,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:2651,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/applications/mp4box/fileimport.c:2654,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2656,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: 2660
      start: 2609
    functionDepth: 2
    functionLinenumber: 2609
    functionLinenumberEnd: 2660
    functionName: merge_avc_config
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_isom_avc_config_update
    - merge_parameter_set
    - M4_LOG
    - gf_isom_get_track_by_id
    - gf_isom_set_nalu_extract_mode
    - gf_odf_avc_cfg_del
    - gf_isom_avc_set_inband_config
    - gf_media_nal_rewrite_samples
    - gf_isom_avc_config_get
    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:2667,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2669,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2670,1
    - Dst: gf_media_nal_rewrite_samples
      Src: /src/gpac/applications/mp4box/fileimport.c:2678,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2686,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2688,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2689,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:2690,1
    - Dst: merge_parameter_set
      Src: /src/gpac/applications/mp4box/fileimport.c:2692,1
    - Dst: gf_isom_hevc_config_update
      Src: /src/gpac/applications/mp4box/fileimport.c:2699,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2702,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2703,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2706,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/fileimport.c:2707,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/applications/mp4box/fileimport.c:2709,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2711,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: 2715
      start: 2662
    functionDepth: 2
    functionLinenumber: 2662
    functionLinenumberEnd: 2715
    functionName: merge_hevc_config
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - merge_parameter_set
    - gf_isom_hevc_set_inband_config
    - gf_odf_hevc_cfg_del
    - M4_LOG
    - gf_isom_get_track_by_id
    - gf_isom_set_nalu_extract_mode
    - gf_media_nal_rewrite_samples
    - gf_list_get
    - gf_isom_hevc_config_update
    - gf_isom_hevc_config_get
    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:2721,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/fileimport.c:2722,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/applications/mp4box/fileimport.c:2726,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/applications/mp4box/fileimport.c:2731,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/fileimport.c:2735,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/mp4box/fileimport.c:2741,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/fileimport.c:2742,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2745,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/applications/mp4box/fileimport.c:2748,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2751,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/fileimport.c:2752,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2753,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: 2755
      start: 2717
    functionDepth: 1
    functionLinenumber: 2717
    functionLinenumberEnd: 2755
    functionName: rewrite_nal_size_field
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_write_data
    - 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:2774,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2776,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2776,1
    - Dst: cat_multiple_files
      Src: /src/gpac/applications/mp4box/fileimport.c:2777,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2779,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:2785,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2790,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:2793,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2795,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:2797,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:2802,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/fileimport.c:2804,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2807,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:2809,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:2816,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/fileimport.c:2819,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:2821,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2830,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2832,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2837,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2837,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/fileimport.c:2837,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/fileimport.c:2854,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2855,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2862,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:2866,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2867,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2868,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2868,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2870,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2874,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2875,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:2878,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:2879,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:2880,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/applications/mp4box/fileimport.c:2881,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:2887,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2900,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/fileimport.c:2921,1
    - Dst: gf_isom_get_track_original_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2927,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2929,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:2932,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2936,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:2939,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:2940,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:2965,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2966,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/applications/mp4box/fileimport.c:2967,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:2968,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:2970,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:2971,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/applications/mp4box/fileimport.c:2982,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:2984,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2985,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/applications/mp4box/fileimport.c:2989,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:2991,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:2992,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:3015,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/fileimport.c:3017,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3019,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3019,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/applications/mp4box/fileimport.c:3021,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3027,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3029,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3030,1
    - Dst: merge_avc_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3042,1
    - Dst: merge_hevc_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3049,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3058,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3060,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/applications/mp4box/fileimport.c:3063,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3075,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/fileimport.c:3075,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/applications/mp4box/fileimport.c:3076,1
    - Dst: gf_isom_clone_pl_indications
      Src: /src/gpac/applications/mp4box/fileimport.c:3078,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3086,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3087,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3091,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3096,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3099,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/applications/mp4box/fileimport.c:3104,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3106,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3109,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3110,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3113,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:3116,1
    - Dst: gf_isom_get_sample_dts
      Src: /src/gpac/applications/mp4box/fileimport.c:3116,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3122,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3123,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3124,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3125,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3129,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3134,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3135,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/applications/mp4box/fileimport.c:3144,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3147,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3151,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:3154,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/fileimport.c:3156,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/fileimport.c:3168,1
    - Dst: rewrite_nal_size_field
      Src: /src/gpac/applications/mp4box/fileimport.c:3170,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3172,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:3176,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3179,1
    - Dst: gf_isom_add_sample_reference
      Src: /src/gpac/applications/mp4box/fileimport.c:3180,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3181,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3190,1
    - Dst: gf_isom_copy_sample_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3193,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3197,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3198,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/fileimport.c:3201,1
    - Dst: gf_isom_update_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_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3210,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3214,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3216,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3217,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3221,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3222,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3229,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3232,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3236,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3237,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3238,1
    - Dst: gf_isom_modify_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3239,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3248,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3250,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3252,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3255,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3258,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3259,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3264,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3272,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3273,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3276,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3278,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3294,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3297,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3298,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3299,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:3300,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/applications/mp4box/fileimport.c:3301,1
    - Dst: gf_media_update_bitrate
      Src: /src/gpac/applications/mp4box/fileimport.c:3304,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3307,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3308,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3310,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3311,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:3311,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3317,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3318,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3318,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3319,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/applications/mp4box/fileimport.c:3320,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/fileimport.c:3324,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3327,1
    - Dst: gf_isom_get_alternate_brand
      Src: /src/gpac/applications/mp4box/fileimport.c:3330,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/fileimport.c:3331,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3334,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/fileimport.c:3338,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3344,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/fileimport.c:3347,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3347,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3349,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/applications/mp4box/fileimport.c:3353,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:3358,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: 3360
      start: 2760
    functionDepth: 2
    functionLinenumber: 2760
    functionLinenumberEnd: 3360
    functionName: cat_isomedia_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_isom_last_error
    - gf_isom_get_media_type
    - gf_isom_get_media_duration
    - gf_isom_add_sample
    - gf_isom_get_edit
    - gf_isom_get_sample_count
    - gf_isom_is_video_handler_type
    - gf_isom_get_sample
    - gf_isom_is_same_sample_description
    - gf_isom_clone_track
    - gf_isom_remove_edits
    - gf_isom_get_edits_count
    - gf_isom_get_sample_duration
    - gf_isom_get_visual_info
    - strchr
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_dts
    - gf_isom_get_sample_info
    - gf_isom_get_chapter_count
    - gf_isom_copy_sample_info
    - M4_LOG
    - gf_timestamp_rescale
    - gf_url_colon_suffix
    - gf_isom_enable_raw_pack
    - gf_isom_get_brand_info
    - gf_isom_get_media_language
    - gf_isom_update_duration
    - cat_multiple_files
    - gf_isom_get_sample_description_count
    - rewrite_nal_size_field
    - gf_isom_set_edit
    - gf_isom_set_timescale
    - gf_isom_get_alternate_brand
    - merge_avc_config
    - gf_isom_set_media_timescale
    - gf_isom_is_self_contained
    - gf_set_progress
    - gf_isom_modify_edit
    - gf_isom_get_track_original_id
    - gf_isom_probe_file
    - gf_timestamp_less
    - gf_isom_get_track_id
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - import_file
    - gf_free
    - merge_hevc_config
    - gf_isom_clone_sample_description
    - gf_isom_set_last_sample_duration
    - gf_isom_get_chapter
    - gf_isom_open
    - gf_isom_get_track_by_id
    - GF_4CC
    - gf_isom_get_duration
    - gf_isom_modify_alternate_brand
    - stricmp
    - cat_playlist
    - gf_isom_sample_del
    - gf_media_update_bitrate
    - gf_isom_add_chapter
    - gf_isom_add_sample_reference
    - gf_isom_delete
    - gf_isom_get_timescale
    - gf_4cc_to_str
    - gf_isom_clone_pl_indications
    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:3379,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3380,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3381,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:3381,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3383,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:3384,1
    - Dst: cat_isomedia_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3386,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: 3389
      start: 3373
    functionDepth: 3
    functionLinenumber: 3373
    functionLinenumberEnd: 3389
    functionName: cat_enumerate
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_strcat
    - strnicmp
    - strlen
    - strstr
    - cat_isomedia_file
    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:3404,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3405,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3408,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3409,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3410,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3412,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: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3417,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3419,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3420,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3423,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3426,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3427,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3428,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3429,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3432,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/applications/mp4box/fileimport.c:3435,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3435,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3436,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/fileimport.c:3437,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3438,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3440,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3441,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3444,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3447,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    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: 3448
      start: 3391
    functionDepth: 1
    functionLinenumber: 3391
    functionLinenumberEnd: 3448
    functionName: cat_multiple_files
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - strchr
    - GF_LOG
    - gf_sys_old_arch_compat
    - gf_url_colon_suffix
    - strrchr
    - strlen
    - gf_enum_directory
    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:3453,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3455,1
    - Dst: feof
      Src: /src/gpac/applications/mp4box/fileimport.c:3460,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/mp4box/fileimport.c:3465,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:3467,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3468,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/mp4box/fileimport.c:3474,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3475,1
    - Dst: cat_isomedia_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3477,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3481,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3482,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3485,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:3487,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: 3489
      start: 3450
    functionDepth: 3
    functionLinenumber: 3450
    functionLinenumberEnd: 3489
    functionName: cat_playlist
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 1
    functionsReached:
    - strchr
    - gf_free
    - gf_fclose
    - gf_fgets
    - gf_fopen
    - GF_LOG
    - gf_strdup
    - gf_url_concatenate
    - strlen
    - feof
    - cat_isomedia_file
    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:3509,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3510,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:3511,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/fileimport.c:3521,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3523,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3524,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3524,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/fileimport.c:3527,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3528,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3532,1
    - Dst: gf_sm_stats_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3533,1
    - Dst: gf_sm_stats_for_scene
      Src: /src/gpac/applications/mp4box/fileimport.c:3534,1
    - Dst: gf_sm_stats_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3536,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3540,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3543,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3547,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3548,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3549,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3551,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3554,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3557,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3566,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3567,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3569,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/fileimport.c:3573,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3574,1
    - Dst: gf_list_insert
      Src: /src/gpac/applications/mp4box/fileimport.c:3575,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3607,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3607,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_sm_encode_to_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3616,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/fileimport.c:3618,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/applications/mp4box/fileimport.c:3619,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/mp4box/fileimport.c:3623,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/fileimport.c:3624,1
    - Dst: gf_sm_stats_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3628,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3630,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3631,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: 3635
      start: 3496
    functionDepth: 1
    functionLinenumber: 3496
    functionLinenumberEnd: 3635
    functionName: EncodeFile
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_sg_new
    - gf_node_new
    - gf_log_set_callback
    - gf_sm_encode_to_file
    - M4_LOG
    - gf_sm_stats_for_scene
    - gf_sm_stats_new
    - gf_list_get
    - gf_list_insert
    - gf_isom_set_brand_info
    - gf_log_set_tool_level
    - gf_sm_new
    - gf_sm_stats_get
    - gf_sg_del
    - gf_error_to_string
    - gf_sg_command_field_new
    - gf_sg_command_new
    - gf_sm_load_done
    - gf_sm_stats_del
    - gf_isom_modify_alternate_brand
    - gf_sm_load_init
    - gf_node_register
    - gf_sm_load_run
    - memset
    - gf_sm_del
    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: 3649
      start: 3644
    functionDepth: 0
    functionLinenumber: 3644
    functionLinenumberEnd: 3649
    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: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3667,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3668,1
    - Dst: gf_bifs_encoder_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3673,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3680,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3681,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3687,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:3697,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3698,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3706,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3715,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3717,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3727,1
    - Dst: gf_odf_get_bifs_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3737,1
    - Dst: GetNbBits
      Src: /src/gpac/applications/mp4box/fileimport.c:3741,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3743,1
    - Dst: GetNbBits
      Src: /src/gpac/applications/mp4box/fileimport.c:3745,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3747,1
    - Dst: GetNbBits
      Src: /src/gpac/applications/mp4box/fileimport.c:3749,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3751,1
    - Dst: gf_bifs_encoder_new_stream
      Src: /src/gpac/applications/mp4box/fileimport.c:3757,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3758,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3760,1
    - Dst: gf_bifs_encoder_get_config
      Src: /src/gpac/applications/mp4box/fileimport.c:3764,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3766,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3767,1
    - Dst: gf_bifs_encoder_get_version
      Src: /src/gpac/applications/mp4box/fileimport.c:3770,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:3772,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:3773,1
    - Dst: gf_bifs_encode_au
      Src: /src/gpac/applications/mp4box/fileimport.c:3774,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3776,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:3777,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/fileimport.c:3778,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:3779,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3780,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3784,1
    - Dst: gf_bifs_encoder_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3786,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 113
    argCount: 2
    argNames:
    - ctx
    - bifsOutputFile
    argTypes:
    - GF_SceneManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3788
      start: 3652
    functionDepth: 1
    functionLinenumber: 3652
    functionLinenumberEnd: 3788
    functionName: EncodeBIFSChunk
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bifs_encoder_new
    - gf_fwrite
    - GetNbBits
    - gf_bifs_encoder_del
    - gf_fopen
    - gf_bifs_encode_au
    - M4_LOG
    - gf_list_get
    - gf_bifs_encoder_get_version
    - gf_strcpy
    - strrchr
    - gf_odf_desc_del
    - sprintf
    - gf_fclose
    - gf_free
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_odf_get_bifs_config
    - gf_bifs_encoder_get_config
    - gf_bifs_encoder_new_stream
    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:3804,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3813,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3814,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:3815,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/fileimport.c:3820,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/fileimport.c:3821,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3822,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3824,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3824,1
    - Dst: gf_sm_aggregate
      Src: /src/gpac/applications/mp4box/fileimport.c:3829,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:3833,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/fileimport.c:3837,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/fileimport.c:3838,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/fileimport.c:3839,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3841,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3841,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3844,1
    - Dst: EncodeBIFSChunk
      Src: /src/gpac/applications/mp4box/fileimport.c:3850,1
    - Dst: gf_sm_aggregate
      Src: /src/gpac/applications/mp4box/fileimport.c:3859,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3863,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3864,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3868,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3868,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3869,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/fileimport.c:3875,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:3876,1
    - Dst: gf_sm_encode_to_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3877,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:3878,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/fileimport.c:3879,1
    - Dst: gf_sm_dump
      Src: /src/gpac/applications/mp4box/fileimport.c:3881,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3887,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3888,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 74
    argCount: 4
    argNames:
    - chunkFile
    - bifs
    - inputContext
    - outputContext
    argTypes:
    - char*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3895
      start: 3801
    functionDepth: 2
    functionLinenumber: 3801
    functionLinenumberEnd: 3895
    functionName: EncodeFileChunk
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_sg_new
    - gf_sm_del
    - gf_sm_encode_to_file
    - M4_LOG
    - gf_strcpy
    - gf_sm_new
    - strrchr
    - gf_sg_del
    - gf_sm_load_run
    - gf_error_to_string
    - gf_sm_dump
    - gf_sm_aggregate
    - gf_sm_load_done
    - gf_strcat
    - gf_isom_open
    - stricmp
    - gf_sm_load_init
    - gf_isom_close
    - memset
    - gf_isom_delete
    - EncodeBIFSChunk
    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:3907,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3907,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3911,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3911,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3913,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:3914,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:3914,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3915,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/fileimport.c:3916,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3916,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: 3918
      start: 3900
    functionDepth: 1
    functionLinenumber: 3900
    functionLinenumberEnd: 3918
    functionName: sax_node_start
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - sprintf
    - atoi
    - stricmp
    - strnicmp
    - strcmp
    - gf_strdup
    - gf_list_add
    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:3924,1
    - Dst: gf_list_add
      Src: /src/gpac/applications/mp4box/fileimport.c:3927,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3927,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: 3929
      start: 3920
    functionDepth: 1
    functionLinenumber: 3920
    functionLinenumberEnd: 3929
    functionName: wgt_enum_files
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_add
    - strcmp
    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:3932,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3932,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3932,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3933,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3934,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: 3936
      start: 3930
    functionDepth: 1
    functionLinenumber: 3930
    functionLinenumberEnd: 3936
    functionName: wgt_enum_dir
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - stricmp
    - gf_enum_directory
    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:3950,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3952,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/fileimport.c:3952,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:3956,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:3957,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3958,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:3961,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:3962,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3965,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3971,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:3972,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3976,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/fileimport.c:3979,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3984,1
    - Dst: gf_enum_directory
      Src: /src/gpac/applications/mp4box/fileimport.c:3985,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/applications/mp4box/fileimport.c:3988,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3989,1
    - Dst: gf_xml_sax_binary_file
      Src: /src/gpac/applications/mp4box/fileimport.c:3990,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/applications/mp4box/fileimport.c:3991,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/fileimport.c:3997,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4000,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4001,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4002,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4003,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4006,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4013,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:4015,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:4018,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/mp4box/fileimport.c:4020,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/fileimport.c:4021,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4025,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/mp4box/fileimport.c:4026,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4029,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4032,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/fileimport.c:4033,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4034,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4036,1
    - Dst: gf_list_rem
      Src: /src/gpac/applications/mp4box/fileimport.c:4040,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4046,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:4051,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/fileimport.c:4053,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4056,1
    - Dst: gf_isom_add_meta_item
      Src: /src/gpac/applications/mp4box/fileimport.c:4060,1
    - Dst: gf_isom_set_meta_xml
      Src: /src/gpac/applications/mp4box/fileimport.c:4063,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:4066,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4067,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/fileimport.c:4070,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/fileimport.c:4072,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4076,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4084,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4085,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4085,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4087,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4087,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4088,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4089,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4090,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4091,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4092,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4095,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4095,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4099,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4099,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4103,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4103,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/applications/mp4box/fileimport.c:4108,1
    - Dst: gf_isom_add_meta_item
      Src: /src/gpac/applications/mp4box/fileimport.c:4110,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4111,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4112,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4117,1
    - Dst: gf_list_last
      Src: /src/gpac/applications/mp4box/fileimport.c:4118,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/applications/mp4box/fileimport.c:4119,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4120,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4122,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4123,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/fileimport.c:4124,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/fileimport.c:4126,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 183
    argCount: 3
    argNames:
    - file_name
    - fcc
    - make_wgt
    argTypes:
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4130
      start: 3938
    functionDepth: 1
    functionLinenumber: 3938
    functionLinenumberEnd: 4130
    functionName: package_file
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_binary_file
    - gf_list_count
    - gf_url_concatenate
    - gf_list_rem_last
    - gf_isom_add_meta_item
    - gf_enum_directory
    - gf_xml_get_root_type
    - strchr
    - gf_isom_set_meta_type
    - gf_fopen
    - M4_LOG
    - gf_isom_set_meta_xml
    - gf_list_get
    - gf_list_last
    - gf_strcpy
    - gf_xml_sax_del
    - gf_xml_sax_new
    - strrchr
    - strcmp
    - gf_list_new
    - gf_isom_probe_file
    - strlen
    - gf_error_to_string
    - gf_free
    - gf_fclose
    - gf_list_del
    - gf_isom_open
    - GF_4CC
    - stricmp
    - gf_xml_sax_parse_file
    - gf_strdup
    - gf_isom_delete
    - 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:4141,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:4142,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4144,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4145,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4146,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4146,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/applications/mp4box/fileimport.c:4147,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/fileimport.c:4153,1
    - Dst: gf_xml_dom_parse
      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_get_line
      Src: /src/gpac/applications/mp4box/fileimport.c:4156,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/mp4box/fileimport.c:4156,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4157,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/applications/mp4box/fileimport.c:4160,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4162,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4163,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4166,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4167,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4168,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4173,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4179,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4183,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4184,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4185,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:4186,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4188,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4191,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4196,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4201,1
    - Dst: gf_list_enum
      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: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4208,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4208,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4209,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4209,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4210,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4210,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4211,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4211,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4212,1
    - Dst: parse_u32
      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: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4214,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4216,1
    - Dst: gf_list_enum
      Src: /src/gpac/applications/mp4box/fileimport.c:4218,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4219,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4219,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/fileimport.c:4220,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/fileimport.c:4220,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4221,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/fileimport.c:4224,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4230,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4231,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/fileimport.c:4231,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/applications/mp4box/fileimport.c:4232,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/applications/mp4box/fileimport.c:4237,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4240,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/fileimport.c:4245,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 109
    argCount: 3
    argNames:
    - movie
    - track
    - file_name
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4247
      start: 4132
    functionDepth: 1
    functionLinenumber: 4132
    functionLinenumberEnd: 4247
    functionName: apply_high_dynamc_range_xml_desc
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - fprintf
    - gf_isom_get_track_count
    - gf_xml_dom_parse
    - gf_isom_set_high_dynamic_range_info
    - gf_isom_get_media_type
    - gf_xml_dom_del
    - M4_LOG
    - gf_xml_dom_get_line
    - gf_isom_is_video_handler_type
    - gf_list_enum
    - parse_u32
    - gf_isom_get_track_by_id
    - gf_xml_dom_new
    - strcmp
    - memset
    - gf_xml_dom_get_error
    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:4257,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/fileimport.c:4259,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/fileimport.c:4260,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:4267,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/fileimport.c:4268,1
    - Dst: gf_feof
      Src: /src/gpac/applications/mp4box/fileimport.c:4269,1
    - Dst: gf_fgets
      Src: /src/gpac/applications/mp4box/fileimport.c:4272,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/fileimport.c:4274,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4275,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/fileimport.c:4282,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4284,1
    - Dst: atoi
      Src: /src/gpac/applications/mp4box/fileimport.c:4286,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/applications/mp4box/fileimport.c:4287,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/fileimport.c:4296,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:4299,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/fileimport.c:4301,1
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/applications/mp4box/fileimport.c:4327,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:4331,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4333,1
    - Dst: gf_isom_get_sample_info_ex
      Src: /src/gpac/applications/mp4box/fileimport.c:4343,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:4347,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4349,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4354,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/fileimport.c:4356,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/applications/mp4box/fileimport.c:4360,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/fileimport.c:4364,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: 4366
      start: 4249
    functionDepth: 1
    functionLinenumber: 4249
    functionLinenumberEnd: 4366
    functionName: apply_timestamps
    functionSourceFile: /src/gpac/applications/mp4box/fileimport.c
    functionUses: 0
    functionsReached:
    - gf_feof
    - strchr
    - gf_fclose
    - gf_isom_remove_sample
    - atoi
    - gf_fopen
    - M4_LOG
    - gf_isom_get_sample_count
    - gf_isom_get_track_by_id
    - sscanf
    - gf_isom_set_media_timescale
    - gf_isom_get_sample_info_ex
    - strlen
    - gf_fgets
    - memset
    - gf_isom_update_sample
    - strstr
    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:
    - fflush
    - va_end
    - vfprintf
    - va_start
    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:
    - fprintf
    - gf_lang_get_name
    - gf_lang_get_count
    - gf_lang_get_2cc
    - gf_lang_get_3cc
    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_fopen
    - M4_LOG
    - gf_fwrite
    - gf_isom_apple_get_tag
    - gf_dynstrcat
    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:
    - fprintf
    - gf_list_count
    - gf_isom_last_error
    - GF_ARRAY_LENGTH
    - gf_sg_new
    - snprintf
    - gf_log_set_callback
    - gf_fopen
    - M4_LOG
    - gf_isom_disable_odf_conversion
    - gf_log_set_tool_level
    - gf_sm_new
    - get_file_type_by_ext
    - gf_sg_del
    - gf_error_to_string
    - gf_sm_dump
    - import_file
    - gf_fclose
    - gf_sm_load_done
    - gf_isom_open
    - gf_sm_load_init
    - gf_sm_load_run
    - memset
    - gf_isom_delete
    - gf_sm_del
    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:
    - fprintf
    - gf_list_count
    - FIX2FLT
    - gf_list_get
    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_add
    - gf_list_insert
    - gf_list_get
    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:382,1
    - Dst: gf_sm_new
      Src: /src/gpac/applications/mp4box/filedump.c:383,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:384,1
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/filedump.c:388,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/filedump.c:389,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:391,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:391,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:391,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/filedump.c:392,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:393,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/applications/mp4box/filedump.c:398,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/applications/mp4box/filedump.c:399,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/applications/mp4box/filedump.c:400,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:404,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:405,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:406,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:408,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:417,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:419,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:420,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/mp4box/filedump.c:421,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:422,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/mp4box/filedump.c:422,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:423,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:425,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/mp4box/filedump.c:425,1
    - Dst: gf_sm_stats_new
      Src: /src/gpac/applications/mp4box/filedump.c:427,1
    - Dst: gf_sm_stats_for_scene
      Src: /src/gpac/applications/mp4box/filedump.c:431,1
    - Dst: dump_stats
      Src: /src/gpac/applications/mp4box/filedump.c:432,1
    - Dst: gf_sm_stats_get
      Src: /src/gpac/applications/mp4box/filedump.c:432,1
    - Dst: gf_list_new
      Src: /src/gpac/applications/mp4box/filedump.c:436,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:438,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:439,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:441,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:442,1
    - Dst: ReorderAU
      Src: /src/gpac/applications/mp4box/filedump.c:443,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:447,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:449,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:451,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:452,1
    - Dst: gf_sm_stats_for_command
      Src: /src/gpac/applications/mp4box/filedump.c:455,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/applications/mp4box/filedump.c:459,1
    - Dst: gf_sm_stats_for_graph
      Src: /src/gpac/applications/mp4box/filedump.c:463,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:467,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:469,1
    - Dst: dump_stats
      Src: /src/gpac/applications/mp4box/filedump.c:472,1
    - Dst: gf_sm_stats_get
      Src: /src/gpac/applications/mp4box/filedump.c:472,1
    - Dst: gf_sm_stats_reset
      Src: /src/gpac/applications/mp4box/filedump.c:474,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:476,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:478,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:481,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/mp4box/filedump.c:486,1
    - Dst: gf_sm_stats_del
      Src: /src/gpac/applications/mp4box/filedump.c:487,1
    - Dst: gf_sm_del
      Src: /src/gpac/applications/mp4box/filedump.c:488,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:489,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/filedump.c:490,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:492,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:492,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:494,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:496,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:497,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 115
    argCount: 4
    argNames:
    - file
    - inName
    - is_final_name
    - stat_level
    argTypes:
    - char*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 362
    functionDepth: 2
    functionLinenumber: 362
    functionLinenumberEnd: 498
    functionName: dump_isom_scene_stats
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_isom_last_error
    - gf_gpac_version
    - gf_file_basename
    - gf_sm_stats_for_command
    - dump_stats
    - gf_sg_new
    - gf_sg_command_apply
    - gf_sm_stats_reset
    - gf_fopen
    - M4_LOG
    - gf_sm_stats_for_scene
    - gf_sm_stats_new
    - gf_sys_is_test_mode
    - gf_list_get
    - gf_sm_stats_for_graph
    - gf_strcpy
    - gf_sm_new
    - gf_set_progress
    - get_file_type_by_ext
    - gf_sg_del
    - gf_sm_stats_get
    - gf_list_new
    - gf_error_to_string
    - ReorderAU
    - gf_fclose
    - gf_sm_load_done
    - gf_strcat
    - gf_list_del
    - gf_isom_open
    - gf_sm_stats_del
    - gf_sm_load_init
    - gf_sm_load_run
    - memset
    - gf_isom_delete
    - gf_sm_del
    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: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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:510,1
    - Dst: FIX2FLT
      Src: /src/gpac/applications/mp4box/filedump.c:510,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - val
    - add_space
    argTypes:
    - Fixed
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 511
    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:518,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:521,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:524,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:527,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:530,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:531,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:536,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:542,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:545,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:546,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:547,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:551,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:553,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 2
    argNames:
    - type
    - far_ptr
    argTypes:
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 513
    functionDepth: 2
    functionLinenumber: 513
    functionLinenumberEnd: 556
    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:570,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/mp4box/filedump.c:575,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:576,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:579,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/filedump.c:588,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/filedump.c:589,1
    - Dst: gf_node_in_table_by_tag
      Src: /src/gpac/applications/mp4box/filedump.c:590,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:591,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/filedump.c:592,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:593,1
    - Dst: gf_node_unregister
      Src: /src/gpac/applications/mp4box/filedump.c:596,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:604,1
    - Dst: gf_bifs_get_child_table
      Src: /src/gpac/applications/mp4box/filedump.c:606,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/applications/mp4box/filedump.c:607,1
    - Dst: gf_sg_script_get_field_index
      Src: /src/gpac/applications/mp4box/filedump.c:610,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_get_num_fields_in_mode
      Src: /src/gpac/applications/mp4box/filedump.c:615,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:619,1
    - Dst: gf_node_in_table_by_tag
      Src: /src/gpac/applications/mp4box/filedump.c:622,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/applications/mp4box/filedump.c:622,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:625,1
    - Dst: gf_node_get_field
      Src: /src/gpac/applications/mp4box/filedump.c:628,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:630,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:634,1
    - Dst: gf_sg_vrml_get_event_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:634,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:634,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:635,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:636,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/applications/mp4box/filedump.c:637,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:638,1
    - Dst: PrintNodeSFField
      Src: /src/gpac/applications/mp4box/filedump.c:639,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:644,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/applications/mp4box/filedump.c:645,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:647,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/applications/mp4box/filedump.c:648,1
    - Dst: PrintNodeSFField
      Src: /src/gpac/applications/mp4box/filedump.c:649,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:651,1
    - Dst: gf_bifs_get_aq_info
      Src: /src/gpac/applications/mp4box/filedump.c:654,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:656,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:657,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:659,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:660,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:661,1
    - Dst: PrintFixed
      Src: /src/gpac/applications/mp4box/filedump.c:662,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:663,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:668,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/applications/mp4box/filedump.c:671,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:674,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: 676
      start: 560
    functionDepth: 3
    functionLinenumber: 560
    functionLinenumberEnd: 676
    functionName: do_print_node
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_node_get_tag
    - gf_node_x3d_type_by_class_name
    - gf_bifs_get_child_table
    - gf_node_get_class_name
    - gf_node_new
    - gf_sg_vrml_is_sf_field
    - gf_node_unregister
    - gf_sg_vrml_get_field_type_name
    - M4_LOG
    - gf_sg_vrml_mf_get_item
    - gf_node_get_field
    - PrintFixed
    - gf_sg_script_get_field_index
    - strcmp
    - gf_node_get_field_count
    - gf_bifs_get_aq_info
    - gf_node_mpeg4_type_by_class_name
    - gf_node_get_num_fields_in_mode
    - gf_sg_vrml_get_event_type_name
    - PrintNodeSFField
    - gf_node_register
    - gf_sg_vrml_get_sf_type
    - gf_node_get_field_by_name
    - gf_node_in_table_by_tag
    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:683,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/filedump.c:694,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:702,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:705,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:709,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:713,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/filedump.c:717,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/filedump.c:718,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/filedump.c:719,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:720,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:722,1
    - Dst: do_print_node
      Src: /src/gpac/applications/mp4box/filedump.c:725,1
    - Dst: gf_node_unregister
      Src: /src/gpac/applications/mp4box/filedump.c:727,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:728,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 2
    argNames:
    - name
    - graph_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 680
    functionDepth: 4
    functionLinenumber: 680
    functionLinenumberEnd: 731
    functionName: PrintNode
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - strchr
    - M4_LOG
    - gf_node_x3d_type_by_class_name
    - gf_node_get_class_name
    - do_print_node
    - gf_sg_new
    - gf_node_new
    - gf_node_register
    - gf_sg_del
    - gf_node_unregister
    - gf_node_mpeg4_type_by_class_name
    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:750,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:755,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:763,1
    - Dst: gf_sg_new
      Src: /src/gpac/applications/mp4box/filedump.c:771,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:774,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:776,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:778,1
    - Dst: gf_node_new
      Src: /src/gpac/applications/mp4box/filedump.c:781,1
    - Dst: gf_node_register
      Src: /src/gpac/applications/mp4box/filedump.c:783,1
    - Dst: do_print_node
      Src: /src/gpac/applications/mp4box/filedump.c:785,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:785,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:787,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/applications/mp4box/filedump.c:787,1
    - Dst: gf_node_unregister
      Src: /src/gpac/applications/mp4box/filedump.c:789,1
    - Dst: gf_sg_del
      Src: /src/gpac/applications/mp4box/filedump.c:797,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:799,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:801,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/applications/mp4box/filedump.c:806,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:808,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/applications/mp4box/filedump.c:809,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:815,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 66
    argCount: 2
    argNames:
    - arg_val
    - dump_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 733
    functionDepth: 4
    functionLinenumber: 733
    functionLinenumberEnd: 818
    functionName: PrintBuiltInNodes
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_sg_vrml_field_pointer_new
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - M4_LOG
    - gf_node_get_class_name
    - do_print_node
    - gf_sg_new
    - gf_node_new
    - gf_node_register
    - gf_sg_del
    - gf_node_unregister
    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:823,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:825,1
    - Dst: gf_isom_dump_supported_box
      Src: /src/gpac/applications/mp4box/filedump.c:829,1
    - Dst: gf_isom_get_supported_box_type
      Src: /src/gpac/applications/mp4box/filedump.c:833,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/applications/mp4box/filedump.c:834,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/applications/mp4box/filedump.c:837,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/applications/mp4box/filedump.c:838,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/applications/mp4box/filedump.c:839,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:844,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/applications/mp4box/filedump.c:849,1
    - Dst: gf_itags_get_itag
      Src: /src/gpac/applications/mp4box/filedump.c:851,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/applications/mp4box/filedump.c:856,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/applications/mp4box/filedump.c:858,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:860,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:860,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 33
    argCount: 2
    argNames:
    - argval
    - do_cov
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 867
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 867
    functionName: PrintBuiltInBoxes
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_itags_get_itag
    - gf_isom_get_num_supported_boxes
    - M4_LOG
    - gf_isom_clone_box
    - gf_isom_get_supported_box_type
    - gf_isom_dump_supported_box
    - gf_isom_box_new
    - gf_itags_get_type
    - gf_isom_box_del
    - gf_4cc_to_str
    linkageType: ''
    returnType: u32
    signature: u32 PrintBuiltInBoxes(char *argval, u32 do_cov)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:879,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:880,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:881,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:883,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:890,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:891,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:892,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:894,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:895,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:897,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:897,1
    - Dst: gf_isom_sdp_track_get
      Src: /src/gpac/applications/mp4box/filedump.c:898,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:900,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:903,1
    - Dst: gf_isom_dump_hint_sample
      Src: /src/gpac/applications/mp4box/filedump.c:904,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:907,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:909,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:910,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: 911
      start: 871
    functionDepth: 1
    functionLinenumber: 871
    functionLinenumberEnd: 911
    functionName: dump_isom_rtp
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - fprintf
    - gf_isom_get_track_count
    - gf_isom_get_track_id
    - gf_fclose
    - gf_isom_get_media_type
    - gf_fopen
    - gf_strcat
    - M4_LOG
    - gf_isom_get_sample_count
    - gf_isom_sdp_track_get
    - gf_isom_dump_hint_sample
    linkageType: ''
    returnType: void
    signature: void dump_isom_rtp(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:932,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:933,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:934,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:936,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/applications/mp4box/filedump.c:942,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:946,1
    - Dst: gf_isom_get_cts_to_dts_shift
      Src: /src/gpac/applications/mp4box/filedump.c:947,1
    - Dst: gf_isom_has_time_offset
      Src: /src/gpac/applications/mp4box/filedump.c:948,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:950,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:950,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:951,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:953,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:955,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:958,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/filedump.c:962,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:975,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:977,1
    - Dst: gf_isom_get_sample_flags
      Src: /src/gpac/applications/mp4box/filedump.c:980,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/applications/mp4box/filedump.c:981,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:984,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:987,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:989,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:994,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:997,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1000,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1008,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1012,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1021,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1025,1
    - Dst: gf_isom_sample_is_fragment_start
      Src: /src/gpac/applications/mp4box/filedump.c:1025,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1028,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1029,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1031,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1032,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1034,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1036,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1038,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: 1040
      start: 915
    functionDepth: 1
    functionLinenumber: 915
    functionLinenumberEnd: 1040
    functionName: dump_isom_timestamps
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_get_sample_count
    - gf_isom_sample_is_fragment_start
    - gf_isom_get_sample_info
    - gf_fopen
    - M4_LOG
    - gf_isom_has_time_offset
    - gf_isom_get_sample_rap_roll_info
    - gf_realloc
    - gf_strcpy
    - gf_set_progress
    - gf_isom_get_sample_flags
    - gf_isom_get_cts_to_dts_shift
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - gf_free
    - gf_fclose
    - gf_strcat
    - gf_isom_is_fragmented
    - gf_isom_sample_del
    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: 1055
      start: 1044
    functionDepth: 0
    functionLinenumber: 1044
    functionLinenumberEnd: 1055
    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:1082,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1084,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1086,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:1088,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/filedump.c:1090,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1092,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1096,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1132,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1133,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1134,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1135,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1136,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1137,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1144,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1149,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1153,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:1159,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:1161,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1162,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1165,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1168,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:1177,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1181,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1182,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1186,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1187,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1192,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1193,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1195,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1197,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1199,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1201,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1208,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1209,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1211,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1213,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1215,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1217,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1219,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1221,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1223,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1225,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1232,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1233,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1235,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1237,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1239,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/applications/mp4box/filedump.c:1241,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1245,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1247,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1249,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1252,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1253,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1254,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:1261,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1265,1
    - Dst: gf_isom_get_reference_ID
      Src: /src/gpac/applications/mp4box/filedump.c:1268,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1269,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1272,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1278,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:1279,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1285,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1287,1
    - Dst: gf_isom_is_adobe_protection_media
      Src: /src/gpac/applications/mp4box/filedump.c:1291,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/applications/mp4box/filedump.c:1292,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/applications/mp4box/filedump.c:1297,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1300,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1302,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1305,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1306,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1308,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1316,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1317,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:1329,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1331,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:1331,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/applications/mp4box/filedump.c:1335,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1343,1
    - Dst: read_nal_size_hdr
      Src: /src/gpac/applications/mp4box/filedump.c:1346,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1350,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1353,1
    - Dst: gf_inspect_dump_nalu
      Src: /src/gpac/applications/mp4box/filedump.c:1355,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1359,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1366,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1367,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1369,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1370,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1372,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1373,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1374,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:1376,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
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1381,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: 1385
      start: 1062
    functionDepth: 1
    functionLinenumber: 1062
    functionLinenumberEnd: 1385
    functionName: dump_isom_nal_ex
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_isom_last_error
    - gf_isom_cenc_get_sample_aux_info
    - gf_isom_get_sample_count
    - gf_inspect_dump_nalu
    - gf_isom_lhvc_config_get
    - gf_isom_is_cenc_media
    - GF_SAFEALLOC
    - gf_isom_get_reference
    - gf_isom_set_nalu_extract_mode
    - gf_isom_mvc_config_get
    - gf_isom_get_sample
    - gf_odf_vvc_cfg_del
    - DUMP_ARRAY
    - gf_isom_get_media_timescale
    - gf_odf_hevc_cfg_del
    - M4_LOG
    - gf_isom_get_sample_rap_roll_info
    - gf_isom_is_adobe_protection_media
    - gf_list_get
    - gf_isom_hevc_config_get
    - read_nal_size_hdr
    - gf_isom_get_sample_description_count
    - gf_isom_get_nalu_extract_mode
    - gf_set_progress
    - gf_isom_svc_config_get
    - gf_odf_avc_cfg_del
    - gf_isom_get_sample_cenc_info
    - gf_error_to_string
    - gf_isom_get_reference_count
    - gf_free
    - gf_isom_get_track_by_id
    - gf_isom_sample_del
    - gf_isom_get_reference_ID
    - gf_isom_avc_config_get
    - gf_isom_vvc_config_get
    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: 1111
      start: 1100
    functionDepth: 0
    functionLinenumber: 1100
    functionLinenumberEnd: 1111
    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: 1124
      start: 1113
    functionDepth: 0
    functionLinenumber: 1113
    functionLinenumberEnd: 1124
    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:1398,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/filedump.c:1399,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:1402,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:1424,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1429,1
    - Dst: snprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1431,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1433,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1435,1
    - Dst: dump_isom_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1444,1
    - Dst: dump_qt_prores
      Src: /src/gpac/applications/mp4box/filedump.c:1446,1
    - Dst: dump_isom_opus
      Src: /src/gpac/applications/mp4box/filedump.c:1448,1
    - Dst: dump_isom_nal_ex
      Src: /src/gpac/applications/mp4box/filedump.c:1450,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1452,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/filedump.c:1456,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/filedump.c:1457,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1459,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/applications/mp4box/filedump.c:1459,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/mp4box/filedump.c:1459,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/filedump.c:1461,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1463,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: 1467
      start: 1391
    functionDepth: 2
    functionLinenumber: 1391
    functionLinenumberEnd: 1467
    functionName: dump_isom_nal
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_xml_dom_del
    - dump_isom_opus
    - snprintf
    - dump_qt_prores
    - gf_xml_dom_get_error
    - gf_xml_dom_parse
    - gf_fopen
    - M4_LOG
    - gf_xml_dom_get_line
    - gf_isom_get_esd
    - dump_isom_nal_ex
    - gf_strcpy
    - dump_isom_obu
    - gf_xml_dom_new
    - gf_isom_get_media_subtype
    - gf_odf_desc_del
    - gf_fclose
    - gf_isom_get_track_by_id
    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:1479,1
    - Dst: gf_isom_opus_config_get_desc
      Src: /src/gpac/applications/mp4box/filedump.c:1481,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1483,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1487,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1488,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1490,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1492,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1495,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1497,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1499,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1501,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1506,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1510,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1512,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1518,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1519,1
    - Dst: gf_inspect_dump_opus
      Src: /src/gpac/applications/mp4box/filedump.c:1521,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1523,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1524,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1526,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1529,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1531,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1532,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: 1535
      start: 1473
    functionDepth: 1
    functionLinenumber: 1473
    functionLinenumberEnd: 1535
    functionName: dump_isom_opus
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached:
    - fprintf
    - gf_isom_get_media_timescale
    - gf_isom_last_error
    - M4_LOG
    - gf_isom_get_sample_count
    - gf_isom_get_track_by_id
    - gf_inspect_dump_opus
    - gf_set_progress
    - gf_isom_sample_del
    - gf_isom_opus_config_get_desc
    - gf_isom_get_sample
    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:1553,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:1555,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/applications/mp4box/filedump.c:1557,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:1558,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1560,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1561,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1565,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1566,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1568,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1570,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:1572,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:1573,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/filedump.c:1574,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1575,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1577,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/applications/mp4box/filedump.c:1578,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1579,1
    - Dst: gf_inspect_dump_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1582,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:1583,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1585,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1587,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1596,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1598,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1604,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1605,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/applications/mp4box/filedump.c:1610,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:1611,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1613,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:1613,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/applications/mp4box/filedump.c:1617,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/filedump.c:1626,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1628,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1632,1
    - Dst: gf_inspect_dump_obu
      Src: /src/gpac/applications/mp4box/filedump.c:1635,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:1641,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1642,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1643,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1645,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1648,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1650,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1651,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1652,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:1654,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/applications/mp4box/filedump.c:1655,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1656,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: 1659
      start: 1541
    functionDepth: 1
    functionLinenumber: 1541
    functionLinenumberEnd: 1659
    functionName: dump_isom_obu
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_isom_last_error
    - gf_isom_cenc_get_sample_aux_info
    - gf_isom_av1_config_get
    - gf_isom_get_sample_count
    - gf_bs_new
    - gf_isom_is_cenc_media
    - GF_SAFEALLOC
    - gf_av1_init_state
    - gf_bs_del
    - gf_isom_get_sample
    - gf_odf_av1_cfg_del
    - gf_isom_get_media_timescale
    - M4_LOG
    - gf_list_get
    - gf_av1_parse_obu
    - gf_set_progress
    - gf_av1_reset_state
    - gf_isom_get_sample_cenc_info
    - gf_error_to_string
    - gf_inspect_dump_obu
    - gf_free
    - gf_isom_get_track_by_id
    - gf_isom_sample_del
    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:1667,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1669,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1670,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1672,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1677,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:1679,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1685,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1686,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1688,1
    - Dst: gf_inspect_dump_prores
      Src: /src/gpac/applications/mp4box/filedump.c:1690,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1691,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1693,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1695,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1696,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1698,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: 1701
      start: 1661
    functionDepth: 1
    functionLinenumber: 1661
    functionLinenumberEnd: 1701
    functionName: dump_qt_prores
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 1
    functionsReached:
    - fprintf
    - gf_isom_get_media_timescale
    - gf_isom_last_error
    - gf_inspect_dump_prores
    - gf_isom_get_sample_count
    - gf_isom_get_track_by_id
    - gf_set_progress
    - gf_isom_sample_del
    - 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:1708,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1711,1
    - Dst: snprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1713,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1714,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1716,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1723,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1724,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1725,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1725,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1727,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/applications/mp4box/filedump.c:1728,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1730,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1732,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:1740,1
    - Dst: gf_isom_sample_is_fragment_start
      Src: /src/gpac/applications/mp4box/filedump.c:1745,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/applications/mp4box/filedump.c:1752,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1758,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1764,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1767,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:1771,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1775,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1777,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1779,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1781,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1782,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1783,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: 1784
      start: 1703
    functionDepth: 1
    functionLinenumber: 1703
    functionLinenumberEnd: 1784
    functionName: dump_isom_saps
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - fprintf
    - gf_isom_sample_is_fragment_start
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_info
    - gf_fclose
    - gf_fopen
    - M4_LOG
    - gf_isom_get_track_by_id
    - gf_isom_get_sample_count
    - gf_isom_get_sample_rap_roll_info
    - gf_isom_sample_del
    - snprintf
    - gf_isom_get_edit_list_type
    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: 1806
      start: 1798
    functionDepth: 0
    functionLinenumber: 1798
    functionLinenumberEnd: 1806
    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: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1822,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:1823,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1824,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1826,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:1834,1
    - Dst: gf_isom_get_chunk_count
      Src: /src/gpac/applications/mp4box/filedump.c:1837,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/filedump.c:1839,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:1840,1
    - Dst: gf_isom_get_chunk_count
      Src: /src/gpac/applications/mp4box/filedump.c:1846,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:1847,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/filedump.c:1848,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:1854,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/applications/mp4box/filedump.c:1856,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:1857,1
    - Dst: gf_isom_get_chunk_info
      Src: /src/gpac/applications/mp4box/filedump.c:1866,1
    - Dst: gf_isom_get_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:1881,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1888,1
    - Dst: qsort
      Src: /src/gpac/applications/mp4box/filedump.c:1893,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1895,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1898,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1900,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:1905,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:1925,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1927,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1929,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1930,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:1931,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1933,1
    - Dst: gf_isom_get_first_mdat_start
      Src: /src/gpac/applications/mp4box/filedump.c:1937,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:1946,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:1948,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1950,1
    - Dst: gf_isom_get_unused_box_bytes
      Src: /src/gpac/applications/mp4box/filedump.c:1952,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1954,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1956,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: 1957
      start: 1808
    functionDepth: 1
    functionLinenumber: 1808
    functionLinenumberEnd: 1957
    functionName: dump_isom_chunks
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_get_media_duration
    - gf_isom_get_chunk_count
    - gf_isom_get_constant_sample_size
    - gf_malloc
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_info
    - gf_fopen
    - M4_LOG
    - gf_isom_get_chunk_info
    - gf_isom_enable_raw_pack
    - gf_strcpy
    - gf_isom_get_sample_size
    - gf_set_progress
    - gf_isom_get_unused_box_bytes
    - qsort
    - gf_isom_get_track_count
    - gf_free
    - gf_fclose
    - gf_strcat
    - gf_isom_sample_del
    - memset
    - gf_isom_get_first_mdat_start
    linkageType: ''
    returnType: void
    signature: void dump_isom_chunks(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:1968,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:1969,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:1970,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:1972,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1979,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1980,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1981,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:1984,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:1985,1
    - Dst: gf_isom_dump_ismacryp_protection
      Src: /src/gpac/applications/mp4box/filedump.c:1987,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1989,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:1989,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:1990,1
    - Dst: gf_isom_dump_ismacryp_sample
      Src: /src/gpac/applications/mp4box/filedump.c:1991,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1993,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:1995,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:1996,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: 1997
      start: 1961
    functionDepth: 1
    functionLinenumber: 1961
    functionLinenumberEnd: 1997
    functionName: dump_isom_ismacryp
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - fprintf
    - gf_isom_get_track_count
    - gf_isom_get_media_subtype
    - gf_isom_get_track_id
    - gf_fclose
    - gf_fopen
    - gf_strcat
    - M4_LOG
    - gf_isom_get_sample_count
    - gf_isom_dump_ismacryp_protection
    - gf_isom_dump_ismacryp_sample
    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:2006,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2008,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:2012,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2017,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2026,1
    - Dst: snprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2028,1
    - Dst: snprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2030,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2032,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2034,1
    - Dst: gf_isom_text_dump
      Src: /src/gpac/applications/mp4box/filedump.c:2040,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2041,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2044,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:2044,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2046,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: 2048
      start: 2000
    functionDepth: 1
    functionLinenumber: 2000
    functionLinenumberEnd: 2048
    functionName: dump_isom_timed_text
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_isom_text_dump
    - fprintf
    - gf_fclose
    - gf_isom_get_media_type
    - gf_fopen
    - M4_LOG
    - gf_isom_get_track_by_id
    - snprintf
    - gf_error_to_string
    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: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2062,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/filedump.c:2064,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2066,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2068,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2070,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2075,1
    - Dst: gf_isom_sdp_get
      Src: /src/gpac/applications/mp4box/filedump.c:2078,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2080,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2081,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:2084,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:2085,1
    - Dst: gf_isom_sdp_track_get
      Src: /src/gpac/applications/mp4box/filedump.c:2086,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2088,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2090,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2091,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: 2092
      start: 2054
    functionDepth: 1
    functionLinenumber: 2054
    functionLinenumberEnd: 2092
    functionName: dump_isom_sdp
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - fprintf
    - strchr
    - gf_isom_get_track_count
    - gf_fclose
    - gf_isom_get_media_type
    - gf_isom_sdp_get
    - gf_fopen
    - gf_strcat
    - M4_LOG
    - gf_isom_sdp_track_get
    linkageType: ''
    returnType: void
    signature: void dump_isom_sdp(GF_ISOFile *file, char *inName, Bool is_final_name)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2109,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2111,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2113,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2115,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2121,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2123,1
    - Dst: gf_isom_dump
      Src: /src/gpac/applications/mp4box/filedump.c:2125,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2127,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/filedump.c:2134,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/applications/mp4box/filedump.c:2134,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/applications/mp4box/filedump.c:2137,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:2140,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2141,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:2145,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:2146,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:2147,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:2149,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/applications/mp4box/filedump.c:2155,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2168,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:2171,1
    - Dst: gf_isom_dump_hint_sample
      Src: /src/gpac/applications/mp4box/filedump.c:2173,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2176,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2180,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2181,1
    - Dst: gf_isom_get_vvc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2182,1
    - Dst: dump_isom_nal_ex
      Src: /src/gpac/applications/mp4box/filedump.c:2184,1
    - Dst: dump_isom_obu
      Src: /src/gpac/applications/mp4box/filedump.c:2188,1
    - Dst: dump_qt_prores
      Src: /src/gpac/applications/mp4box/filedump.c:2195,1
    - Dst: gf_webvtt_dump_iso_track
      Src: /src/gpac/applications/mp4box/filedump.c:2202,1
    - Dst: gf_isom_text_dump
      Src: /src/gpac/applications/mp4box/filedump.c:2206,1
    - Dst: dump_isom_opus
      Src: /src/gpac/applications/mp4box/filedump.c:2211,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/filedump.c:2218,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/filedump.c:2222,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2224,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2225,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2227,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/applications/mp4box/filedump.c:2231,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/filedump.c:2232,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2234,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/applications/mp4box/filedump.c:2234,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/applications/mp4box/filedump.c:2234,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/filedump.c:2236,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2238,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: 2242
      start: 2099
    functionDepth: 2
    functionLinenumber: 2099
    functionLinenumberEnd: 2242
    functionName: dump_isom_xml
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_text_dump
    - gf_xml_dom_del
    - gf_isom_get_media_type
    - gf_isom_get_vvc_type
    - gf_isom_get_sample_count
    - dump_isom_opus
    - gf_isom_open_segment
    - gf_isom_get_hevc_lhvc_type
    - gf_isom_get_filename
    - dump_qt_prores
    - gf_xml_dom_get_error
    - gf_media_export
    - gf_xml_dom_parse
    - gf_fopen
    - M4_LOG
    - gf_xml_dom_get_line
    - gf_webvtt_dump_iso_track
    - gf_isom_get_original_format_type
    - dump_isom_nal_ex
    - gf_strcpy
    - dump_isom_obu
    - gf_isom_get_avc_svc_type
    - gf_isom_dump_hint_sample
    - gf_xml_dom_new
    - gf_isom_dump
    - gf_isom_get_track_id
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_fclose
    - gf_strcat
    - gf_isom_open
    - memset
    - gf_isom_delete
    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: gf_strlcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2249,1
    - Dst: gf_format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:2252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - dur
    - timescale
    - szDur
    argTypes:
    - u64
    - u32
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2253
      start: 2246
    functionDepth: 1
    functionLinenumber: 2246
    functionLinenumberEnd: 2253
    functionName: format_duration
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 2
    functionsReached:
    - gf_format_duration
    - gf_strlcpy
    linkageType: ''
    returnType: char
    signature: char *format_duration(u64 dur, u32 timescale, char szDur[100])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_strlcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2259,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2263,1
    - Dst: asctime
      Src: /src/gpac/applications/mp4box/filedump.c:2263,1
    - Dst: gf_gmtime
      Src: /src/gpac/applications/mp4box/filedump.c:2263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - time
    - szTime
    argTypes:
    - u64
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2255
    functionDepth: 1
    functionLinenumber: 2255
    functionLinenumberEnd: 2266
    functionName: format_date
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 2
    functionsReached:
    - sprintf
    - asctime
    - gf_gmtime
    - gf_strlcpy
    linkageType: ''
    returnType: char
    signature: char *format_date(u64 time, char szTime[100])
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_udta_count
      Src: /src/gpac/applications/mp4box/filedump.c:2272,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/applications/mp4box/filedump.c:2279,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2290,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/applications/mp4box/filedump.c:2295,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/applications/mp4box/filedump.c:2297,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/applications/mp4box/filedump.c:2300,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2302,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2302,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/applications/mp4box/filedump.c:2302,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/applications/mp4box/filedump.c:2306,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2308,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/applications/mp4box/filedump.c:2321,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2325,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2328,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2330,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2333,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: 2334
      start: 2268
    functionDepth: 1
    functionLinenumber: 2268
    functionLinenumberEnd: 2334
    functionName: print_udta
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_free
    - gf_isom_get_user_data
    - gf_isom_get_udta_type
    - gf_itags_find_by_itag
    - gf_itags_get_name
    - gf_isom_get_user_data_count
    - gf_isom_get_udta_count
    - gf_4cc_to_str
    - gf_utf8_is_legal
    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:2344,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/applications/mp4box/filedump.c:2345,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2347,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2347,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/applications/mp4box/filedump.c:2353,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2355,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2355,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:2355,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2361,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2363,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2363,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2365,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2367,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2368,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:2374,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2375,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2376,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2378,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: 2382
      start: 2336
    functionDepth: 1
    functionLinenumber: 2336
    functionLinenumberEnd: 2382
    functionName: dump_isom_udta
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - gf_free
    - gf_fclose
    - gf_isom_get_user_data
    - gf_fopen
    - M4_LOG
    - gf_isom_get_user_data_count
    - gf_fwrite
    - memset
    - gf_4cc_to_str
    - gf_error_to_string
    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:2392,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:2399,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:2400,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:2401,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2406,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2410,1
    - Dst: dump_isom_timed_text
      Src: /src/gpac/applications/mp4box/filedump.c:2411,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:2411,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:2417,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2420,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2422,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:2424,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:2427,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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2438,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/filedump.c:2445,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2447,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:2447,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2448,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2451,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2453,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:2454,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2458,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:2460,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: 2463
      start: 2384
    functionDepth: 2
    functionLinenumber: 2384
    functionLinenumberEnd: 2463
    functionName: dump_isom_chapters
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - gf_isom_get_reference_count
    - gf_strcpy
    - gf_isom_get_chapter_count
    - dump_isom_timed_text
    - format_duration
    - gf_strcat
    - gf_fopen
    - M4_LOG
    - gf_isom_get_chapter
    - gf_fclose
    - gf_isom_get_reference
    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:2479,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:2483,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2489,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: 2491
      start: 2466
    functionDepth: 0
    functionLinenumber: 2466
    functionLinenumberEnd: 2491
    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:2497,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/applications/mp4box/filedump.c:2505,1
    - Dst: gf_isom_get_meta_primary_item_id
      Src: /src/gpac/applications/mp4box/filedump.c:2508,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2509,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2509,1
    - Dst: gf_isom_has_meta_xml
      Src: /src/gpac/applications/mp4box/filedump.c:2510,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2512,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2515,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2519,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/applications/mp4box/filedump.c:2526,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2528,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:2528,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2531,1
    - Dst: gf_4cc_to_str
      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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2535,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/applications/mp4box/filedump.c:2539,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2541,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2546,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2549,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2552,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2559,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2560,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2563,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2565,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:2572,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2574,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2583,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2583,1
    - Dst: gf_isom_extract_meta_item_get_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:2585,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2587,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2588,1
    - Dst: dump_key_info
      Src: /src/gpac/applications/mp4box/filedump.c:2589,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:2593,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2595,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: 2596
      start: 2493
    functionDepth: 1
    functionLinenumber: 2493
    functionLinenumberEnd: 2596
    functionName: DumpMetaItem
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_get_meta_type
    - gf_isom_has_meta_xml
    - gf_isom_get_meta_primary_item_id
    - gf_isom_get_meta_item_count
    - gf_isom_get_meta_item_info
    - dump_key_info
    - gf_isom_extract_meta_item_get_cenc_info
    - gf_isom_get_meta_image_props
    - gf_4cc_to_str
    - gf_error_to_string
    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:2603,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2604,1
    - Dst: gf_sha1_csum
      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
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2608,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - xps_array
    - szName
    argTypes:
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2610
      start: 2599
    functionDepth: 1
    functionLinenumber: 2599
    functionLinenumberEnd: 2610
    functionName: print_config_hash
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_sha1_csum
    - gf_list_get
    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:2790,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/applications/mp4box/filedump.c:2792,1
    - Dst: gf_pixel_fmt_from_qt_type
      Src: /src/gpac/applications/mp4box/filedump.c:2794,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/applications/mp4box/filedump.c:2795,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:2799,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2801,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2802,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2802,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2802,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/filedump.c:2804,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/applications/mp4box/filedump.c:2807,1
    - Dst: gf_bs_new
      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_u32
      Src: /src/gpac/applications/mp4box/filedump.c:2814,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/applications/mp4box/filedump.c:2815,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/filedump.c:2816,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/filedump.c:2817,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:2818,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2820,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2821,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2823,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2823,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2823,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2823,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:2824,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2826,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2826,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:2826,1
    - Dst: gf_isom_is_self_contained
      Src: /src/gpac/applications/mp4box/filedump.c:2830,1
    - Dst: gf_isom_get_data_reference
      Src: /src/gpac/applications/mp4box/filedump.c:2832,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2833,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:2836,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:2840,1
    - Dst: gf_isom_get_visual_bit_depth
      Src: /src/gpac/applications/mp4box/filedump.c:2841,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2842,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2844,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2846,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:2850,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/applications/mp4box/filedump.c:2854,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/filedump.c:2855,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/applications/mp4box/filedump.c:2857,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/filedump.c:2880,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2882,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:2883,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:2885,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2888,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2891,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:2907,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2908,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2910,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/applications/mp4box/filedump.c:2914,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2915,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2918,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2918,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:2921,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2922,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/applications/mp4box/filedump.c:2926,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:2929,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2930,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2931,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2933,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2934,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:2935,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:2937,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2939,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2939,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2939,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2940,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2940,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2941,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2944,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2946,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/applications/mp4box/filedump.c:2947,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:2950,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2951,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2958,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/applications/mp4box/filedump.c:2958,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2961,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2962,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:2964,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2967,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2967,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2967,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2967,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2968,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2970,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2971,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/applications/mp4box/filedump.c:2975,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2976,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:2979,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2980,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: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:2987,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:2989,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2993,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2993,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2993,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:2993,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:2994,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:2996,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:2997,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/applications/mp4box/filedump.c:3001,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3002,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:3005,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3006,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:3011,1
    - Dst: print_config_hash
      Src: /src/gpac/applications/mp4box/filedump.c:3012,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3013,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:3023,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3028,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3029,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3030,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3031,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3032,1
    - Dst: gf_isom_get_tile_info
      Src: /src/gpac/applications/mp4box/filedump.c:3039,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3040,1
    - Dst: gf_isom_get_sample_group_info
      Src: /src/gpac/applications/mp4box/filedump.c:3041,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3042,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3044,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3047,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:3050,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3051,1
    - Dst: dump_hevc_track_info
      Src: /src/gpac/applications/mp4box/filedump.c:3054,1
    - Dst: defined
      Src: /src/gpac/applications/mp4box/filedump.c:3055,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3059,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3060,1
    - Dst: dump_hevc_track_info
      Src: /src/gpac/applications/mp4box/filedump.c:3063,1
    - Dst: defined
      Src: /src/gpac/applications/mp4box/filedump.c:3064,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3068,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3071,1
    - Dst: gf_isom_get_oinf_info
      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:3075,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3078,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3081,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3084,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3087,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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3091,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:3091,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:3091,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3098,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3099,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/filedump.c:3103,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3107,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/applications/mp4box/filedump.c:3111,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3113,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3114,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3114,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3118,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3119,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3120,1
    - Dst: gf_isom_get_rvc_config
      Src: /src/gpac/applications/mp4box/filedump.c:3122,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3123,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/applications/mp4box/filedump.c:3144,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3145,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3147,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3161,1
    - Dst: gf_m4a_object_type_name
      Src: /src/gpac/applications/mp4box/filedump.c:3161,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3162,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3163,1
    - Dst: gf_m4a_object_type_name
      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:3165,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3168,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3175,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3178,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/filedump.c:3181,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3182,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3183,1
    - Dst: gf_mp3_version_name
      Src: /src/gpac/applications/mp4box/filedump.c:3184,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/applications/mp4box/filedump.c:3185,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/applications/mp4box/filedump.c:3186,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/applications/mp4box/filedump.c:3187,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:3190,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3192,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/filedump.c:3192,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/filedump.c:3192,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3195,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3200,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3203,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3206,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/filedump.c:3211,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3212,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3213,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/applications/mp4box/filedump.c:3217,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3219,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3219,1
    - Dst: gf_odf_get_bifs_config
      Src: /src/gpac/applications/mp4box/filedump.c:3226,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3228,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3230,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3232,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3234,1
    - Dst: gf_stream_type_afx_name
      Src: /src/gpac/applications/mp4box/filedump.c:3238,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3239,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3241,1
    - Dst: gf_odf_get_laser_config
      Src: /src/gpac/applications/mp4box/filedump.c:3244,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3245,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3247,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3249,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3251,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3259,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3261,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3264,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3266,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3268,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3270,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3271,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3273,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3278,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3279,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3281,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3283,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:3287,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3290,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:3292,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:3295,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/applications/mp4box/filedump.c:3296,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3297,1
    - Dst: gf_av1_get_obu_name
      Src: /src/gpac/applications/mp4box/filedump.c:3297,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3298,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3299,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3301,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3305,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3306,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3309,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3310,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3312,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3314,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3316,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3318,1
    - Dst: gf_isom_ac3_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3326,1
    - Dst: gf_ac3_get_total_channels
      Src: /src/gpac/applications/mp4box/filedump.c:3328,1
    - Dst: gf_eac3_get_chan_loc_count
      Src: /src/gpac/applications/mp4box/filedump.c:3330,1
    - Dst: gf_ac3_get_bitrate
      Src: /src/gpac/applications/mp4box/filedump.c:3333,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3339,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3342,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3344,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3346,1
    - Dst: gf_isom_ac4_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3350,1
    - Dst: gf_odf_ac4_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3354,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3357,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3359,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3363,1
    - Dst: gf_isom_get_dims_description
      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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3371,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:3374,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3376,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:3378,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3379,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3380,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:3380,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3382,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3384,1
    - Dst: gf_isom_get_payt_count
      Src: /src/gpac/applications/mp4box/filedump.c:3387,1
    - Dst: gf_isom_get_payt_info
      Src: /src/gpac/applications/mp4box/filedump.c:3390,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3391,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3396,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:3408,1
    - Dst: gf_isom_stxt_get_description
      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:3412,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3414,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3417,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:3417,1
    - Dst: gf_isom_stxt_get_description
      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:3422,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3424,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3427,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:3427,1
    - Dst: gf_isom_xml_subtitle_get_description
      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:3432,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3434,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3437,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3440,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3443,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3446,1
    - Dst: gf_isom_get_text_description
      Src: /src/gpac/applications/mp4box/filedump.c:3450,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3453,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3455,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3456,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3459,1
    - Dst: gf_isom_stxt_get_description
      Src: /src/gpac/applications/mp4box/filedump.c:3465,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3466,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3468,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3471,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:3471,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3473,1
    - Dst: gf_isom_get_xml_metadata_description
      Src: /src/gpac/applications/mp4box/filedump.c:3477,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3478,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3480,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3483,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3485,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3487,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/filedump.c:3494,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3498,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3499,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3500,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3501,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3504,1
    - Dst: dump_vvc_track_info
      Src: /src/gpac/applications/mp4box/filedump.c:3506,1
    - Dst: defined
      Src: /src/gpac/applications/mp4box/filedump.c:3507,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/applications/mp4box/filedump.c:3511,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3514,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3526,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/applications/mp4box/filedump.c:3528,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3534,1
    - Dst: gf_mpegh_get_mhas_pl
      Src: /src/gpac/applications/mp4box/filedump.c:3537,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3539,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3541,1
    - Dst: gf_audio_fmt_get_layout_name
      Src: /src/gpac/applications/mp4box/filedump.c:3541,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3542,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:3544,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3550,1
    - Dst: gf_audio_fmt_get_layout_name_from_cicp
      Src: /src/gpac/applications/mp4box/filedump.c:3551,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3556,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:3558,1
    - Dst: gf_isom_get_mpegh_compatible_profiles
      Src: /src/gpac/applications/mp4box/filedump.c:3559,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3562,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3563,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3565,1
    - Dst: gf_isom_truehd_config_get
      Src: /src/gpac/applications/mp4box/filedump.c:3568,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3569,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3571,1
    - Dst: gf_isom_get_lpcm_config
      Src: /src/gpac/applications/mp4box/filedump.c:3575,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3576,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3578,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3581,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3583,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3584,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3584,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/applications/mp4box/filedump.c:3587,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/applications/mp4box/filedump.c:3588,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3589,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3591,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3591,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3593,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3595,1
    - Dst: gf_codecid_name
      Src: /src/gpac/applications/mp4box/filedump.c:3595,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/applications/mp4box/filedump.c:3599,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3600,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/applications/mp4box/filedump.c:3600,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3603,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3604,1
    - Dst: gf_isom_get_tmcd_config
      Src: /src/gpac/applications/mp4box/filedump.c:3608,1
    - Dst: gf_inspect_format_timecode
      Src: /src/gpac/applications/mp4box/filedump.c:3612,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3613,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:3616,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3619,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/applications/mp4box/filedump.c:3623,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3625,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3626,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3630,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3632,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3635,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3635,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3638,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3639,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3641,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3643,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/applications/mp4box/filedump.c:3649,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/applications/mp4box/filedump.c:3655,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/applications/mp4box/filedump.c:3656,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3657,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3657,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3658,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/filedump.c:3660,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3660,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3661,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3663,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3664,1
    - Dst: gf_isom_is_omadrm_media
      Src: /src/gpac/applications/mp4box/filedump.c:3665,1
    - Dst: gf_isom_get_omadrm_info
      Src: /src/gpac/applications/mp4box/filedump.c:3669,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3670,1
    - Dst: gf_4cc_to_str
      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:3672,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3676,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3681,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3686,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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3691,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/applications/mp4box/filedump.c:3692,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/applications/mp4box/filedump.c:3698,1
    - Dst: gf_isom_cenc_get_default_info
      Src: /src/gpac/applications/mp4box/filedump.c:3700,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3702,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3702,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3705,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3707,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3709,1
    - Dst: dump_key_info
      Src: /src/gpac/applications/mp4box/filedump.c:3710,1
    - Dst: gf_isom_is_adobe_protection_media
      Src: /src/gpac/applications/mp4box/filedump.c:3712,1
    - Dst: gf_isom_get_adobe_protection_info
      Src: /src/gpac/applications/mp4box/filedump.c:3713,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3714,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3714,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3716,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3716,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/applications/mp4box/filedump.c:3716,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3718,1
    - Dst: gf_media_get_rfc_6381_codec_name
      Src: /src/gpac/applications/mp4box/filedump.c:3721,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3722,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: 3724
      start: 2784
    functionDepth: 2
    functionLinenumber: 2784
    functionLinenumberEnd: 3724
    functionName: DumpStsdInfo
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_mp3_sampling_rate
    - gf_isom_last_error
    - gf_isom_is_video_handler_type
    - gf_bs_new
    - gf_isom_set_nalu_extract_mode
    - gf_isom_mvc_config_get
    - M4_LOG
    - gf_audio_fmt_get_layout_name
    - gf_isom_get_xml_metadata_description
    - gf_bs_read_utf8
    - gf_isom_dovi_config_get
    - dump_hevc_track_info
    - gf_isom_get_oinf_info
    - gf_isom_get_dims_description
    - gf_isom_xml_subtitle_get_description
    - gf_isom_is_self_contained
    - gf_avc_get_profile_name
    - gf_avc_hevc_get_chroma_format_name
    - gf_bs_read_u32
    - gf_m4a_object_type_name
    - gf_isom_get_adobe_protection_info
    - gf_isom_get_media_subtype
    - gf_isom_get_mpeg4_subtype
    - gf_pixel_fmt_from_qt_type
    - gf_isom_avc_config_get
    - gf_4cc_to_str
    - gf_isom_vvc_config_get
    - gf_inspect_format_timecode
    - gf_codecid_name
    - gf_isom_av1_config_get
    - gf_mp3_layer
    - gf_isom_get_mpegh_compatible_profiles
    - gf_isom_lhvc_config_get
    - gf_odf_av1_cfg_del
    - gf_isom_get_text_description
    - gf_isom_get_visual_info
    - gf_isom_ac4_config_get
    - gf_mp3_version_name
    - gf_eac3_get_chan_loc_count
    - defined
    - gf_list_get
    - gf_codecid_from_oti
    - gf_isom_hevc_config_get
    - gf_codec_id_from_isobmf
    - gf_isom_get_cenc_info
    - gf_isom_get_avc_svc_type
    - gf_stream_type_afx_name
    - strlen
    - gf_isom_is_media_encrypted
    - gf_isom_ac3_config_get
    - gf_isom_get_data_reference
    - gf_isom_truehd_config_get
    - dump_vvc_track_info
    - gf_bs_available
    - gf_odf_dovi_cfg_del
    - gf_list_count
    - gf_isom_get_sample_group_info
    - gf_isom_get_generic_sample_description
    - gf_sha1_csum
    - gf_isom_is_cenc_media
    - GF_SAFEALLOC
    - gf_isom_get_reference
    - gf_ac3_get_bitrate
    - gf_odf_vvc_cfg_del
    - gf_stream_type_name
    - gf_m4v_get_config
    - gf_ac3_get_total_channels
    - gf_isom_get_esd
    - gf_isom_get_track_layout_info
    - gf_isom_get_tmcd_config
    - gf_odf_ac4_cfg_del
    - gf_m4a_get_config
    - gf_isom_get_omadrm_info
    - strnicmp
    - gf_isom_svc_config_get
    - gf_odf_avc_cfg_del
    - gf_pixel_fmt_name
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_is_ismacryp_media
    - gf_free
    - gf_isom_get_reference_count
    - gf_m4v_get_profile_name
    - gf_odf_get_bifs_config
    - gf_isom_cenc_get_default_info
    - fprintf
    - gf_bs_del
    - gf_avc_get_sps_info
    - gf_isom_get_sample
    - print_config_hash
    - gf_isom_get_lpcm_config
    - gf_isom_is_omadrm_media
    - gf_isom_get_rvc_config
    - gf_isom_get_visual_bit_depth
    - gf_odf_get_laser_config
    - gf_media_get_rfc_6381_codec_name
    - gf_odf_hevc_cfg_del
    - gf_mp3_num_channels
    - gf_av1_get_obu_name
    - gf_isom_get_original_format_type
    - gf_media_map_esd
    - gf_isom_is_adobe_protection_media
    - gf_isom_stxt_get_description
    - gf_isom_get_payt_count
    - dump_key_info
    - gf_audio_fmt_get_layout_name_from_cicp
    - gf_isom_get_pcm_config
    - gf_error_to_string
    - gf_mpegh_get_mhas_pl
    - gf_isom_get_payt_info
    - gf_isom_get_ismacryp_info
    - GF_4CC
    - gf_isom_sample_del
    - gf_isom_get_audio_info
    - gf_isom_get_tile_info
    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:3741,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/filedump.c:3744,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3747,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/filedump.c:3751,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3753,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3754,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3754,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3756,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3757,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3759,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3759,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3761,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3763,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3764,1
    - Dst: gf_isom_get_media_original_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3766,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3767,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3768,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3768,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3770,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3770,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3771,1
    - Dst: gf_isom_check_data_reference
      Src: /src/gpac/applications/mp4box/filedump.c:3773,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3774,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/filedump.c:3778,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3780,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3780,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3780,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3780,1
    - Dst: gf_isom_get_composition_offset_shift
      Src: /src/gpac/applications/mp4box/filedump.c:3782,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3784,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/filedump.c:3786,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3786,1
    - Dst: gf_isom_get_track_flags
      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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3795,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/applications/mp4box/filedump.c:3797,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/filedump.c:3798,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3799,1
    - Dst: GetLanguage
      Src: /src/gpac/applications/mp4box/filedump.c:3799,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3800,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/filedump.c:3806,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:3807,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/filedump.c:3808,1
    - Dst: gf_isom_is_track_referenced
      Src: /src/gpac/applications/mp4box/filedump.c:3812,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3813,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3813,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3814,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3818,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:3818,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3819,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/applications/mp4box/filedump.c:3822,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3824,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3826,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3828,1
    - Dst: gf_isom_enum_track_group
      Src: /src/gpac/applications/mp4box/filedump.c:3834,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3835,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3836,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3836,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3838,1
    - Dst: gf_isom_get_track_kind_count
      Src: /src/gpac/applications/mp4box/filedump.c:3841,1
    - Dst: gf_isom_get_track_kind
      Src: /src/gpac/applications/mp4box/filedump.c:3844,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3845,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3846,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:3847,1
    - Dst: gf_isom_is_track_fragmented
      Src: /src/gpac/applications/mp4box/filedump.c:3851,1
    - Dst: gf_isom_segment_get_track_fragment_count
      Src: /src/gpac/applications/mp4box/filedump.c:3858,1
    - Dst: gf_isom_segment_get_track_fragment_decode_time
      Src: /src/gpac/applications/mp4box/filedump.c:3860,1
    - Dst: gf_isom_get_fragmented_samples_info
      Src: /src/gpac/applications/mp4box/filedump.c:3864,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3865,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3865,1
    - Dst: gf_isom_get_fragment_defaults
      Src: /src/gpac/applications/mp4box/filedump.c:3867,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3869,1
    - Dst: gf_isom_get_handler_name
      Src: /src/gpac/applications/mp4box/filedump.c:3878,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3879,1
    - Dst: gf_isom_enum_track_references
      Src: /src/gpac/applications/mp4box/filedump.c:3885,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3888,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3890,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3892,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3892,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3894,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3898,1
    - Dst: print_udta
      Src: /src/gpac/applications/mp4box/filedump.c:3901,1
    - Dst: DumpMetaItem
      Src: /src/gpac/applications/mp4box/filedump.c:3903,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/filedump.c:3905,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/applications/mp4box/filedump.c:3909,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3910,1
    - Dst: gf_isom_get_track_switch_group_count
      Src: /src/gpac/applications/mp4box/filedump.c:3913,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3915,1
    - Dst: gf_isom_get_track_switch_parameter
      Src: /src/gpac/applications/mp4box/filedump.c:3918,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3920,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3923,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3925,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3928,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3929,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:3929,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3931,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/applications/mp4box/filedump.c:3939,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3941,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/applications/mp4box/filedump.c:3941,1
    - Dst: DumpStsdInfo
      Src: /src/gpac/applications/mp4box/filedump.c:3945,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3947,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/applications/mp4box/filedump.c:3949,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3951,1
    - Dst: gf_isom_get_sync_point_count
      Src: /src/gpac/applications/mp4box/filedump.c:3955,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3957,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3959,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:3959,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3964,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3967,1
    - Dst: gf_isom_get_max_sample_delta
      Src: /src/gpac/applications/mp4box/filedump.c:3967,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:3970,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:3977,1
    - Dst: gf_isom_get_constant_sample_size
      Src: /src/gpac/applications/mp4box/filedump.c:3978,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/applications/mp4box/filedump.c:3979,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:3980,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:3989,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/applications/mp4box/filedump.c:3991,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:3994,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:4008,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4011,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4013,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4017,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4017,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4019,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4031,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4033,1
    - Dst: gf_isom_get_chunks_infos
      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:4040,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4042,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/filedump.c:4044,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4048,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/filedump.c:4050,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4051,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4051,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: 4054
      start: 3726
    functionDepth: 3
    functionLinenumber: 3726
    functionLinenumberEnd: 4054
    functionName: DumpTrackInfo
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_get_track_kind_count
    - gf_isom_get_media_duration
    - gf_isom_get_media_type
    - format_duration
    - gf_isom_get_fragment_defaults
    - gf_isom_get_sample_count
    - gf_isom_is_video_handler_type
    - DumpMetaItem
    - DumpStsdInfo
    - gf_isom_get_sync_point_count
    - gf_isom_get_constant_sample_size
    - print_udta
    - gf_isom_get_sample
    - GetLanguage
    - gf_isom_get_filename
    - gf_isom_get_edits_count
    - gf_isom_is_track_referenced
    - gf_isom_is_track_in_root_od
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_info
    - gf_isom_get_track_kind
    - gf_isom_get_chapter_count
    - M4_LOG
    - gf_isom_get_track_layout_info
    - gf_isom_get_media_language
    - gf_isom_has_sync_points
    - gf_isom_get_sample_description_count
    - gf_isom_segment_get_track_fragment_decode_time
    - gf_isom_get_handler_name
    - gf_isom_segment_get_track_fragment_count
    - gf_media_get_reduced_frame_rate
    - strcmp
    - gf_isom_is_track_fragmented
    - gf_isom_get_constant_sample_duration
    - gf_isom_get_composition_offset_shift
    - gf_isom_get_track_id
    - gf_isom_get_media_subtype
    - gf_isom_enum_track_references
    - gf_free
    - gf_isom_get_mpeg4_subtype
    - gf_isom_get_track_flags
    - gf_isom_get_track_switch_group_count
    - gf_isom_get_chapter
    - gf_isom_get_track_by_id
    - gf_isom_is_external_track
    - gf_isom_get_track_duration
    - gf_isom_enum_track_group
    - gf_isom_get_track_switch_parameter
    - gf_isom_get_max_sample_delta
    - gf_isom_sample_del
    - gf_isom_get_fragmented_samples_info
    - gf_isom_get_chunks_infos
    - gf_isom_get_media_original_duration
    - gf_isom_get_timescale
    - gf_4cc_to_str
    - gf_isom_check_data_reference
    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:4066,1
    - Dst: gf_isom_has_movie
      Src: /src/gpac/applications/mp4box/filedump.c:4067,1
    - Dst: gf_isom_has_segment
      Src: /src/gpac/applications/mp4box/filedump.c:4069,1
    - Dst: gf_isom_segment_get_fragment_count
      Src: /src/gpac/applications/mp4box/filedump.c:4070,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4071,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4071,1
    - Dst: gf_isom_segment_get_track_fragment_count
      Src: /src/gpac/applications/mp4box/filedump.c:4073,1
    - Dst: gf_isom_segment_get_fragment_size
      Src: /src/gpac/applications/mp4box/filedump.c:4074,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4075,1
    - Dst: gf_isom_segment_get_track_fragment_decode_time
      Src: /src/gpac/applications/mp4box/filedump.c:4079,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4080,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4082,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4087,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/filedump.c:4092,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:4093,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4094,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4096,1
    - Dst: gf_isom_get_original_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4097,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4098,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4098,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4100,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4100,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4102,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/applications/mp4box/filedump.c:4105,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4106,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4106,1
    - Dst: gf_isom_get_fragmented_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4106,1
    - Dst: gf_isom_get_fragments_count
      Src: /src/gpac/applications/mp4box/filedump.c:4106,1
    - Dst: gf_isom_get_fragments_count
      Src: /src/gpac/applications/mp4box/filedump.c:4106,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4108,1
    - Dst: gf_isom_moov_first
      Src: /src/gpac/applications/mp4box/filedump.c:4112,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4113,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/applications/mp4box/filedump.c:4115,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4116,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4116,1
    - Dst: gf_isom_get_alternate_brand
      Src: /src/gpac/applications/mp4box/filedump.c:4118,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4119,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4119,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4121,1
    - Dst: gf_isom_get_creation_time
      Src: /src/gpac/applications/mp4box/filedump.c:4123,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4124,1
    - Dst: format_date
      Src: /src/gpac/applications/mp4box/filedump.c:4124,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4126,1
    - Dst: format_date
      Src: /src/gpac/applications/mp4box/filedump.c:4126,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4127,1
    - Dst: DumpMetaItem
      Src: /src/gpac/applications/mp4box/filedump.c:4129,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/applications/mp4box/filedump.c:4131,1
    - Dst: gf_odf_desc_size
      Src: /src/gpac/applications/mp4box/filedump.c:4133,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4135,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4136,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4137,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:4137,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4138,1
    - Dst: gf_m4a_get_profile_name
      Src: /src/gpac/applications/mp4box/filedump.c:4138,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4141,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4143,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4144,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/filedump.c:4148,1
    - Dst: gf_isom_is_JPEG2000
      Src: /src/gpac/applications/mp4box/filedump.c:4150,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4150,1
    - Dst: gf_isom_get_copyright_count
      Src: /src/gpac/applications/mp4box/filedump.c:4152,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4155,1
    - Dst: gf_isom_get_copyright
      Src: /src/gpac/applications/mp4box/filedump.c:4157,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4158,1
    - Dst: gf_isom_get_chapter_count
      Src: /src/gpac/applications/mp4box/filedump.c:4162,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4166,1
    - Dst: gf_isom_get_chapter
      Src: /src/gpac/applications/mp4box/filedump.c:4168,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4169,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4169,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:4173,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/filedump.c:4175,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/filedump.c:4177,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/filedump.c:4182,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4186,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/filedump.c:4189,1
    - Dst: gf_bs_new
      Src: /src/gpac/applications/mp4box/filedump.c:4191,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/applications/mp4box/filedump.c:4192,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4194,1
    - Dst: format_duration
      Src: /src/gpac/applications/mp4box/filedump.c:4194,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/applications/mp4box/filedump.c:4195,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/filedump.c:4197,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/filedump.c:4198,1
    - Dst: gf_isom_apple_get_tag
      Src: /src/gpac/applications/mp4box/filedump.c:4203,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4205,1
    - Dst: gf_isom_apple_enum_tag_ex
      Src: /src/gpac/applications/mp4box/filedump.c:4215,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/applications/mp4box/filedump.c:4219,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4222,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4224,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4226,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4226,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4229,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/applications/mp4box/filedump.c:4229,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/applications/mp4box/filedump.c:4230,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4232,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4237,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4241,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:4246,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4250,1
    - Dst: gf_id3_get_genre
      Src: /src/gpac/applications/mp4box/filedump.c:4250,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4256,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4258,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4261,1
    - Dst: gf_isom_enum_udta_keys
      Src: /src/gpac/applications/mp4box/filedump.c:4269,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4272,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4276,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/filedump.c:4277,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4278,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/filedump.c:4278,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4279,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:4283,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4286,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4291,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4298,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4304,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4307,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4309,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4312,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4316,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4318,1
    - Dst: gf_isom_wma_enum_tag
      Src: /src/gpac/applications/mp4box/filedump.c:4325,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4328,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4331,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4333,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4334,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4337,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/applications/mp4box/filedump.c:4340,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/filedump.c:4341,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/applications/mp4box/filedump.c:4342,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4345,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/filedump.c:4347,1
    - Dst: print_udta
      Src: /src/gpac/applications/mp4box/filedump.c:4352,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4353,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/filedump.c:4354,1
    - Dst: DumpTrackInfo
      Src: /src/gpac/applications/mp4box/filedump.c:4355,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 253
    argCount: 2
    argNames:
    - file
    - full_dump
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4357
      start: 4056
    functionDepth: 4
    functionLinenumber: 4056
    functionLinenumberEnd: 4357
    functionName: DumpMovieInfo
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_isom_wma_enum_tag
    - format_duration
    - DumpMetaItem
    - gf_isom_get_sample_count
    - gf_isom_get_original_duration
    - gf_bs_new
    - print_udta
    - gf_bs_del
    - gf_isom_get_reference
    - gf_itags_find_by_itag
    - gf_isom_get_sample
    - gf_isom_enum_udta_keys
    - gf_isom_is_JPEG2000
    - gf_isom_apple_enum_tag_ex
    - gf_malloc
    - gf_isom_get_chapter_count
    - format_date
    - gf_isom_get_brand_info
    - gf_isom_get_copyright_count
    - gf_isom_apple_get_tag
    - gf_itags_get_type
    - gf_isom_moov_first
    - gf_isom_get_fragmented_duration
    - gf_odf_desc_size
    - gf_isom_segment_get_track_fragment_decode_time
    - gf_id3_get_genre
    - gf_isom_segment_get_track_fragment_count
    - gf_isom_get_alternate_brand
    - gf_utf8_wcslen
    - gf_isom_get_root_od
    - gf_isom_get_fragments_count
    - DumpTrackInfo
    - gf_isom_delete_text_sample
    - gf_isom_segment_get_fragment_count
    - gf_odf_desc_del
    - gf_isom_has_movie
    - gf_isom_get_track_count
    - gf_m4a_get_profile_name
    - gf_isom_get_reference_count
    - gf_isom_has_segment
    - gf_m4v_get_profile_name
    - gf_free
    - gf_isom_get_chapter
    - gf_isom_get_creation_time
    - gf_isom_is_fragmented
    - GF_4CC
    - gf_isom_get_duration
    - gf_isom_get_copyright
    - gf_isom_sample_del
    - gf_itags_get_name
    - gf_isom_parse_text_sample
    - gf_utf8_wcstombs
    - gf_isom_get_timescale
    - gf_4cc_to_str
    - gf_isom_segment_get_fragment_size
    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:4401,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4406,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4414,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4420,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4425,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4430,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4435,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4438,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4440,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4442,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4445,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/applications/mp4box/filedump.c:4448,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4449,1
    - Dst: gf_m2ts_get_stream_name
      Src: /src/gpac/applications/mp4box/filedump.c:4449,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4450,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4451,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4455,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4460,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4463,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4468,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4471,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4476,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4477,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4479,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4480,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4486,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4487,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4489,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4490,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4498,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4504,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:4532,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4536,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4538,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4541,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:4547,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/filedump.c:4552,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4555,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:4568,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: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4576,1
    - Dst: gf_odf_sl_depacketize
      Src: /src/gpac/applications/mp4box/filedump.c:4578,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/filedump.c:4579,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4580,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: 4587
      start: 4391
    functionDepth: 1
    functionLinenumber: 4391
    functionLinenumberEnd: 4587
    functionName: on_m2ts_dump_event
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - GF_LOG
    - gf_odf_sl_depacketize
    - M4_LOG
    - gf_fwrite
    - gf_m2ts_get_stream_name
    - gf_list_get
    - gf_m2ts_set_pes_framing
    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:4600,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4603,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4605,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/applications/mp4box/filedump.c:4608,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/filedump.c:4611,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/filedump.c:4617,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/filedump.c:4619,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4621,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4622,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4624,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4625,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4626,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4627,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/filedump.c:4633,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/mp4box/filedump.c:4634,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/filedump.c:4635,1
    - Dst: feof
      Src: /src/gpac/applications/mp4box/filedump.c:4638,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/filedump.c:4639,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/mp4box/filedump.c:4642,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/filedump.c:4648,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4650,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4654,1
    - Dst: snprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4658,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/filedump.c:4659,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/filedump.c:4661,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4664,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/applications/mp4box/filedump.c:4667,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/filedump.c:4668,1
    - Dst: feof
      Src: /src/gpac/applications/mp4box/filedump.c:4671,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/filedump.c:4672,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/applications/mp4box/filedump.c:4675,1
    - Dst: gf_set_progress
      Src: /src/gpac/applications/mp4box/filedump.c:4678,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4681,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/applications/mp4box/filedump.c:4682,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4683,1
    - Dst: fprintf
      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:4688,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/filedump.c:4691,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: 4692
      start: 4589
    functionDepth: 1
    functionLinenumber: 4589
    functionLinenumberEnd: 4692
    functionName: dump_mpeg2_ts
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - snprintf
    - gf_m2ts_process_data
    - gf_fopen
    - M4_LOG
    - gf_m2ts_demux_new
    - gf_list_get
    - gf_m2ts_demux_del
    - parse_u32
    - gf_ftell
    - gf_set_progress
    - strrchr
    - feof
    - sprintf
    - gf_fclose
    - gf_fseek
    - gf_m2ts_reset_parsers
    - gf_fread
    - memset
    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:4703,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4708,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4711
      start: 4698
    functionDepth: 0
    functionLinenumber: 4698
    functionLinenumberEnd: 4711
    functionName: get_file_callback
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_dm_sess_get_stats
    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:4716,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/applications/mp4box/filedump.c:4718,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/applications/mp4box/filedump.c:4720,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - url
    - dm
    - e
    argTypes:
    - char*
    - GF_DownloadManager*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4724
      start: 4713
    functionDepth: 0
    functionLinenumber: 4713
    functionLinenumberEnd: 4724
    functionName: get_file
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_del
    - gf_dm_sess_process
    - gf_dm_sess_new
    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:4732,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/filedump.c:4733,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/filedump.c:4736,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/filedump.c:4736,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/filedump.c:4739,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/filedump.c:4740,1
    - Dst: gf_cfg_new
      Src: /src/gpac/applications/mp4box/filedump.c:4742,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/applications/mp4box/filedump.c:4743,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/filedump.c:4744,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/filedump.c:4749,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:4752,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/filedump.c:4756,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/applications/mp4box/filedump.c:4757,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/filedump.c:4758,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: 4726
    functionDepth: 1
    functionLinenumber: 4726
    functionLinenumberEnd: 4780
    functionName: revert_cache_file
    functionSourceFile: /src/gpac/applications/mp4box/filedump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_strcpy
    - gf_free
    - GF_SAFE_ALLOC_N
    - gf_file_exists
    - gf_strcat
    - M4_LOG
    - gf_cfg_del
    - gf_dir_exists
    - gf_file_move
    - gf_cfg_new
    - gf_file_delete
    - gf_mkdir
    - gf_cfg_get_key
    - strlen
    - memcpy
    - strstr
    - strncmp
    linkageType: ''
    returnType: void
    signature: void revert_cache_file(char *item_path)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_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: gf_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:
    - fprintf
    - gf_xml_dom_del
    - gf_dm_sess_get_cache_name
    - gf_mpd_resolve_url
    - gf_file_basename
    - gf_opts_set_key
    - gf_dm_new
    - gf_xml_dom_parse
    - revert_cache_file
    - gf_mpd_new
    - gf_dm_sess_get_header_sizes_and_times
    - gf_strcpy
    - gf_list_enum
    - gf_dm_sess_del
    - gf_xml_dom_new
    - gf_mpd_del
    - gf_error_to_string
    - gf_xml_dom_get_root
    - gf_free
    - get_file
    - GF_LOG
    - gf_mpd_init_from_dom
    - gf_dm_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:
    - M4_LOG
    - sscanf
    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:
    - M4_LOG
    - sscanf
    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:
    - strnicmp
    - strcmp
    - strlen
    - sscanf
    - strncmp
    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:
    - fprintf
    - gf_sys_features
    - gf_gpac_copyright_cite
    - gf_gpac_version
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_print_arg
    - gf_sys_format_help
    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_itag
    - gf_sys_format_help
    - gf_itags_get_name
    - gf_itags_get_type
    - gf_itags_get_alt_name
    - gf_4cc_to_str
    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_cicp_color_matrix_name
    - gf_sys_format_help
    - gf_cicp_color_primaries_name
    - strcmp
    - gf_cicp_color_transfer_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: 0
    functionsReached:
    - gf_sys_print_arg
    - gf_sys_format_help
    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:
    - gf_sys_word_match
    - sprintf
    - gf_strnistr
    - strcmp
    - strlen
    - gf_sys_print_arg
    - strncmp
    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:
    - gf_sys_word_match
    - gf_strnistr
    - fprintf
    - sprintf
    - gf_sys_get_options
    - stricmp
    - gf_sys_format_help
    - gf_fs_get_filter_register
    - PrintHelpForArgs
    - strcmp
    - strlen
    - gf_sys_print_arg
    - memset
    - gf_fs_filters_registers_count
    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_fs_new_defaults
    - gf_free
    - PrintHelpArg
    - strlwr
    - GF_LOG
    - gf_fs_del
    - gf_strdup
    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:
    - gf_realloc
    - strchr
    - parse_track_id
    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: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2196,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2196,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2199,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2200,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2202,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2204,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2206,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2209,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2211,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2213,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2215,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2217,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/mp4box/mp4box.c:2219,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2221,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:2221,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2225,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2228,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2228,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2229,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2235,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2235,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2235,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:2240,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2246,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2253,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 203
    argCount: 2
    argNames:
    - opts
    - act_type
    argTypes:
    - char*
    - MetaActionType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2258
      start: 1956
    functionDepth: 2
    functionLinenumber: 1956
    functionLinenumberEnd: 2258
    functionName: parse_meta_args
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - atof
    - GF_SAFEALLOC
    - gf_list_add
    - strchr
    - gf_malloc
    - M4_LOG
    - parse_track_id
    - gf_url_colon_suffix
    - gf_dynstrcat
    - parse_u32
    - gf_realloc
    - strnicmp
    - gf_list_new
    - strlen
    - sscanf
    - gf_error_to_string
    - gf_file_load_data
    - GF_4CC
    - stricmp
    - gf_strdup
    - memset
    - strncmp
    linkageType: ''
    returnType: u32
    signature: u32 parse_meta_args(char *opts, MetaActionType act_type)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2279,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2280,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2284,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2285,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2286,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2287,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2291,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2295,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2299,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2302,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2303,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2308,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2308,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2309,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2315,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2317,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2321,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2327,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2334,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 2
    argNames:
    - opts
    - act
    argTypes:
    - char*
    - TSELActionType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2338
      start: 2261
    functionDepth: 2
    functionLinenumber: 2261
    functionLinenumberEnd: 2338
    functionName: parse_tsel_args
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - strchr
    - GF_4CC
    - memset
    - parse_track_id
    - gf_url_colon_suffix
    - parse_s32
    - strnicmp
    - strlen
    - parse_u32
    - gf_realloc
    - memcpy
    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:2346,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2348,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2349,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2358,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2360,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:2363,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2368,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2368,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2368,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2371,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2372,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2375,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2378,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/applications/mp4box/mp4box.c:2378,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2379,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2379,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2380,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2381,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2382,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2384,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2384,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2385,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2386,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2387,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2389,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2394,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2398,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2402,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2406,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:2414,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2415,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/mp4box.c:2416,1
    - Dst: memcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2417,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2422,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2422,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2423,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2424,1
    - Dst: gf_parse_frac
      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: parse_u32
      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: gf_strdup
      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: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2432,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2433,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2436,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:2438,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:2442,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:2456,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2457,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: 2461
      start: 2341
    functionDepth: 2
    functionLinenumber: 2341
    functionLinenumberEnd: 2461
    functionName: set_dash_input
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sprintf
    - strchr
    - gf_malloc
    - gf_parse_lfrac
    - gf_parse_frac
    - parse_u32
    - stricmp
    - strnicmp
    - gf_url_colon_suffix
    - gf_dynstrcat
    - strlen
    - gf_strdup
    - memset
    - gf_realloc
    - memcpy
    - strstr
    - strncmp
    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:2467,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2473,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2482,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2484,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2488,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2491,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2493,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2498,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2500,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2504,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2507,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2509,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2513,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2522,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2523,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2530,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2532,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2536,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2538,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2539,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2541,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2549,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2551,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2555,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2557,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2558,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:2563,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2564,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2566,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2569,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2576,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2578,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2582,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2584,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2588,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2589,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2590,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2593,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2595,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2597,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2607,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2610,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2613,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2627,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2630,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2632,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2635,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2637,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2643,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2645,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2649,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2651,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2652,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2658,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2659,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2661,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2665,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2668,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2670,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:2674,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2676,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2680,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2682,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2686,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2692,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2694,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2701,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2708,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2711,1
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:2715,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2716,1
    - Dst: mktime
      Src: /src/gpac/applications/mp4box/mp4box.c:2721,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:2726,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2731,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2733,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2735,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2737,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2739,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2740,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2741,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2742,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2743,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2744,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2745,1
    - Dst: gf_strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:2746,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2748,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:2749,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2751,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:2757,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: 2760
      start: 2463
    functionDepth: 2
    functionLinenumber: 2463
    functionLinenumberEnd: 2760
    functionName: create_new_track_action
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - strchr
    - mktime
    - M4_LOG
    - parse_u32
    - stricmp
    - strstr
    - GF_4CC
    - parse_track_id
    - strnicmp
    - parse_s32
    - gf_url_colon_suffix
    - gf_strdup
    - memset
    - gf_realloc
    - sscanf
    - strncmp
    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:2764,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - arg
    - dump_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2768
      start: 2762
    functionDepth: 3
    functionLinenumber: 2762
    functionLinenumberEnd: 2768
    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:2771,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - arg
    - act_type
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2775
      start: 2769
    functionDepth: 3
    functionLinenumber: 2769
    functionLinenumberEnd: 2775
    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: 2782
      start: 2777
    functionDepth: 0
    functionLinenumber: 2777
    functionLinenumberEnd: 2782
    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:2785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2788
      start: 2783
    functionDepth: 1
    functionLinenumber: 2783
    functionLinenumberEnd: 2788
    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:2791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2794
      start: 2789
    functionDepth: 1
    functionLinenumber: 2789
    functionLinenumberEnd: 2794
    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:2798,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2798,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: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2805,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2809
      start: 2796
    functionDepth: 1
    functionLinenumber: 2796
    functionLinenumberEnd: 2809
    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:2813,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2814,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2815,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2817,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2821
      start: 2811
    functionDepth: 1
    functionLinenumber: 2811
    functionLinenumberEnd: 2821
    functionName: parse_cp_loc
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - M4_LOG
    - strcmp
    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:2825,1
    - 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: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
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 15
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2833
      start: 2823
    functionDepth: 0
    functionLinenumber: 2823
    functionLinenumberEnd: 2833
    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:2836,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2837,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2840
      start: 2834
    functionDepth: 0
    functionLinenumber: 2834
    functionLinenumberEnd: 2840
    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:2846,1
    - Dst: parse_track_action
      Src: /src/gpac/applications/mp4box/mp4box.c:2847,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2842
    functionDepth: 4
    functionLinenumber: 2842
    functionLinenumberEnd: 2855
    functionName: parse_rap_ref
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - parse_track_action
    - parse_track_id
    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:2860,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2866,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2874
      start: 2856
    functionDepth: 0
    functionLinenumber: 2856
    functionLinenumberEnd: 2874
    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:2877,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2882
      start: 2875
    functionDepth: 0
    functionLinenumber: 2875
    functionLinenumberEnd: 2882
    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:2889,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2891
      start: 2883
    functionDepth: 2
    functionLinenumber: 2883
    functionLinenumberEnd: 2891
    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:2899,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2904,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:2908,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2911,1
    - Dst: parse_s32
      Src: /src/gpac/applications/mp4box/mp4box.c:2915,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2893
    functionDepth: 2
    functionLinenumber: 2893
    functionLinenumberEnd: 2924
    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:2935,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2940
      start: 2925
    functionDepth: 1
    functionLinenumber: 2925
    functionLinenumberEnd: 2940
    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:2944,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2944,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:2946,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2948,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2948,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2950,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2950,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2952,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2953,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:2954,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2956,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 21
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2960
      start: 2942
    functionDepth: 1
    functionLinenumber: 2942
    functionLinenumberEnd: 2960
    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:2965,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:2966,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2968,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:2968,1
    - Dst: gf_parse_frac
      Src: /src/gpac/applications/mp4box/mp4box.c:2973,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2976
      start: 2962
    functionDepth: 1
    functionLinenumber: 2962
    functionLinenumberEnd: 2976
    functionName: parse_fps
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - M4_LOG
    - sscanf
    - strcmp
    - gf_parse_frac
    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:2984,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2985,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:2986,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2990,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:2993,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3003,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3004,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3005,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3009,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3012,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3021,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3021,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3022,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3025,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:3026,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3028,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3031,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 62
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3041
      start: 2978
    functionDepth: 2
    functionLinenumber: 2978
    functionLinenumberEnd: 3041
    functionName: parse_split
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - atof
    - strchr
    - M4_LOG
    - sscanf
    - strlen
    - parse_u32
    - strstr
    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:3048,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3050,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3051,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3053,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:3057,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3059,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:3063,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3065,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - b
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3070
      start: 3043
    functionDepth: 2
    functionLinenumber: 3043
    functionLinenumberEnd: 3070
    functionName: parse_brand
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - GF_4CC
    - parse_u32
    - gf_realloc
    - sscanf
    - strncmp
    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: 3077
      start: 3072
    functionDepth: 0
    functionLinenumber: 3072
    functionLinenumberEnd: 3077
    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:3088,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3092
      start: 3079
    functionDepth: 1
    functionLinenumber: 3079
    functionLinenumberEnd: 3092
    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:3096,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3099,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3105
      start: 3093
    functionDepth: 1
    functionLinenumber: 3093
    functionLinenumberEnd: 3105
    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: 3112
      start: 3106
    functionDepth: 0
    functionLinenumber: 3106
    functionLinenumberEnd: 3112
    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:3118,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3121,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3126,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3127,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3128,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3131,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3132,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3135,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - code
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3141
      start: 3115
    functionDepth: 1
    functionLinenumber: 3115
    functionLinenumberEnd: 3141
    functionName: parse_dump_udta
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strchr
    - M4_LOG
    - GF_4CC
    - parse_track_id
    - strlen
    - sscanf
    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:3147,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:3148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3154
      start: 3143
    functionDepth: 2
    functionLinenumber: 3143
    functionLinenumberEnd: 3154
    functionName: parse_dump_ts
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - isdigit
    - parse_u32
    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:3167,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3167,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3167,1
    - Dst: parse_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3170,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3174
      start: 3156
    functionDepth: 1
    functionLinenumber: 3156
    functionLinenumberEnd: 3174
    functionName: parse_ttxt
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - strcmp
    - parse_track_id
    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:3183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - arg
    - arg_val
    - opt
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3185
      start: 3176
    functionDepth: 0
    functionLinenumber: 3176
    functionLinenumberEnd: 3185
    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:3189,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3190,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3191,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3191,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3192,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3192,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3193,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3193,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3194,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3194,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3195,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3195,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3196,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3196,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3197,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3198,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3200,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3200,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3201,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3201,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3202,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3202,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3203,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3203,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3204,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3204,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3206,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3207,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3209,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3209,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3211,1
    - Dst: PrintCoreUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3211,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3212,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3212,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3213,1
    - Dst: PrintCICP
      Src: /src/gpac/applications/mp4box/mp4box.c:3213,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3214,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3215,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3216,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3217,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3218,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3219,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3220,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3221,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3222,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3223,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3224,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3225,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3227,1
    - Dst: PrintCoreUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3229,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3230,1
    - Dst: PrintCICP
      Src: /src/gpac/applications/mp4box/mp4box.c:3231,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3232,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3233,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3235,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 55
    argCount: 2
    argNames:
    - arg_val
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3236
      start: 3187
    functionDepth: 4
    functionLinenumber: 3187
    functionLinenumberEnd: 3236
    functionName: parse_help
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - PrintDumpUsage
    - PrintEncodeUsage
    - PrintEncryptUsage
    - PrintSWFUsage
    - PrintImportUsage
    - M4_LOG
    - PrintDASHUsage
    - PrintUsage
    - PrintSplitUsage
    - PrintCICP
    - PrintHelp
    - PrintLiveUsage
    - PrintTags
    - PrintGeneralUsage
    - PrintCoreUsage
    - strcmp
    - PrintExtractUsage
    - PrintMetaUsage
    - PrintHintUsage
    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:3249,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3251,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3252,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/applications/mp4box/mp4box.c:3253,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3256,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3257,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3258,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:3262,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3265,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3267,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3268,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3269,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3270,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3272,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3273,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3274,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3275,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3277,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3278,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3279,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3280,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3281,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3282,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3284,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3285,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3286,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3287,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3290,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3291,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3292,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3294,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3296,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3297,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3299,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3300,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3301,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3302,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3303,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:3308,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3311,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3312,1
    - Dst: PrintGeneralUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3314,1
    - Dst: PrintExtractUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3315,1
    - Dst: PrintDASHUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3316,1
    - Dst: PrintSplitUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3317,1
    - Dst: PrintDumpUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3318,1
    - Dst: PrintImportUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3319,1
    - Dst: PrintHintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3320,1
    - Dst: PrintEncodeUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3321,1
    - Dst: PrintEncryptUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3322,1
    - Dst: PrintMetaUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3323,1
    - Dst: PrintSWFUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3324,1
    - Dst: PrintTags
      Src: /src/gpac/applications/mp4box/mp4box.c:3325,1
    - Dst: PrintLiveUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:3327,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3330,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:3331,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/applications/mp4box/mp4box.c:3336,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:3338,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 67
    argCount: 2
    argNames:
    - name
    - opt
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3341
      start: 3243
    functionDepth: 2
    functionLinenumber: 3243
    functionLinenumberEnd: 3341
    functionName: parse_gendoc
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - fprintf
    - PrintDumpUsage
    - PrintEncodeUsage
    - PrintMetaUsage
    - PrintEncryptUsage
    - PrintSWFUsage
    - PrintImportUsage
    - gf_fopen
    - PrintDASHUsage
    - PrintSplitUsage
    - PrintLiveUsage
    - PrintTags
    - PrintGeneralUsage
    - gf_fclose
    - gf_sys_format_help
    - PrintExtractUsage
    - gf_sys_print_arg
    - gf_gpac_copyright
    - PrintHintUsage
    linkageType: ''
    returnType: u32
    signature: u32 parse_gendoc(char *name, u32 opt)
  - BBCount: 46
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3353,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3355,1
    - Dst: exit
      Src: /src/gpac/applications/mp4box/mp4box.c:3356,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3359,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3361,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3365,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3365,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3383,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3387,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3394,1
    - Dst: gf_sys_set_args
      Src: /src/gpac/applications/mp4box/mp4box.c:3410,1
    - Dst: fun
      Src: /src/gpac/applications/mp4box/mp4box.c:3414,1
    - Dst: fun2
      Src: /src/gpac/applications/mp4box/mp4box.c:3417,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:3458,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3460,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:3464,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3472,1
    - Dst: atof
      Src: /src/gpac/applications/mp4box/mp4box.c:3478,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3483,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3492,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3498,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3503,1
    - Dst: sscanf
      Src: /src/gpac/applications/mp4box/mp4box.c:3510,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3511,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3519,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: 3526
      start: 3343
    functionDepth: 1
    functionLinenumber: 3343
    functionLinenumberEnd: 3526
    functionName: mp4box_parse_single_arg_class
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - atof
    - strchr
    - exit
    - M4_LOG
    - fun2
    - fun
    - GF_4CC
    - gf_sys_set_args
    - strcmp
    - strlen
    - sscanf
    - strncmp
    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:3530,1
    - 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
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 4
    argNames:
    - argc
    - argv
    - arg
    - arg_index
    argTypes:
    - int
    - char**
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3545
      start: 3528
    functionDepth: 2
    functionLinenumber: 3528
    functionLinenumberEnd: 3545
    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:3556,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3558,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3559,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3561,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3570,1
    - Dst: set_dash_input
      Src: /src/gpac/applications/mp4box/mp4box.c:3576,1
    - Dst: set_dash_input
      Src: /src/gpac/applications/mp4box/mp4box.c:3578,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3581,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3590,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3590,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3590,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3591,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3594,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3595,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/mp4box/mp4box.c:3596,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3599,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3600,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3603,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3604,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3607,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3608,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3611,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3612,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3615,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3616,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3620,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3620,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3621,1
    - Dst: mp4box_parse_single_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:3627,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:3629,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3631,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3633,1
    - Dst: gf_sys_is_gpac_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:3637,1
    - Dst: PrintHelp
      Src: /src/gpac/applications/mp4box/mp4box.c:3639,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3642,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3643,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:3646,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 86
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3653
      start: 3548
    functionDepth: 4
    functionLinenumber: 3548
    functionLinenumberEnd: 3653
    functionName: mp4box_parse_args
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - M4_LOG
    - stricmp
    - mp4box_parse_single_arg
    - set_dash_input
    - strcmp
    - PrintHelp
    - strncmp
    - mp4box_cleanup
    - gf_sys_is_gpac_arg
    - gf_sys_mark_arg_used
    - gf_opts_set_key
    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:3667,1
    - Dst: fflush
      Src: /src/gpac/applications/mp4box/mp4box.c:3668,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: 3669
      start: 3663
    functionDepth: 0
    functionLinenumber: 3663
    functionLinenumberEnd: 3669
    functionName: scene_coding_log
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - fflush
    - vfprintf
    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:3681,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3685,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3686,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/mp4box.c:3692,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/applications/mp4box/mp4box.c:3695,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3696,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3699
      start: 3678
    functionDepth: 1
    functionLinenumber: 3678
    functionLinenumberEnd: 3699
    functionName: SetupClockReferences
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_isom_is_track_in_root_od
    - gf_isom_change_mpeg4_description
    - gf_isom_get_esd
    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:3725,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3728,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3729,1
    - Dst: gf_isom_guess_specification
      Src: /src/gpac/applications/mp4box/mp4box.c:3732,1
    - Dst: gf_isom_is_single_av
      Src: /src/gpac/applications/mp4box/mp4box.c:3733,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3736,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:3737,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3739,1
    - Dst: gf_isom_set_default_sync_track
      Src: /src/gpac/applications/mp4box/mp4box.c:3740,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3747,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3751,1
    - Dst: gf_isom_is_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:3752,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3753,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3753,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:3757,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:3789,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:3790,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/applications/mp4box/mp4box.c:3799,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3811,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3813,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3815,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/applications/mp4box/mp4box.c:3816,1
    - Dst: gf_hinter_can_embbed_data
      Src: /src/gpac/applications/mp4box/mp4box.c:3818,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3823,1
    - Dst: gf_hinter_track_new
      Src: /src/gpac/applications/mp4box/mp4box.c:3829,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3833,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:3833,1
    - Dst: gf_hinter_track_force_no_offsets
      Src: /src/gpac/applications/mp4box/mp4box.c:3840,1
    - Dst: gf_hinter_track_get_bandwidth
      Src: /src/gpac/applications/mp4box/mp4box.c:3842,1
    - Dst: gf_hinter_track_get_flags
      Src: /src/gpac/applications/mp4box/mp4box.c:3844,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:3847,1
    - Dst: gf_hinter_track_get_payload_name
      Src: /src/gpac/applications/mp4box/mp4box.c:3849,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3850,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:3850,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:3850,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:3850,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3851,1
    - Dst: gf_hinter_track_process
      Src: /src/gpac/applications/mp4box/mp4box.c:3852,1
    - Dst: gf_hinter_track_finalize
      Src: /src/gpac/applications/mp4box/mp4box.c:3854,1
    - Dst: gf_hinter_track_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3855,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3858,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:3858,1
    - Dst: gf_hinter_finalize
      Src: /src/gpac/applications/mp4box/mp4box.c:3871,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:3874,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: 3877
      start: 3704
    functionDepth: 1
    functionLinenumber: 3704
    functionLinenumberEnd: 3877
    functionName: HintFile
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_media_type
    - gf_hinter_track_finalize
    - gf_isom_get_sample_count
    - gf_isom_set_nalu_extract_mode
    - gf_hinter_track_get_flags
    - gf_isom_get_sample
    - gf_isom_is_track_enabled
    - gf_isom_is_track_in_root_od
    - M4_LOG
    - gf_isom_get_esd
    - gf_hinter_track_new
    - gf_hinter_track_force_no_offsets
    - gf_hinter_track_del
    - gf_isom_guess_specification
    - gf_hinter_track_get_bandwidth
    - gf_isom_get_root_od
    - gf_hinter_track_get_payload_name
    - gf_error_to_string
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_isom_get_media_subtype
    - gf_isom_get_mpeg4_subtype
    - gf_hinter_track_process
    - gf_hinter_can_embbed_data
    - gf_hinter_finalize
    - gf_isom_set_default_sync_track
    - gf_isom_sample_del
    - gf_isom_is_single_av
    - gf_4cc_to_str
    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:3886,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3889,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3895,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/applications/mp4box/mp4box.c:3898,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3899,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3901,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3903,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3907,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/applications/mp4box/mp4box.c:3915,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3916,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3920,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:3924,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3925
      start: 3883
    functionDepth: 1
    functionLinenumber: 3883
    functionLinenumberEnd: 3925
    functionName: check_media_profile
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_m4a_get_config
    - gf_m4v_get_config
    - gf_isom_set_pl_indication
    - gf_isom_get_pl_indication
    - gf_isom_get_esd
    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:3930,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3934,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_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:3938,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:3939,1
    - Dst: gf_isom_remove_track_from_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3946,1
    - Dst: check_media_profile
      Src: /src/gpac/applications/mp4box/mp4box.c:3947,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:3952,1
    - Dst: gf_isom_remove_track_from_root_od
      Src: /src/gpac/applications/mp4box/mp4box.c:3954,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/applications/mp4box/mp4box.c:3962,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3970,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3970,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_set_pl_indication
      Src: /src/gpac/applications/mp4box/mp4box.c:3973,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
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3977
      start: 3926
    functionDepth: 2
    functionLinenumber: 3926
    functionLinenumberEnd: 3977
    functionName: remove_systems_tracks
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - check_media_profile
    - gf_isom_get_media_type
    - gf_isom_set_pl_indication
    - gf_isom_get_pl_indication
    - gf_isom_remove_track_from_root_od
    - gf_isom_remove_track
    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:3984,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3985,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:3992,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3995,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3995,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3995,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3995,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3995,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3997,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3997,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3997,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3999,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:3999,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4001,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4001,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4003,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4003,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4003,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4005,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4007,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4019,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 42
    argCount: 1
    argNames:
    - inName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4022
      start: 3981
    functionDepth: 1
    functionLinenumber: 3981
    functionLinenumberEnd: 4022
    functionName: get_file_type_by_ext
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 3
    functionsReached:
    - stricmp
    - gf_file_ext_start
    - strchr
    - gf_isom_probe_file
    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:4032,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/applications/mp4box/mp4box.c:4033,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4035,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4036,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4036,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/applications/mp4box/mp4box.c:4039,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4041,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/applications/mp4box/mp4box.c:4045,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4046,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4049,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4049,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4054,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4059,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4061,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4062,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4064,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4066,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4069,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4070,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4073,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4076,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 41
    argCount: 3
    argNames:
    - inName
    - outName
    - dump_std
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4078
      start: 4025
    functionDepth: 1
    functionLinenumber: 4025
    functionLinenumberEnd: 4078
    functionName: xml_bs_to_bin
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_xml_dom_parse
    - gf_xml_dom_del
    - gf_xml_dom_get_root_idx
    - gf_fclose
    - gf_free
    - gf_strcat
    - gf_fopen
    - M4_LOG
    - gf_xml_dom_new
    - gf_xml_parse_bit_sequence
    - gf_fwrite
    - gf_error_to_string
    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:4087,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4087,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4087,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4090,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4092,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/mp4box.c:4093,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4096,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4097,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/applications/mp4box/mp4box.c:4100,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/mp4box.c:4103,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:4105,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4106,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/applications/mp4box/mp4box.c:4114,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4116,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4117,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 3
    argNames:
    - inName
    - compress_top_boxes
    - mode
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4120
      start: 4080
    functionDepth: 1
    functionLinenumber: 4080
    functionLinenumberEnd: 4120
    functionName: do_size_top_boxes
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fopen
    - gf_bs_read_u64
    - gf_bs_from_file
    - gf_bs_del
    - gf_4cc_to_str
    - strcmp
    - gf_bs_read_u32
    - strstr
    - gf_bs_available
    - 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:4135,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4139,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4143,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4145,1
    - Dst: gf_malloc
      Src: /src/gpac/applications/mp4box/mp4box.c:4149,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4151,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/applications/mp4box/mp4box.c:4152,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4154,1
    - Dst: gf_bs_available
      Src: /src/gpac/applications/mp4box/mp4box.c:4158,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4160,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4167,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:4168,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4169,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4170,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4174,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4175,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4181,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4182,1
    - Dst: gf_realloc
      Src: /src/gpac/applications/mp4box/mp4box.c:4193,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4195,1
    - Dst: gf_gz_compress_payload
      Src: /src/gpac/applications/mp4box/mp4box.c:4201,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4211,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4213,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/applications/mp4box/mp4box.c:4215,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/applications/mp4box/mp4box.c:4219,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4221,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4222,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4223,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4224,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4225,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4227,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4227,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4236,1
    - Dst: gf_isom_get_duration
      Src: /src/gpac/applications/mp4box/mp4box.c:4237,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:4238,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:4241,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/applications/mp4box/mp4box.c:4243,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:4245,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4256,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4257,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4259,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4262,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4263,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4265,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 96
    argCount: 2
    argNames:
    - inName
    - outName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4269
      start: 4122
    functionDepth: 1
    functionLinenumber: 4122
    functionLinenumberEnd: 4269
    functionName: do_compress_top_boxes
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - fprintf
    - gf_gz_compress_payload
    - gf_bs_get_size
    - gf_bs_available
    - gf_isom_get_sample_count
    - gf_bs_read_data
    - gf_bs_del
    - strstr
    - gf_malloc
    - gf_fopen
    - M4_LOG
    - gf_bs_from_file
    - gf_realloc
    - gf_bs_write_data
    - strcmp
    - gf_bs_read_u32
    - gf_error_to_string
    - gf_isom_get_track_count
    - gf_free
    - gf_fclose
    - gf_isom_open
    - gf_isom_get_duration
    - gf_bs_write_u32
    - gf_isom_close
    - gf_isom_get_timescale
    - gf_4cc_to_str
    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:4275,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4278,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4280,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4282,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4283,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4284,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - name
    - dump_std
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4287
      start: 4271
    functionDepth: 1
    functionLinenumber: 4271
    functionLinenumberEnd: 4287
    functionName: hash_file
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_media_get_file_hash
    - gf_fwrite
    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:4295,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4296,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4298,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4300,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4301,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4302,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/mp4box.c:4304,1
    - Dst: gf_ftell
      Src: /src/gpac/applications/mp4box/mp4box.c:4305,1
    - Dst: gf_fseek
      Src: /src/gpac/applications/mp4box/mp4box.c:4306,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/mp4box.c:4309,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:4310,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4312,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4316,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4319,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4320,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4321,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4322
      start: 4289
    functionDepth: 1
    functionLinenumber: 4289
    functionLinenumberEnd: 4322
    functionName: do_raw_cat
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_fclose
    - gf_fopen
    - gf_fseek
    - gf_ftell
    - gf_fread
    - gf_fwrite
    - mp4box_cleanup
    linkageType: ''
    returnType: u32
    signature: u32 do_raw_cat()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_new
      Src: /src/gpac/applications/mp4box/mp4box.c:4329,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4331,1
    - Dst: parse_u32
      Src: /src/gpac/applications/mp4box/mp4box.c:4334,1
    - Dst: gf_sk_bind
      Src: /src/gpac/applications/mp4box/mp4box.c:4336,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4339,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4339,1
    - Dst: gf_sk_send
      Src: /src/gpac/applications/mp4box/mp4box.c:4342,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4342,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4344,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4344,1
    - Dst: gf_sk_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4348,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4353
      start: 4324
    functionDepth: 2
    functionLinenumber: 4324
    functionLinenumberEnd: 4353
    functionName: do_write_udp
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_sk_send
    - M4_LOG
    - gf_sk_new
    - gf_sk_bind
    - strrchr
    - strlen
    - parse_u32
    - gf_error_to_string
    linkageType: ''
    returnType: u32
    signature: u32 do_write_udp()
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4362,1
    - Dst: strnicmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4362,1
    - Dst: gf_dm_wget
      Src: /src/gpac/applications/mp4box/mp4box.c:4364,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4369,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4369,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4370,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4371,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4376,1
    - Dst: gf_file_basename
      Src: /src/gpac/applications/mp4box/mp4box.c:4378,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/mp4box.c:4379,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4381,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4386,1
    - Dst: strdup
      Src: /src/gpac/applications/mp4box/mp4box.c:4388,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4389,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4391,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4392,1
    - Dst: gf_mpd_new
      Src: /src/gpac/applications/mp4box/mp4box.c:4396,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4399,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4399,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4400,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4402,1
    - Dst: gf_fread
      Src: /src/gpac/applications/mp4box/mp4box.c:4408,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4411,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4412,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4414,1
    - Dst: gf_m3u8_to_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:4419,1
    - Dst: gf_mpd_smooth_to_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:4421,1
    - Dst: gf_mpd_write_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4426,1
    - Dst: gf_mpd_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4429,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4431,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4434,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4437,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4437,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4438,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4440,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4441,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 70
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4443
      start: 4356
    functionDepth: 1
    functionLinenumber: 4356
    functionLinenumberEnd: 4443
    functionName: convert_mpd
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_file_basename
    - strstr
    - strdup
    - gf_fopen
    - gf_mpd_write_file
    - M4_LOG
    - gf_mpd_new
    - gf_strcpy
    - gf_file_ext_start
    - gf_m3u8_to_mpd
    - strnicmp
    - gf_mpd_del
    - gf_error_to_string
    - sprintf
    - gf_mpd_smooth_to_mpd
    - gf_free
    - gf_fclose
    - gf_file_delete
    - gf_fread
    - mp4box_cleanup
    - gf_dm_wget
    linkageType: ''
    returnType: u32
    signature: u32 convert_mpd()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/mp4box.c:4456,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4458,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4459,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4462,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:4463,1
    - Dst: gf_media_import
      Src: /src/gpac/applications/mp4box/mp4box.c:4468,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4470,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4470,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4471,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4472,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4473,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4474,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4477,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4478,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4479,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4479,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4480,1
    - Dst: dump_isom_timed_text
      Src: /src/gpac/applications/mp4box/mp4box.c:4484,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:4484,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4490,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4491,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4492,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4494,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4494,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4495,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4497,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4499,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4500,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4502
      start: 4446
    functionDepth: 2
    functionLinenumber: 4446
    functionLinenumberEnd: 4502
    functionName: do_import_sub
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_isom_get_track_id
    - strchr
    - gf_free
    - dump_isom_timed_text
    - gf_isom_open
    - gf_isom_set_timescale
    - M4_LOG
    - GF_SAFEALLOC
    - gf_media_import
    - gf_file_delete
    - gf_isom_delete
    - strlen
    - mp4box_cleanup
    - gf_error_to_string
    linkageType: ''
    returnType: u32
    signature: u32 do_import_sub()
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4518,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4523,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4524,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4531,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4533,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4533,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4533,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4534,1
    - Dst: gf_isom_freeze_order
      Src: /src/gpac/applications/mp4box/mp4box.c:4538,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/mp4box/mp4box.c:4542,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:4544,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:4549,1
    - Dst: gf_isom_keep_utc_times
      Src: /src/gpac/applications/mp4box/mp4box.c:4556,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4562,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/applications/mp4box/mp4box.c:4565,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4567,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4568,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4569,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4573,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4575,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4576,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4577,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4578,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4587,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4595,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:4599,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:4602,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:4603,1
    - Dst: gf_file_exists
      Src: /src/gpac/applications/mp4box/mp4box.c:4609,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:4620,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4630,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4632,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4636,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4637,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4640,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4641,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4645,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4645,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4646,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4648,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4649,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4659,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4659,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4659,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4661,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4662,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4669,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4674,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4678,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4680,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4680,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4680,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4681,1
    - Dst: cat_isomedia_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4685,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4685,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:4685,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4687,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4687,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4688,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4689,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4696,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4697,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/applications/mp4box/mp4box.c:4699,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:4700,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4702,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4703,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4704,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4705,1
    - Dst: gf_fs_run
      Src: /src/gpac/applications/mp4box/mp4box.c:4708,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4711,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/applications/mp4box/mp4box.c:4712,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4715,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4715,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4716,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4717,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4718,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/applications/mp4box/mp4box.c:4723,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/applications/mp4box/mp4box.c:4724,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/applications/mp4box/mp4box.c:4725,1
    - Dst: gf_fs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4726,1
    - Dst: remove_systems_tracks
      Src: /src/gpac/applications/mp4box/mp4box.c:4731,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 198
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4736
      start: 4505
    functionDepth: 3
    functionLinenumber: 4505
    functionLinenumberEnd: 4736
    functionName: do_add_cat
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_last_error
    - gf_fs_print_stats
    - gf_fs_print_non_connected
    - mp4box_cleanup
    - cat_isomedia_file
    - strstr
    - strchr
    - gf_fs_get_last_connect_error
    - gf_fopen
    - M4_LOG
    - gf_url_colon_suffix
    - gf_dynstrcat
    - gf_isom_set_storage_mode
    - gf_isom_set_brand_info
    - gf_fs_get_last_process_error
    - gf_file_exists
    - gf_isom_freeze_order
    - strcmp
    - gf_isom_probe_file
    - gf_fs_load_filter
    - remove_systems_tracks
    - gf_error_to_string
    - gf_fs_new_defaults
    - sprintf
    - gf_isom_get_track_count
    - gf_fclose
    - import_file
    - gf_free
    - gf_fs_run
    - gf_fs_del
    - gf_isom_open
    - gf_isom_modify_alternate_brand
    - gf_isom_keep_utc_times
    - gf_isom_delete
    - gf_fs_print_connections
    linkageType: ''
    returnType: u32
    signature: u32 do_add_cat(int argc, char **argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4747,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4748,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4749,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4749,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4750,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4752,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:4753,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4755,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4756,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4757,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4757,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:4758,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4760,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:4761,1
    - Dst: EncodeFile
      Src: /src/gpac/applications/mp4box/mp4box.c:4763,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:4764,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4772
      start: 4741
    functionDepth: 2
    functionLinenumber: 4741
    functionLinenumberEnd: 4772
    functionName: do_scene_encode
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - strchr
    - gf_fclose
    - gf_fopen
    - gf_strcat
    - gf_isom_open
    - EncodeFile
    - 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:4789,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4793,1
    - Dst: gf_url_get_resource_name
      Src: /src/gpac/applications/mp4box/mp4box.c:4793,1
    - Dst: strrchr
      Src: /src/gpac/applications/mp4box/mp4box.c:4794,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4796,1
    - Dst: gf_strcpy
      Src: /src/gpac/applications/mp4box/mp4box.c:4797,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4800,1
    - Dst: gf_strcat
      Src: /src/gpac/applications/mp4box/mp4box.c:4802,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4806,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4809,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4814,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/applications/mp4box/mp4box.c:4819,1
    - Dst: gf_rand
      Src: /src/gpac/applications/mp4box/mp4box.c:4821,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:4822,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/applications/mp4box/mp4box.c:4822,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:4827,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4839,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:4843,1
    - Dst: gf_dasher_new
      Src: /src/gpac/applications/mp4box/mp4box.c:4849,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:4851,1
    - Dst: gf_dasher_set_info
      Src: /src/gpac/applications/mp4box/mp4box.c:4853,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4855,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4855,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4856,1
    - Dst: gf_dasher_set_start_date
      Src: /src/gpac/applications/mp4box/mp4box.c:4860,1
    - Dst: gf_dasher_set_location
      Src: /src/gpac/applications/mp4box/mp4box.c:4861,1
    - Dst: gf_dasher_add_base_url
      Src: /src/gpac/applications/mp4box/mp4box.c:4863,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4865,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4865,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4866,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4872,1
    - Dst: gf_dasher_enable_url_template
      Src: /src/gpac/applications/mp4box/mp4box.c:4876,1
    - Dst: gf_dasher_enable_segment_timeline
      Src: /src/gpac/applications/mp4box/mp4box.c:4877,1
    - Dst: gf_dasher_enable_single_segment
      Src: /src/gpac/applications/mp4box/mp4box.c:4878,1
    - Dst: gf_dasher_enable_single_file
      Src: /src/gpac/applications/mp4box/mp4box.c:4879,1
    - Dst: gf_dasher_set_switch_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4880,1
    - Dst: gf_dasher_set_durations
      Src: /src/gpac/applications/mp4box/mp4box.c:4881,1
    - Dst: gf_dasher_enable_rap_splitting
      Src: /src/gpac/applications/mp4box/mp4box.c:4882,1
    - Dst: gf_dasher_set_segment_marker
      Src: /src/gpac/applications/mp4box/mp4box.c:4883,1
    - Dst: gf_dasher_enable_sidx
      Src: /src/gpac/applications/mp4box/mp4box.c:4884,1
    - Dst: gf_dasher_set_dynamic_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4885,1
    - Dst: gf_dasher_set_min_buffer
      Src: /src/gpac/applications/mp4box/mp4box.c:4886,1
    - Dst: gf_dasher_set_ast_offset
      Src: /src/gpac/applications/mp4box/mp4box.c:4887,1
    - Dst: gf_dasher_enable_memory_fragmenting
      Src: /src/gpac/applications/mp4box/mp4box.c:4888,1
    - Dst: gf_dasher_set_initial_isobmf
      Src: /src/gpac/applications/mp4box/mp4box.c:4889,1
    - Dst: gf_dasher_configure_isobmf_default
      Src: /src/gpac/applications/mp4box/mp4box.c:4890,1
    - Dst: gf_dasher_enable_utc_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:4891,1
    - Dst: gf_dasher_enable_real_time
      Src: /src/gpac/applications/mp4box/mp4box.c:4892,1
    - Dst: gf_dasher_set_content_protection_location_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4893,1
    - Dst: gf_dasher_set_profile_extension
      Src: /src/gpac/applications/mp4box/mp4box.c:4894,1
    - Dst: gf_dasher_enable_cached_inputs
      Src: /src/gpac/applications/mp4box/mp4box.c:4895,1
    - Dst: gf_dasher_enable_loop_inputs
      Src: /src/gpac/applications/mp4box/mp4box.c:4896,1
    - Dst: gf_dasher_set_split_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4897,1
    - Dst: gf_dasher_set_last_segment_merge
      Src: /src/gpac/applications/mp4box/mp4box.c:4898,1
    - Dst: gf_dasher_set_hls_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4899,1
    - Dst: gf_dasher_set_cues
      Src: /src/gpac/applications/mp4box/mp4box.c:4900,1
    - Dst: gf_dasher_print_session_info
      Src: /src/gpac/applications/mp4box/mp4box.c:4901,1
    - Dst: gf_dasher_keep_source_utc
      Src: /src/gpac/applications/mp4box/mp4box.c:4902,1
    - Dst: gf_dasher_add_input
      Src: /src/gpac/applications/mp4box/mp4box.c:4905,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4908,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4908,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4909,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4917,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4921,1
    - Dst: gf_dasher_set_dynamic_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4923,1
    - Dst: gf_dasher_process
      Src: /src/gpac/applications/mp4box/mp4box.c:4926,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4928,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4938,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:4938,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4946,1
    - Dst: gf_dasher_next_update_time
      Src: /src/gpac/applications/mp4box/mp4box.c:4947,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4948,1
    - Dst: gf_prompt_has_input
      Src: /src/gpac/applications/mp4box/mp4box.c:4955,1
    - Dst: gf_prompt_get_char
      Src: /src/gpac/applications/mp4box/mp4box.c:4956,1
    - Dst: gf_sleep
      Src: /src/gpac/applications/mp4box/mp4box.c:4976,1
    - Dst: gf_dasher_next_update_time
      Src: /src/gpac/applications/mp4box/mp4box.c:4977,1
    - Dst: gf_sys_clock
      Src: /src/gpac/applications/mp4box/mp4box.c:4979,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4981,1
    - Dst: gf_dasher_del
      Src: /src/gpac/applications/mp4box/mp4box.c:4990,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/applications/mp4box/mp4box.c:4993,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:4995,1
    - Dst: scanf
      Src: /src/gpac/applications/mp4box/mp4box.c:4996,1
    - Dst: gf_file_move
      Src: /src/gpac/applications/mp4box/mp4box.c:4997,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5000,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:5000,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5001,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5003,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 222
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5007
      start: 4776
    functionDepth: 1
    functionLinenumber: 4776
    functionLinenumberEnd: 5007
    functionName: do_dash
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_dasher_set_durations
    - gf_dasher_enable_real_time
    - gf_dasher_enable_url_template
    - gf_url_get_resource_name
    - gf_rand
    - gf_get_default_cache_directory
    - gf_dasher_enable_single_file
    - gf_dasher_configure_isobmf_default
    - gf_isom_delete
    - gf_dasher_set_location
    - gf_dasher_del
    - gf_dasher_add_input
    - gf_prompt_has_input
    - gf_dasher_new
    - M4_LOG
    - gf_dasher_set_switch_mode
    - gf_dasher_enable_utc_ref
    - gf_dasher_set_min_buffer
    - gf_dasher_set_split_mode
    - gf_net_get_utc
    - gf_dasher_set_ast_offset
    - gf_file_move
    - gf_sys_is_test_mode
    - gf_dasher_enable_rap_splitting
    - gf_dasher_set_last_segment_merge
    - gf_strcpy
    - gf_dasher_add_base_url
    - gf_dasher_set_content_protection_location_mode
    - gf_dasher_enable_segment_timeline
    - gf_dasher_set_dynamic_mode
    - gf_sys_clock
    - gf_dasher_print_session_info
    - gf_dasher_set_segment_marker
    - gf_dasher_process
    - gf_dasher_enable_loop_inputs
    - strrchr
    - gf_dasher_enable_cached_inputs
    - gf_error_to_string
    - sprintf
    - gf_dasher_set_profile_extension
    - gf_prompt_get_char
    - gf_sleep
    - scanf
    - gf_dasher_set_hls_clock
    - gf_strcat
    - gf_dasher_keep_source_utc
    - gf_dasher_set_initial_isobmf
    - gf_dasher_next_update_time
    - gf_dasher_enable_single_segment
    - gf_dasher_enable_sidx
    - gf_file_delete
    - gf_dasher_enable_memory_fragmenting
    - gf_isom_close
    - mp4box_cleanup
    - gf_dasher_set_info
    - gf_dasher_set_start_date
    - gf_dasher_set_cues
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_dash()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:5020,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5028,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5028,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5029,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5040,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:5046,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5053
      start: 5009
    functionDepth: 1
    functionLinenumber: 5009
    functionLinenumberEnd: 5053
    functionName: do_export_tracks_non_isobmf
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_media_export
    - M4_LOG
    - gf_isom_is_external_track
    - gf_isom_get_track_by_id
    - memset
    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:5059,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5061,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5065,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:5066,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5068,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5073,1
    - Dst: gf_odf_desc_write
      Src: /src/gpac/applications/mp4box/mp4box.c:5074,1
    - Dst: gf_fwrite
      Src: /src/gpac/applications/mp4box/mp4box.c:5076,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5077,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5082,1
    - Dst: gf_bs_del
      Src: /src/gpac/applications/mp4box/mp4box.c:5084,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:5085,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/applications/mp4box/mp4box.c:5087,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5090
      start: 5056
    functionDepth: 1
    functionLinenumber: 5056
    functionLinenumberEnd: 5090
    functionName: do_dump_iod
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_odf_desc_del
    - gf_free
    - gf_fclose
    - gf_fopen
    - gf_odf_desc_write
    - M4_LOG
    - gf_isom_get_root_od
    - gf_bs_from_file
    - gf_bs_del
    - gf_fwrite
    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:5094,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5097,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5103,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5105,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5116,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 30
    argCount: 2
    argNames:
    - file
    - tkid
    argTypes:
    - GF_ISOFile*
    - TrackIdentifier*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5119
      start: 5092
    functionDepth: 1
    functionLinenumber: 5092
    functionLinenumberEnd: 5119
    functionName: get_track_id
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 13
    functionsReached:
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - gf_isom_is_video_handler_type
    - gf_isom_get_media_type
    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:5132,1
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5137,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5139,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5139,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5140,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5153,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5156,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5160,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5161,1
    - Dst: sprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:5162,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:5165,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:5170,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5178
      start: 5121
    functionDepth: 2
    functionLinenumber: 5121
    functionLinenumberEnd: 5178
    functionName: do_export_tracks
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_id
    - sprintf
    - gf_isom_get_track_count
    - gf_media_export
    - M4_LOG
    - gf_isom_is_external_track
    - gf_isom_get_track_by_id
    - get_track_id
    - memset
    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:5190,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5193,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5196,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5204,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:5205,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5211,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5212,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5215,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5220,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5223,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5223,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5223,1
    - Dst: gf_isom_add_meta_item2
      Src: /src/gpac/applications/mp4box/mp4box.c:5224,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5232,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5234,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/mp4box.c:5235,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:5236,1
    - Dst: gf_isom_meta_add_item_group
      Src: /src/gpac/applications/mp4box/mp4box.c:5240,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5246,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5263,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:5264,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5265,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/mp4box.c:5266,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5269,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5276,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5279,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:5281,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:5282,1
    - Dst: gf_isom_disable_brand_rewrite
      Src: /src/gpac/applications/mp4box/mp4box.c:5288,1
    - Dst: import_file
      Src: /src/gpac/applications/mp4box/mp4box.c:5289,1
    - Dst: gf_isom_disable_brand_rewrite
      Src: /src/gpac/applications/mp4box/mp4box.c:5290,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5293,1
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5297,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5299,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5302,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:5302,1
    - Dst: gf_isom_meta_get_next_item_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5308,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5313,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5314,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5314,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5315,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5321,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5327,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5328,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5331,1
    - Dst: gf_isom_iff_create_image_item_from_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5335,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5338,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5340,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5342,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/mp4box.c:5343,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:5344,1
    - Dst: gf_isom_meta_add_item_group
      Src: /src/gpac/applications/mp4box/mp4box.c:5348,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:5354,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5357,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5359,1
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5368,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5371,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5374,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/applications/mp4box/mp4box.c:5374,1
    - Dst: gf_isom_meta_get_next_item_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5380,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5383,1
    - Dst: gf_isom_iff_create_image_grid_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5384,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5385,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5388,1
    - Dst: gf_isom_iff_create_image_overlay_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5389,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5390,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5393,1
    - Dst: gf_isom_iff_create_image_identity_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5394,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5395,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5403,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5406,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5408,1
    - Dst: gf_list_get
      Src: /src/gpac/applications/mp4box/mp4box.c:5409,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/applications/mp4box/mp4box.c:5410,1
    - Dst: gf_isom_meta_add_item_group
      Src: /src/gpac/applications/mp4box/mp4box.c:5415,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5423,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5427,1
    - Dst: gf_isom_set_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5432,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5436,1
    - Dst: gf_isom_remove_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5437,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5440,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5445,1
    - Dst: gf_isom_extract_meta_item
      Src: /src/gpac/applications/mp4box/mp4box.c:5446,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5446,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5448,1
    - Dst: gf_isom_has_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5455,1
    - Dst: gf_isom_extract_meta_xml
      Src: /src/gpac/applications/mp4box/mp4box.c:5456,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5458,1
    - Dst: gf_list_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5466,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5467,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/applications/mp4box/mp4box.c:5467,1
    - Dst: gf_list_del
      Src: /src/gpac/applications/mp4box/mp4box.c:5469,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 254
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5476
      start: 5180
    functionDepth: 2
    functionLinenumber: 5180
    functionLinenumberEnd: 5476
    functionName: do_meta_act
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_last_error
    - gf_isom_get_meta_type
    - gf_isom_get_media_type
    - gf_isom_meta_add_item_group
    - gf_isom_is_video_handler_type
    - gf_isom_remove_meta_item
    - GF_SAFEALLOC
    - gf_isom_iff_create_image_overlay_item
    - gf_isom_remove_track
    - gf_isom_meta_add_item_ref
    - gf_isom_set_meta_type
    - gf_isom_extract_meta_xml
    - M4_LOG
    - gf_isom_set_meta_xml
    - gf_list_get
    - gf_isom_get_meta_item_by_id
    - gf_isom_meta_get_next_item_id
    - gf_isom_remove_meta_xml
    - gf_isom_set_meta_primary_item
    - get_track_id
    - gf_isom_add_meta_item2
    - gf_isom_disable_brand_rewrite
    - gf_isom_get_meta_item_count
    - gf_isom_extract_meta_item
    - gf_isom_iff_create_image_identity_item
    - gf_isom_probe_file
    - strlen
    - gf_list_pop_back
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - import_file
    - gf_free
    - gf_isom_has_meta_xml
    - GF_LOG
    - gf_list_del
    - gf_isom_open
    - gf_isom_get_track_by_id
    - gf_isom_modify_alternate_brand
    - stricmp
    - GF_4CC
    - gf_isom_iff_create_image_item_from_track
    - gf_isom_iff_create_image_grid_item
    - gf_isom_delete
    - gf_4cc_to_str
    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:5484,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5486,1
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5493,1
    - Dst: gf_isom_set_track_switch_parameter
      Src: /src/gpac/applications/mp4box/mp4box.c:5494,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5495,1
    - Dst: gf_isom_get_track_switch_group_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5502,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5502,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5504,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5506,1
    - Dst: gf_isom_reset_track_switch_parameter
      Src: /src/gpac/applications/mp4box/mp4box.c:5513,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5513,1
    - Dst: gf_isom_reset_track_switch_parameter
      Src: /src/gpac/applications/mp4box/mp4box.c:5518,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5518,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5530
      start: 5478
    functionDepth: 2
    functionLinenumber: 5478
    functionLinenumberEnd: 5530
    functionName: do_tsel_act
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_reset_track_switch_parameter
    - gf_isom_get_track_switch_group_count
    - gf_isom_set_track_switch_parameter
    - M4_LOG
    - gf_isom_get_track_by_id
    - get_track_id
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err do_tsel_act()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5536,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5538,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5539,1
    - Dst: gf_isom_set_ipod_compatible
      Src: /src/gpac/applications/mp4box/mp4box.c:5545,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:5549,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/applications/mp4box/mp4box.c:5553,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5556,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5557,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5561,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5573,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/applications/mp4box/mp4box.c:5578,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/applications/mp4box/mp4box.c:5579,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5582
      start: 5532
    functionDepth: 1
    functionLinenumber: 5532
    functionLinenumberEnd: 5582
    functionName: do_ipod_conv
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_isom_set_media_type
    - gf_isom_get_track_count
    - gf_isom_get_reference_count
    - gf_isom_set_brand_info
    - gf_isom_set_ipod_compatible
    - gf_isom_get_media_type
    - M4_LOG
    - gf_isom_modify_alternate_brand
    - gf_isom_get_reference
    linkageType: ''
    returnType: void
    signature: void do_ipod_conv()
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5592,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5593,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5595,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5596,1
    - Dst: get_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5600,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:5602,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/applications/mp4box/mp4box.c:5605,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5607,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:5607,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5609,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5614,1
    - Dst: gf_isom_set_media_language
      Src: /src/gpac/applications/mp4box/mp4box.c:5616,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5623,1
    - Dst: gf_isom_add_track_kind
      Src: /src/gpac/applications/mp4box/mp4box.c:5625,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5632,1
    - Dst: gf_isom_remove_track_kind
      Src: /src/gpac/applications/mp4box/mp4box.c:5634,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/applications/mp4box/mp4box.c:5644,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/applications/mp4box/mp4box.c:5646,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5647,1
    - Dst: gf_isom_append_edit
      Src: /src/gpac/applications/mp4box/mp4box.c:5651,1
    - Dst: gf_isom_append_edit
      Src: /src/gpac/applications/mp4box/mp4box.c:5653,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/applications/mp4box/mp4box.c:5661,1
    - Dst: gf_isom_append_edit
      Src: /src/gpac/applications/mp4box/mp4box.c:5662,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5666,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5669,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/applications/mp4box/mp4box.c:5670,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5676,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/applications/mp4box/mp4box.c:5678,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/applications/mp4box/mp4box.c:5679,1
    - Dst: gf_isom_change_ismacryp_protection
      Src: /src/gpac/applications/mp4box/mp4box.c:5680,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5686,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5687,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5692,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5694,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5696,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5701,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5707,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5708,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5710,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5712,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5714,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5716,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5721,1
    - Dst: gf_media_change_par
      Src: /src/gpac/applications/mp4box/mp4box.c:5725,1
    - Dst: gf_isom_set_clean_aperture
      Src: /src/gpac/applications/mp4box/mp4box.c:5729,1
    - Dst: gf_isom_set_track_matrix
      Src: /src/gpac/applications/mp4box/mp4box.c:5733,1
    - Dst: gf_isom_set_handler_name
      Src: /src/gpac/applications/mp4box/mp4box.c:5737,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_is_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:5747,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/applications/mp4box/mp4box.c:5748,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5754,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5754,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5756,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5756,1
    - Dst: gf_media_remove_non_rap
      Src: /src/gpac/applications/mp4box/mp4box.c:5760,1
    - Dst: gf_media_remove_non_rap
      Src: /src/gpac/applications/mp4box/mp4box.c:5764,1
    - Dst: set_file_udta
      Src: /src/gpac/applications/mp4box/mp4box.c:5768,1
    - Dst: apply_edits
      Src: /src/gpac/applications/mp4box/mp4box.c:5773,1
    - Dst: gf_isom_set_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5781,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5783,1
    - Dst: gf_isom_set_track_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5784,1
    - Dst: gf_isom_set_track_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5788,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5793,1
    - Dst: gf_isom_set_media_creation_time
      Src: /src/gpac/applications/mp4box/mp4box.c:5795,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 223
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5809
      start: 5584
    functionDepth: 2
    functionLinenumber: 5584
    functionLinenumberEnd: 5809
    functionName: do_track_act
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_media_language
    - gf_isom_set_handler_name
    - apply_edits
    - gf_isom_set_track_id
    - gf_isom_remove_edits
    - gf_isom_get_edits_count
    - gf_isom_set_media_creation_time
    - gf_isom_remove_track
    - gf_isom_remove_track_reference
    - gf_isom_is_track_enabled
    - gf_isom_get_media_timescale
    - M4_LOG
    - gf_isom_remove_track_kind
    - gf_media_remove_non_rap
    - gf_isom_add_track_kind
    - gf_isom_set_creation_time
    - get_track_id
    - gf_isom_change_ismacryp_protection
    - set_file_udta
    - gf_isom_set_track_reference
    - gf_isom_set_track_creation_time
    - gf_isom_is_media_encrypted
    - gf_error_to_string
    - gf_isom_is_ismacryp_media
    - gf_isom_set_clean_aperture
    - gf_isom_get_track_count
    - gf_isom_set_track_enabled
    - gf_media_change_par
    - gf_isom_is_external_track
    - gf_isom_get_track_by_id
    - gf_isom_get_track_duration
    - gf_isom_set_track_matrix
    - GF_4CC
    - gf_isom_append_edit
    - gf_isom_get_timescale
    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:5816,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - name
    - val
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5823
      start: 5813
    functionDepth: 1
    functionLinenumber: 5813
    functionLinenumberEnd: 5823
    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:5832,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/mp4box/mp4box.c:5834,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5845,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:5845,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5847,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/applications/mp4box/mp4box.c:5849,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5852,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5856,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5859,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5862,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5866,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5867,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5876,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:5876,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:5878,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5880,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5880,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5882,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5884,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/applications/mp4box/mp4box.c:5887,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5889,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5890,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5892,1
    - Dst: GF_4CC
      Src: /src/gpac/applications/mp4box/mp4box.c:5893,1
    - Dst: do_qt_keys
      Src: /src/gpac/applications/mp4box/mp4box.c:5900,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5901,1
    - Dst: gf_itags_get_itag
      Src: /src/gpac/applications/mp4box/mp4box.c:5906,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5907,1
    - Dst: stricmp
      Src: /src/gpac/applications/mp4box/mp4box.c:5913,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5917,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5925,1
    - Dst: gf_isom_set_qt_key
      Src: /src/gpac/applications/mp4box/mp4box.c:5926,1
    - Dst: gf_isom_wma_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5930,1
    - Dst: strlen
      Src: /src/gpac/applications/mp4box/mp4box.c:5934,1
    - Dst: gf_file_load_data
      Src: /src/gpac/applications/mp4box/mp4box.c:5938,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5942,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5944,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/applications/mp4box/mp4box.c:5946,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:5949,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:5949,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:5962,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 127
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5967
      start: 5825
    functionDepth: 2
    functionLinenumber: 5825
    functionLinenumberEnd: 5967
    functionName: do_itunes_tag
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_itags_find_by_name
    - gf_isom_wma_set_tag
    - gf_itags_get_itag
    - strchr
    - do_qt_keys
    - M4_LOG
    - gf_isom_set_qt_key
    - gf_url_colon_suffix
    - gf_itags_get_type
    - gf_file_exists
    - strcmp
    - strlen
    - gf_error_to_string
    - gf_free
    - gf_file_load_data
    - gf_isom_apple_set_tag
    - GF_4CC
    - stricmp
    - strncmp
    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:5974,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/applications/mp4box/mp4box.c:5976,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5977,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5979,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/applications/mp4box/mp4box.c:5981,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/applications/mp4box/mp4box.c:5982,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/applications/mp4box/mp4box.c:5986,1
    - Dst: gf_isom_sdp_add_track_line
      Src: /src/gpac/applications/mp4box/mp4box.c:5995,1
    - Dst: gf_isom_sdp_add_line
      Src: /src/gpac/applications/mp4box/mp4box.c:5998,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6002
      start: 5970
    functionDepth: 2
    functionLinenumber: 5970
    functionLinenumberEnd: 6002
    functionName: set_sdp_ext
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_count
    - gf_isom_get_reference_count
    - gf_isom_get_media_type
    - gf_isom_get_track_by_id
    - gf_isom_sdp_add_track_line
    - gf_isom_sdp_add_line
    - get_track_id
    - gf_isom_get_reference
    linkageType: ''
    returnType: void
    signature: void set_sdp_ext()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/applications/mp4box/mp4box.c:6009,1
    - Dst: gf_media_export
      Src: /src/gpac/applications/mp4box/mp4box.c:6014,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6018
      start: 6005
    functionDepth: 1
    functionLinenumber: 6005
    functionLinenumberEnd: 6018
    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:6022,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6026,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6032,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:6040,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6041,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6042,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6045,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:6058,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6060,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6062,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6066,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6070,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6074,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:6107,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6109,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6111,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6112,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6113,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6114,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6115,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6116,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6117,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6121,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6123,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6126,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/applications/mp4box/mp4box.c:6130,1
    - Dst: gf_sys_is_arg_used
      Src: /src/gpac/applications/mp4box/mp4box.c:6132,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6134,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:6134,1
    - Dst: GF_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6137,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:6137,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:6142,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6143,1
    - Dst: gf_memory_size
      Src: /src/gpac/applications/mp4box/mp4box.c:6146,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/applications/mp4box/mp4box.c:6146,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6147,1
    - Dst: gf_memory_print
      Src: /src/gpac/applications/mp4box/mp4box.c:6148,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 140
    argCount: 1
    argNames:
    - ret_code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6153
      start: 6020
    functionDepth: 1
    functionLinenumber: 6020
    functionLinenumberEnd: 6153
    functionName: mp4box_cleanup
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 6
    functionsReached:
    - gf_log_set_tool_level
    - gf_sys_get_arg
    - gf_free
    - gf_fclose
    - gf_file_handles_count
    - gf_memory_print
    - GF_LOG
    - gf_sys_is_arg_used
    - gf_memory_size
    - gf_sys_get_argc
    - gf_sys_close
    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:6163,1
    - Dst: mp4box_parse_single_arg
      Src: /src/gpac/applications/mp4box/mp4box.c:6167,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6171,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6171,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6173,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6175,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6179,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6183,1
    - Dst: strncmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6187,1
    - Dst: _set_output_format
      Src: /src/gpac/applications/mp4box/mp4box.c:6192,1
    - Dst: gf_sys_init
      Src: /src/gpac/applications/mp4box/mp4box.c:6196,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/applications/mp4box/mp4box.c:6199,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6203,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6204,1
    - Dst: gf_gpac_version
      Src: /src/gpac/applications/mp4box/mp4box.c:6205,1
    - Dst: gf_gpac_copyright_cite
      Src: /src/gpac/applications/mp4box/mp4box.c:6205,1
    - Dst: gf_sys_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6206,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6213,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6214,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6215,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6216,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6217,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6218,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/applications/mp4box/mp4box.c:6221,1
    - Dst: gf_sys_set_args
      Src: /src/gpac/applications/mp4box/mp4box.c:6224,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6226,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6226,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6227,1
    - Dst: mp4box_parse_args
      Src: /src/gpac/applications/mp4box/mp4box.c:6230,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6232,1
    - Dst: live_session
      Src: /src/gpac/applications/mp4box/mp4box.c:6236,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6237,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6259,1
    - Dst: PrintUsage
      Src: /src/gpac/applications/mp4box/mp4box.c:6261,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6263,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6265,1
    - Dst: strcmp
      Src: /src/gpac/applications/mp4box/mp4box.c:6266,1
    - Dst: _setmode
      Src: /src/gpac/applications/mp4box/mp4box.c:6285,1
    - Dst: _fileno
      Src: /src/gpac/applications/mp4box/mp4box.c:6285,1
    - Dst: freopen
      Src: /src/gpac/applications/mp4box/mp4box.c:6287,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6290,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6291,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6296,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6297,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6298,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6299,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6300,1
    - Dst: gf_isom_close
      Src: /src/gpac/applications/mp4box/mp4box.c:6301,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6302,1
    - Dst: do_raw_cat
      Src: /src/gpac/applications/mp4box/mp4box.c:6306,1
    - Dst: do_size_top_boxes
      Src: /src/gpac/applications/mp4box/mp4box.c:6310,1
    - Dst: fprintf
      Src: /src/gpac/applications/mp4box/mp4box.c:6311,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6312,1
    - Dst: do_compress_top_boxes
      Src: /src/gpac/applications/mp4box/mp4box.c:6314,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6315,1
    - Dst: rip_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:6320,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6321,1
    - Dst: gf_dm_wget
      Src: /src/gpac/applications/mp4box/mp4box.c:6326,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6331,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6331,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6332,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6334,1
    - Dst: do_write_udp
      Src: /src/gpac/applications/mp4box/mp4box.c:6338,1
    - Dst: convert_mpd
      Src: /src/gpac/applications/mp4box/mp4box.c:6342,1
    - Dst: set_dash_input
      Src: /src/gpac/applications/mp4box/mp4box.c:6346,1
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/mp4box.c:6350,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:6366,1
    - Dst: strstr
      Src: /src/gpac/applications/mp4box/mp4box.c:6366,1
    - Dst: do_import_sub
      Src: /src/gpac/applications/mp4box/mp4box.c:6371,1
    - Dst: do_add_cat
      Src: /src/gpac/applications/mp4box/mp4box.c:6376,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6384,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6385,1
    - Dst: EncodeFileChunk
      Src: /src/gpac/applications/mp4box/mp4box.c:6387,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6389,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6389,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6390,1
    - Dst: do_scene_encode
      Src: /src/gpac/applications/mp4box/mp4box.c:6398,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/applications/mp4box/mp4box.c:6406,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6409,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6412,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6415,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6416,1
    - Dst: do_dash
      Src: /src/gpac/applications/mp4box/mp4box.c:6425,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6426,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6427,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/applications/mp4box/mp4box.c:6443,1
    - Dst: strchr
      Src: /src/gpac/applications/mp4box/mp4box.c:6444,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6446,1
    - Dst: gf_fopen
      Src: /src/gpac/applications/mp4box/mp4box.c:6450,1
    - Dst: gf_fclose
      Src: /src/gpac/applications/mp4box/mp4box.c:6455,1
    - Dst: get_file_type_by_ext
      Src: /src/gpac/applications/mp4box/mp4box.c:6457,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6467,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6470,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/applications/mp4box/mp4box.c:6473,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6478,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6478,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6480,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6480,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6481,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6487,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:6489,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/applications/mp4box/mp4box.c:6491,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6492,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6497,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6502,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6502,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/applications/mp4box/mp4box.c:6502,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6503,1
    - Dst: gf_isom_freeze_order
      Src: /src/gpac/applications/mp4box/mp4box.c:6508,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6528,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6540,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/applications/mp4box/mp4box.c:6541,1
    - Dst: gf_media_import
      Src: /src/gpac/applications/mp4box/mp4box.c:6546,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6551,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6551,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6552,1
    - Dst: gf_file_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6553,1
    - Dst: gf_free
      Src: /src/gpac/applications/mp4box/mp4box.c:6554,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6555,1
    - Dst: dump_mpeg2_ts
      Src: /src/gpac/applications/mp4box/mp4box.c:6562,1
    - Dst: dump_mpeg2_ts
      Src: /src/gpac/applications/mp4box/mp4box.c:6566,1
    - Dst: xml_bs_to_bin
      Src: /src/gpac/applications/mp4box/mp4box.c:6569,1
    - Dst: hash_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6571,1
    - Dst: convert_file_info
      Src: /src/gpac/applications/mp4box/mp4box.c:6574,1
    - Dst: do_remux_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6579,1
    - Dst: gf_isom_delete
      Src: /src/gpac/applications/mp4box/mp4box.c:6581,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6584,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6585,1
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6592,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6595,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6595,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6596,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6598,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6599,1
    CyclomaticComplexity: 144
    EdgeCount: 144
    ICount: 341
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6602
      start: 6157
    functionDepth: 5
    functionLinenumber: 6157
    functionLinenumberEnd: 6602
    functionName: mp4box_main
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 3
    functionsReached:
    - fprintf
    - do_raw_cat
    - gf_isom_last_error
    - gf_gpac_version
    - do_scene_encode
    - rip_mpd
    - gf_sys_init
    - mp4box_parse_args
    - gf_isom_open_segment
    - GF_SAFEALLOC
    - gf_gpac_copyright_cite
    - _setmode
    - gf_isom_delete
    - strstr
    - do_compress_top_boxes
    - gf_opts_set_key
    - do_write_udp
    - strchr
    - gf_fopen
    - M4_LOG
    - do_add_cat
    - mp4box_parse_single_arg
    - do_size_top_boxes
    - gf_url_colon_suffix
    - PrintUsage
    - freopen
    - dump_mpeg2_ts
    - _set_output_format
    - gf_log_set_tool_level
    - gf_file_ext_start
    - convert_file_info
    - hash_file
    - gf_isom_freeze_order
    - do_remux_file
    - EncodeFileChunk
    - get_file_type_by_ext
    - strcmp
    - gf_sys_set_args
    - init_global_vars
    - gf_sys_close
    - _fileno
    - do_import_sub
    - gf_isom_open_progressive
    - gf_isom_probe_file
    - gf_error_to_string
    - do_dash
    - xml_bs_to_bin
    - gf_fclose
    - gf_free
    - gf_isom_open
    - set_dash_input
    - package_file
    - live_session
    - gf_media_import
    - convert_mpd
    - gf_file_delete
    - gf_isom_close
    - mp4box_cleanup
    - strncmp
    - gf_dm_wget
    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:6384,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6385,1
    - Dst: EncodeFileChunk
      Src: /src/gpac/applications/mp4box/mp4box.c:6387,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6389,1
    - Dst: gf_error_to_string
      Src: /src/gpac/applications/mp4box/mp4box.c:6389,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6390,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6393
      start: 6382
    functionDepth: 3
    functionLinenumber: 6382
    functionLinenumberEnd: 6393
    functionName: if
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - M4_LOG
    - EncodeFileChunk
    - 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:6398,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6401
      start: 6396
    functionDepth: 3
    functionLinenumber: 6396
    functionLinenumberEnd: 6401
    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:6406,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6409,1
    - Dst: package_file
      Src: /src/gpac/applications/mp4box/mp4box.c:6412,1
    - Dst: M4_LOG
      Src: /src/gpac/applications/mp4box/mp4box.c:6415,1
    - Dst: mp4box_cleanup
      Src: /src/gpac/applications/mp4box/mp4box.c:6416,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6421
      start: 6404
    functionDepth: 2
    functionLinenumber: 6404
    functionLinenumberEnd: 6421
    functionName: if
    functionSourceFile: /src/gpac/applications/mp4box/mp4box.c
    functionUses: 0
    functionsReached:
    - gf_url_colon_suffix
    - M4_LOG
    - mp4box_cleanup
    - package_file
    linkageType: ''
    returnType: else
    signature: else if (pack_file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_open
      Src: /src/gpac/applications/mp4box/mp4box.c:6592,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6594
      start: 6591
    functionDepth: 1
    functionLinenumber: 6591
    functionLinenumberEnd: 6594
    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_sys_clock
    - gf_list_get
    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:
    - fprintf
    - gf_sys_clock
    - gf_list_enum
    - gf_rtp_streamer_send_rtcp
    - gf_rtp_streamer_send_au_with_sn
    - gf_realloc
    - memcpy
    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:
    - fprintf
    - gf_list_enum
    - gf_sys_clock
    - gf_rtp_streamer_send_rtcp
    - gf_rtp_streamer_send_au_with_sn
    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:
    - fprintf
    - gf_rtp_streamer_format_sdp_header
    - gf_rtp_streamer_new
    - GF_SAFEALLOC
    - gf_list_add
    - gf_fopen
    - gf_seng_get_stream_carousel_info
    - gf_seng_get_base64_iod
    - gf_rtp_streamer_append_sdp
    - gf_sys_clock
    - gf_seng_get_iod
    - gf_seng_get_stream_config
    - gf_rtp_streamer_disable_auto_rtcp
    - gf_odf_desc_del
    - gf_free
    - gf_fclose
    - GF_LOG
    - gf_sys_is_cov_mode
    - gf_seng_get_stream_count
    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_rtp_streamer_del
    - gf_list_count
    - gf_free
    - gf_seng_terminate
    - gf_list_del
    - gf_list_get
    - 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_seng_enable_aggregation
    - gf_list_enum
    - gf_list_get
    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:
    - fprintf
    - gf_bs_read_u8
    - gf_sk_receive
    - gf_seng_save_context
    - live_session_setup
    - gf_bs_new
    - gf_sys_init
    - gf_sk_bind
    - gf_bs_del
    - gf_seng_init
    - getchar
    - strstr
    - strchr
    - gf_seng_encode_context
    - gf_prompt_has_input
    - gf_fopen
    - M4_LOG
    - gf_file_modification_time
    - gf_seng_enable_aggregation
    - gf_fgets
    - parse_u32
    - gf_realloc
    - memcpy
    - gf_log_set_tool_level
    - PrintLiveUsage
    - live_session_send_carousel
    - gf_list_enum
    - gf_sys_clock_high_res
    - strnicmp
    - gf_sk_new
    - gf_seng_encode_from_string
    - gf_seng_encode_from_file
    - gf_bs_read_int
    - strcmp
    - gf_list_new
    - gf_sys_set_args
    - gf_sys_close
    - strlen
    - gf_bs_read_u32
    - sscanf
    - gf_bs_read_u16
    - gf_error_to_string
    - gf_sk_del
    - gf_prompt_get_char
    - gf_free
    - scanf
    - gf_fclose
    - gf_sleep
    - printf
    - gf_seng_aggregate_context
    - stricmp
    - gf_sys_is_cov_mode
    - MIN
    - live_session_shutdown
    - set_broadcast_params
    - next_carousel
    - memset
    - gf_opts_get_key
    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:
    - fprintf
    - sprintf
    - time
    - gmtime
    - gf_fopen
    - asctime
    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:
    - fprintf
    - gf_fclose
    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:
    - fprintf
    - gf_list_count
    - EndHtml
    - gf_list_del
    - strcmp
    - gf_list_get
    - BeginHtml
    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:
    - fprintf
    - get_lsr_att_name_type
    - findAttribute
    - strcmp
    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:
    - fprintf
    - gf_list_count
    - get_lsr_att_name_type
    - BeginFile
    - strcmp
    - gf_list_get
    - generateGenericAttrib
    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:
    - fprintf
    - gf_list_count
    - gf_fclose
    - BeginFile
    - strcmp
    - gf_list_get
    - assert
    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_count
    - NewSVGGenAttribute
    - strcmp
    - gf_list_get
    - gf_list_add
    - strcpy
    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:
    - fprintf
    - gf_list_count
    - gf_list_del
    - gf_list_get
    - EndFile
    - buildGlobalAttributeList
    - BeginFile
    - generate_laser_tables_da
    - strcmp
    - gf_list_new
    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:
    - xmlFree
    - gf_free
    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_SAFEALLOC
    - gf_list_new
    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_SAFEALLOC
    - gf_list_new
    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:
    - xmlFree
    - gf_list_count
    - deleteSVGGenAttribute
    - gf_free
    - gf_list_del
    - gf_list_get
    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_count
    - gf_list_del
    - gf_list_new
    - strcmp
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    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_count
    - gf_list_del
    - gf_list_new
    - strcmp
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    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_count
    - gf_list_del
    - gf_list_new
    - strcmp
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    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:
    - strchr
    - strcpy
    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
    - flattenAttributeGroup
    - gf_list_get
    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:
    - setGenericAttributesFlags
    - gf_list_count
    - flattenAttributeGroups
    - isGenericAttributesGroup
    - gf_list_get
    - gf_list_add
    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
    - strcmp
    - gf_list_get
    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:
    - xmlAddChild
    - xmlFreeDoc
    - xmlXPathCompiledEval
    - xmlNewDoc
    - xmlXPathFreeCompExpr
    - xmlXPathCompile
    - xmlSetTreeDoc
    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:
    - fprintf
    - sprintf
    - strcmp
    - strcpy
    - strstr
    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:
    - xmlStrdup
    - xmlGetProp
    - findNodes
    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:
    - deleteSVGGenAttribute
    - xmlGetProp
    - gf_list_count
    - setAttributeType
    - getAttributeType
    - gf_list_add
    - gf_list_get
    - svgNameToImplementationName
    - findNodes
    - NewSVGGenAttribute
    - xmlStrEqual
    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:
    - fprintf
    - gf_list_count
    - xmlGetProp
    - getRealAttributes
    - xmlStrdup
    - xmlStrstr
    - xmlStrcat
    - NewSVGGenAttrGrp
    - gf_list_add
    - getOneGlobalAttrGrp
    - strcmp
    - gf_list_get
    - gf_strdup
    - svgNameToImplementationName
    - findNodes
    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:
    - xmlGetProp
    - findNodes
    - xmlStrstr
    - getOneGlobalAttrGrp
    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:
    - xmlGetProp
    - gf_list_count
    - setGenericAttributesFlags
    - getRealAttributes
    - isGenericAttributesGroup
    - xmlStrdup
    - gf_list_get
    - xmlStrcat
    - flattenAttributeGroup
    - gf_list_add
    - strcmp
    - gf_list_new
    - svgNameToImplementationName
    - findNodes
    - xmlStrcmp
    - NewSVGGenElement
    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:
    - fprintf
    - sprintf
    - time
    - gmtime
    - gf_fopen
    - asctime
    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:
    - fprintf
    - gf_fclose
    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:
    - fprintf
    - gf_list_count
    - gf_list_get
    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:
    - xmlXPathEvalExpression
    - xmlReplaceNode
    - xmlParseFile
    - xmlGetNoNsProp
    - xmlDocGetRootElement
    - xmlXPathFreeObject
    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:
    - fprintf
    - xmlSaveFile
    - xmlParseFile
    - xmlInitParser
    - getAllGlobalAttrGrp
    - generateSVGCode_V2
    - xmlCleanupParser
    - replaceIncludes
    - xmlXPathFreeContext
    - generateSVGCode_V1
    - getElements
    - sortElements
    - xmlFreeDoc
    - strcmp
    - gf_list_new
    - xmlXPathRegisterNs
    - generateSVGCode_V3
    - printf
    - xmlXPathNewContext
    - generate_table
    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:
    - fprintf
    - gf_list_count
    - strcmp
    - gf_list_get
    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:
    - fprintf
    - generateAttributes2
    - strcmp
    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:
    - fprintf
    - gf_list_count
    - generateMotionTransformInfo2
    - generateCoreInfo
    - generateXYInfo2
    - generateGenericInfo
    - strcmp
    - gf_list_get
    - generateAttributeInfo2
    - generateTransformInfo2
    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:
    - fprintf
    - gf_list_count
    - EndFile
    - generate_laser_tables
    - BeginFile
    - gf_list_get
    - generateNodeImpl2
    - generateNode2
    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:
    - fprintf
    - generateAttributes
    - strcmp
    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
    - generateAttributeInfoFlat
    - strstr
    - svgNameToImplementationName
    - findAttribute
    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:
    - fprintf
    - findAttribute
    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:
    - fprintf
    - gf_list_count
    - generateCoreInfo
    - generateAttributeInfo
    - generateGenericInfo
    - generateIndexInfo
    - strcmp
    - gf_list_get
    - generateMotionTransformInfo
    - generateXYInfo
    - generateTransformInfo
    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:
    - fprintf
    - gf_list_count
    - generateNodeImpl
    - EndFile
    - generate_laser_tables
    - BeginFile
    - gf_list_get
    - generateNode
    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:
    - fprintf
    - gf_fclose
    - gf_free
    - gf_fgets
    - gf_fseek
    - gf_fputs
    - feof
    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:
    - fprintf
    - strcmp
    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:
    - fprintf
    - get_arg_type
    - strstr
    - strcmp
    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:
    - fprintf
    - get_arg_type
    - strcmp
    - strstr
    - strncmp
    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:
    - fprintf
    - strchr
    - strdup
    - gf_free
    - assert
    - get_arg_type
    - put_arg_get
    - strcmp
    - strlen
    - gf_strdup
    - memset
    - strstr
    - strncmp
    - put_arg_decl
    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: 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: 624
        line_start: 624
        source_file: /src/gpac/applications/generators/WebGLGen/main.c
    - 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: 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:
    - fprintf
    - put_prop
    - strchr
    - gf_free
    - start_ctx
    - gf_fclose
    - gf_fgets
    - gf_fopen
    - put_fun
    - gf_strdup
    - end_ctx
    - put_const
    - wrap_func
    - strlen
    - feof
    - assert
    - strstr
    - strncmp
    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: 2
    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:
    - strchr
    - strcpy
    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:
    - sprintf
    - strcmp
    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_malloc
    - gf_list_new
    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
    - strcmp
    - gf_list_get
    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_list_count
    - gf_malloc
    - gf_list_get
    - strcmp
    - strlen
    - gf_list_add
    - strcpy
    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:
    - fprintf
    - sprintf
    - time
    - gmtime
    - gf_fopen
    - stricmp
    - strcmp
    - asctime
    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:
    - fprintf
    - gf_fclose
    - strcmp
    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:
    - fprintf
    - gf_list_count
    - stricmp
    - EndFile
    - BeginFile
    - strcmp
    - gf_list_get
    - strstr
    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
    - strcmp
    - gf_list_get
    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
    - IsNodeInTable
    - gf_list_get
    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:
    - fprintf
    - gf_list_count
    - GetNDTCount
    - GetBitsCount
    - gf_list_get
    - IsNodeInTable
    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:
    - fprintf
    - gf_list_count
    - GetNDTCount
    - gf_list_get
    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:
    - fprintf
    - gf_list_count
    - GetNDTCount
    - gf_list_get
    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:
    - fprintf
    - gf_list_count
    - strupr
    - strcmp
    - gf_list_get
    - strcpy
    - strstr
    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:
    - fprintf
    - gf_list_count
    - gf_list_get
    - strcmp
    - GetFixedPrintout
    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:
    - fprintf
    - gf_list_count
    - sprintf
    - strlwr
    - GetFixedPrintout
    - stricmp
    - EndFile
    - BeginFile
    - GetNextToken
    - strcmp
    - gf_list_get
    - TranslateToken
    - WriteNodeQuant
    - strlen
    - strcpy
    - strstr
    - strncmp
    - WriteNodeFields
    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_list_count
    - skip_sep
    - gf_malloc
    - atoi
    - BlankField
    - printf
    - gf_list_get
    - fgets
    - strstr
    - CheckInTable
    - GetNextToken
    - strcmp
    - strlen
    - feof
    - gf_list_add
    - strcpy
    - BlankNode
    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:
    - fprintf
    - gf_list_count
    - gf_list_get
    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_count
    - printf
    - gf_list_get
    - fgets
    - stricmp
    - strlen
    - feof
    - strstr
    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:
    - fprintf
    - gf_list_count
    - sprintf
    - gf_fclose
    - gf_gpac_version
    - gf_fopen
    - get_nb_bits
    - GetBitsCount
    - strcmp
    - gf_list_get
    - IsNodeInTable
    - format_bit_string
    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:
    - parse_profile
    - fprintf
    - gf_list_count
    - EndFile
    - WriteNodeCode
    - gf_fopen
    - PrintUsage
    - WriteNDT_Dec
    - gf_list_get
    - WriteNDT_Enc
    - CheckInTable
    - ParseTemplateFile
    - BeginFile
    - strcmp
    - gf_list_new
    - generate_ndts
    - sprintf
    - gf_fclose
    - gf_free
    - printf
    - gf_list_del
    - WriteNDT_H
    - WriteNodesFile
    - 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: 3
    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:
    - strchr
    - strcpy
    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_malloc
    - gf_list_new
    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
    - strcmp
    - gf_list_get
    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_list_count
    - gf_malloc
    - gf_list_get
    - strcmp
    - strlen
    - gf_list_add
    - strcpy
    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:
    - fprintf
    - sprintf
    - time
    - gmtime
    - gf_fopen
    - asctime
    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:
    - fprintf
    - gf_fclose
    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:
    - fprintf
    - gf_list_count
    - stricmp
    - EndFile
    - BeginFile
    - strcmp
    - gf_list_get
    - strstr
    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:
    - fprintf
    - gf_list_count
    - strupr
    - strcmp
    - gf_list_get
    - strcpy
    - strstr
    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:
    - fprintf
    - gf_list_count
    - strlwr
    - stricmp
    - GetNextToken
    - strcmp
    - gf_list_get
    - TranslateToken
    - strlen
    - strcpy
    - strstr
    - strncmp
    - WriteNodeFields
    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
    - strcmp
    - gf_list_get
    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
    - IsNodeInTable
    - gf_list_get
    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:
    - fprintf
    - gf_list_count
    - GetNDTCount
    - gf_list_get
    - IsNodeInTable
    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_list_count
    - gf_list_add
    - strstr
    - gf_malloc
    - BlankField
    - gf_list_get
    - BlankNode
    - skip_sep
    - CheckInTable
    - GetNextToken
    - strcmp
    - strlen
    - feof
    - strcpy
    - gf_free
    - printf
    - fgets
    - gf_list_del_item
    - stricmp
    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:
    - fprintf
    - gf_list_count
    - gf_list_get
    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_count
    - printf
    - gf_list_get
    - fgets
    - stricmp
    - strlen
    - feof
    - strstr
    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:
    - fprintf
    - parse_profile
    - WriteNDT
    - gf_fclose
    - WriteNodeCode
    - gf_list_count
    - gf_free
    - gf_fopen
    - gf_list_get
    - gf_list_del
    - WriteNodesFile
    - EndFile
    - ParseTemplateFile
    - BeginFile
    - gf_list_new
    - gf_list_rem
    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:
    - fprintf
    - gf_log_set_tool_level
    - gf_file_handles_count
    - gf_memory_print
    - atoi
    - printf
    - fflush
    - test_function
    - gf_memory_size
    - gf_sys_init
    - strcmp
    - gf_sys_close
    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:
    - strdup
    - gf_free
    - GF_LOG
    - NARG_STR
    - gf_sys_init
    - NARG_U32
    - 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:
    - NARG_ARGS
    - napi_create_string_utf8
    - NAPI_CALL
    - NARG_S32
    - gf_error_to_string
    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_BOOL
    - NARG_STR
    - 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_create_uint32
    - NAPI_CALL
    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:
    - gf_sys_clock_high_res
    - NAPI_CALL
    - napi_create_bigint_uint64
    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:
    - NARG_ARGS
    - napi_create_string_utf8
    - gf_dom_get_friendly_name
    - NAPI_CALL
    - 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:
    - napi_create_string_utf8
    - NAPI_CALL
    - napi_get_cb_info
    - gf_rmt_get_peer_address
    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:
    - napi_delete_reference
    - gf_free
    - napi_reference_unref
    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:
    - gf_rmt_client_set_on_del_cbk
    - gf_fs_post_user_task
    - GF_LOG
    - gf_rmt_client_set_on_data_cbk
    - gf_rmt_client_get_on_data_task
    - gf_list_new
    - napi_throw_error
    - gf_list_add
    - napi_get_instance_data
    - napi_rmt_task_del
    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_string_utf8
    - gf_fs_post_user_task
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_new
    - napi_throw_error
    - gf_list_add
    - memcpy
    - napi_get_instance_data
    - napi_create_arraybuffer
    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:
    - gf_rmt_client_set_on_del_cbk
    - napi_reference_unref
    - napi_create_string_utf8
    - gf_rmt_client_set_on_data_cbk
    - NAPI_CALL
    - napi_async_init
    - napi_create_reference
    - gf_rmt_client_get_on_data_task
    - GF_SAFEALLOC
    - napi_get_global
    - gf_rmt_client_get_on_del_task
    - napi_delete_reference
    - napi_rmt_task_del
    - napi_typeof
    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
    - gf_rmt_client_send_to_ws
    - GF_LOG
    - napi_is_arraybuffer
    - NARG_ARGS_THIS
    - NAPI_CALL
    - NARG_STR_ALLOC
    - strlen
    - napi_get_arraybuffer_info
    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_rmt_client_set_on_del_cbk
    - napi_wrap
    - NAPI_CALL
    - napi_type_tag_object
    - napi_create_reference
    - GF_SAFEALLOC
    - napi_define_properties
    - 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:
    - napi_rmt_task_del
    - gf_list_count
    - gf_free
    - napi_wrap
    - gf_list_pop_front
    - GF_LOG
    - grap_wrap_rmt_new_client
    - napi_remove_wrap
    - napi_make_callback
    - gf_rmt_get_on_new_client_task
    - gf_rmt_client_get_rmt
    - napi_get_instance_data
    - napi_get_reference_value
    - napi_typeof
    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:
    - gf_sys_enable_rmtws
    - NARG_ARGS
    - 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
    - NARG_BOOL
    - gf_sys_enable_userws
    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:
    - NARG_ARGS
    - napi_get_value_string_utf8
    - gf_free
    - gf_malloc
    - napi_is_array
    - napi_get_array_length
    - NAPI_CALL
    - gf_sys_set_args
    - napi_get_element
    - napi_throw_error
    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_sys_get_userws
    - gf_list_count
    - napi_async_destroy
    - gf_free
    - gf_file_handles_count
    - gf_memory_print
    - gf_sys_get_rmtws
    - GF_LOG
    - gf_list_del
    - gf_memory_size
    - gf_log_set_tools_levels
    - gf_rmt_get_on_new_client_task
    - gf_rmt_set_on_new_client_cbk
    - gf_sys_close
    - gf_list_pop_back
    - napi_rmt_task_del
    - free
    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:
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_frame_interface
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_get_seq_num
    - napi_get_cb_info
    - gf_filter_pck_get_dts
    - NAPI_CALL
    - gf_filter_pck_get_cts
    - gf_filter_pck_is_blocking_ref
    - napi_create_uint32
    - gf_filter_pck_get_carousel_version
    - napi_get_boolean
    - gf_filter_pck_get_roll_info
    - napi_create_int64
    - napi_get_null
    - gf_filter_pck_get_byte_offset
    - napi_create_external_arraybuffer
    - napi_create_int32
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_corrupted
    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:
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_seq_num
    - gf_filter_pck_set_dependency_flags
    - NAPI_CALL
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_set_clock_type
    - gf_filter_pck_set_dts
    - NARG_U32
    - gf_filter_pck_set_interlaced
    - NARG_ARGS_THIS_MAGIC
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_byte_offset
    - napi_throw_error
    - gf_filter_pck_get_framing
    - NARG_BOOL
    - napi_get_value_int64
    - napi_typeof
    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:
    - gf_filter_pck_enum_properties
    - napi_create_string_utf8
    - napi_create_int32
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_close_handle_scope
    - napi_get_global
    - gf_props_4cc_get_name
    - gf_4cc_to_str
    - prop_to_napi
    - napi_throw_error
    - napi_call_function
    - napi_open_handle_scope
    - napi_typeof
    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_str
    - napi_get_null
    - gf_filter_pck_get_property
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_props_get_id
    - prop_to_napi
    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:
    - napi_reference_ref
    - gf_filter_pck_ref_ex
    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:
    - gf_filter_pck_unref
    - napi_reference_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:
    - gf_filter_pck_discard
    - napi_throw_error
    - napi_delete_reference
    - napi_reference_unref
    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:
    - gf_filter_pck_dangling_copy
    - napi_reference_unref
    - napi_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - napi_delete_reference
    - napi_throw_error
    - wrap_filter_packet
    - napi_get_reference_value
    - napi_typeof
    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_delete_reference
    - napi_throw_error
    - napi_reference_unref
    - 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:
    - gf_filter_pck_merge_properties
    - napi_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - napi_throw_error
    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:
    - gf_props_reset_single
    - NARG_STR
    - NARG_ARGS_THIS
    - NARG_U32
    - prop_from_napi
    - gf_filter_pck_set_property
    - gf_props_get_id
    - napi_throw_error
    - gf_filter_pck_set_property_dyn
    - napi_typeof
    - gf_error_to_string
    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_get_timescale
    - gf_filter_pid_get_min_pck_duration
    - gf_filter_pid_is_playing
    - gf_filter_pid_get_max_buffer
    - gf_filter_pid_is_sparse
    - gf_filter_pid_would_block
    - napi_create_string_utf8
    - gf_filter_pid_first_packet_is_empty
    - gf_filter_pid_has_decoder
    - gf_filter_pid_get_first_packet_cts
    - napi_get_cb_info
    - gf_filter_pid_get_next_ts
    - gf_filter_pid_eos_received
    - gf_filter_pid_get_name
    - NAPI_CALL
    - napi_create_uint32
    - napi_get_boolean
    - napi_create_int64
    - gf_filter_pid_get_packet_count
    - gf_filter_pid_is_eos
    - gf_filter_pid_query_buffer_duration
    - napi_get_null
    - gf_filter_pid_has_seen_eos
    - gf_filter_pid_get_filter_name
    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:
    - gf_filter_pid_set_max_buffer
    - NARG_STR
    - gf_filter_pid_set_eos
    - gf_filter_pid_set_name
    - NARG_U32
    - NARG_ARGS_THIS_MAGIC
    - NARG_BOOL
    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:
    - filter_enum_pid_props
    - NARG_ARGS_THIS
    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:
    - filter_get_pid_property
    - NARG_ARGS_THIS
    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:
    - filter_get_pid_property
    - NARG_ARGS_THIS
    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_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - napi_throw_error
    - gf_error_to_string
    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:
    - napi_throw_error
    - NARG_ARGS_THIS
    - gf_filter_pid_reset_properties
    - gf_error_to_string
    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:
    - gf_filter_pid_set_property_dyn
    - gf_filter_pid_set_info
    - gf_props_reset_single
    - NARG_ARGS_THIS
    - gf_filter_pid_set_property
    - NARG_U32
    - prop_from_napi
    - gf_props_get_id
    - napi_throw_error
    - gf_filter_pid_set_info_dyn
    - napi_typeof
    - gf_error_to_string
    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:
    - gf_filter_pid_get_clock_info
    - napi_create_uint32
    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:
    - gf_filter_pid_get_clock_info
    - frac64_to_napi
    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_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - napi_get_boolean
    - gf_filter_pid_is_filter_in_parents
    - napi_throw_error
    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:
    - gf_filter_pid_get_buffer_occupancy
    - NAPI_CALL
    - napi_define_properties
    - napi_get_boolean
    - napi_create_object
    - SET_VAL
    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:
    - gf_filter_pid_set_discard
    - NARG_ARGS_THIS
    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:
    - NARG_ARGS_THIS
    - gf_filter_pid_recompute_dts
    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
    - napi_create_string_utf8
    - NARG_STR
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_filter_pid_resolve_file_template
    - gf_strdup
    - napi_throw_error
    - gf_error_to_string
    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_filter_pid_caps_query
    - prop_to_napi
    - napi_get_null
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_props_get_id
    - gf_filter_pid_caps_query_str
    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:
    - gf_props_reset_single
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_filter_pid_negotiate_property_dyn
    - NARG_U32
    - prop_from_napi
    - gf_props_get_id
    - napi_throw_error
    - gf_filter_pid_negotiate_property
    - gf_error_to_string
    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_list_del_item
    - gf_filter_pck_unref
    - gf_free
    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:
    - napi_wrap
    - napi_type_tag_object
    - napi_create_reference
    - GF_SAFEALLOC
    - napi_define_properties
    - 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
    - gf_filter_pid_get_udta
    - NAPI_CALL
    - gf_filter_pid_get_packet
    - wrap_filter_packet
    - napi_get_reference_value
    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:
    - napi_delete_reference
    - gf_filter_pid_get_udta
    - gf_filter_pid_drop_packet
    - napi_reference_unref
    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_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - gf_filter_pid_send_event
    - napi_throw_error
    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:
    - gf_filter_pck_forward
    - napi_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - napi_throw_error
    - gf_error_to_string
    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
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_throw_error
    - wrap_filter_packet
    - napi_get_reference_value
    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:
    - gf_filter_pck_new_ref
    - napi_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - NARG_U32
    - napi_throw_error
    - wrap_filter_packet
    - napi_get_reference_value
    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:
    - gf_list_pop_front
    - gf_filter_pid_get_udta
    - gf_filter_get_rt_udta
    - napi_make_callback
    - napi_get_global
    - napi_delete_reference
    - napi_get_reference_value
    - napi_reference_unref
    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_filter_pck_discard
    - napi_reference_ref
    - gf_filter_pid_get_udta
    - napi_is_arraybuffer
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_list_del_item
    - gf_list_add
    - napi_create_reference
    - gf_filter_pck_new_shared
    - gf_list_new
    - napi_throw_error
    - napi_get_arraybuffer_info
    - wrap_filter_packet
    - napi_get_reference_value
    - napi_typeof
    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_check_object_type_tag
    - gf_filter_pck_new_copy
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - gf_filter_pck_new_clone
    - napi_throw_error
    - wrap_filter_packet
    - napi_get_reference_value
    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_name
    - napi_create_string_utf8
    - gf_filter_get_ipid_count
    - gf_filter_get_bytes_done
    - NAPI_CALL
    - gf_filter_get_status
    - napi_create_uint32
    - napi_create_int64
    - gf_filter_get_opid_count
    - napi_get_cb_info
    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_STR
    - NARG_ARGS_THIS_MAGIC
    - 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
    - gf_fs_send_update
    - NARG_ARGS_THIS
    - NARG_U32
    - NARG_STR_ALLOC
    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:
    - gf_filter_set_source_restricted
    - NARG_STR
    - NARG_ARGS_THIS
    - napi_throw_error
    - gf_filter_set_source
    - gf_error_to_string
    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
    - NARG_ARGS_THIS
    - napi_get_value_int32
    - gf_filter_get_opid
    - gf_filter_reconnect_output
    - napi_throw_error
    - gf_filter_set_source
    - gf_error_to_string
    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:
    - NARG_ARGS_THIS
    - napi_get_value_int32
    - gf_filter_get_opid
    - gf_filter_reconnect_output
    - napi_throw_error
    - gf_error_to_string
    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
    - napi_get_value_int32
    - gf_filter_get_opid
    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
    - napi_create_string_utf8
    - NARG_STR
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_get_value_int32
    - napi_throw_error
    - gf_filter_probe_link
    - gf_error_to_string
    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
    - napi_create_string_utf8
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_filter_get_possible_destinations
    - napi_get_value_int32
    - napi_throw_error
    - gf_error_to_string
    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:
    - gf_filter_get_name
    - dashin_bind
    - NARG_ARGS_THIS
    - httpout_bind
    - strcmp
    - napi_throw_error
    - napi_typeof
    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_create_int32
    - NAPI_CALL
    - napi_create_uint32
    - napi_create_object
    - napi_set_named_property
    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_create_object
    - napi_create_int64
    - napi_set_named_property
    - NAPI_CALL
    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_S64
    - GET_PROP_FIELD_U64
    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
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2665,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 47
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2667
      start: 2606
    functionDepth: 2
    functionLinenumber: 2606
    functionLinenumberEnd: 2667
    functionName: filter_get_statistics
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - SET_STR
    - strchr
    - gf_stream_type_name
    - napi_create_string_utf8
    - SET_U64
    - SET_S32
    - NAPI_CALL
    - SET_U32
    - frac64_to_napi
    - napi_get_boolean
    - gf_filter_get_stats
    - napi_create_object
    - napi_throw_error
    - napi_set_named_property
    - SET_BOOL
    - gf_codecid_file_ext
    - gf_error_to_string
    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:2677,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2678,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2678,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2678,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2684,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2684,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2687,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2687,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2691,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2691,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2691,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2695,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2695,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2695,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2700,1
    - Dst: strchr
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2701,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2703,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2703,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2705,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2705,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2709,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2709,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2712,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2712,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2715,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2715,1
    - Dst: frac_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2718,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2720,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2722,1
    - Dst: napi_create_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2722,1
    - Dst: FIX2FLT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2722,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2725,1
    - Dst: napi_create_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2725,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2730,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2730,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2732,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2736,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2736,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2736,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2740,1
    - Dst: napi_create_object
      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_create_int32
      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_set_named_property
      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_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2743,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2744,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2744,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2747,1
    - Dst: napi_create_object
      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_create_double
      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_set_named_property
      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_create_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2750,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2751,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2751,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2754,1
    - Dst: napi_create_object
      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_create_int32
      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_set_named_property
      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_create_int32
      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_set_named_property
      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_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2759,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2760,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2760,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2763,1
    - Dst: napi_create_object
      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_create_int32
      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_set_named_property
      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_create_int32
      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_set_named_property
      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_create_int32
      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_set_named_property
      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_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2770,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2771,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2771,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2778,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2778,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2781,1
    - Dst: napi_create_buffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2781,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2782,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2785,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2789,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2789,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2792,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2792,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2794,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2794,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2795,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2795,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2799,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2799,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2801,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2801,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2802,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2802,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2806,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2806,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2809,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2809,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2811,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2813,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2813,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2817,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2817,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2819,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2819,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2819,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2820,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2820,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2824,1
    - Dst: napi_create_array_with_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2824,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2827,1
    - Dst: napi_create_object
      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_create_int32
      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_set_named_property
      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_create_int32
      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_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2831,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2832,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2832,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2836,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 155
    argCount: 3
    argNames:
    - env
    - p
    - p4cc
    argTypes:
    - napi_env
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2839
      start: 2670
    functionDepth: 2
    functionLinenumber: 2670
    functionLinenumberEnd: 2839
    functionName: prop_to_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 3
    functionsReached:
    - gf_pixel_fmt_sname
    - gf_props_enum_name
    - napi_set_element
    - gf_stream_type_name
    - strchr
    - FIX2FLT
    - napi_create_string_utf8
    - frac64_to_napi
    - memcpy
    - frac_to_napi
    - NAPI_CALL
    - napi_create_uint32
    - napi_get_boolean
    - napi_throw_error
    - napi_create_int64
    - napi_create_buffer
    - napi_get_null
    - napi_create_external_arraybuffer
    - gf_props_type_is_enum
    - napi_create_int32
    - napi_create_double
    - napi_create_array_with_length
    - napi_create_object
    - napi_set_named_property
    - gf_4cc_to_str
    - gf_codecid_file_ext
    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:2846,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2850,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2857,1
    - Dst: gf_realloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2861,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2863,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2868,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - env
    - val
    - ostr
    argTypes:
    - napi_env
    - napi_value
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2873
      start: 2841
    functionDepth: 0
    functionLinenumber: 2841
    functionLinenumberEnd: 2873
    functionName: napi_get_str
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_string_utf8
    - napi_throw_error
    - gf_realloc
    - napi_get_instance_data
    - napi_typeof
    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:2882,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2886,1
    - Dst: gf_strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2888,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2893,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2897,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2900,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2903,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2907,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2910,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2913,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2916,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2917,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2920,1
    - Dst: gf_props_parse_enum
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2923,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2927,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2930,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2933,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2936,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2939,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2943,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2946,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2950,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2956,1
    - Dst: GET_PROP_FIELD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2957,1
    - Dst: GET_PROP_FIELD_S64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2961,1
    - Dst: GET_PROP_FIELD_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2962,1
    - Dst: napi_get_value_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2967,1
    - Dst: FLT2FIX
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2968,1
    - Dst: napi_get_value_double
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2972,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2975,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2976,1
    - Dst: GET_PROP_FIELD_FLT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2980,1
    - Dst: GET_PROP_FIELD_FLT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2981,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:2987,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: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2994,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:2998,1
    - Dst: gf_strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3000,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3004,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3008,1
    - Dst: napi_is_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3019,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3021,1
    - Dst: napi_get_array_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3025,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3035,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3037,1
    - Dst: memset
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3040,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3044,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3049,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3053,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3055,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3057,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3063,1
    - Dst: GET_PROP_FIELD_S32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3064,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3066,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3069,1
    - Dst: napi_get_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3072,1
    - Dst: strlen
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3074,1
    - Dst: GF_4CC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3075,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3077,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3085,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: 3087
      start: 2875
    functionDepth: 1
    functionLinenumber: 2875
    functionLinenumberEnd: 3087
    functionName: prop_from_napi
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 3
    functionsReached:
    - gf_props_parse_enum
    - gf_4cc_parse
    - GET_PROP_FIELD_U64
    - gf_stream_type_by_name
    - napi_get_str
    - napi_get_value_int32
    - GET_PROP_FIELD_S32
    - GET_PROP_FIELD_S64
    - gf_malloc
    - napi_get_array_length
    - gf_codecid_parse
    - napi_get_element
    - napi_typeof
    - napi_get_value_string_utf8
    - napi_get_value_bool
    - napi_get_value_double
    - strlen
    - napi_throw_error
    - GET_PROP_FIELD_U32
    - napi_get_value_int64
    - napi_get_value_uint32
    - gf_props_4cc_get_type
    - FLT2FIX
    - gf_props_type_is_enum
    - napi_is_array
    - GF_4CC
    - gf_strdup
    - memset
    - GET_PROP_FIELD_FLT
    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:3094,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3096,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3100,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3100,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3107,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3110,1
    - Dst: napi_open_handle_scope
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3110,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3113,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3114,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3117,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3117,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3118,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3119,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3119,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3121,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3121,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3122,1
    - Dst: napi_close_handle_scope
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3122,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: 3125
      start: 3089
    functionDepth: 3
    functionLinenumber: 3089
    functionLinenumberEnd: 3125
    functionName: filter_enum_pid_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - napi_create_string_utf8
    - gf_filter_pid_enum_properties
    - napi_create_int32
    - NAPI_CALL
    - napi_close_handle_scope
    - napi_get_global
    - gf_props_4cc_get_name
    - gf_4cc_to_str
    - prop_to_napi
    - napi_throw_error
    - napi_call_function
    - napi_open_handle_scope
    - napi_typeof
    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:3130,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3135,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3137,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3140,1
    - Dst: filter_enum_pid_props
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3143,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: 3144
      start: 3127
    functionDepth: 4
    functionLinenumber: 3127
    functionLinenumberEnd: 3144
    functionName: filter_iopid_enum_props
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid
    - filter_enum_pid_props
    - NARG_ARGS_THIS
    - gf_filter_get_opid
    - napi_throw_error
    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:3148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3149
      start: 3146
    functionDepth: 5
    functionLinenumber: 3146
    functionLinenumberEnd: 3149
    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:3152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3153
      start: 3150
    functionDepth: 5
    functionLinenumber: 3150
    functionLinenumberEnd: 3153
    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:3160,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3165,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3167,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3170,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3172,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3176,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3177,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3177,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3177,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3180,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3181,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3181,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3181,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3184,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3185,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3187,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3187,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3189,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3189,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3193,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3194,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3194,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3194,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3199,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3199,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3202,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3203,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: 3205
      start: 3155
    functionDepth: 3
    functionLinenumber: 3155
    functionLinenumberEnd: 3205
    functionName: filter_get_pid_property
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_get_property
    - napi_get_null
    - prop_to_napi
    - napi_create_string_utf8
    - gf_filter_release_property
    - NAPI_CALL
    - gf_filter_pid_get_name
    - gf_filter_pid_get_info_str
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_props_get_id
    - napi_get_boolean
    - 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:3210,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3213,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3216,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3218,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3221,1
    - Dst: filter_get_pid_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3224,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: 3225
      start: 3207
    functionDepth: 4
    functionLinenumber: 3207
    functionLinenumberEnd: 3225
    functionName: filter_iopid_prop
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid
    - NARG_STR
    - NARG_ARGS_THIS
    - filter_get_pid_property
    - gf_filter_get_opid
    - napi_throw_error
    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:3228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3229
      start: 3226
    functionDepth: 5
    functionLinenumber: 3226
    functionLinenumberEnd: 3229
    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:3232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3233
      start: 3230
    functionDepth: 5
    functionLinenumber: 3230
    functionLinenumberEnd: 3233
    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:3241,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3244,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3247,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3249,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3252,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3256,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3258,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3258,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3261,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3261,1
    - Dst: SET_BOOL
      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_U32
      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_U64
      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_U32
      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_U64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3279,1
    - Dst: SET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3280,1
    - Dst: SET_U64
      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: SET_U32
      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
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3286,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3286,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3286,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: 3288
      start: 3235
    functionDepth: 2
    functionLinenumber: 3235
    functionLinenumberEnd: 3288
    functionName: filter_iopid_stats
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_ipid
    - gf_filter_pid_get_statistics
    - SET_U64
    - NARG_ARGS_THIS
    - NAPI_CALL
    - SET_U32
    - frac64_to_napi
    - NARG_U32
    - gf_filter_get_opid
    - napi_create_object
    - napi_throw_error
    - napi_set_named_property
    - SET_BOOL
    - gf_error_to_string
    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:3291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3289
    functionDepth: 3
    functionLinenumber: 3289
    functionLinenumberEnd: 3292
    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:3295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3296
      start: 3293
    functionDepth: 3
    functionLinenumber: 3293
    functionLinenumberEnd: 3296
    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:3301,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3305,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3307,1
    - Dst: gf_filter_pid_get_source_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3310,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3312,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3314
      start: 3298
    functionDepth: 1
    functionLinenumber: 3298
    functionLinenumberEnd: 3314
    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_ipid
    - NARG_ARGS_THIS
    - gf_filter_get_rt_udta
    - fs_wrap_filter
    - napi_throw_error
    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:3321,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3325,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3327,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3330,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3330,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3332,1
    - Dst: gf_filter_pid_enum_destinations
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3335,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3338,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3338,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3338,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3342
      start: 3316
    functionDepth: 1
    functionLinenumber: 3316
    functionLinenumberEnd: 3342
    functionName: filter_opid_sinks
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_array
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_filter_get_rt_udta
    - gf_filter_pid_enum_destinations
    - gf_filter_get_opid
    - napi_set_element
    - fs_wrap_filter
    - napi_throw_error
    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:3348,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3354,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3356,1
    - Dst: gf_filter_get_info_str
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3358,1
    - Dst: prop_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3361,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3363,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3363,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3365,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3367
      start: 3344
    functionDepth: 3
    functionLinenumber: 3344
    functionLinenumberEnd: 3367
    functionName: filter_get_info
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_filter_get_info_str
    - napi_get_null
    - gf_filter_release_property
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_props_get_id
    - prop_to_napi
    - gf_filter_get_info
    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:3376,1
    - Dst: gf_filter_enumerate_args
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3380,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3383,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3383,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3385,1
    - Dst: napi_create_string_utf8
      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_set_named_property
      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_create_string_utf8
      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_set_named_property
      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_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3389,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3390,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3390,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3393,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3393,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3395,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3395,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3397,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3397,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3400,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3400,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3402,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3402,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3404,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3404,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3406,1
    - Dst: napi_create_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3406,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3407,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3407,1
    - Dst: gf_filter_get_arg_str
      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_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3411,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3412,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3412,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3416,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3416,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3420
      start: 3369
    functionDepth: 1
    functionLinenumber: 3369
    functionLinenumberEnd: 3420
    functionName: filter_all_args
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_array
    - napi_get_null
    - napi_create_string_utf8
    - gf_filter_enumerate_args
    - napi_create_int32
    - NAPI_CALL
    - gf_filter_get_arg_str
    - napi_set_element
    - napi_create_object
    - napi_set_named_property
    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:3427,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3430,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3432,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3435,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3438,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3441,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3443
      start: 3423
    functionDepth: 1
    functionLinenumber: 3423
    functionLinenumberEnd: 3443
    functionName: napi_filter_cbk_process
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_has_named_property
    - napi_make_callback
    - gf_filter_get_rt_udta
    - napi_get_value_int32
    - napi_get_named_property
    - napi_get_reference_value
    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:3449,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: 3450
      start: 3445
    functionDepth: 0
    functionLinenumber: 3445
    functionLinenumberEnd: 3450
    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:3457,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3461,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3465,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3466,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3467,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3469,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3528,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: 3531
      start: 3452
    functionDepth: 1
    functionLinenumber: 3452
    functionLinenumberEnd: 3531
    functionName: wrap_filter_pid
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_wrap
    - gf_filter_pid_set_udta
    - napi_type_tag_object
    - napi_create_reference
    - GF_SAFEALLOC
    - napi_define_properties
    - 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:3538,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3542,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3544,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3546,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3548,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3555,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3556,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3557,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3558,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3561,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3562,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3564,1
    - Dst: wrap_filter_pid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3569,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3574,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3575,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3576,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3577,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: 3581
      start: 3532
    functionDepth: 2
    functionLinenumber: 3532
    functionLinenumberEnd: 3581
    functionName: napi_filter_cbk_configure
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - napi_has_named_property
    - gf_filter_get_rt_udta
    - napi_make_callback
    - wrap_filter_pid
    - napi_get_value_int32
    - napi_get_boolean
    - napi_delete_reference
    - napi_get_named_property
    - napi_get_reference_value
    - napi_reference_unref
    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:3588,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3592,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3594,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3597,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3599,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3605,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3606,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3607,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3610
      start: 3582
    functionDepth: 1
    functionLinenumber: 3582
    functionLinenumberEnd: 3610
    functionName: napi_filter_cbk_reconfigure_output
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_udta
    - napi_has_named_property
    - gf_filter_get_rt_udta
    - napi_make_callback
    - napi_get_value_int32
    - napi_get_named_property
    - napi_get_reference_value
    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:3616,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3619,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3621,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3624,1
    - Dst: wrap_filterevent
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3627,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3628,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3631,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3633
      start: 3612
    functionDepth: 1
    functionLinenumber: 3612
    functionLinenumberEnd: 3633
    functionName: napi_filter_cbk_process_event
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_has_named_property
    - gf_filter_get_rt_udta
    - wrap_filterevent
    - napi_make_callback
    - napi_get_value_bool
    - napi_get_named_property
    - napi_get_reference_value
    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:3649,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3649,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3654,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3654,1
    - Dst: gf_filter_block_enabled
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3654,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3659,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3660,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3660,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3665,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3666,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3666,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3670,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3670,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3670,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3674,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3674,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3674,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3679,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3680,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3680,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3685,1
    - Dst: frac64_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3686,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3690,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3690,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3690,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3694
      start: 3644
    functionDepth: 2
    functionLinenumber: 3644
    functionLinenumberEnd: 3694
    functionName: filter_cust_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_block_enabled
    - gf_filter_connections_pending
    - gf_filter_all_sinks_done
    - gf_filter_get_num_events_queued
    - NAPI_CALL
    - frac64_to_napi
    - gf_filter_get_output_buffer_max
    - napi_create_uint32
    - napi_get_boolean
    - gf_filter_get_clock_hint
    - napi_create_int64
    - napi_get_cb_info
    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:3702,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3707,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3709,1
    - Dst: gf_props_get_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3711,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3713,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: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3718,1
    - Dst: gf_strdup
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3723,1
    - Dst: prop_from_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3725,1
    - Dst: gf_filter_push_caps
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3727,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3731,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3735,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3735,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3738
      start: 3696
    functionDepth: 2
    functionLinenumber: 3696
    functionLinenumberEnd: 3738
    functionName: filter_push_cap
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NARG_STR
    - NARG_ARGS_THIS
    - NARG_U32
    - prop_from_napi
    - gf_filter_push_caps
    - gf_props_get_id
    - gf_strdup
    - napi_throw_error
    - napi_typeof
    - gf_error_to_string
    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:3742,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3747,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3750
      start: 3740
    functionDepth: 1
    functionLinenumber: 3740
    functionLinenumberEnd: 3750
    functionName: filter_update_status
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - NARG_U32
    - NARG_ARGS_THIS
    - 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:3754,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3760,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3762,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3764
      start: 3752
    functionDepth: 1
    functionLinenumber: 3752
    functionLinenumberEnd: 3764
    functionName: filter_reschedule
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_ask_rt_reschedule
    - gf_filter_post_process_task
    - NARG_ARGS_THIS
    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:3768,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3772,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3775,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3777,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3779,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3781
      start: 3766
    functionDepth: 1
    functionLinenumber: 3766
    functionLinenumberEnd: 3781
    functionName: filter_notify_failure
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_setup_failure
    - NARG_U32
    - gf_filter_notification_failure
    - NARG_ARGS_THIS
    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: 3791
      start: 3784
    functionDepth: 0
    functionLinenumber: 3784
    functionLinenumberEnd: 3791
    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:3795,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3801
      start: 3793
    functionDepth: 1
    functionLinenumber: 3793
    functionLinenumberEnd: 3801
    functionName: filter_prevent_blocking
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_filter_prevent_blocking
    - NARG_ARGS_THIS
    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:3804,1
    - Dst: gf_filter_block_eos
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3808,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3810
      start: 3802
    functionDepth: 1
    functionLinenumber: 3802
    functionLinenumberEnd: 3810
    functionName: filter_block_eos
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_filter_block_eos
    - NARG_ARGS_THIS
    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:3813,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3819
      start: 3811
    functionDepth: 1
    functionLinenumber: 3811
    functionLinenumberEnd: 3819
    functionName: filter_set_max_pids
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_max_extra_input_pids
    - NARG_ARGS_THIS
    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:3823,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3827,1
    - Dst: frac64_from_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3827,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3829,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3831
      start: 3820
    functionDepth: 2
    functionLinenumber: 3820
    functionLinenumberEnd: 3831
    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:3840,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3842,1
    - Dst: wrap_filter_pid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3846,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3848,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3851,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3853
      start: 3833
    functionDepth: 2
    functionLinenumber: 3833
    functionLinenumberEnd: 3853
    functionName: filter_new_pid
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_new
    - napi_throw_error
    - 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: 3862
      start: 3855
    functionDepth: 0
    functionLinenumber: 3855
    functionLinenumberEnd: 3862
    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:3887,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3887,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3891,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3891,1
    - Dst: gf_fs_is_last_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3891,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3895,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3895,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3895,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3899,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3899,1
    - Dst: gf_fs_get_http_rate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3899,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3903,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3903,1
    - Dst: gf_fs_get_http_max_rate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3903,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3907
      start: 3882
    functionDepth: 1
    functionLinenumber: 3882
    functionLinenumberEnd: 3907
    functionName: fs_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fs_get_http_rate
    - gf_fs_get_filters_count
    - gf_fs_get_http_max_rate
    - NAPI_CALL
    - napi_create_uint32
    - napi_get_boolean
    - gf_fs_is_last_task
    - napi_get_cb_info
    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:3911,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3915,1
    - Dst: gf_fs_set_http_max_rate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3920
      start: 3909
    functionDepth: 1
    functionLinenumber: 3909
    functionLinenumberEnd: 3920
    functionName: fs_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - NARG_U32
    - NARG_ARGS_THIS_MAGIC
    - 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:3928,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3931,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3931,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3931,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3932,1
    - Dst: gf_fs_run
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3935,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3940,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3942,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3945,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3945,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3948,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3949,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3952,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3955,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3957,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3958,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3963
      start: 3922
    functionDepth: 1
    functionLinenumber: 3922
    functionLinenumberEnd: 3963
    functionName: fs_run
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 7
    functionsReached:
    - gf_list_count
    - gf_fs_get_last_process_error
    - gf_list_pop_front
    - gf_fs_get_last_connect_error
    - gf_fs_run
    - gf_fs_post_user_task
    - napi_has_named_property
    - napi_make_callback
    - fs_wrap_filter
    - napi_throw_error
    - napi_get_named_property
    - gf_fs_get_rt_udta
    - gf_error_to_string
    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:3969,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3972,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:3972,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4007,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4007,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4011,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4016,1
    - Dst: napi_create_object
      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_define_properties
      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_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4018,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4019,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4019,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4021,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4021,1
    - Dst: gf_filter_set_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4023,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: 4025
      start: 3965
    functionDepth: 1
    functionLinenumber: 3965
    functionLinenumberEnd: 4025
    functionName: fs_wrap_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 3
    functionsReached:
    - napi_get_null
    - napi_wrap
    - NAPI_CALL
    - napi_type_tag_object
    - gf_filter_get_rt_udta
    - napi_create_reference
    - GF_SAFEALLOC
    - napi_define_properties
    - gf_filter_set_rt_udta
    - napi_create_object
    - napi_get_reference_value
    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:4031,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4036,1
    - Dst: NARG_STR_ALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4039,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4043,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4045,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4047,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4050,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4050,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4052,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: 4053
      start: 4028
    functionDepth: 2
    functionLinenumber: 4028
    functionLinenumberEnd: 4053
    functionName: fs_load_src_dst
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - NARG_ARGS_THIS
    - gf_fs_load_destination
    - gf_fs_load_source
    - fs_wrap_filter
    - napi_throw_error
    - NARG_STR_ALLOC
    - gf_error_to_string
    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:4057,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4058
      start: 4055
    functionDepth: 3
    functionLinenumber: 4055
    functionLinenumberEnd: 4058
    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:4061,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4062
      start: 4059
    functionDepth: 3
    functionLinenumber: 4059
    functionLinenumberEnd: 4062
    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:4067,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4071,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4074,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4074,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4076,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4077
      start: 4064
    functionDepth: 2
    functionLinenumber: 4064
    functionLinenumberEnd: 4077
    functionName: fs_load_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 7
    functionsReached:
    - NARG_ARGS_THIS
    - fs_wrap_filter
    - gf_fs_load_filter
    - napi_throw_error
    - gf_error_to_string
    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:4095,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4097,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4100,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4104,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4107,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4110,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4119,1
    - Dst: gf_fs_in_final_flush
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4122,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4127,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4128,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4129,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 38
    argCount: 3
    argNames:
    - fsess
    - callback
    - reschedule_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4132
      start: 4087
    functionDepth: 1
    functionLinenumber: 4087
    functionLinenumberEnd: 4132
    functionName: fs_task_exec
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - gf_fs_in_final_flush
    - napi_reference_unref
    - gf_free
    - napi_make_callback
    - napi_get_value_bool
    - napi_delete_reference
    - napi_throw_error
    - napi_get_named_property
    - napi_get_reference_value
    - napi_typeof
    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:4137,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4141,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4141,1
    - Dst: napi_get_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4142,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4144,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4148,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4150,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4155,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4157,1
    - Dst: gf_fs_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4160,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4162,1
    - Dst: napi_get_global
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4162,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4163,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4163,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4165,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4170
      start: 4134
    functionDepth: 1
    functionLinenumber: 4134
    functionLinenumberEnd: 4170
    functionName: fs_post_task
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_property
    - napi_create_string_utf8
    - gf_fs_post_user_task
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_create_reference
    - GF_SAFEALLOC
    - napi_get_global
    - napi_throw_error
    - gf_fs_get_rt_udta
    - napi_typeof
    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:4174,1
    - Dst: gf_fs_abort
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4179
      start: 4172
    functionDepth: 1
    functionLinenumber: 4172
    functionLinenumberEnd: 4179
    functionName: fs_abort
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 8
    functionsReached:
    - gf_fs_abort
    - NARG_ARGS_THIS
    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:4183,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4188
      start: 4181
    functionDepth: 1
    functionLinenumber: 4181
    functionLinenumberEnd: 4188
    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:4191,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4196
      start: 4189
    functionDepth: 1
    functionLinenumber: 4189
    functionLinenumberEnd: 4196
    functionName: fs_reporting
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fs_enable_reporting
    - NARG_ARGS_THIS
    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: 4204
      start: 4198
    functionDepth: 0
    functionLinenumber: 4198
    functionLinenumberEnd: 4204
    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: 4212
      start: 4206
    functionDepth: 0
    functionLinenumber: 4206
    functionLinenumberEnd: 4212
    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:4215,1
    - Dst: gf_fs_get_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4219,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4221,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4225
      start: 4213
    functionDepth: 2
    functionLinenumber: 4213
    functionLinenumberEnd: 4225
    functionName: fs_get_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - napi_throw_error
    - gf_fs_get_filter
    - NARG_ARGS_THIS
    - fs_wrap_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:4233,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4237,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4239,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4242,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4242,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4245,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4245,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4247,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4250,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4250,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4253,1
    - Dst: gf_fs_fire_event
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4255,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4256,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4256,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4258
      start: 4227
    functionDepth: 1
    functionLinenumber: 4227
    functionLinenumberEnd: 4258
    functionName: fs_fire_event
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_fs_fire_event
    - napi_check_object_type_tag
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_unwrap
    - napi_get_boolean
    - napi_throw_error
    - NARG_BOOL
    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:4264,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4268,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4268,1
    - Dst: gf_fs_is_supported_mime
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4270
      start: 4261
    functionDepth: 1
    functionLinenumber: 4261
    functionLinenumberEnd: 4270
    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:4276,1
    - Dst: NARG_STR_ALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4280,1
    - Dst: gf_fs_is_supported_source
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4281,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4282,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4284,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4284,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4286
      start: 4272
    functionDepth: 1
    functionLinenumber: 4272
    functionLinenumberEnd: 4286
    functionName: fs_is_supported_source
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_free
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_fs_is_supported_source
    - napi_get_boolean
    - NARG_STR_ALLOC
    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:4294,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4297,1
    - Dst: gf_fs_new_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4299,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4301,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4301,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4305,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4306,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4335,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4335,1
    - Dst: gf_filter_set_configure_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4338,1
    - Dst: gf_filter_set_process_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4339,1
    - Dst: gf_filter_set_process_event_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4340,1
    - Dst: gf_filter_set_reconfigure_output_ckb
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4341,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4344,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4344,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4348,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4348,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4349,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4349,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4351
      start: 4289
    functionDepth: 2
    functionLinenumber: 4289
    functionLinenumberEnd: 4351
    functionName: fs_new_filter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - gf_fs_new_filter
    - gf_filter_set_configure_ckb
    - gf_filter_set_reconfigure_output_ckb
    - napi_create_string_utf8
    - gf_filter_set_process_event_ckb
    - NARG_ARGS_THIS
    - NAPI_CALL
    - gf_filter_get_rt_udta
    - napi_async_init
    - NARG_U32
    - napi_define_properties
    - gf_filter_set_process_ckb
    - fs_wrap_filter
    - napi_throw_error
    - gf_error_to_string
    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:4358,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4362,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4363,1
    - Dst: napi_async_destroy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4364,1
    - Dst: gf_fs_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4369,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4372,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4373,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: 4375
      start: 4355
    functionDepth: 1
    functionLinenumber: 4355
    functionLinenumberEnd: 4375
    functionName: del_fs
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_async_destroy
    - gf_free
    - gf_fs_del
    - gf_list_del
    - napi_delete_reference
    - gf_fs_get_rt_udta
    - napi_reference_unref
    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:4382,1
    - Dst: napi_get_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4389,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4393,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4394,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4395,1
    - Dst: gf_list_del_item
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4400,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4402,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4406,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4408,1
    - Dst: fs_wrap_filter
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4410,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4411,1
    - Dst: gf_filter_set_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4419,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4420,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4421,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4425,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4426,1
    - Dst: dashin_detach_binding
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4427,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4429,1
    - Dst: httpout_detach_binding
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4430,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4432,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4433,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4438,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4440,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4441,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4444,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4445,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4448,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4450,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4454,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 51
    argCount: 3
    argNames:
    - udta
    - filter
    - is_destroy
    argTypes:
    - void*
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4456
      start: 4377
    functionDepth: 2
    functionLinenumber: 4377
    functionLinenumberEnd: 4456
    functionName: fs_on_filter_creation
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_name
    - napi_make_callback
    - gf_filter_get_opid
    - gf_filter_set_rt_udta
    - gf_list_add
    - gf_filter_get_opid_count
    - gf_filter_pid_get_udta
    - fs_wrap_filter
    - napi_delete_reference
    - napi_reference_unref
    - napi_has_named_property
    - gf_th_id
    - strcmp
    - gf_list_new
    - napi_get_named_property
    - gf_list_pop_back
    - napi_get_instance_data
    - napi_get_reference_value
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - httpout_detach_binding
    - gf_filter_get_rt_udta
    - dashin_detach_binding
    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:4468,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4471,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4473,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4473,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4475,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4481,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4483,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4485,1
    - Dst: wrap_filterevent
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4491,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4494,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4497,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - udta
    - event
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4499
      start: 4458
    functionDepth: 1
    functionLinenumber: 4458
    functionLinenumberEnd: 4499
    functionName: napi_gpac_event_proc
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - napi_has_named_property
    - gf_th_id
    - napi_make_callback
    - wrap_filterevent
    - gf_dom_event_get_name
    - napi_get_value_bool
    - napi_get_named_property
    - napi_get_instance_data
    - napi_get_reference_value
    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:4505,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4507,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4512,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4514,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4518,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4520,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4521,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4524,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4524,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4526,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4526,1
    - Dst: gf_fs_set_filter_creation_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4531,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4533,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4533,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4535,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4535,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4536,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4536,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4539,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4545
      start: 4501
    functionDepth: 1
    functionLinenumber: 4501
    functionLinenumberEnd: 4545
    functionName: new_fs
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fs_new_defaults
    - gf_free
    - napi_wrap
    - napi_create_string_utf8
    - gf_fs_set_ui_callback
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_type_tag_object
    - napi_create_reference
    - napi_async_init
    - NARG_U32
    - GF_SAFEALLOC
    - gf_fs_set_filter_creation_callback
    - napi_throw_error
    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:4575,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4578,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: 4582
      start: 4547
    functionDepth: 0
    functionLinenumber: 4547
    functionLinenumberEnd: 4582
    functionName: init_fs_class
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_define_class
    - napi_set_named_property
    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:4750,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4750,1
    - Dst: EVT_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4800,1
    - Dst: EVT_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4801,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4801,1
    - Dst: EVT_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4803,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4803,1
    - Dst: EVT_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4811,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4811,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4815,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4818,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4820,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4820,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4835
      start: 4745
    functionDepth: 1
    functionLinenumber: 4745
    functionLinenumberEnd: 4835
    functionName: fevt_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - EVT_STR
    - napi_get_null
    - gf_filter_pid_get_udta
    - gf_filter_event_name
    - NAPI_CALL
    - gf_dom_event_get_name
    - gf_dom_get_key_name
    - EVT_U32
    - napi_get_reference_value
    - napi_get_cb_info
    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: 4758
      start: 4753
    functionDepth: 0
    functionLinenumber: 4753
    functionLinenumberEnd: 4758
    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: 4764
      start: 4759
    functionDepth: 0
    functionLinenumber: 4759
    functionLinenumberEnd: 4764
    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: 4770
      start: 4765
    functionDepth: 0
    functionLinenumber: 4765
    functionLinenumberEnd: 4770
    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: 4776
      start: 4771
    functionDepth: 0
    functionLinenumber: 4771
    functionLinenumberEnd: 4776
    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: 4786
      start: 4777
    functionDepth: 0
    functionLinenumber: 4777
    functionLinenumberEnd: 4786
    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: 4792
      start: 4787
    functionDepth: 0
    functionLinenumber: 4787
    functionLinenumberEnd: 4792
    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: 4798
      start: 4793
    functionDepth: 0
    functionLinenumber: 4793
    functionLinenumberEnd: 4798
    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:4839,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4897,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4898,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4903
      start: 4837
    functionDepth: 1
    functionLinenumber: 4837
    functionLinenumberEnd: 4903
    functionName: fevt_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_dom_get_key_type
    - NARG_STR
    - NARG_ARGS_THIS_MAGIC
    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: 4848
      start: 4842
    functionDepth: 0
    functionLinenumber: 4842
    functionLinenumberEnd: 4848
    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: 4855
      start: 4849
    functionDepth: 0
    functionLinenumber: 4849
    functionLinenumberEnd: 4855
    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: 4862
      start: 4856
    functionDepth: 0
    functionLinenumber: 4856
    functionLinenumberEnd: 4862
    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: 4869
      start: 4863
    functionDepth: 0
    functionLinenumber: 4863
    functionLinenumberEnd: 4869
    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: 4876
      start: 4870
    functionDepth: 0
    functionLinenumber: 4870
    functionLinenumberEnd: 4876
    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: 4883
      start: 4877
    functionDepth: 0
    functionLinenumber: 4877
    functionLinenumberEnd: 4883
    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: 4890
      start: 4884
    functionDepth: 0
    functionLinenumber: 4884
    functionLinenumberEnd: 4890
    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:4909,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: 4910
      start: 4906
    functionDepth: 0
    functionLinenumber: 4906
    functionLinenumberEnd: 4910
    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:4919,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4919,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4928,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4928,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4951,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4951,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4957,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4957,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4963,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4963,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4971,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4971,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4981,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4981,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4993,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:4993,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5003,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5003,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5013,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5013,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5022,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5022,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5033,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5033,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5050,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5050,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5062,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5062,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5079,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5079,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5088,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5088,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5097,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5097,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5110,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5110,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5118,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5118,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5130,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5130,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5136,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5136,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5142,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5142,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5146,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5146,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5147,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5147,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: 5150
      start: 4912
    functionDepth: 1
    functionLinenumber: 4912
    functionLinenumberEnd: 5150
    functionName: wrap_filterevent
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 2
    functionsReached:
    - napi_wrap
    - NAPI_CALL
    - napi_type_tag_object
    - napi_define_properties
    - 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:5154,1
    - Dst: NARG_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5155,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5162,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5166,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5168,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5171,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5171,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5174,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5174,1
    - Dst: wrap_filterevent
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5178,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5179
      start: 5151
    functionDepth: 2
    functionLinenumber: 5151
    functionLinenumberEnd: 5179
    functionName: new_fevt
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - NARG_ARGS_THIS
    - NAPI_CALL
    - wrap_filterevent
    - NARG_U32
    - GF_SAFEALLOC
    - napi_throw_error
    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:5186,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5188,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: 5189
      start: 5182
    functionDepth: 0
    functionLinenumber: 5182
    functionLinenumberEnd: 5189
    functionName: init_fevt_class
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_define_class
    - napi_set_named_property
    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:5211,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5212,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5216,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5219,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5220,1
    - Dst: gf_fs_post_user_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5224,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - udta
    - new_client
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5227
      start: 5201
    functionDepth: 1
    functionLinenumber: 5201
    functionLinenumberEnd: 5227
    functionName: gpac_rmt_on_new_client
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fs_post_user_task
    - GF_LOG
    - gf_list_new
    - napi_throw_error
    - gf_list_add
    - napi_get_instance_data
    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:5240,1
    - Dst: gf_sys_get_rmtws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5243,1
    - Dst: gf_sys_get_userws
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5244,1
    - Dst: napi_async_destroy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5252,1
    - Dst: gf_rmt_get_on_new_client_task
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5255,1
    - Dst: napi_rmt_task_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5256,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5258,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5265,1
    - Dst: napi_get_global
      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_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5266,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5267,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5267,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5271,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5274,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5275,1
    - Dst: GF_LOG
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5277,1
    - Dst: gf_rmt_set_on_new_client_cbk
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5278,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5285
      start: 5230
    functionDepth: 1
    functionLinenumber: 5230
    functionLinenumberEnd: 5285
    functionName: nodegpac_setter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_userws
    - napi_async_destroy
    - napi_create_string_utf8
    - gf_sys_get_rmtws
    - GF_LOG
    - NAPI_CALL
    - napi_async_init
    - gf_rmt_get_on_new_client_task
    - napi_create_reference
    - GF_SAFEALLOC
    - napi_get_global
    - gf_rmt_set_on_new_client_cbk
    - napi_rmt_task_del
    - napi_typeof
    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:5294,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5296,1
    - Dst: memset
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5299,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5300,1
    - Dst: napi_set_instance_data
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5300,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5302,1
    - Dst: InitConstants
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5302,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:5316,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5318,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5322,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5322,1
    - Dst: DEF_FUN
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5324,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5328,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5328,1
    - Dst: init_fs_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5330,1
    - Dst: init_fevt_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5333,1
    - Dst: init_fio_class
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5336,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5340,1
    - Dst: gf_sys_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5343,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 2
    argNames:
    - env
    - exports
    argTypes:
    - napi_env
    - napi_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5345
      start: 5287
    functionDepth: 1
    functionLinenumber: 5287
    functionLinenumberEnd: 5345
    functionName: Init
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - malloc
    - init_fevt_class
    - init_fio_class
    - NAPI_CALL
    - memset
    - gf_th_id
    - gf_sys_init
    - napi_define_properties
    - init_fs_class
    - napi_set_instance_data
    - InitConstants
    - napi_throw_error
    - DEF_FUN
    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: 5308
      start: 5304
    functionDepth: 0
    functionLinenumber: 5304
    functionLinenumberEnd: 5308
    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:5378,1
    - Dst: gf_gpac_version
      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
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5379,1
    - Dst: DEF_CONST_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5380,1
    - Dst: gf_gpac_copyright_cite
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5380,1
    - Dst: DEF_CONST_INT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5382,1
    - Dst: gf_gpac_abi_major
      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_minor
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5383,1
    - Dst: DEF_CONST_INT
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5384,1
    - Dst: gf_gpac_abi_micro
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5384,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:5389,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:5417,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:5426,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:5444,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:5452,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:5456,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:5463,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:5503,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:5507,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:5533,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:5540,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:5544,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:5550,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:5565,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:5574,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:5596,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:5600,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
    - Dst: DEF_CONST
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 209
    argCount: 2
    argNames:
    - env
    - exports
    argTypes:
    - napi_env
    - napi_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5607
      start: 5350
    functionDepth: 1
    functionLinenumber: 5350
    functionLinenumberEnd: 5607
    functionName: InitConstants
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_gpac_version
    - DEF_CONST_STR
    - DEF_CONST_INT
    - gf_gpac_abi_major
    - gf_gpac_copyright_cite
    - DEF_CONST
    - gf_gpac_copyright
    - gf_gpac_abi_minor
    - gf_gpac_abi_micro
    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: 5362
      start: 5355
    functionDepth: 0
    functionLinenumber: 5355
    functionLinenumberEnd: 5362
    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: 5369
      start: 5362
    functionDepth: 0
    functionLinenumber: 5362
    functionLinenumberEnd: 5369
    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: 5376
      start: 5369
    functionDepth: 0
    functionLinenumber: 5369
    functionLinenumberEnd: 5376
    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:5615,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5616,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5619,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5620,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: 5624
      start: 5610
    functionDepth: 0
    functionLinenumber: 5610
    functionLinenumberEnd: 5624
    functionName: dashbind_finalize
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_delete_reference
    - napi_reference_unref
    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:5632,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5634,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5636,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5643,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5644,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - udta
    - type
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5645
      start: 5626
    functionDepth: 0
    functionLinenumber: 5626
    functionLinenumberEnd: 5645
    functionName: dashbind_period_reset
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_has_named_property
    - napi_create_uint32
    - napi_get_named_property
    - napi_call_function
    - napi_get_reference_value
    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:5656,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5658,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5659,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5662,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5663,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5666,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5666,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5667,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5670,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5671,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5674,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5678,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5680,1
    - Dst: QSET_U32
      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_STR
      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_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5713,1
    - Dst: QSET_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5714,1
    - Dst: frac_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5718,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5719,1
    - Dst: frac_to_napi
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5724,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5725,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5727,1
    - Dst: QSET_U32
      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_BOOL
      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_DOUBLE
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5732,1
    - Dst: QSET_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5733,1
    - Dst: QSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5734,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5737,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5738,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5743,1
    - Dst: gf_list_get
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5746,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5748,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5749,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5751,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5752,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5755,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5756,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5759,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5765,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5767,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: SRD_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5780,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5783,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5785,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5787,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5789,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5791,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5796,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 81
    argCount: 3
    argNames:
    - udta
    - group_idx
    - _dash
    argTypes:
    - void*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5798
      start: 5647
    functionDepth: 2
    functionLinenumber: 5647
    functionLinenumberEnd: 5798
    functionName: dashbind_new_group
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_array
    - gf_list_count
    - QSET_U32
    - napi_set_element
    - SRD_U32
    - napi_call_function
    - gf_dash_get_period_duration
    - napi_define_properties
    - QSET_BOOL
    - gf_list_get
    - gf_dash_group_get_num_qualities
    - frac_to_napi
    - napi_has_named_property
    - napi_create_uint32
    - gf_dash_group_get_srd_info
    - gf_dash_group_get_quality_info
    - napi_create_int64
    - napi_get_named_property
    - napi_get_reference_value
    - napi_get_null
    - QSET_DOUBLE
    - QSET_STR
    - napi_create_object
    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: 5687
      start: 5683
    functionDepth: 0
    functionLinenumber: 5683
    functionLinenumberEnd: 5687
    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: 5692
      start: 5688
    functionDepth: 0
    functionLinenumber: 5688
    functionLinenumberEnd: 5692
    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: 5701
      start: 5693
    functionDepth: 0
    functionLinenumber: 5693
    functionLinenumberEnd: 5701
    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: 5706
      start: 5702
    functionDepth: 0
    functionLinenumber: 5702
    functionLinenumberEnd: 5706
    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: 5774
      start: 5770
    functionDepth: 0
    functionLinenumber: 5770
    functionLinenumberEnd: 5774
    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:5808,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5810,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5812,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5819,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5820,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5821,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5824,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5825,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5829,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5830,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5831,1
    - Dst: napi_get_boolean
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5835,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5837,1
    - Dst: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5849,1
    - Dst: SSET_U32
      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_DOUBLE
      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: SSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5860,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5861,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5864,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: 5866
      start: 5800
    functionDepth: 1
    functionLinenumber: 5800
    functionLinenumberEnd: 5866
    functionName: dashbind_rate_adaptation
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_get_null
    - SSET_U32
    - napi_has_named_property
    - SSET_DOUBLE
    - napi_get_value_int32
    - napi_get_boolean
    - napi_get_element
    - napi_create_object
    - napi_get_named_property
    - napi_call_function
    - napi_get_reference_value
    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: 5845
      start: 5841
    functionDepth: 0
    functionLinenumber: 5841
    functionLinenumberEnd: 5845
    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: 5849
      start: 5845
    functionDepth: 0
    functionLinenumber: 5845
    functionLinenumberEnd: 5849
    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:5886,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5888,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5890,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5897,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5898,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5899,1
    - Dst: napi_get_null
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5902,1
    - Dst: napi_get_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5906,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5907,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5908,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5914,1
    - Dst: DSSET_U32
      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_U64
      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: DSSET_U32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5930,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5932,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5935,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 3
    argNames:
    - udta
    - group_idx
    - _stats
    argTypes:
    - void*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5937
      start: 5878
    functionDepth: 1
    functionLinenumber: 5878
    functionLinenumberEnd: 5937
    functionName: dashbind_download_monitor
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - DSSET_U32
    - napi_get_value_uint32
    - napi_get_null
    - napi_has_named_property
    - DSSET_U64
    - napi_get_value_int32
    - napi_get_element
    - napi_create_object
    - napi_get_named_property
    - napi_call_function
    - napi_get_reference_value
    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: 5921
      start: 5917
    functionDepth: 0
    functionLinenumber: 5917
    functionLinenumberEnd: 5921
    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: 5925
      start: 5921
    functionDepth: 0
    functionLinenumber: 5921
    functionLinenumberEnd: 5925
    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:5952,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5957,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5962,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5963,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5968,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5969,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5971,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5972,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5972,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5975,1
    - Dst: gf_filter_bind_dash_algo_callbacks
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5976,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5979,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5980,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5983,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5985,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5985,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:5989,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5991
      start: 5946
    functionDepth: 1
    functionLinenumber: 5946
    functionLinenumberEnd: 5991
    functionName: dashin_bind
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - napi_create_array
    - gf_free
    - napi_wrap
    - napi_has_named_property
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_type_tag_object
    - napi_create_reference
    - gf_filter_get_rt_udta
    - gf_filter_bind_dash_algo_callbacks
    - gf_filter_force_main_thread
    - napi_delete_reference
    - napi_throw_error
    - napi_reference_unref
    - gf_error_to_string
    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:5997,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - napi_f
    argTypes:
    - NAPI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5998
      start: 5993
    functionDepth: 0
    functionLinenumber: 5993
    functionLinenumberEnd: 5998
    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: 6008
      start: 6006
    functionDepth: 0
    functionLinenumber: 6006
    functionLinenumberEnd: 6008
    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:6020,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: 6021
      start: 6017
    functionDepth: 0
    functionLinenumber: 6017
    functionLinenumberEnd: 6021
    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:6032,1
    - Dst: napi_get_named_property
      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_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6035,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6036,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - udta
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6040
      start: 6024
    functionDepth: 0
    functionLinenumber: 6024
    functionLinenumberEnd: 6040
    functionName: httpout_throttle_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_get_named_property
    - napi_create_int64
    - napi_call_function
    - napi_get_reference_value
    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:6051,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6052,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6056,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6059,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6063,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6067,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6070,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6074,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6077,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - udta
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6080
      start: 6041
    functionDepth: 0
    functionLinenumber: 6041
    functionLinenumberEnd: 6080
    functionName: httpout_read_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_create_external_arraybuffer
    - napi_create_typedarray
    - napi_detach_arraybuffer
    - napi_get_named_property
    - memcpy
    - napi_call_function
    - napi_get_reference_value
    - napi_create_arraybuffer
    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:6090,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6091,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6095,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6098,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6100,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6105,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6109,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6112,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6116,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - udta
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6121
      start: 6081
    functionDepth: 0
    functionLinenumber: 6081
    functionLinenumberEnd: 6121
    functionName: httpout_write_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_create_external_arraybuffer
    - napi_create_typedarray
    - napi_detach_arraybuffer
    - napi_get_named_property
    - memcpy
    - napi_call_function
    - napi_get_reference_value
    - napi_create_arraybuffer
    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:6128,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6131,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6134,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6135,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6136,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - udta
    - reason
    argTypes:
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6139
      start: 6122
    functionDepth: 0
    functionLinenumber: 6122
    functionLinenumberEnd: 6139
    functionName: httpout_on_close_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_has_named_property
    - napi_create_uint32
    - napi_delete_reference
    - napi_get_named_property
    - napi_call_function
    - napi_get_reference_value
    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:6168,1
    - Dst: napi_check_object_type_tag
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6168,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6170,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6173,1
    - Dst: napi_unwrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6173,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6175,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6176,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6179,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6181,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6182,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6183,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6184,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6188,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6192,1
    - Dst: napi_get_array_length
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6193,1
    - Dst: napi_get_element
      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:6197,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6199,1
    - Dst: gf_realloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6202,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6204,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6205,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6206,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6207,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6210,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6211,1
    - Dst: gf_malloc
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6212,1
    - Dst: napi_get_value_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6213,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6219,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6221,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6223,1
    - Dst: gf_httpout_send_request
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6226,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6232,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6235,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6237,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6240
      start: 6152
    functionDepth: 1
    functionLinenumber: 6152
    functionLinenumberEnd: 6240
    functionName: httpout_send_cbk
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_get_value_string_utf8
    - gf_free
    - gf_malloc
    - napi_check_object_type_tag
    - napi_has_named_property
    - napi_get_array_length
    - NAPI_CALL
    - napi_unwrap
    - gf_httpout_send_request
    - napi_get_element
    - gf_realloc
    - napi_throw_error
    - napi_get_named_property
    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:6252,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6257,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6258,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6259,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6260,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6264,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6265,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6268,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6269,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6272,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6273,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6276,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6277,1
    - Dst: napi_create_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6280,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6281,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6285,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6288,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6289,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6290,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6291,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6292,1
    - Dst: napi_set_element
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6293,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6295,1
    - Dst: napi_create_array
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6298,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6299,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6302,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6303,1
    - Dst: napi_call_function
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6305,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: 6307
      start: 6242
    functionDepth: 1
    functionLinenumber: 6242
    functionLinenumberEnd: 6307
    functionName: httpout_on_request
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_array
    - napi_wrap
    - napi_create_string_utf8
    - napi_type_tag_object
    - napi_create_reference
    - GF_SAFEALLOC
    - napi_create_function
    - napi_create_uint32
    - napi_set_element
    - napi_create_object
    - napi_get_named_property
    - napi_set_named_property
    - napi_call_function
    - napi_get_reference_value
    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:6318,1
    - Dst: gf_filter_get_rt_udta
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6321,1
    - Dst: napi_has_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6324,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6326,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6330,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6332,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6336,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6341,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6342,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6342,1
    - Dst: gf_filter_bind_httpout_callbacks
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6344,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6347,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6348,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6351,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6353,1
    - Dst: gf_error_to_string
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6353,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6357,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6359
      start: 6313
    functionDepth: 1
    functionLinenumber: 6313
    functionLinenumberEnd: 6359
    functionName: httpout_bind
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - gf_free
    - napi_wrap
    - gf_error_to_string
    - napi_has_named_property
    - NARG_ARGS_THIS
    - NAPI_CALL
    - napi_type_tag_object
    - gf_filter_get_rt_udta
    - napi_create_reference
    - GF_SAFEALLOC
    - gf_filter_force_main_thread
    - napi_delete_reference
    - napi_throw_error
    - napi_reference_unref
    - gf_filter_bind_httpout_callbacks
    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:6365,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - napi_f
    argTypes:
    - NAPI_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6366
      start: 6361
    functionDepth: 0
    functionLinenumber: 6361
    functionLinenumberEnd: 6366
    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:6403,1
    - Dst: napi_get_cb_info
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6403,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6407,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6407,1
    - Dst: gf_fileio_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6411
      start: 6398
    functionDepth: 1
    functionLinenumber: 6398
    functionLinenumberEnd: 6411
    functionName: fio_getter
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_create_string_utf8
    - gf_fileio_url
    - NAPI_CALL
    - napi_get_cb_info
    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:6418,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6422,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6423,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6427,1
    - Dst: napi_create_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6430,1
    - Dst: napi_create_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6434,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6440,1
    - Dst: napi_get_value_int32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6444,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6449
      start: 6413
    functionDepth: 1
    functionLinenumber: 6413
    functionLinenumberEnd: 6449
    functionName: gfio_seek
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    - napi_make_callback
    - napi_create_uint32
    - napi_get_named_property
    - napi_get_value_int32
    - napi_create_int64
    - napi_get_reference_value
    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:6471,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6475,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6477,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6479,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6485,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6488,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6491,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6495,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6498,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6501,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6506,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6511
      start: 6464
    functionDepth: 1
    functionLinenumber: 6464
    functionLinenumberEnd: 6511
    functionName: gfio_read
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_create_external_arraybuffer
    - gf_fileio_get_udta
    - napi_create_typedarray
    - napi_make_callback
    - napi_detach_arraybuffer
    - napi_get_named_property
    - memcpy
    - napi_get_reference_value
    - napi_create_arraybuffer
    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:6519,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6523,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6525,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6527,1
    - Dst: napi_create_external_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6533,1
    - Dst: napi_create_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6538,1
    - Dst: memcpy
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6540,1
    - Dst: napi_create_typedarray
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6545,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6549,1
    - Dst: napi_get_value_uint32
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6552,1
    - Dst: napi_detach_arraybuffer
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6557,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6563
      start: 6513
    functionDepth: 1
    functionLinenumber: 6513
    functionLinenumberEnd: 6563
    functionName: gfio_write
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - napi_get_value_uint32
    - napi_create_external_arraybuffer
    - gf_fileio_get_udta
    - napi_create_typedarray
    - napi_make_callback
    - napi_detach_arraybuffer
    - napi_get_named_property
    - memcpy
    - napi_get_reference_value
    - napi_create_arraybuffer
    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:6570,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6574,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6575,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6579,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6582,1
    - Dst: napi_get_value_int64
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6586,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6591
      start: 6565
    functionDepth: 1
    functionLinenumber: 6565
    functionLinenumberEnd: 6591
    functionName: gfio_tell
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    - napi_make_callback
    - napi_get_reference_value
    - napi_get_named_property
    - napi_get_value_int64
    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:6598,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6602,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6603,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6607,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6610,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6614,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6619
      start: 6593
    functionDepth: 1
    functionLinenumber: 6593
    functionLinenumberEnd: 6619
    functionName: gfio_eof
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_fileio_get_udta
    - napi_make_callback
    - napi_get_value_bool
    - napi_get_named_property
    - napi_get_reference_value
    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:6627,1
    - Dst: gf_th_id
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6634,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6639,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6641,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6641,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6642,1
    - Dst: gf_fileio_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6648,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6649,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6652,1
    - Dst: gf_fileio_tag_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6656,1
    - Dst: gf_list_add
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6657,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6662,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6668,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6671,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6672,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6676,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6680,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6683,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6690,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6697,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6700,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6701,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6702,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6703,1
    - Dst: gf_fileio_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6718,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6719,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6720,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6721,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6722,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6726,1
    - Dst: gf_fileio_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6727,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6728,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6729,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6730,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6732,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6733,1
    - Dst: napi_reference_unref
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6734,1
    - Dst: napi_delete_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6735,1
    - Dst: gf_list_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6736,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6737,1
    - Dst: gf_list_find
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6747,1
    - Dst: gf_list_del_item
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6749,1
    - Dst: gf_list_count
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6755,1
    - Dst: gf_list_get
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6757,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6758,1
    - Dst: strcmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6759,1
    - Dst: gf_list_rem
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6761,1
    - Dst: strncmp
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6771,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6772,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6776,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6776,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6782,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6785,1
    - Dst: gf_fileio_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6789,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6792,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6793,1
    - Dst: gf_fileio_tag_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6797,1
    - Dst: napi_create_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6801,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6802,1
    - Dst: napi_get_reference_value
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6806,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6807,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6810,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6814,1
    - Dst: napi_make_callback
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6821,1
    - Dst: napi_get_value_bool
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6826,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6829,1
    - Dst: gf_fileio_del
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6840,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: 6845
      start: 6621
    functionDepth: 1
    functionLinenumber: 6621
    functionLinenumberEnd: 6845
    functionName: gfio_open
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_url_concatenate
    - napi_make_callback
    - gf_fileio_new
    - napi_create_reference
    - GF_SAFEALLOC
    - gf_list_add
    - napi_create_string_utf8
    - gf_fileio_translate_url
    - gf_list_find
    - gf_fileio_resource_url
    - gf_fileio_del
    - gf_list_get
    - napi_delete_reference
    - napi_reference_unref
    - gf_th_id
    - strcmp
    - napi_get_value_bool
    - napi_get_named_property
    - napi_get_reference_value
    - gf_free
    - napi_wrap
    - gf_list_del
    - gf_fileio_tag_main_thread
    - gf_list_del_item
    - napi_create_object
    - strncmp
    - gf_fileio_get_udta
    - gf_list_rem
    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: 6849
      start: 6847
    functionDepth: 0
    functionLinenumber: 6847
    functionLinenumberEnd: 6849
    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:6855,1
    - Dst: NARG_STR
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6856,1
    - Dst: NARG_BOOL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6857,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6867,1
    - Dst: napi_typeof
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6872,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6874,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6877,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6879,1
    - Dst: napi_get_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6882,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6884,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6888,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6890,1
    - Dst: gf_fileio_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6894,1
    - Dst: gf_free
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6896,1
    - Dst: napi_throw_error
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6897,1
    - Dst: gf_fileio_tag_main_thread
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6900,1
    - Dst: napi_create_reference
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6902,1
    - Dst: gf_list_new
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6905,1
    - Dst: napi_create_string_utf8
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6909,1
    - Dst: napi_async_init
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6910,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6916,1
    - Dst: napi_define_properties
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6916,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6919,1
    - Dst: napi_wrap
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6919,1
    - Dst: NAPI_CALL
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6920,1
    - Dst: napi_type_tag_object
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6920,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 48
    argCount: 2
    argNames:
    - env
    - info
    argTypes:
    - napi_env
    - napi_callback_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6923
      start: 6851
    functionDepth: 1
    functionLinenumber: 6851
    functionLinenumberEnd: 6923
    functionName: new_fio
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 0
    functionsReached:
    - gf_free
    - napi_wrap
    - napi_create_string_utf8
    - NARG_STR
    - NARG_ARGS_THIS
    - gf_fileio_tag_main_thread
    - NAPI_CALL
    - napi_create_reference
    - gf_fileio_new
    - napi_async_init
    - GF_SAFEALLOC
    - napi_define_properties
    - napi_type_tag_object
    - gf_list_new
    - napi_throw_error
    - napi_get_named_property
    - NARG_BOOL
    - napi_typeof
    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:6930,1
    - Dst: napi_set_named_property
      Src: /src/gpac/share/nodejs/src/gpac_napi.c:6932,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: 6933
      start: 6926
    functionDepth: 0
    functionLinenumber: 6926
    functionLinenumberEnd: 6933
    functionName: init_fio_class
    functionSourceFile: /src/gpac/share/nodejs/src/gpac_napi.c
    functionUses: 1
    functionsReached:
    - napi_define_class
    - napi_set_named_property
    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:
    - GF_LOG
    - snd_pcm_open
    - snd_strerror
    - gf_module_get_int
    - gf_module_get_key
    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_LOG
    - gf_free
    - 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:
    - snd_pcm_hw_params_set_format
    - snd_pcm_hw_params_set_periods_near
    - snd_pcm_hw_params_malloc
    - gf_malloc
    - snd_pcm_hw_params
    - snd_strerror
    - snd_pcm_hw_params_free
    - snd_pcm_open
    - snd_pcm_hw_params_set_channels_near
    - gf_free
    - snd_pcm_close
    - snd_pcm_hw_params_set_rate_near
    - snd_pcm_hw_params_any
    - GF_LOG
    - snd_pcm_hw_params_set_access
    - snd_pcm_hw_params_get_period_time
    - memset
    - snd_pcm_hw_params_set_period_size_near
    - snd_pcm_hw_params_get_buffer_size
    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_wait
    - GF_LOG
    - snd_pcm_prepare
    - snd_pcm_writei
    - snd_pcm_avail_update
    - GF_AudioOutput*::FillBuffer
    - snd_strerror
    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_free
    - snd_pcm_hw_params_set_rate_near
    - snd_pcm_hw_params_malloc
    - GF_LOG
    - snd_pcm_hw_params_any
    - snd_pcm_hw_params_set_channels_near
    - snd_strerror
    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_SAFEALLOC
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - AddField
    - strcmp
    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:
    - gf_free
    - gf_bs_align
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_get_bit_size
    - struct __input_device*::DispatchFrame
    - 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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - sprintf
    - gf_malloc
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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_strdup
    - sprintf
    - gf_file_ext_start
    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_fclose
    - gf_sc_get_screen_buffer
    - gf_malloc
    - gf_free
    - GF_LOG
    - gf_fopen
    - gf_img_png_enc
    - validator_get_snapshot_name
    - gf_sc_release_screen_buffer
    - gf_fwrite
    - gf_error_to_string
    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
    - gf_malloc
    - gf_file_load_data
    - stricmp
    - gf_img_png_dec
    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_LOG
    - validator_file_dec
    - gf_free
    - validator_get_snapshot_name
    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
    - validator_xvs_add_snapshot_node
    - gf_free
    - 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:
    - sprintf
    - FIX2FLT
    - gf_free
    - gf_malloc
    - GF_LOG
    - GF_SAFEALLOC
    - gf_dom_event_get_name
    - gf_dom_get_key_name
    - gf_list_new
    - gf_strdup
    - gf_scene_get_time
    - gf_list_add
    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_sc_disconnect
    - gf_free
    - validator_xvs_close
    - validator_create_snapshot
    - validator_xvs_next
    - gf_clock_time
    - validator_xvs_add_event_dom
    - memset
    - gf_sc_on_event
    - validator_xvs_add_snapshot_node
    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_xml_dom_get_root
    - gf_xml_dom_parse
    - gf_xml_dom_del
    - gf_xml_dom_new
    - strcmp
    - gf_list_get
    - gf_strdup
    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:
    - sprintf
    - gf_file_ext_start
    - gf_fclose
    - gf_free
    - gf_xml_dom_del
    - gf_fopen
    - gf_xml_dom_serialize
    - gf_fwrite
    - 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:
    - strcmp
    - gf_list_get
    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_xml_dom_get_root
    - gf_list_count
    - gf_xml_dom_parse
    - gf_xml_dom_del
    - GF_LOG
    - gf_list_get
    - gf_list_rem_last
    - gf_list_add
    - gf_xml_dom_new
    - GF_SAFEALLOC
    - strrchr
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_last
    - gf_xml_dom_node_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:
    - sprintf
    - gf_free
    - gf_fclose
    - gf_xml_dom_del
    - GF_LOG
    - gf_fopen
    - gf_xml_dom_serialize
    - gf_fwrite
    - strlen
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_xml_dom_node_del
    - gf_list_add
    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:
    - sprintf
    - gf_sc_connect_from_time
    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_test_open
    - validator_xvs_open
    - validator_xvl_get_next_xvs
    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:
    - atof
    - FLT2FIX
    - atoi
    - gf_dom_get_key_type
    - strcmp
    - gf_list_get
    - gf_dom_event_type_by_name
    - memset
    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:
    - validator_load_event
    - gf_clock_time
    - validator_xvl_open
    - validator_xvs_open
    - gf_filter_remove_event_listener
    - gf_opts_set_key
    - gf_sc_disconnect
    - validator_xvs_close
    - validator_xvs_next
    - gf_filter_add_event_listener
    - validator_xvl_close
    - validator_test_open
    - validator_create_snapshot
    - strcmp
    - gf_module_get_key
    - validator_compare_snapshots
    - gf_free
    - GF_LOG
    - memset
    - gf_sc_on_event
    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_malloc
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    - memset
    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
    - jack_port_unregister
    - GF_LOG
    - memset
    - jack_deactivate
    - 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
    - jack_port_get_buffer
    - Jack_cleanup
    - gf_calloc
    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_module_get_bool
    - jack_client_open
    - GF_LOG
    - gf_sys_get_process_id
    - snprintf
    - 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_get_buffer_size
    - jack_connect
    - jack_port_register
    - jack_free
    - jack_get_sample_rate
    - GF_LOG
    - jack_set_process_callback
    - gf_audio_fmt_name
    - jack_port_name
    - Jack_cleanup
    - snprintf
    - jack_set_buffer_size_callback
    - jack_get_ports
    - jack_activate
    - gf_calloc
    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:
    - jack_recompute_total_latencies
    - jack_port_get_total_latency
    - GF_LOG
    - jack_get_sample_rate
    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_SAFEALLOC
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    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_list_count
    - caca_free_display
    - gf_free
    - caca_free_canvas
    - caca_free_dither
    - gf_list_pop_back
    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_get_canvas_height
    - GF_LOG
    - caca_get_display_driver
    - caca_create_canvas
    - cacao_shutdown
    - getenv
    - caca_create_display_with_driver
    - caca_create_display
    - caca_set_display_time
    - caca_get_canvas_width
    - gf_module_get_key
    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_width
    - caca_dither_bitmap
    - caca_refresh_display
    - caca_get_canvas_height
    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_type
    - GF_VideoOutput*::on_event
    - caca_get_event_mouse_x
    - caca_get_canvas_height
    - caca_get_event_mouse_y
    - caca_get_event
    - caca_get_canvas_width
    - memset
    - caca_get_event_key_ch
    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
    - caca_set_mouse
    - caca_set_cursor
    - cacao_print_message
    - caca_set_display_title
    - cacao_check_event
    - caca_free_dither
    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_charset
    - atof
    - caca_set_dither_brightness
    - caca_set_dither_color
    - caca_set_dither_contrast
    - caca_set_dither_gamma
    - caca_set_dither_antialias
    - caca_set_dither_algorithm
    - gf_module_get_key
    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_count
    - set_dither_options
    - caca_get_canvas_height
    - GF_LOG
    - caca_dither_bitmap
    - caca_create_dither
    - GF_SAFEALLOC
    - caca_get_canvas_width
    - gf_list_get
    - caca_free_dither
    - gf_list_add
    - 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:
    - caca_create_dither
    - set_dither_options
    - gf_malloc
    - memset
    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_strdup
    - gf_dynstrcat
    - cacao_push_arg
    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_free_display
    - print_opts
    - caca_get_dither_color
    - caca_get_dither_antialias
    - getenv
    - caca_get_display_driver_list
    - caca_get_dither_color_list
    - caca_get_dither_algorithm
    - caca_create_display_with_driver
    - caca_create_display
    - caca_free_canvas
    - caca_create_dither
    - caca_get_dither_charset
    - caca_free_dither
    - caca_get_dither_charset_list
    - caca_create_canvas
    - caca_get_dither_antialias_list
    - caca_get_dither_algorithm_list
    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_SAFEALLOC
    - cacao_load_options
    - GF_REGISTER_MODULE_INTERFACE
    - gf_list_new
    - gf_opts_get_bool
    - gf_opts_set_key
    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_list_count
    - caca_free_display
    - gf_free
    - gf_list_del
    - caca_free_canvas
    - caca_free_dither
    - gf_list_pop_back
    - gf_opts_set_key
    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:
    - GF_LOG
    - AndroidBitmap_getInfo
    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:
    - GF_LOG
    - raw_resize
    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:
    - GF_LOG
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - 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_LOG
    - RAW_Shutdown
    - gf_free
    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:
    - glGetAttribLocation
    - GF_LOG
    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: 0
    functionsReached:
    - glGetShaderiv
    - gf_free
    - gf_malloc
    - GF_LOG
    - glShaderSource
    - glGetShaderInfoLog
    - strlen
    - glCompileShader
    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:
    - glUseProgram
    - gl_check_error
    - glClearColor
    - glGetString
    - glEnable
    - GF_LOG
    - gf_mx_init
    - glAttachShader
    - glGetProgramiv
    - glLinkProgram
    - glCreateProgram
    - compile_shader
    - glClearDepthf
    - glCreateShader
    - glGetProgramInfoLog
    - glDepthFunc
    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:
    - FIX2FLT
    - gl_check_error
    - GF_LOG
    - glUniformMatrix4fv
    - glGetUniformLocation
    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:
    - glShadeModel
    - glClearColor
    - glGetString
    - glEnable
    - GF_LOG
    - glHint
    - glClearDepthf
    - strstr
    - glDepthFunc
    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:
    - glFrustumx
    - tan
    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:
    - glViewport
    - glUseProgram
    - gl_check_error
    - GF_LOG
    - glLoadIdentity
    - INT2FIX
    - load_matrix_shaders
    - glMatrixMode
    - calculate_ortho
    - glOrthox
    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:
    - glDrawTexsOES
    - gl_check_error
    - glDrawArrays
    - glTexParameteriv
    - glTexEnvx
    - glActiveTexture
    - glEnable
    - glColor4f
    - glGetAttribLocation
    - glClear
    - glDisable
    - glDisableClientState
    - glMaterialfv
    - glEnableClientState
    - glUseProgram
    - glVertexPointer
    - glTexCoordPointer
    - glVertexAttribPointer
    - glLoadIdentity
    - glEnableVertexAttribArray
    - glTexImage2D
    - glTexParameteri
    - glFinish
    - glBindTexture
    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:
    - GF_LOG
    - gl_check_error
    - gf_free
    - glDeleteTextures
    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:
    - gf_malloc
    - glTexParameteri
    - GF_LOG
    - releaseTexture
    - glTexImage2D
    - glGenTextures
    - glTexEnvx
    - memset
    - glBindTexture
    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:
    - gl_check_error
    - GF_LOG
    - find_pow_2
    - resizeWindow
    - createTexture
    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:
    - glUseProgram
    - GF_LOG
    - initGLES2
    - gf_glGetUniformLocation
    - initGL
    - 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:
    - GF_LOG
    - releaseTexture
    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:
    - glUseProgram
    - gl_check_error
    - droid_Resize
    - load_matrix_shaders
    - INT2FIX
    - glLoadIdentity
    - glMatrixMode
    - calculate_ortho
    - glOrthox
    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:
    - XFree
    - XvUngrabPort
    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:
    - DefaultRootWindow
    - XvGrabPort
    - XvGetPortAttribute
    - XvQueryPortAttributes
    - XInternAtom
    - is_same_yuv
    - XvQueryExtension
    - X11_GetPixelFormat
    - XvQueryAdaptors
    - strcmp
    - XvListImageFormats
    - XFree
    - XvFreeAdaptorInfo
    - free
    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_LOG
    - XvCreateImage
    - X11_DestroyOverlay
    - gf_4cc_to_str
    - X11_GetXVideoPort
    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
    - XFree
    - XvPutImage
    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:
    - XPutImage
    - glXSwapBuffers
    - X11VID
    - XShmPutImage
    - XClearWindow
    - glFlush
    - XSync
    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:
    - FD_SET
    - select
    - XPending
    - XFlush
    - ConnectionNumber
    - XEventsQueued
    - 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:
    - DefaultRootWindow
    - X11VID
    - x11_translate_key
    - memset
    - XSetSelectionOwner
    - XFree
    - XGetWindowProperty
    - XChangeProperty
    - GF_VideoOutput*::on_event
    - gf_malloc
    - XLookupString
    - memcpy
    - XKeycodeToKeysym
    - XSetInputFocus
    - XConvertSelection
    - XInternAtom
    - strlen
    - XSync
    - XNextEvent
    - X11_Pending
    - gf_free
    - XGetSelectionOwner
    - utf8_to_ucs4
    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:
    - glXGetProcAddress
    - gf_module_get_bool
    - GF_VideoOutput*::on_event
    - GF_LOG
    - glXCreateContext
    - my_glXSwapIntervalMESA
    - my_glXSwapIntervalSGI
    - memset
    - glXMakeCurrent
    - XSync
    - my_glXSwapIntervalEXT
    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
    - glXMakeCurrent
    - XSync
    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:
    - shmctl
    - gf_free
    - XShmDetach
    - X11VID
    - XDestroyImage
    - X11_DestroyOverlay
    - XFreePixmap
    - shmdt
    - 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:
    - XShmCreatePixmap
    - XCreateImage
    - XSetWindowBackgroundPixmap
    - shmat
    - gf_malloc
    - X11VID
    - XShmAttach
    - GF_LOG
    - GF_SAFEALLOC
    - X11_ReleaseBackBuffer
    - memset
    - shmget
    - XShmCreateImage
    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:
    - X11_InitBackBuffer
    - X11VID
    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:
    - X11_SetupGL
    - X11VID
    - XSetInputFocus
    - GF_LOG
    - XStoreName
    - XMoveResizeWindow
    - XResizeWindow
    - X11_SetupWindow
    - X11_HandleEvents
    - X11_ResizeBackBuffer
    - XMoveWindow
    - glXMakeCurrent
    - RootWindowOfScreen
    - XTranslateCoordinates
    - XGetWindowAttributes
    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:
    - XUnmapWindow
    - X11VID
    - X11_SetupGL
    - XFreeGC
    - XGrabKeyboard
    - struct _video_out*::on_event
    - XCreateGC
    - XRaiseWindow
    - XMapWindow
    - XUngrabKeyboard
    - memset
    - XMoveResizeWindow
    - XSetInputFocus
    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:
    - memset
    - X11VID
    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:
    - GF_LOG
    - old_handler
    - 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:
    - DisplayHeight
    - DefaultScreen
    - BlackPixel
    - XChangeWindowAttributes
    - X11VID
    - XWidthMMOfScreen
    - XShmQueryVersion
    - XSendEvent
    - memset
    - XInitThreads
    - XMapWindow
    - XFree
    - XChangeProperty
    - X11_GetXVideoPort
    - gf_opts_set_key
    - glXGetProcAddress
    - DefaultVisualOfScreen
    - DefaultDepth
    - XkbSetDetectableAutoRepeat
    - X11_XScreenSaverState
    - DisplayWidth
    - XStoreName
    - my_glXChooseFBConfig
    - my_glXGetVisualFromFBConfig
    - X11_GetPixelFormat
    - XSetWMProtocols
    - XSetWMNormalHints
    - XvUngrabPort
    - RootWindowOfScreen
    - XHeightMMOfScreen
    - XHeightOfScreen
    - XAllocSizeHints
    - gf_module_get_bool
    - XUnmapWindow
    - XOpenDisplay
    - atoi
    - my_glXGetFBConfigAttrib
    - XInternAtom
    - strcmp
    - XSetErrorHandler
    - gf_module_get_key
    - XCreateWindow
    - XSync
    - XShmPixmapFormat
    - glXChooseVisual
    - GF_LOG
    - DefaultScreenOfDisplay
    - XCreateGC
    - XWidthOfScreen
    - WhitePixel
    - XSetClassHint
    - XSelectInput
    - gf_opts_get_key
    - XGetWindowAttributes
    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:
    - X11_ReleaseGL
    - XCloseDisplay
    - gf_free
    - XUnmapWindow
    - X11VID
    - X11_XScreenSaverState
    - X11_ReleaseBackBuffer
    - XFreePixmap
    - XFree
    - XDestroyWindow
    - XFreeGC
    - glXDestroyGLXPixmap
    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
    - x11_translate_key
    - X11_BadAccess_ByPass
    - GF_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    - gf_sys_is_test_mode
    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
    - strnicmp
    - AddField
    - strcmp
    - strlen
    - strcpy
    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:
    - gf_free
    - gf_bs_align
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - struct __input_device*::DispatchFrame
    - gf_mx_v
    - gf_mx_try_lock
    - sscanf
    - 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:
    - SENS_SetCallback
    - SENS_CreateInstance
    - GF_LOG
    - SENS_Stop
    - gf_th_id
    - SENS_DestroyInstance
    - SENS_Start
    - SENS_SetSensorType
    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:
    - gf_mx_new
    - 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/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_mx_del
    - 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: 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:
    - MaxVolume
    - gf_sleep
    - GF_LOG
    - SetPriority
    - CActiveScheduler::RunIfReady
    - CMdaAudioOutputStream::NewL
    - SetVolume
    - SetAudioPropertiesL
    - TRAP
    - EPOCAudio::Open
    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_sleep
    - gf_free
    - Stop
    - GF_LOG
    - 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:
    - EPOCAudio*::Close
    - EPOCAudio*::Open
    - gf_malloc
    - GF_LOG
    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:
    - User::After
    - GF_LOG
    - CActiveScheduler::RunIfReady
    - EPOCAudio*::m_stream::WriteL
    - GF_AudioOutput*::FillBuffer
    - Set
    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::SetVolume
    - EPOCAudio*::m_stream::MaxVolume
    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:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - EPOCAudio::EPOCAudio
    - 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:
    - eglDestroyContext
    - eglTerminate
    - EPOCVideo*::surface::UnlockHeap
    - eglDestroySurface
    - eglMakeCurrent
    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:
    - EVID_ResetSurface
    - eglChooseConfig
    - EPOCVideo*::window::Size
    - eglCreatePixmapSurface
    - gf_malloc
    - EPOCVideo*::screen::Construct
    - CFbsBitmap::CFbsBitmap
    - eglGetDisplay
    - EPOCVideo*::screen::DisplayMode
    - eglMakeCurrent
    - eglCreateContext
    - atoi
    - EPOCVideo*::surface::Create
    - eglGetConfigs
    - CWsScreenDevice::CWsScreenDevice
    - gf_free
    - GF_LOG
    - eglInitialize
    - EPOCVideo*::screen::CreateContext
    - gf_opts_get_key
    - gf_4cc_to_str
    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
    - gf_malloc
    - atoi
    - eglCreateContext
    - EVID_ResetSurface
    - GF_LOG
    - eglMakeCurrent
    - eglGetDisplay
    - eglInitialize
    - eglChooseConfig
    - eglGetConfigs
    - gf_opts_get_key
    - EPOCVideo*::screen::DisplayMode
    - eglCreatePbufferSurface
    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_SetupOGL_ES_Offscreen
    - EVID_InitSurface
    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:
    - GF_LOG
    - TPoint
    - EPOCVideo*::gc::Activate
    - EPOCVideo*::gc::BitBlt
    - EPOCVideo*::gc::Deactivate
    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_SetupOGL_ES_Offscreen
    - EVID_InitSurface
    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
    - GF_LOG
    - EPOCVideo*::surface::DataAddress
    - memset
    - EPOCVideo*::surface::UnlockHeap
    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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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_codec_del
    - EPOC_vout_del
    - EPOC_aout_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:
    - TRAP
    - CMMFCodec::NewL
    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:
    - gf_m4a_get_config
    - GF_LOG
    - strnicmp
    - RArray::Append
    - CMMFPtrBuffer::NewL
    - TUid::Uid
    - RArray::Reset
    - TRAP
    - EPOCCodec*::dec::ConfigureL
    - CMMFCodec::NewL
    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:
    - TRAPD
    - GF_LOG
    - EPOCCodec*::dec::ProcessL
    - EPOCCodec*::ptr_in::Set
    - EPOCCodec*::ptr_out::Set
    - EPOCCodec*::mmf_out::SetPtr
    - EPOCCodec*::mmf_in::SetPtr
    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:
    - EDEC_LoadCaps
    - GF_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - atoi
    - GF_LOG
    - open
    - 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:
    - OSSCTX
    - ioctl
    - close
    - gf_free
    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:
    - ioctl
    - gf_free
    - GF_LOG
    - open
    - memset
    - OSSCTX
    - gf_realloc
    - close
    - fcntl
    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:
    - write
    - OSSCTX
    - GF_AudioOutput*::FillBuffer
    - GF_LOG
    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
    - OSSCTX
    - ioctl
    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:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_free
    - 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:
    - LOGE
    - NewGlobalRef
    - GetEnv
    - FindClass
    - GetMethodID
    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:
    - DeleteGlobalRef
    - GetEnv
    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:
    - DetachCurrentThread
    - GetJavaVM
    - PopLocalFrame
    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
    - GetJavaVM
    - GetEnv
    - AttachCurrentThread
    - NewObject
    - 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
    - strnicmp
    - AddField
    - strcmp
    - strlen
    - strcpy
    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:
    - gf_free
    - gf_bs_align
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - struct __input_device*::DispatchFrame
    - sscanf
    - 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:
    - GetStringUTFChars
    - ReleaseStringUTFChars
    - MPEGVS_OnData
    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:
    - gf_sleep
    - DeleteLocalRef
    - GF_LOG
    - gf_th_id
    - CallNonvirtualVoidMethod
    - unloadSensorController
    - loadSensorControler
    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_new
    - gf_th_run
    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:
    - LOGE
    - NewGlobalRef
    - GetEnv
    - FindClass
    - GetMethodID
    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:
    - DeleteGlobalRef
    - GetEnv
    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:
    - GF_LOG
    - GetJavaVM
    - 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_register_before_exit_function
    - GF_LOG
    - GetJavaVM
    - GetEnv
    - AttachCurrentThread
    - gf_th_id
    - NewObject
    - gf_th_current
    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:
    - camStartCamera
    - GF_LOG
    - gf_th_id
    - loadCameraControler
    - 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:
    - DeleteLocalRef
    - gf_service_disconnect_ack
    - GF_LOG
    - GetEnv
    - gf_th_id
    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_align
    - gf_bs_get_content
    - gf_odf_desc_esd_new
    - gf_bs_new
    - gf_list_add
    - gf_bs_write_u16
    - gf_bs_del
    - gf_odf_desc_new
    - getHeight
    - gf_bs_write_u32
    - getBitsPerPix
    - getWidth
    - 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_service_connect_ack
    - gf_th_id
    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
    - camStopCamera
    - gf_th_id
    - 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
    - gf_term_get_time
    - GetByteArrayElements
    - ReleaseByteArrayElements
    - memset
    - gf_service_send_packet
    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:
    - GF_LOG
    - GetJavaVM
    - GetEnv
    - AttachCurrentThread
    - DetachCurrentThread
    - 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
    - CallNonvirtualBooleanMethod
    - gf_th_id
    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
    - CallCamMethod
    - gf_th_id
    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
    - CallCamMethod
    - gf_th_id
    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
    - CallCamMethod
    - gf_th_id
    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:
    - GF_LOG
    - CallNonvirtualIntMethod
    - 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:
    - GF_LOG
    - CallNonvirtualIntMethod
    - 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:
    - GF_LOG
    - CallNonvirtualIntMethod
    - 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:
    - GF_LOG
    - CallNonvirtualIntMethod
    - 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:
    - pauseCamera
    - resumeCamera
    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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    - static_JNI_OnLoad
    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_LOG
    - CAM_SetCallback
    - gf_th_id
    - CAM_CreateInstance
    - 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/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
    - CAM_DestroyInstance
    - gf_th_id
    - 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_align
    - gf_bs_get_content
    - gf_odf_desc_esd_new
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_odf_desc_new
    - gf_bs_write_u32
    - gf_list_add
    - CAM_GetCurrentFormat
    - 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
    - camStartCamera
    - 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/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
    - camStopCamera
    - gf_th_id
    - 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_term_get_time
    - gf_service_send_packet
    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
    - CAM_Stop
    - gf_th_id
    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
    - CAM_Start
    - gf_th_id
    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:
    - pauseCamera
    - gf_bs_align
    - resumeCamera
    - GF_LOG
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    - CAM_GetCurrentFormat
    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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - assert
    - gf_list_count
    - gf_list_get
    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:
    - gf_mse_get_track_by_esid
    - GF_LOG
    - strstr
    - GF_HTML_SourceBuffer*::parser::ConnectChannel
    - sscanf
    - MSE_GetSourceBufferForChannel
    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
    - GF_HTML_SourceBuffer*::parser::DisconnectChannel
    - MSE_GetSourceBufferForChannel
    - MSE_GetTrackForChannel
    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_LOG
    - gf_mse_mediasource_open
    - 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_LOG
    - assert
    - gf_mse_mediasource_del
    - 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:
    - gf_mse_track_buffer_get_next_packet
    - MSE_GetSourceBufferForChannel
    - 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:
    - MSE_GetSourceBufferForChannel
    - MSE_GetTrackForChannel
    - gf_mse_track_buffer_release_packet
    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_SAFEALLOC
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - assert
    - gf_free
    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:
    - FIX2FLT
    - gf_clock_time
    - gf_bs_write_u32
    - gf_bs_write_u8
    - 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:
    - gf_bs_read_u8
    - FLT2FIX
    - gf_bs_read_float
    - gf_bs_read_u32
    - memset
    - 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_fopen
    - gf_term_add_event_filter
    - gf_term_remove_event_filter
    - gf_bs_from_file
    - uir_load_event
    - gf_clock_time
    - GF_UIRecord*::term::compositor::video_out::on_event
    - gf_bs_del
    - strcmp
    - gf_opts_get_key
    - gf_opts_set_key
    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_SAFEALLOC
    - gf_malloc
    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_new
    - gf_node_register
    - gf_node_list_add_child
    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:
    - FIX2INT
    - gf_node_dirty_set
    - INT2FIX
    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_find_node_by_name
    - gf_free
    - gf_sg_set_root_node
    - gf_list_del
    - gf_list_get
    - gf_sm_load_bt_from_string
    - gf_opts_get_key
    - gf_scene_new
    - gf_odm_new
    - strcmp
    - gf_dom_listener_build
    - strcpy
    - gf_sg_set_scene_size_info
    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_node_dirty_set
    - gf_sg_set_scene_size_info
    - gf_cfg_set_key
    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:
    - sprintf
    - gf_odm_disconnect
    - gf_sys_get_rti
    - gf_sc_register_extra_graph
    - gf_term_add_event_filter
    - gf_term_remove_event_filter
    - gf_node_dirty_set
    - osd_load_scene
    - gf_sc_get_fps
    - strcmp
    - gf_opts_get_key
    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_SAFEALLOC
    - gf_malloc
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    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:
    - PLT_Service*::SetStateVariableRate
    - SetSCPDXML
    - PLT_Service::PLT_Service
    - PLT_Service*::SetStateVariable
    - SetStateVariable
    - NPT_TimeInterval
    - FindStateVariable
    - NPT_CHECK_FATAL
    - AddService
    - PLT_Service*::SetSCPDXML
    - SetStateVariableRate
    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::OnPrevious
    - SetStateVariable
    - GPAC_MediaRenderer::OnSetVolumeDB
    - GPAC_MediaRenderer::OnSetPlayMode
    - NPT_FAILED
    - NPT_String::Compare
    - GPAC_MediaRenderer::OnSetVolume
    - GPAC_MediaRenderer::OnStop
    - GPAC_MediaRenderer::OnSetAVTransportURI
    - VerifyArgumentValue
    - GetRemoteAddress
    - format_time_string
    - SetError
    - GPAC_MediaRenderer::OnPause
    - OnMigrate
    - NPT_CHECK_SEVERE
    - GetActionDesc
    - GPAC_MediaRenderer::OnSeek
    - GPAC_MediaRenderer::OnSetMute
    - GPAC_MediaRenderer::OnNext
    - NPT_COMPILER_UNUSED
    - SetArgumentsOutFromStateVariable
    - GPAC_MediaRenderer::OnPlay
    - GPAC_MediaRenderer::OnGetCurrentConnectionInfo
    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:
    - SetArgumentValue
    - SetError
    - NPT_FAILED
    - 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:
    - GetArgumentValue
    - gf_list_count
    - sprintf
    - GF_LOG
    - SetStateVariable
    - stricmp
    - NPT_FAILED
    - strrchr
    - GPAC_MediaRenderer::OnStop
    - gf_strdup
    - gf_list_add
    - strcpy
    - OnConnect
    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
    - GPAC_MediaRenderer::OnPause
    - SetStateVariable
    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:
    - gf_list_count
    - GF_LOG
    - GPAC_MediaRenderer::OnPause
    - SetStateVariable
    - gf_list_get
    - OnConnect
    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:
    - GetArgumentValue
    - GPAC_MediaRenderer::OnSeek
    - SetError
    - NPT_FAILED
    - sscanf
    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:
    - gf_mx_new
    - PLT_MediaBrowser::PLT_MediaBrowser
    - PLT_MediaController::PLT_MediaController
    - gf_list_new
    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_count
    - gf_list_del
    - gf_list_get
    - gf_mx_del
    - gf_list_rem
    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:
    - GetUUID
    - FindServiceByType
    - gf_mx_p
    - GPAC_MediaRendererItem::GPAC_MediaRendererItem
    - NPT_SUCCEEDED
    - gf_mx_v
    - gf_list_add
    - 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_list_count
    - GetUUID
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - 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:
    - GPAC_MediaServerItem::GPAC_MediaServerItem
    - GetUUID
    - FindServiceByType
    - gf_mx_p
    - NPT_SUCCEEDED
    - gf_mx_v
    - gf_list_add
    - OnMediaServerAdd
    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_list_count
    - GetUUID
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - OnMediaServerAdd
    - 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:
    - gf_list_count
    - PLT_Service*::GetDevice
    - GPAC_MediaController::m_pUPnP::onTimeChanged
    - sscanf
    - GPAC_MediaRendererItem*::m_device::AsPointer
    - NPT_String
    - GPAC_MediaController::m_pUPnP::onDurationChanged
    - PLT_StateVariable*::GetValue
    - gf_list_get
    - NPT_List<PLT_StateVariable*>*::GetItemCount
    - PLT_StateVariable*::GetName
    - NPT_List<PLT_StateVariable*>*::Get
    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
    - shared_var::SetValue
    - NPT_COMPILER_UNUSED
    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_list_count
    - PLT_StateVariable::Find
    - PLT_Service*::GetDevice
    - NPT_String::Find
    - gf_list_get
    - NPT_String::Left
    - NPT_String::SubString
    - gf_mx_p
    - PLT_StateVariable*::GetValue
    - gf_mx_v
    - ContainerChanged
    - NPT_String::GetLength
    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:
    - shared_var::SetValue
    - GPAC_BrowseDataReference::GPAC_BrowseDataReference
    - GPAC_MediaController::WaitForResponse
    - NPT_CHECK_SEVERE
    - GPAC_MediaController::Browse
    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_MediaServerItem*::m_BrowseResults::IsNull
    - GPAC_BrowseDataReference::info::items::Clear
    - NPT_CHECK_LABEL_WARNING
    - GPAC_BrowseData::GPAC_BrowseData
    - GPAC_MediaServerItem*::m_BrowseResults::GetItemCount
    - NPT_FAILED
    - GPAC_MediaServerItem*::m_BrowseResults::Add
    - GPAC_BrowseDataReference::info::items::GetItemCount
    - GPAC_MediaController::Browse
    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
    - gf_crc_32
    - GPAC_MediaDirectory
    - strlen
    - Add
    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:
    - SetArgumentValue
    - PLT_Didl::ToDidl
    - NPT_String::FromInteger
    - Get
    - GetItemCount
    - PLT_MediaObjectReference::IsNull
    - NPT_CHECK_SEVERE
    - PLT_MediaObjectReference::AsPointer
    - strcmp
    - GPAC_FileMediaServer::BuildFromFilePath
    - GPAC_FileMediaServer::OnBrowseDirectChildren
    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:
    - Anchor_Create
    - NPT_String::Replace
    - NPT_Uri::PercentDecode
    - NPT_String::Compare
    - NPT_String::IsEmpty
    - NPT_String::GetLength
    - NPT_String::Left
    - GetUrl
    - NPT_String::StartsWith
    - strlen
    - GPAC_FileMediaServer::ServeVirtualFile
    - GetMethod
    - GPAC_FileMediaServer::ServeFile
    - NPT_String::Find
    - Get
    - GetItemCount
    - GPAC_VirtualFile::GPAC_VirtualFile
    - NPT_COMPILER_UNUSED
    - Remove
    - MC_GetRange
    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:
    - Get
    - GetItemCount
    - NPT_String::StartsWith
    - strcmp
    - strlen
    - NPT_StringLength
    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_MediaItem::GetUPnPClass
    - NPT_FilePath::BaseName
    - NPT_IpAddress::Parse
    - BuildResourceUri
    - NPT_String
    - PLT_HttpRequestContext*::GetLocalAddress
    - NPT_File::GetInfo
    - PLT_MediaObject*::m_Resources::Add
    - NPT_ContainerFind
    - PLT_MediaItem::PLT_MediaItem
    - NPT_FilePath::FileExtension
    - PLT_MediaItemResource::m_ProtocolInfo::IsValid
    - PLT_MetadataHandlerFinder
    - PLT_MetadataHandler*::GetDescription
    - NPT_String::Compare
    - NPT_CHECK_LABEL_FATAL
    - NPT_List::GetFirstItem
    - NPT_FilePath::DirName
    - NPT_SUCCEEDED
    - PLT_MetadataHandler*::GetDuration
    - PLT_MetadataHandler*::GetProtection
    - NPT_IpAddress::ToString
    - PLT_MetadataHandler*::Load
    - PLT_MediaObject*::m_Title::GetLength
    - PLT_UPnPMessageHelper::GetIPAddresses
    - PLT_MetadataHandler*::GetTitle
    - IsAddressInNetwork
    - strlen
    - PLT_MediaContainer::PLT_MediaContainer
    - NPT_String::TrimRight
    - GetAddresses
    - NPT_File::ListDir
    - StartsWith
    - NPT_List::GetItemCount
    - NPT_CHECK_LABEL_SEVERE
    - Get
    - NPT_Uri::PercentEncode
    - GetItemCount
    - PLT_UPnPMessageHelper::GetNetworkInterfaces
    - PLT_MediaObject*::m_ExtraInfo::album_art_uri::GetLength
    - PLT_ProtocolInfo
    - PLT_ProtocolInfo::GetProtocolInfo
    - GPAC_MediaDirectory*::m_Path::GetLength
    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_fclose
    - gf_free
    - Get
    - gf_fopen
    - GetItemCount
    - gf_url_concatenate
    - NPT_String::Replace
    - GPAC_FileMediaServer::BuildFromFilePathAndHost
    - Replace
    - strcmp
    - strlen
    - GPAC_FileMediaServer::AddSharedDirectory
    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:
    - strchr
    - GF_LOG
    - NPT_String::Replace
    - strnicmp
    - Add
    - strstr
    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:
    - GPAC_VirtualFile*::m_Content::GetLength
    - NPT_HttpEntity::NPT_HttpEntity
    - NPT_HttpEntity*::SetInputStream
    - GF_LOG
    - NPT_MemoryStream::NPT_MemoryStream
    - NPT_HttpEntity*::SetContentLength
    - SetEntity
    - NPT_FAILED
    - SetStatus
    - NPT_InputStreamReference::GetSize
    - NPT_InputStreamReference::Seek
    - GPAC_VirtualFile*::m_Content::GetChars
    - 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:
    - gf_list_del
    - GPAC_ServiceItem::DetachJS
    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_count
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    - JSVAL_IS_NULL
    - gf_list_get
    - 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_count
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    - gf_list_get
    - 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_CHARS
    - SMJS_GET_PRIVATE
    - gf_list_enum
    - gf_list_del_item
    - gf_list_add
    - gf_js_remove_root
    - GPAC_StateVariableListener::GPAC_StateVariableListener
    - JSVAL_IS_NULL
    - SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::Subscribe
    - SMJS_FREE
    - JSVAL_IS_STRING
    - gf_js_add_root
    - JSVAL_IS_OBJECT
    - SMJS_OBJ*::m_service::FindStateVariable
    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:
    - SMJS_CHARS
    - GPAC_ActionArgListener::GPAC_ActionArgListener
    - gf_js_add_root
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::m_service::FindActionDesc
    - gf_list_enum
    - gf_list_del_item
    - gf_js_remove_root
    - SMJS_FREE
    - JSVAL_IS_NULL
    - JSVAL_IS_BOOLEAN
    - JSVAL_IS_STRING
    - gf_list_add
    - JSVAL_IS_OBJECT
    - PLT_ActionDesc*::GetArgumentDesc
    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
    - SMJS_GET_PRIVATE
    - STRING_TO_JSVAL
    - m_service::GetSCPDXML
    - JS_NewStringCopyZ
    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_ID_TO_STRING
    - SMJS_ID_IS_STRING
    - SMJS_GET_PRIVATE
    - VPASSIGN
    - INT_TO_JSVAL
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - strcmp
    - GPAC_ServiceItem*::vars::GetItemCount
    - SMJS_CHARS_FROM_STRING
    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_CHARS
    - BOOLEAN_TO_JSVAL
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - JSVAL_IS_STRING
    - SMJS_OBJ*::m_service::FindStateVariable
    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_CHARS
    - BOOLEAN_TO_JSVAL
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::m_service::FindActionDesc
    - SMJS_FREE
    - JSVAL_IS_STRING
    - PLT_ActionDesc*::GetArgumentDesc
    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:
    - GPAC_ActionUDTA::GPAC_ActionUDTA
    - PLT_ActionReference::SetArgumentValue
    - JS_GetArrayLength
    - JSVAL_TO_OBJECT
    - SMJS_FREE
    - JSVAL_IS_NUMBER
    - JS_ValueToNumber
    - gf_js_add_root
    - JSVAL_IS_OBJECT
    - JSVAL_TO_BOOLEAN
    - SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::InvokeAction
    - SMJS_OBJ*::m_service::FindActionDesc
    - SMJS_OBJ*::m_device::m_pUPnP::m_pGenericController::m_CtrlPoint::CreateAction
    - NPT_CHECK_SEVERE
    - JS_GetElement
    - JSVAL_IS_BOOLEAN
    - SMJS_CHARS
    - sprintf
    - JSVAL_TO_INT
    - GF_LOG
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::m_service::GetServiceType
    - JSVAL_IS_STRING
    - JSVAL_IS_INT
    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:
    - PLT_Service*::GetServiceType
    - GetServices
    - NPT_Array::GetItemCount
    - GPAC_DeviceItem::FindService
    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:
    - gf_list_count
    - PLT_Service*::GetServiceType
    - JS_DefineProperty
    - JS_NewObject
    - GPAC_ServiceItem::GPAC_ServiceItem
    - gf_list_add
    - PLT_Service*::GetServiceID
    - FindServiceByType
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - GPAC_ServiceItem*::m_service::GetServiceType
    - STRING_TO_JSVAL
    - gf_list_get
    - GetURLBase
    - gf_js_add_root
    - JS_NewStringCopyZ
    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
    - AddListener
    - gf_list_new
    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_count
    - RemoveListener
    - gf_list_del
    - gf_list_get
    - gf_mx_del
    - gf_list_rem
    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_list_count
    - GPAC_DeviceItem::GPAC_DeviceItem
    - GetUUID
    - gf_list_get
    - OnDeviceAdd
    - gf_mx_p
    - gf_mx_v
    - gf_list_add
    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_list_count
    - GetUUID
    - OnDeviceAdd
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - 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_CHARS
    - SMJS_OBJ*::GetArgumentValue
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - STRING_TO_JSVAL
    - JSVAL_IS_STRING
    - JS_NewStringCopyZ
    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
    - INT_TO_JSVAL
    - SMJS_SET_RVAL
    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_OBJ*::GetError
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - STRING_TO_JSVAL
    - 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:
    - GetArgumentValue
    - gf_list_count
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - gf_js_add_root
    - PLT_Service*::GetServiceType
    - PLT_Service*::GetDevice
    - OBJECT_TO_JSVAL
    - gf_mx_v
    - gf_list_get
    - GPAC_ActionArgListener*::action::GetName
    - JS_NewObject
    - gf_list_enum
    - GPAC_ActionArgListener*::arg::GetName
    - gf_js_remove_root
    - gf_mx_p
    - STRING_TO_JSVAL
    - JS_NewStringCopyZ
    - GetActionDesc
    - AsPointer
    - LockJavascript
    - GF_LOG
    - JS_CallFunctionValue
    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_list_count
    - PLT_Service*::GetDevice
    - NPT_List<PLT_StateVariable*>*::Contains
    - gf_list_get
    - JS_CallFunctionValue
    - gf_list_enum
    - gf_mx_p
    - JSVAL_IS_NULL
    - STRING_TO_JSVAL
    - gf_mx_v
    - GPAC_StateVariableListener*::var::GetValue
    - JS_NewStringCopyZ
    - LockJavascript
    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_CHARS
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - SMJS_OBJ*::SetStateVariable
    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_NewObject
    - gf_js_add_root
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    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_mx_new
    - gf_list_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_list_del
    - gf_mx_del
    - gf_sema_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
    - JSVAL_IS_NULL
    - gf_list_get
    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
    - AddService
    - gf_list_get
    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_CHARS
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - STRING_TO_JSVAL
    - JSVAL_IS_STRING
    - JS_NewStringCopyZ
    - SMJS_OBJ*::act_ref::GetArgumentValue
    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
    - JS_GetArrayLength
    - SMJS_OBJ*::act_ref::GetActionDesc
    - JSVAL_TO_OBJECT
    - SMJS_FREE
    - JSVAL_IS_NUMBER
    - JS_ValueToNumber
    - JSVAL_IS_OBJECT
    - JSVAL_TO_BOOLEAN
    - JS_GetElement
    - JSVAL_IS_BOOLEAN
    - SMJS_CHARS
    - sprintf
    - JSVAL_TO_INT
    - GF_LOG
    - SMJS_GET_PRIVATE
    - gf_sema_notify
    - JSVAL_IS_STRING
    - JSVAL_IS_INT
    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:
    - gf_sema_del
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - gf_sema_new
    - PLT_ActionDesc::GetName
    - OBJECT_TO_JSVAL
    - gf_mx_v
    - gf_sema_wait_for
    - SetError
    - JS_NewObject
    - gf_th_id
    - gf_mx_p
    - STRING_TO_JSVAL
    - JS_NewStringCopyZ
    - GetActionDesc
    - LockJavascript
    - JS_DefineProperty
    - GF_LOG
    - JS_CallFunctionValue
    - JSVAL_TO_INT
    - NPT_COMPILER_UNUSED
    - JSVAL_IS_NULL
    - PLT_ActionDesc::GetService
    - assert
    - JSVAL_IS_INT
    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:
    - TrimLeft
    - Replace
    - TrimRight
    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:
    - GF_UPnP::GetUPnPDevice
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - gf_term_play_from_time
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    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:
    - SMJS_CHARS
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - SMJS_FREE
    - root_scene::root_od::net_service::ifce::ServiceCommand
    - JS_LookupProperty
    - JSVAL_IS_STRING
    - memset
    - JSVAL_IS_OBJECT
    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:
    - GF_UPnP::GetUPnPDevice
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - STRING_TO_JSVAL
    - JS_LookupProperty
    - gf_term_navigate_to
    - JSVAL_IS_OBJECT
    - 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:
    - GF_UPnP::GetUPnPDevice
    - gf_term_set_option
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    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:
    - GF_LOG
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - gf_term_play_from_time
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    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_CallFunctionValue
    - INT_TO_JSVAL
    - GF_UPnP::LockJavascript
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    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_CallFunctionValue
    - INT_TO_JSVAL
    - GF_UPnP::LockJavascript
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    - JS_NewDouble
    - DOUBLE_TO_JSVAL
    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:
    - SetDuration
    - strcat
    - gf_term_get_url
    - memset
    - gf_term_get_service_info
    - strcpy
    - 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:
    - gf_gpac_version
    - GPAC_MediaRenderer::GPAC_MediaRenderer
    - PLT_UPnP::PLT_UPnP
    - PLT_CtrlPointReference
    - AddSharedDirectory
    - GPAC_GenericController::GPAC_GenericController
    - strchr
    - PLT_CtrlPoint::PLT_CtrlPoint
    - GPAC_FileMediaServer::GPAC_FileMediaServer
    - SetIgnoreLocalUUIDs
    - Search
    - AddDevice
    - IgnoreUUID
    - atoi
    - GetUUID
    - gf_term_add_event_filter
    - Start
    - strcmp
    - sprintf
    - GF_LOG
    - GPAC_MediaController::GPAC_MediaController
    - gf_sk_get_host_name
    - gf_cfg_set_key
    - gf_opts_get_key
    - strncmp
    - AddCtrlPoint
    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:
    - Stop
    - ALSA_Shutdown
    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:
    - BOOLEAN_TO_JSVAL
    - GetUUID
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - GetFriendlyName
    - GetLength
    - STRING_TO_JSVAL
    - JS_LookupProperty
    - GetURLBase
    - JSVAL_IS_OBJECT
    - strstr
    - 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:
    - BOOLEAN_TO_JSVAL
    - GetUUID
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - GetFriendlyName
    - GetLength
    - STRING_TO_JSVAL
    - JS_LookupProperty
    - GetURLBase
    - JSVAL_IS_OBJECT
    - strstr
    - 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:
    - gf_list_count
    - SMJS_ID_TO_STRING
    - SMJS_ID_IS_STRING
    - GPAC_DeviceItem*::m_device::GetUUID
    - SMJS_GET_PRIVATE
    - VPASSIGN
    - INT_TO_JSVAL
    - SMJS_FREE
    - STRING_TO_JSVAL
    - strcmp
    - GPAC_DeviceItem*::m_device::GetFriendlyName
    - GPAC_DeviceItem*::RefreshServiceList
    - SMJS_CHARS_FROM_STRING
    - JS_NewStringCopyZ
    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_CHARS
    - SMJS_GET_PRIVATE
    - GPAC_DeviceItem*::m_pUPnP::m_pGenericController::m_CtrlPoint::Subscribe
    - GPAC_DeviceItem*::m_device::FindServiceByType
    - SMJS_FREE
    - JSVAL_IS_STRING
    - JSVAL_IS_OBJECT
    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_CHARS
    - SMJS_OBJ*::FindService
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    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
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    - OBJECT_TO_JSVAL
    - gf_list_get
    - JSVAL_IS_INT
    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:
    - BOOLEAN_TO_JSVAL
    - JS_NewObject
    - JSVAL_IS_OBJECT
    - JS_CallFunctionValue
    - GF_UPnP::LockJavascript
    - GetLength
    - SMJS_SET_PRIVATE
    - JS_LookupProperty
    - OBJECT_TO_JSVAL
    - gf_js_add_root
    - GPAC_DeviceItem*::m_device::GetURLBase
    - strstr
    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:
    - gf_list_count
    - SMJS_ID_TO_STRING
    - SMJS_ID_IS_STRING
    - BOOLEAN_TO_JSVAL
    - SMJS_GET_PRIVATE
    - VPASSIGN
    - INT_TO_JSVAL
    - SMJS_FREE
    - strcmp
    - SMJS_CHARS_FROM_STRING
    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_CHARS
    - SMJS_ID_TO_STRING
    - SMJS_ID_IS_STRING
    - JSVAL_IS_DOUBLE
    - GF_UPnP*::m_pMediaRenderer::SetConnected
    - SMJS_GET_PRIVATE
    - GF_UPnP*::m_pMediaRenderer::SetTime
    - JSVAL_IS_STRING
    - VPGET
    - SMJS_FREE
    - GF_UPnP*::m_pMediaRenderer::SetDuration
    - strcmp
    - JS_ValueToNumber
    - SMJS_CHARS_FROM_STRING
    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:
    - JSVAL_TO_INT
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - SMJS_SET_RVAL
    - SMJS_SET_PRIVATE
    - OBJECT_TO_JSVAL
    - gf_list_get
    - gf_js_add_root
    - JSVAL_IS_INT
    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_CHARS
    - gf_list_count
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_list_get
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - JSVAL_IS_STRING
    - GPAC_DeviceItem*::m_device::GetURLBase
    - 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:
    - SMJS_CHARS
    - gf_list_count
    - SMJS_FREE
    - JSVAL_IS_NULL
    - JS_LookupProperty
    - gf_list_get
    - JSVAL_IS_VOID
    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:
    - SMJS_CHARS
    - gf_list_count
    - SMJS_FREE
    - JSVAL_IS_NULL
    - JS_LookupProperty
    - gf_list_get
    - JSVAL_IS_VOID
    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:
    - SMJS_CHARS
    - GPAC_MediaRendererItem*::m_device::FindServiceByType
    - upnp_renderer_get_device
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::SetAVTransportURI
    - m_Resources::GetItemCount
    - SMJS_GET_PRIVATE
    - NPT_FAILED
    - JSVAL_IS_STRING
    - JSVAL_TO_OBJECT
    - SMJS_FREE
    - JSVAL_IS_NULL
    - GPAC_MediaServerItem*::m_device::FindServiceByType
    - JS_LookupProperty
    - upnp_server_get_device
    - NPT_SUCCEEDED
    - JSVAL_IS_OBJECT
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Play
    - GPAC_MediaServerItem*::m_BrowseResults::GetFirstItem
    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:
    - sprintf
    - upnp_renderer_get_device
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Stop
    - format_time_string
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Seek
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Pause
    - JSVAL_IS_NUMBER
    - JS_ValueToNumber
    - strcpy
    - SMJS_OBJ*::m_pAVCtrlPoint::m_MediaController::Play
    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_CHARS
    - JSVAL_TO_INT
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - JS_DefineProperty
    - GPAC_MediaRendererItem*::m_device::GetURLBase
    - gf_list_enum
    - SMJS_SET_RVAL
    - JSVAL_IS_STRING
    - GPAC_MediaRendererItem*::m_device::GetFriendlyName
    - SMJS_FREE
    - SMJS_SET_PRIVATE
    - STRING_TO_JSVAL
    - JS_DefineFunction
    - gf_list_get
    - OBJECT_TO_JSVAL
    - JSVAL_IS_INT
    - JS_NewStringCopyZ
    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:
    - SMJS_CHARS
    - GPAC_MediaServerItem*::m_ParentDirectories::Pop
    - GPAC_MediaServerItem*::m_BrowseResults::IsNull
    - JS_SetProperty
    - GPAC_MediaServerItem*::m_ParentDirectories::Peek
    - GPAC_MediaServerItem*::m_ParentDirectories::Clear
    - SMJS_GET_PRIVATE
    - GPAC_MediaServerItem*::m_BrowseResults::GetItemCount
    - INT_TO_JSVAL
    - GPAC_MediaServerItem*::m_ParentDirectories::GetItemCount
    - SMJS_FREE
    - GPAC_MediaServerItem*::m_device::FindServiceByType
    - NPT_SUCCEEDED
    - upnp_server_get_device
    - strcmp
    - GPAC_MediaServerItem*::m_ParentDirectories::Push
    - SMJS_OBJ*::m_pAVCtrlPoint::Browse
    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:
    - BOOLEAN_TO_JSVAL
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - GPAC_MediaServerItem*::m_ParentDirectories::GetItemCount
    - 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
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    - SMJS_OBJ*::m_Resources::GetItemCount
    - STRING_TO_JSVAL
    - JSVAL_IS_INT
    - 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:
    - GPAC_MediaServerItem*::m_BrowseResults::IsNull
    - BOOLEAN_TO_JSVAL
    - JSVAL_TO_INT
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - JS_DefineProperty
    - PLT_MediaObject*::m_Resources::GetItemCount
    - SMJS_SET_RVAL
    - INT_TO_JSVAL
    - GPAC_MediaServerItem*::m_BrowseResults::Get
    - SMJS_SET_PRIVATE
    - STRING_TO_JSVAL
    - PLT_MediaObject*::IsContainer
    - upnp_server_get_device
    - JS_DefineFunction
    - OBJECT_TO_JSVAL
    - JSVAL_IS_INT
    - JS_NewStringCopyZ
    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:
    - GPAC_MediaServerItem*::m_BrowseResults::IsNull
    - JSVAL_TO_INT
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - PLT_MediaObject*::m_Resources::GetItemCount
    - GPAC_MediaServerItem*::m_BrowseResults::Get
    - STRING_TO_JSVAL
    - upnp_server_get_device
    - JSVAL_IS_INT
    - 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_CHARS
    - JSVAL_TO_INT
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - JS_DefineProperty
    - SMJS_SET_RVAL
    - gf_list_enum
    - INT_TO_JSVAL
    - JSVAL_IS_STRING
    - SMJS_FREE
    - SMJS_SET_PRIVATE
    - STRING_TO_JSVAL
    - JS_DefineFunction
    - gf_list_get
    - OBJECT_TO_JSVAL
    - JSVAL_IS_INT
    - GPAC_MediaServerItem*::m_device::GetFriendlyName
    - JS_NewStringCopyZ
    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_CHARS
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - STRING_TO_JSVAL
    - SMJS_OBJ*::m_pMediaServer::GetResourceURI
    - JSVAL_IS_STRING
    - JS_NewStringCopyZ
    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_CHARS
    - SMJS_GET_PRIVATE
    - JSVAL_TO_BOOLEAN
    - SMJS_FREE
    - SMJS_OBJ*::m_pMediaServer::ShareVirtualResource
    - JSVAL_IS_BOOLEAN
    - JSVAL_IS_STRING
    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_CHARS
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - GPAC_Service::GPAC_Service
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - JSVAL_IS_STRING
    - gf_list_add
    - GPAC_Service*::SetSCPDXML
    - GPAC_Service*::SetupJS
    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:
    - SMJS_CHARS
    - gf_free
    - gf_gpac_version
    - JSVAL_IS_OBJECT
    - SMJS_GET_PRIVATE
    - GetUUID
    - m_pUPnP::m_pPlatinum::AddDevice
    - gf_url_concatenate
    - m_pUPnP::m_pMediaServer::GetResourceURI
    - SMJS_FREE
    - JS_LookupProperty
    - strcmp
    - JSVAL_IS_STRING
    - m_pUPnP::m_pGenericController::m_CtrlPoint::IgnoreUUID
    - gf_js_add_root
    - gf_opts_get_key
    - strstr
    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:
    - JS_DefineProperty
    - JS_NewObject
    - gf_list_add
    - GPAC_GenericDevice::GPAC_GenericDevice
    - STRING_TO_JSVAL
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - gf_list_new
    - gf_js_add_root
    - GPAC_GenericDevice*::GetUUID
    - 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_CHARS
    - upnp_create_generic_device
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    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
    - SMJS_GET_PRIVATE
    - gf_list_del_item
    - GPAC_GenericDevice*::DetachJS
    - JSVAL_TO_OBJECT
    - SMJS_OBJ*::m_pPlatinum::RemoveDevice
    - PLT_DeviceHostReference::Detach
    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_list_count
    - SMJS_FUNCTION_SPEC
    - upnp_create_generic_device
    - gf_opts_get_key_count
    - SMJS_SET_PRIVATE
    - GF_JS_InitClass
    - JS_EvaluateScript
    - strchr
    - gf_malloc
    - fread
    - gf_fopen
    - gf_opts_get_key_name
    - JS_SETUP_CLASS
    - GPAC_GenericDevice*::DetachJS
    - OBJECT_TO_JSVAL
    - gf_list_get
    - GPAC_DeviceItem*::DetachJS
    - gf_sys_clock
    - gf_ftell
    - gf_js_remove_root
    - strcpy
    - SMJS_PROPERTY_SPEC
    - gf_fclose
    - gf_free
    - JS_DefineProperty
    - gf_list_del
    - GF_LOG
    - gf_list_del_item
    - gf_fseek
    - JS_DefineObject
    - gf_opts_get_key
    - strncmp
    - 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_list_count
    - GF_UPnP*::LockJavascript
    - GF_LOG
    - gf_list_get
    - JS_CallFunctionValue
    - gf_sys_clock
    - GF_UPnP*::Unload
    - JSVAL_IS_NULL
    - GF_UPnP*::Load
    - strcmp
    - gf_opts_get_key
    - JS_NewDouble
    - GF_UPnP*::LoadJS
    - DOUBLE_TO_JSVAL
    - gf_opts_set_key
    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: 54
    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_CHARS
    - BOOLEAN_TO_JSVAL
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - strcmp
    - JSVAL_IS_STRING
    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_CHARS
    - SMJS_GET_PRIVATE
    - gf_term_send_event
    - SMJS_FREE
    - JSVAL_IS_STRING
    - memset
    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:
    - SMJS_GET_PRIVATE
    - JS_CallFunctionValue
    - JS_LookupProperty
    - OBJECT_TO_JSVAL
    - JSVAL_IS_OBJECT
    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:
    - gf_malloc
    - SMJS_GET_PRIVATE
    - JS_CallFunctionValue
    - JS_LookupProperty
    - OBJECT_TO_JSVAL
    - JSVAL_IS_OBJECT
    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
    - gf_malloc
    - SMJS_GET_PRIVATE
    - JS_CallFunctionValue
    - JS_GetArrayLength
    - JSVAL_TO_OBJECT
    - JS_GetElement
    - JS_LookupProperty
    - OBJECT_TO_JSVAL
    - JSVAL_IS_OBJECT
    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_CHARS
    - gf_list_count
    - SMJS_SET_RVAL
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - gf_list_get
    - JS_DefineProperty
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - STRING_TO_JSVAL
    - strcmp
    - JSVAL_IS_STRING
    - OBJECT_TO_JSVAL
    - JSVAL_IS_NULL
    - SMJS_FREE
    - JSVAL_IS_OBJECT
    - JS_NewStringCopyZ
    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
    - SMJS_GET_PRIVATE
    - JS_CallFunctionValue
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    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
    - SMJS_GET_PRIVATE
    - JS_CallFunctionValue
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - JS_LookupProperty
    - JSVAL_IS_OBJECT
    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
    - JS_NewObject
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - STRING_TO_JSVAL
    - gf_js_add_root
    - JS_NewStringCopyZ
    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_CHARS
    - gf_list_count
    - JS_SetElement
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_list_get
    - JS_GetArrayLength
    - widget_interface_js_bind
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - strcmp
    - JSVAL_IS_STRING
    - JS_NewArrayObject
    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:
    - SMJS_CHARS
    - gf_list_count
    - wm_deactivate_component
    - SMJS_GET_PRIVATE
    - wm_activate_component
    - JSVAL_IS_STRING
    - SMJS_FREE
    - strcmp
    - gf_list_get
    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_CallFunctionValue
    - widget_interface_js_bind
    - JS_LookupProperty
    - OBJECT_TO_JSVAL
    - JSVAL_IS_OBJECT
    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_JS_InitClass
    - gf_list_count
    - SMJS_FUNCTION_SPEC
    - gf_list_enum
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    - gf_list_get
    - JS_DefineObject
    - SMJS_PROPERTY_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:
    - unzGetGlobalInfo
    - unzReadCurrentFile
    - gf_fclose
    - gf_fopen
    - unzOpenCurrentFile3
    - gf_isom_open
    - unzClose
    - gf_isom_extract_meta_item
    - unzOpen2
    - gf_isom_get_meta_item_count
    - gf_isom_get_meta_item_info
    - strcmp
    - gf_fwrite
    - unzGoToNextFile
    - unzGetCurrentFileInfo
    - 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_count
    - is_same_path
    - gf_list_get
    - widget_package_extract_file
    - strcpy
    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:
    - sprintf
    - strchr
    - strncpy
    - package_find_res
    - strcpy
    - strrchr
    - strcmp
    - strlen
    - assert
    - gf_opts_get_key
    - strstr
    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_isom_get_meta_type
    - GF_SAFEALLOC
    - gf_list_add
    - gf_isom_extract_meta_xml
    - gf_crc_32
    - strcat
    - gf_isom_get_meta_item_info
    - gf_mx_v
    - gf_isom_get_meta_item_count
    - strrchr
    - gf_mx_p
    - gf_list_new
    - strlen
    - strcpy
    - sprintf
    - gf_free
    - gf_isom_has_meta_xml
    - GF_LOG
    - gf_list_del
    - gf_isom_open
    - GF_4CC
    - gf_isom_close
    - gf_strdup
    - gf_opts_get_key
    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:
    - unzOpenCurrentFile3
    - unzOpen2
    - GF_SAFEALLOC
    - gf_fwrite
    - gf_list_add
    - unzGetCurrentFileInfo
    - unzGetGlobalInfo
    - gf_crc_32
    - gf_fopen
    - unzClose
    - strcat
    - gf_mx_v
    - unzGoToNextFile
    - unzReadCurrentFile
    - strrchr
    - gf_mx_p
    - strcmp
    - gf_list_new
    - strlen
    - strcpy
    - sprintf
    - gf_fclose
    - GF_LOG
    - gf_strdup
    - gf_opts_get_key
    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:
    - widget_isom_new
    - gf_unzip_probe
    - widget_zip_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_list_count
    - gf_free
    - gf_list_del
    - gf_delete_file
    - gf_list_del_item
    - gf_mx_v
    - gf_dm_sess_del
    - gf_mx_p
    - gf_list_get
    - 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_list_count
    - wm_delete_message_param
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_js_remove_root
    - gf_list_last
    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:
    - widget_package_del
    - gf_list_count
    - gf_free
    - gf_list_del
    - wm_delete_widget_content
    - gf_list_del_item
    - gf_list_get
    - 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_js_remove_root
    - gf_free
    - 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_list_count
    - gf_free
    - gf_xml_dom_del
    - gf_cfg_del_section
    - gf_cfg_set_key
    - gf_list_del
    - wm_delete_widget_instance
    - gf_list_del_item
    - wm_delete_interface_instance
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    - gf_list_get
    - wm_delete_widget
    - 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_CallFunctionValue
    - JSVAL_IS_OBJECT
    - JS_LookupProperty
    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:
    - atof
    - gf_node_get_attribute_by_name
    - wm_widget_call_script
    - INT2FIX
    - JSVAL_TO_OBJECT
    - SMJS_FREE
    - JSVAL_IS_NUMBER
    - JS_ValueToNumber
    - gf_sg_vrml_mf_alloc
    - gf_dom_event_type_by_name
    - JSVAL_IS_OBJECT
    - gf_sg_vrml_mf_reset
    - JSVAL_TO_BOOLEAN
    - gf_dom_set_textContent
    - gf_sg_script_event_in
    - gf_sg_find_node_by_name
    - gf_node_event_out
    - gf_svg_parse_attribute
    - strcmp
    - JSVAL_IS_BOOLEAN
    - gf_node_dirty_set
    - SMJS_CHARS
    - gf_free
    - FLT2FIX
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    - gf_dom_event_fire
    - JSVAL_IS_INT
    - JSVAL_IS_STRING
    - gf_strdup
    - memset
    - gf_node_get_field_by_name
    - gf_node_changed
    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
    - gf_malloc
    - SMJS_GET_PRIVATE
    - JS_GetArrayLength
    - wm_widget_call_script
    - JSVAL_TO_OBJECT
    - JS_GetElement
    - JSVAL_IS_OBJECT
    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_node_get_attribute_by_tag
    - gf_node_dom_listener_add
    - gf_node_get_attribute_by_name
    - gf_node_new
    - gf_node_register
    - strcmp
    - gf_sg_find_node_by_name
    - gf_dom_event_type_by_name
    - gf_node_get_field_by_name
    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_activate_component
    - wm_deactivate_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_node_dump_attribute
    - gf_cfg_set_key
    - gf_free
    - 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:
    - gf_xml_dom_get_root
    - gf_list_count
    - gf_xml_dom_del
    - wm_create_scene_listener
    - wm_xml_get_attr
    - gf_sg_lock_javascript
    - JSVAL_IS_OBJECT
    - SMJS_GET_PRIVATE
    - JS_CallFunctionValue
    - gf_list_enum
    - wm_widget_set_scene_input_value
    - strcmp
    - gf_list_get
    - JS_LookupProperty
    - gf_opts_get_key
    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
    - SMJS_GET_PRIVATE
    - on_widget_activated
    - gf_mo_register
    - gf_url_concatenate
    - gf_sg_get_root_node
    - JSVAL_TO_OBJECT
    - gf_mo_get_scenegraph
    - gf_sg_js_get_node
    - gf_dom_listener_build
    - JSVAL_IS_OBJECT
    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_node_dump_attribute
    - gf_free
    - BOOLEAN_TO_JSVAL
    - FIX2FLT
    - JS_CallFunctionValue
    - gf_node_get_attribute_by_name
    - DOUBLE_TO_JSVAL
    - INT_TO_JSVAL
    - STRING_TO_JSVAL
    - strcmp
    - gf_sg_find_node_by_name
    - gf_node_get_field_by_name
    - JSVAL_IS_OBJECT
    - JS_NewDouble
    - JS_NewStringCopyZ
    - gf_dom_flatten_textContent
    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:
    - gf_node_dump_attribute
    - gf_free
    - BOOLEAN_TO_JSVAL
    - FIX2FLT
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_node_get_attribute_by_name
    - DOUBLE_TO_JSVAL
    - INT_TO_JSVAL
    - JSVAL_TO_OBJECT
    - STRING_TO_JSVAL
    - strcmp
    - gf_sg_find_node_by_name
    - gf_node_get_field_by_name
    - JSVAL_IS_OBJECT
    - JS_NewDouble
    - JS_NewStringCopyZ
    - gf_dom_flatten_textContent
    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_CHARS
    - gf_list_count
    - BOOLEAN_TO_JSVAL
    - JSVAL_TO_INT
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - JS_DefineProperty
    - SMJS_SET_RVAL
    - JSVAL_IS_STRING
    - SMJS_FREE
    - SMJS_SET_PRIVATE
    - STRING_TO_JSVAL
    - strcmp
    - gf_list_get
    - OBJECT_TO_JSVAL
    - JSVAL_IS_INT
    - JS_NewStringCopyZ
    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:
    - gf_list_count
    - BOOLEAN_TO_JSVAL
    - SMJS_SET_RVAL
    - SMJS_FREE
    - SMJS_SET_PRIVATE
    - JS_DefineFunction
    - INT_TO_JSVAL
    - OBJECT_TO_JSVAL
    - gf_list_get
    - JS_NewObject
    - STRING_TO_JSVAL
    - strcmp
    - JS_NewStringCopyZ
    - SMJS_CHARS
    - JSVAL_TO_INT
    - JS_DefineProperty
    - SMJS_GET_PRIVATE
    - JSVAL_IS_STRING
    - JSVAL_IS_INT
    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_CHARS
    - gf_list_count
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - wm_activate_component
    - JSVAL_TO_BOOLEAN
    - JSVAL_IS_STRING
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - strcmp
    - gf_list_get
    - JSVAL_IS_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:
    - gf_list_count
    - BOOLEAN_TO_JSVAL
    - JSVAL_TO_INT
    - JS_NewObject
    - SMJS_GET_PRIVATE
    - JS_DefineProperty
    - SMJS_SET_RVAL
    - INT_TO_JSVAL
    - JS_DefineFunction
    - SMJS_SET_PRIVATE
    - STRING_TO_JSVAL
    - OBJECT_TO_JSVAL
    - gf_list_get
    - gf_js_add_root
    - JSVAL_IS_INT
    - JS_NewStringCopyZ
    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:
    - BOOLEAN_TO_JSVAL
    - wm_create_scene_listener
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_list_add
    - JSVAL_TO_OBJECT
    - gf_js_add_root
    - JSVAL_IS_OBJECT
    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_list_count
    - SMJS_SET_RVAL
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u8
    - gf_node_dump_attribute
    - gf_sg_find_node_by_name
    - gf_list_get
    - STRING_TO_JSVAL
    - gf_bs_write_data
    - strcmp
    - strlen
    - JS_NewStringCopyZ
    - gf_dom_flatten_textContent
    - gf_free
    - SMJS_GET_PRIVATE
    - gf_node_get_field_by_name
    - gf_opts_get_key
    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:
    - SMJS_CHARS
    - gf_list_count
    - SMJS_GET_PRIVATE
    - gf_list_get
    - gf_dom_listener_del
    - wm_delete_interface_instance
    - widget_on_interface_bind
    - JSVAL_TO_OBJECT
    - GF_SAFEALLOC
    - SMJS_FREE
    - wm_widget_set_scene_input_value
    - strcmp
    - JSVAL_IS_STRING
    - gf_strdup
    - gf_list_add
    - JSVAL_IS_OBJECT
    - 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_list_count
    - gf_free
    - wm_deactivate_component
    - SMJS_GET_PRIVATE
    - JS_CallFunctionValue
    - wm_widget_bind_interface_ex
    - JS_LookupProperty
    - OBJECT_TO_JSVAL
    - gf_list_get
    - JSVAL_IS_OBJECT
    - 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:
    - JS_NewObject
    - gf_js_add_root
    - SMJS_SET_PRIVATE
    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_CallFunctionValue
    - gf_list_enum
    - JS_LookupProperty
    - OBJECT_TO_JSVAL
    - JSVAL_IS_OBJECT
    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_list_count
    - gf_free
    - wm_widget_jsbind
    - JS_CallFunctionValue
    - wm_load_widget
    - gf_url_concatenate
    - GF_SAFEALLOC
    - JS_LookupProperty
    - strcmp
    - gf_list_get
    - OBJECT_TO_JSVAL
    - gf_list_add
    - JSVAL_IS_OBJECT
    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:
    - gf_list_count
    - BOOLEAN_TO_JSVAL
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - JSVAL_TO_OBJECT
    - strcmp
    - gf_list_get
    - JSVAL_IS_OBJECT
    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_list_count
    - gf_xml_dom_parse_string
    - gf_xml_dom_del
    - SMJS_SET_RVAL
    - gf_url_concatenate
    - JSVAL_TO_OBJECT
    - SMJS_FREE
    - JSVAL_IS_OBJECT
    - GF_JS_InstanceOf
    - wm_load_widget
    - OBJECT_TO_JSVAL
    - gf_list_get
    - wm_widget_jsbind
    - gf_xml_dom_new
    - strcmp
    - strlen
    - SMJS_CHARS
    - gf_xml_dom_get_root
    - gf_free
    - SMJS_GET_PRIVATE
    - JSVAL_IS_NULL
    - JSVAL_IS_STRING
    - gf_strdup
    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:
    - GF_JS_InstanceOf
    - gf_cfg_set_key
    - SMJS_GET_PRIVATE
    - wm_delete_widget_instance
    - JSVAL_TO_BOOLEAN
    - JSVAL_TO_OBJECT
    - JSVAL_IS_BOOLEAN
    - gf_cfg_del_section
    - JSVAL_IS_OBJECT
    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
    - JSVAL_TO_INT
    - SMJS_GET_PRIVATE
    - OBJECT_TO_JSVAL
    - gf_list_get
    - JSVAL_IS_INT
    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_CHARS
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_list_enum
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - strcmp
    - JSVAL_IS_STRING
    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
    - strchr
    - strcmp
    - gf_list_get
    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_count
    - wm_xml_get_attr
    - wm_check_language
    - strcmp
    - gf_list_get
    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_SAFEALLOC
    - strrchr
    - strcmp
    - gf_strdup
    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:
    - gf_free
    - wm_xml_get_attr
    - gf_list_del
    - GF_LOG
    - gf_list_enum
    - gf_list_del_item
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - wm_xml_find
    - gf_strdup
    - gf_list_add
    - wm_parse_pin
    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_strdup
    - gf_malloc
    - 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_list_count
    - gf_free
    - wm_xml_get_attr
    - wm_get_text_content
    - gf_realloc
    - gf_list_get
    - gf_strdup
    - strlen
    - memcpy
    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:
    - wm_get_text_content
    - gf_free
    - wm_get_single_attribute
    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:
    - sprintf
    - gf_free
    - gf_url_concatenate
    - gf_dm_sess_del
    - gf_dm_sess_new
    - strnicmp
    - strcpy
    - gf_dm_sess_process
    - gf_opts_get_key
    - gf_term_relocate_url
    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_strdup
    - gf_free
    - wm_relocate_url
    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:
    - gf_list_count
    - gf_malloc
    - gf_list_new
    - gf_list_add
    - strcat
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - strlen
    - strcpy
    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_add_icon
    - wm_relocate_url
    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_list_count
    - gf_xml_dom_del
    - gf_dm_sess_get_cache_name
    - widget_package_new
    - GF_SAFEALLOC
    - gf_list_add
    - strstr
    - strchr
    - gf_xml_dom_parse
    - gf_malloc
    - wm_xml_get_attr
    - gf_crc_32
    - wm_delete_widget_instance
    - gf_dm_sess_new
    - strcat
    - wm_set_default_icon_files
    - gf_dm_sess_process
    - gf_list_get
    - wm_xml_find
    - wm_get_single_attribute
    - wm_add_icon
    - wm_get_normalized_text_content
    - wm_relocate_url
    - gf_list_enum
    - wm_parse_non_neg
    - gf_dm_sess_del
    - strnicmp
    - gf_xml_dom_new
    - wm_set_default_start_file
    - strcmp
    - gf_list_new
    - strlen
    - strcpy
    - gf_xml_dom_get_root
    - sprintf
    - widget_package_del
    - gf_free
    - wm_parse_mpegu_content_element
    - gf_list_del
    - gf_unzip_probe
    - wm_get_text_content
    - gf_cfg_set_key
    - gf_strdup
    - gf_opts_get_key
    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_load_widget
    - gf_cfg_set_key
    - wm_widget_jsbind
    - 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:
    - atoi
    - wm_widget_jsbind
    - SMJS_GET_PRIVATE
    - gf_opts_get_key_count
    - gf_opts_get_key_name
    - wm_load_widget
    - strcpy
    - strnicmp
    - gf_opts_get_key
    - gf_enum_directory
    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_JS_InitClass
    - gf_list_count
    - SMJS_FUNCTION_SPEC
    - gf_js_add_root
    - gf_list_get
    - wm_delete_widget_instance
    - JS_SETUP_CLASS
    - GF_SceneGraph*::script_action
    - gf_js_remove_root
    - SMJS_SET_PRIVATE
    - widget_load
    - JS_DefineObject
    - SMJS_PROPERTY_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_SAFEALLOC
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    - gf_list_new
    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_list_del
    - gf_free
    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:
    - LoadWidgetReader
    - gwm_new
    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:
    - fprintf
    - unzGetGlobalInfo
    - do_extract_currentfile
    - exit
    - unzClose
    - unzOpen2
    - chdir
    - unzGoToNextFile
    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_fopen
    - fgetc
    - gf_fclose
    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_node_get_attribute_by_tag
    - gf_node_get_attribute_by_name
    - gf_sg_add_namespace
    - gf_node_new
    - strchr
    - gf_sg_set_root_node
    - gf_malloc
    - gf_fopen
    - gf_svg_parse_attribute
    - gf_sg_reset
    - gf_sg_get_root_node
    - strlen
    - gf_sg_set_scene_size_info
    - gf_dom_add_text_node
    - sprintf
    - gf_node_set_id
    - gf_fclose
    - gf_free
    - gf_node_init
    - gf_scene_attach_to_compositor
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_strdup
    - gf_opts_get_key
    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_malloc
    - gf_bs_new
    - gf_bs_del
    - gf_bs_read_u32
    - memcpy
    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_SAFEALLOC
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    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
    - strrchr
    - strstr
    - strnicmp
    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:
    - GF_LOG
    - player_playback_start
    - player_playback_stop
    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:
    - strchr
    - strdup
    - atoi
    - GF_LOG
    - calloc
    - player_init
    - player_dvb_pes_filter_start
    - strstr
    - gf_odf_desc_esd_new
    - strnicmp
    - gf_list_add
    - gf_odf_desc_new
    - gf_service_declare_media
    - player_mrl_set
    - mrl_new
    - gf_service_connect_ack
    - free
    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:
    - fprintf
    - gf_service_disconnect_ack
    - GF_LOG
    - player_uninit
    - player_playback_stop
    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:
    - GF_LOG
    - player_playback_start
    - player_playback_stop
    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
    - sscanf
    - gf_service_connect_ack
    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
    - mrl_get_property
    - fprintf
    - player_video_io_windows_set
    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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - freenect_get_user
    - gf_service_send_packet
    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:
    - freenect_get_user
    - memcpy
    - gf_service_send_packet
    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:
    - freenect_get_user
    - gf_service_send_packet
    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:
    - freenect_get_user
    - gf_service_send_packet
    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:
    - freenect_get_user
    - gf_service_send_packet
    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_process_events
    - gf_sleep
    - GF_LOG
    - freenect_start_depth
    - freenect_start_video
    - 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_set_user
    - freenect_set_depth_mode
    - gf_bs_get_content
    - gf_th_new
    - gf_bs_new
    - gf_bs_del
    - freenect_find_depth_mode
    - gf_list_add
    - strstr
    - freenect_open_device
    - strchr
    - freenect_init
    - freenect_set_depth_format
    - freenect_set_log_level
    - freenect_num_devices
    - gf_malloc
    - freenect_set_video_buffer
    - freenect_set_video_format
    - freenect_set_video_callback
    - gf_service_declare_media
    - freenect_find_video_mode
    - powf
    - strnicmp
    - sscanf
    - gf_service_connect_ack
    - freenect_set_depth_callback
    - GF_LOG
    - freenect_set_video_mode
    - stricmp
    - gf_odf_desc_esd_new
    - gf_bs_write_u16
    - gf_odf_desc_new
    - freenect_select_subdevices
    - freenect_set_log_callback
    - gf_bs_write_u32
    - gf_4cc_to_str
    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_close_device
    - freenect_shutdown
    - gf_service_disconnect_ack
    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_sleep
    - gf_th_run
    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
    - sscanf
    - gf_service_connect_ack
    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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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*::getPtr
    - IOBuffer*::release
    - IOBuffer*::getTimestamp
    - IOBuffer*::getValidBytes
    - memcpy
    - gf_service_send_packet
    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:
    - begin
    - GF_LOG
    - stricmp
    - wm_delete_interface_instance
    - end
    - DeviceDescriptor*::getName
    - strstr
    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:
    - get_device_descriptor
    - gf_bs_get_content
    - AVCapIn*::device_desc::open
    - gf_bs_new
    - gf_bs_del
    - gf_list_add
    - strstr
    - strchr
    - AVCapIn*::device_desc::close
    - AVCapIn*::device_desc::getDevice
    - gf_service_declare_media
    - strnicmp
    - strcmp
    - strlen
    - sscanf
    - gf_service_connect_ack
    - AVCapIn*::device::getFormatMgr
    - GF_LOG
    - GF_4CC
    - gf_odf_desc_esd_new
    - gf_bs_write_u16
    - AVCapIn*::device_desc::isAudioDev
    - gf_odf_desc_new
    - gf_bs_write_u32
    - AVCapIn*::device_desc::isVideoCaptureDev
    - Format*::getFourcc
    - gf_opts_get_key
    - gf_4cc_to_str
    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
    - gf_service_connect_ack
    - sscanf
    - GPACCaptureHandler::GPACCaptureHandler
    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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - AddField
    - strncmp
    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_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - cvPyrDown
    - gf_bs_del
    - cvReleaseMemStorage
    - cvHaarDetectObjects
    - CV_RGB
    - cvCreateMemStorage
    - cvReleaseImage
    - cvSize
    - cvRectangle
    - GF_InputSensorDevice*::DispatchFrame
    - gf_free
    - gf_bs_align
    - cvGetSeqElem
    - GF_LOG
    - cvCreateImage
    - cvPoint
    - gf_bs_write_float
    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:
    - cvWaitKey
    - cvRetrieveFrame
    - cvShowImage
    - cvReleaseImage
    - cvSetCaptureProperty
    - cvNamedWindow
    - cvGrabFrame
    - cvCaptureFromCAM
    - load_object_detector
    - detect_and_draw_objects
    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_SAFEALLOC
    - gf_th_new
    - GF_REGISTER_MODULE_INTERFACE
    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_sleep
    - av_free_packet
    - gf_service_command
    - gf_mx_p
    - av_seek_frame
    - gf_mx_v
    - memset
    - gf_service_send_packet
    - av_read_frame
    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:
    - GF_LOG
    - av_dict_set
    - strchr
    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:
    - strlwr
    - av_find_input_format
    - guess_stream_format
    - gf_opts_get_key
    - strstr
    - gf_opts_set_key
    - gf_malloc
    - strcat
    - av_close_input_file
    - strnicmp
    - strrchr
    - strcmp
    - strlen
    - gf_service_register_mime
    - strcpy
    - sprintf
    - gf_free
    - avformat_close_input
    - av_guess_format
    - gf_service_check_mime_register
    - open_file
    - ffd_parse_options
    - av_find_stream_info
    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_malloc
    - gf_bs_get_content
    - GF_4CC
    - gf_odf_desc_esd_new
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - memcpy
    - gf_bs_write_u8
    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_list_add
    - gf_odf_desc_new
    - gf_service_declare_media
    - 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:
    - gf_sleep
    - GF_LOG
    - gf_dm_sess_fetch_data
    - gf_fwrite
    - memcpy
    - gf_error_to_string
    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:
    - strlwr
    - gf_dm_sess_get_cache_name
    - av_probe_input_format
    - av_find_input_format
    - av_find_stream_info
    - FFD_SetupObjects
    - avformat_open_input
    - strstr
    - gf_malloc
    - gf_fopen
    - av_close_input_file
    - atoi
    - strnicmp
    - avformat_find_stream_info
    - gf_dm_sess_fetch_data
    - strrchr
    - gf_service_download_new
    - strcmp
    - strlen
    - av_open_input_stream
    - av_seek_frame
    - strcpy
    - gf_service_connect_ack
    - av_read_frame
    - gf_error_to_string
    - init_put_byte
    - GF_LOG
    - stricmp
    - avformat_close_input
    - open_file
    - assert
    - ffd_parse_options
    - gf_opts_get_key
    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_list_add
    - gf_odf_desc_new
    - 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_sleep
    - gf_fclose
    - gf_service_disconnect_ack
    - avformat_close_input
    - gf_service_download_del
    - av_close_input_file
    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
    - strstr
    - sscanf
    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_mx_p
    - gf_th_run
    - 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:
    - gf_service_get_url
    - stricmp
    - strnicmp
    - strrchr
    - strlen
    - strcpy
    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:
    - av_register_all
    - gf_free
    - gf_th_del
    - GF_LOG
    - avformat_network_init
    - gf_mx_new
    - gf_th_new
    - GF_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    - 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:
    - gf_mx_del
    - gf_free
    - gf_th_del
    - av_dict_free
    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:
    - memset
    - gf_free
    - 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:
    - strlwr
    - strupr
    - avcodec_find_decoder_by_name
    - stricmp
    - avcodec_find_decoder
    - strcpy
    - gf_4cc_to_str
    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_4CC
    - gf_bs_read_data
    - gf_bs_read_u32
    - strcpy
    - gf_bs_available
    - ffmpeg_realloc_buffer
    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:
    - gf_bs_read_u8
    - fprintf
    - avcodec_decode_video2
    - gf_bs_new
    - av_frame_alloc
    - gf_bs_del
    - avcodec_alloc_context3
    - strstr
    - gf_opts_set_key
    - ffmpeg_get_codec
    - gf_m4v_get_config
    - gf_sys_get_rti
    - av_opt_set
    - avcodec_decode_video
    - av_hwaccel_next
    - AV_VERSION_INT
    - avcodec_open
    - memcpy
    - avcodec_get_context_defaults3
    - ffmpeg_realloc_buffer
    - atoi
    - avcodec_alloc_context
    - FFDEC_LoadDSI
    - gf_list_enum
    - strcmp
    - gf_bs_read_u32
    - gf_bs_read_u16
    - sprintf
    - GF_LOG
    - av_opt_set_int
    - GF_4CC
    - avcodec_find_decoder
    - avcodec_open2
    - av_init_packet
    - avcodec_alloc_frame
    - gf_opts_get_key
    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:
    - av_free
    - avcodec_close
    - gf_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:
    - GF_LOG
    - avcodec_decode_audio3
    - av_init_packet
    - memcpy
    - avcodec_decode_audio4
    - 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_ProcessRawVideo
    - FFDEC_ProcessVideo
    - 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:
    - av_frame_clone
    - GF_SAFEALLOC
    - gf_free
    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:
    - gf_list_count
    - ffmpeg_get_codec
    - GF_4CC
    - gf_bs_new
    - avcodec_find_decoder
    - gf_bs_del
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_bs_read_u32
    - gf_odf_avc_cfg_del
    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:
    - avcodec_init
    - gf_free
    - GF_LOG
    - GF_SAFEALLOC
    - 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:
    - avcodec_close
    - gf_free
    - 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_sk_del
    - gf_sk_receive
    - atoi
    - gf_term_scene_update
    - GF_LOG
    - GF_NetControl*::term::compositor::video_out::on_event
    - gf_sk_new
    - gf_sk_bind
    - strcmp
    - memset
    - gf_opts_get_key
    - sscanf
    - strncmp
    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_SAFEALLOC
    - gf_malloc
    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:
    - assert
    - memcpy
    - 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:
    - memset
    - gf_free
    - 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
    - strchr
    - atoi
    - stricmp
    - strnicmp
    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: 1
    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_SAFEALLOC
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    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:
    - GdipDeleteBrush
    - gf_free
    - GdipDeleteMatrix
    - GdipDisposeImage
    - GPSTEN
    - GdipDeletePath
    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:
    - GPMATRIX
    - GdipDeleteMatrix
    - GPSTEN
    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:
    - GdipSetSolidFillColor
    - CHECK_RET
    - GdipCreateSolidFill
    - GPSTEN
    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:
    - CHECK2_RET
    - GPSTEN
    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:
    - GdipDeleteBrush
    - CHECK_RET
    - FIX2FLT
    - GdipCreateMatrix
    - GdipGetLineTransform
    - GPSTEN
    - GdipCreateLineBrush
    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:
    - GdipDeleteBrush
    - GdipSetLineWrapMode
    - REAL::REAL
    - GdipSetLinePresetBlend
    - GPSTEN
    - GdipCreateLineBrush
    - 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:
    - GdipDeleteBrush
    - GdipMultiplyMatrix
    - REAL::REAL
    - GdipCreateMatrix
    - GdipSetPathGradientPresetBlend
    - GdipSetTextureTransform
    - GdipDeleteMatrix
    - GdipSetPathGradientWrapMode
    - GdipTranslateMatrix
    - GdipCreatePath
    - GdipCreatePathGradientFromPath
    - GdipCreateSolidFill
    - GPSTEN
    - GdipResetPath
    - GdipDeletePath
    - GdipAddPathEllipse
    - ARGB::ARGB
    - GdipSetPathGradientCenterPoint
    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
    - FIX2FLT
    - GPSTEN
    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:
    - FIX2FLT
    - REAL::REAL
    - GPSTEN
    - ARGB::ARGB
    - memcpy
    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:
    - GdipDeleteBrush
    - CHECK_RET
    - GdipCreatePathGradientFromPath
    - gdip_create_path
    - GPSTEN
    - GdipDeletePath
    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
    - GPSTEN
    - GdipSetPathGradientCenterColor
    - GdipSetPathGradientCenterPoint
    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:
    - FIX2FLT
    - GdipAddPathLine
    - GdipStartPathFigure
    - GdipSetPathFillMode
    - GdipCreatePath
    - GdipClosePathFigure
    - GdipAddPathBezier
    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:
    - GPGRAPH
    - gf_free
    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:
    - GPGRAPH
    - GdipCreateFromHDC
    - GdipSetWorldTransform
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - GdipTranslateMatrix
    - GdipSetPixelOffsetMode
    - GdipScaleMatrix
    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
    - GPGRAPH
    - GdipSetWorldTransform
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - GdipTranslateMatrix
    - GdipSetPixelOffsetMode
    - GdipScaleMatrix
    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
    - GPGRAPH
    - GdipSetWorldTransform
    - GdipCreateMatrix
    - GdipDeleteMatrix
    - GdipTranslateMatrix
    - GdipCreateBitmapFromScan0
    - GdipSetPixelOffsetMode
    - GdipScaleMatrix
    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
    - GdipDisposeImage
    - GPGRAPH
    - 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:
    - GdipSetSmoothingMode
    - GPGRAPH
    - 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:
    - GdipDeleteMatrix
    - GPGRAPH
    - mat_gpac_to_gdip
    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:
    - GdipTransformPath
    - gdip_create_path
    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->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
    - condition: (_sten->pRadial)
      pos:
        line_end: 393
        line_start: 393
        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:
    - GPGRAPH
    - GdipClonePath
    - GdipDeleteMatrix
    - gdip_recompute_line_gradient
    - GdipSetClipPath
    - GdipResetClip
    - GdipResetTextureTransform
    - GdipScaleMatrix
    - GdipSetInterpolationMode
    - GdipCloneMatrix
    - GdipDeletePath
    - GdipMultiplyMatrix
    - GdipSetCompositingQuality
    - GdipTransformPath
    - GdipSetTextureTransform
    - GdipFillPath
    - GdipSetSmoothingMode
    - GdipCreateMatrix
    - gdip_recompute_radial_gradient
    - assert
    - gdip_load_texture
    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:
    - GPGRAPH
    - GdipGraphicsClear
    - GdipSetClipPath
    - GdipCreatePath
    - GdipAddPathRectangleI
    - GdipDeletePath
    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:
    - GdiplusStartup
    - gdip_init_driver_grad
    - SAFEALLOC
    - gdip_init_driver_surface
    - GF_REGISTER_MODULE_INTERFACE
    - gdip_init_driver_texture
    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:
    - GdiplusShutdown
    - gf_free
    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:
    - gf_opts_get_key
    - strcpy
    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_mbstowcs
    - gf_utf8_reorder_bidi
    - 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:
    - GdipDeleteStringFormat
    - FLT2FIX
    - GdipAddPathString
    - GdipGetPathWorldBounds
    - adjust_white_space
    - GdipCreatePath
    - GdipDeletePath
    - GdipCreateStringFormat
    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:
    - GdipDeleteFontFamily
    - GdipCreateFontFamilyFromName
    - stricmp
    - MultiByteToWideChar
    - 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:
    - FIX2FLT
    - GdipGetCellAscent
    - GdipGetLineSpacing
    - gdip_get_text_size
    - GdipGetCellDescent
    - MAX
    - 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:
    - gf_path_add_move_to
    - gf_path_add_cubic_to
    - GdipDeleteMatrix
    - GF_SAFEALLOC
    - GdipScaleMatrix
    - gf_path_add_line_to
    - GdipDeleteStringFormat
    - GdipSetStringFormatAlign
    - GdipGetPointCount
    - GdipDeletePath
    - GpPointF::GpPointF
    - GdipGetPathTypes
    - gf_path_close
    - BYTE::BYTE
    - GdipTransformPath
    - GdipTranslateMatrix
    - GdipCreatePath
    - GdipGetPathPoints
    - GdipResetPath
    - FLT2FIX
    - gf_path_get_bounds
    - GdipAddPathString
    - GdipCreateMatrix
    - GdipGetPathWorldBounds
    - FIX2INT
    - assert
    - GdipCreateStringFormat
    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:
    - GdiplusStartup
    - GF_REGISTER_MODULE_INTERFACE
    - SAFEALLOC
    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:
    - GdiplusShutdown
    - gf_free
    - GdipDeleteFontFamily
    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_LoadRenderer
    - gdip_new_font_driver
    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_ShutdownRenderer
    - gdip_delete_font_driver
    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:
    - COL_555
    - CHECK_RET
    - GF_COL_ARGB
    - gdip_cmat_reset
    - GdipDisposeImage
    - COL_565
    - GdipCreateBitmapFromScan0
    - GPSTEN
    - GdipBitmapSetPixel
    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:
    - cmat_gpac_to_gdip
    - GPSTEN
    - memset
    - gf_cmx_multiply
    - memcpy
    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
    - gdip_convert_texture
    - GF_COL_ARGB
    - GPSTEN
    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:
    - GdipBitmapSetPixel
    - gdip_convert_texture
    - GF_COL_ARGB
    - GPSTEN
    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
    - gf_malloc
    - GdipDisposeImage
    - GdipCreateBitmapFromScan0
    - gf_stretch_bits
    - memset
    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:
    - GdipDeleteBrush
    - gdip_convert_texture
    - GdipDisposeImageAttributes
    - GdipCreateTextureIAI
    - GdipSetImageAttributesColorMatrix
    - memset
    - memcpy
    - GdipSetTextureWrapMode
    - 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: 72
    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:
    - GdipCreateMatrix
    - FIX2FLT
    - GdipSetMatrixElements
    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:
    - atoi
    - GF_LOG
    - wiiuse_init
    - AddField
    - strcmp
    - gf_opts_get_key
    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:
    - atof
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - wiiuse_connect
    - wiiuse_poll
    - wiiuse_set_smooth_alpha
    - atoi
    - GF_InputSensorDevice*::DispatchFrame
    - WRITE_BUTTON
    - strcmp
    - gf_free
    - gf_bs_align
    - GF_LOG
    - wiiuse_motion_sensing
    - wiiuse_set_orient_threshold
    - wiiuse_find
    - gf_opts_get_key
    - gf_bs_write_float
    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_SAFEALLOC
    - gf_th_new
    - GF_REGISTER_MODULE_INTERFACE
    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
    - HIWORD
    - ClientToScreen
    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:
    - DefWindowProc
    - GetDC
    - BitBlt
    - ReleaseDC
    - SetWindowLong
    - w32_translate_key
    - on_event
    - HIWORD
    - PostQuitMessage
    - memset
    - LOWORD
    - GAPI_GetCoordinates
    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:
    - ExitThread
    - GetStockObject
    - GetModuleHandle
    - _T
    - GetMessage
    - ShowWindow
    - TranslateMessage
    - LoadCursor
    - CreateWindow
    - DispatchMessage
    - memset
    - RegisterClass
    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:
    - GetWindowLong
    - gf_sleep
    - GetDeviceCaps
    - GetDC
    - CreateThread
    - GetModuleHandle
    - _T
    - ReleaseDC
    - memset
    - SetWindowLong
    - ShowWindow
    - CreateWindow
    - GAPI_SetupOGL_ES_Offscreen
    - RegisterClass
    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:
    - gf_sleep
    - UnregisterClass
    - _T
    - GetModuleHandle
    - CloseHandle
    - SetWindowLong
    - PostMessage
    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
    - gf_malloc
    - SelectObject
    - GetDC
    - CreateCompatibleDC
    - ReleaseDC
    - CreateDIBSection
    - memset
    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:
    - DeleteObject
    - eglDestroyContext
    - eglTerminate
    - eglDestroySurface
    - eglMakeCurrent
    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:
    - ::GetClientRect
    - eglDestroyContext
    - eglChooseConfig
    - eglCreatePixmapSurface
    - GF_VideoOutput*::on_event
    - eglGetDisplay
    - createPixmap
    - eglDestroySurface
    - GAPI_ReleaseOGL_ES
    - eglMakeCurrent
    - eglCreateContext
    - atoi
    - eglGetError
    - GAPICTX
    - GF_LOG
    - eglCreateWindowSurface
    - eglInitialize
    - memset
    - gf_opts_get_key
    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:
    - eglCreatePixmapSurface
    - eglCreateContext
    - atoi
    - eglDestroySurface
    - SetWindowPos
    - eglGetDisplay
    - eglInitialize
    - eglDestroyContext
    - createPixmap
    - eglChooseConfig
    - GAPICTX
    - eglGetConfigs
    - gf_opts_get_key
    - GAPI_ReleaseOGL_ES
    - eglMakeCurrent
    - eglCreatePbufferSurface
    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:
    - DeleteObject
    - gf_free
    - ReleaseDC
    - DeleteDC
    - SelectObject
    - 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
    - GXGetDisplayProperties
    - GXGetDefaultKeys
    - GXOpenDisplay
    - _T
    - GetClientRect
    - GAPI_InitBackBuffer
    - GAPICTX
    - 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:
    - GAPI_ShutdownWindow
    - GAPI_ReleaseObjects
    - gf_mx_p
    - GXCloseDisplay
    - gf_mx_v
    - GAPICTX
    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:
    - GAPI_SetupOGL_ES
    - GXOpenDisplay
    - GetParent
    - GAPI_ReleaseObjects
    - gf_mx_p
    - GXCloseDisplay
    - gf_mx_v
    - GAPICTX
    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:
    - memset
    - gf_mx_p
    - 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:
    - GXBeginDraw
    - GAPI_ClearFS
    - GXEndDraw
    - GAPICTX
    - memcpy
    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:
    - assert
    - eglSwapBuffers
    - GetDC
    - BitBlt
    - ReleaseDC
    - InvalidateRect
    - gf_mx_p
    - gf_mx_v
    - GAPICTX
    - 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:
    - GAPI_SetupOGL_ES
    - GAPI_SetupOGL_ES_Offscreen
    - ShowWindow
    - GAPI_InitBackBuffer
    - get_sys_col
    - GAPICTX
    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:
    - GetSystemMetrics
    - GetDeviceCaps
    - GF_VideoOutput*::on_event
    - GetDC
    - ReleaseDC
    - GAPICTX
    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:
    - GetDeviceCaps
    - GetDC
    - memset
    - ReleaseDC
    - ExtEscape
    - abs
    - check_resolution_switch
    - GAPICTX
    - GetPixel
    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:
    - GetWindowRect
    - GXGetDisplayProperties
    - gf_malloc
    - createPixmap
    - GAPI_ReleaseObjects
    - gapi_get_raw_fb
    - gf_mx_p
    - strcmp
    - gf_mx_v
    - check_resolution_switch
    - GAPICTX
    - gf_opts_get_key
    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
    - GAPI_AdjustLandscape
    - memset
    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:
    - gf_mx_new
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - 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
    - gf_mx_del
    - GAPI_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: 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:
    - ftell
    - gf_list_count
    - gf_avc_get_sps_info
    - rvc_init
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_m4v_get_config
    - fread
    - gf_fopen
    - gf_odf_hevc_cfg_read
    - fseek
    - gf_list_get
    - gf_odf_avc_cfg_read
    - gf_hevc_get_sps_info
    - gf_odf_avc_cfg_del
    - sprintf
    - gf_fclose
    - gf_free
    - rvc_decode
    - GF_LOG
    - gf_opts_get_key
    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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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: 5
    functionsReached:
    - gf_bs_get_content
    - gf_odf_desc_esd_new
    - gf_bs_new
    - 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_list_add
    - gf_odf_desc_new
    - 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_strdup
    - gf_odf_desc_new
    - gf_service_declare_media
    - 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:
    - ext_media_load_th
    - gf_th_new
    - memset
    - assert
    - gf_th_run
    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:
    - assert
    - memset
    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: 6
    functionsReached:
    - gf_bs_get_content
    - gf_odf_desc_esd_new
    - gf_bs_new
    - 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_list_add
    - gf_odf_desc_new
    - 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:
    - assert
    - memset
    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_strdup
    - gf_odf_desc_new
    - gf_service_declare_media
    - 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_sleep
    - time
    - assert
    - gmtime
    - GF_LOG
    - ext_media_load_th
    - gf_th_new
    - gf_sys_clock
    - memset
    - GetData
    - gf_th_run
    - gf_service_send_packet
    - gf_service_command
    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:
    - memset
    - gf_th_new
    - assert
    - gf_th_run
    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:
    - gf_th_del
    - audio_gen_stop
    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_LOG
    - hybmedia_sanity_check
    - GF_HYB_In*::master::GetOD
    - GF_HYB_In*::master::Connect
    - gf_service_declare_media
    - assert
    - gf_service_connect_ack
    - 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_LOG
    - GF_HYB_In*::master::Disconnect
    - GF_HYB_In*::master::SetState
    - 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_SAFEALLOC
    - GF_REGISTER_MODULE_INTERFACE
    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_LOG
    - gf_free
    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_read_timeout
    - read_s16
    - GF_LOG
    - gf_term_user_event
    - gf_term_add_event_filter
    - gf_term_remove_event_filter
    - hid_init
    - hid_close
    - hid_exit
    - memset
    - 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_opts_get_key
    - gf_th_run
    - strcmp
    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_malloc
    - gf_th_new
    - GF_REGISTER_MODULE_INTERFACE
    - GF_SAFEALLOC
    - memset
    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:
    - DDContext*::pDD::lpVtbl::SetCooperativeLevel
    - SetFocus
    - ChangeDisplaySettings
    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:
    - wglShareLists
    - DD_SetupOpenGL
    - wglMakeCurrent
    - eglDestroyContext
    - CreateWindow
    - eglChooseConfig
    - wglGetPixelFormatAttribivARB
    - wglCreateContext
    - gf_opts_set_key
    - wglGetProcAddress
    - GF_VideoOutput*::on_event
    - DestroyObjects
    - GetDC
    - DestroyWindow
    - eglGetDisplay
    - ChoosePixelFormat
    - ReleaseDC
    - SetWindowLongPtr
    - eglDestroySurface
    - SetPixelFormat
    - eglMakeCurrent
    - eglCreateContext
    - atoi
    - SetWindowLong
    - eglBindAPI
    - strcmp
    - wglGetCurrentContext
    - wglSwapIntervalEXT
    - GF_LOG
    - wglChoosePixelFormatARB
    - eglCreateWindowSurface
    - wglDeleteContext
    - eglInitialize
    - GetLastError
    - DestroyObjectsEx
    - memset
    - gf_opts_get_key
    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:
    - gf_module_get_bool
    - GetDeviceCaps
    - GetWindowRect
    - GetDC
    - DD_SetupWindow
    - ReleaseDC
    - ShowWindow
    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:
    - FindWindow
    - UpdateWindow
    - ShowWindow
    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:
    - DD_ShowTaskbar
    - gf_module_get_bool
    - SetForegroundWindow
    - DestroyObjects
    - MonitorFromWindow
    - KillTimer
    - SetWindowPos
    - RestoreWindow
    - DD_SetupOpenGL
    - SetFocus
    - ShowWindow
    - SetWindowLong
    - InitDirectDraw
    - memset
    - GetDisplayMode
    - GetMonitorInfo
    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:
    - pDD::lpVtbl::WaitForVerticalBlank
    - GetDC
    - GF_LOG
    - eglSwapBuffers
    - GF_VideoOutput*::LockOSContext
    - pPrimary::lpVtbl::Restore
    - BitBlt
    - ReleaseDC
    - ClientToScreen
    - MAKERECT
    - pBack::lpVtbl::Restore
    - pPrimary::lpVtbl::Blt
    - SwapBuffers
    - FAILED
    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:
    - GetSystemMetrics
    - DDContext*::DirectDrawCreate
    - SAFE_DD_RELEASE
    - LPDIRECTDRAW::lpVtbl::QueryInterface
    - DDContext*::pDD::lpVtbl::EnumDisplayModes
    - FAILED
    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:
    - GetSystemMetrics
    - gf_malloc
    - LoadLibrary
    - DD_SetupDDraw
    - GF_REGISTER_MODULE_INTERFACE
    - GetProcAddress
    - memset
    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:
    - DD_ShowTaskbar
    - gf_free
    - FreeLibrary
    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:
    - gf_sys_clock
    - DD_SetCursor
    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:
    - mouse_move
    - DD_SetCursor
    - 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:
    - IsClipboardFormatAvailable
    - SetClipboardData
    - GlobalAlloc
    - SetFocus
    - PostQuitMessage
    - CloseClipboard
    - HIWORD
    - DragFinish
    - GF_VideoOutput*::on_event
    - DragQueryFile
    - gf_malloc
    - grab_mouse
    - GlobalLock
    - KillTimer
    - release_mouse
    - w32_translate_key
    - GetClipboardData
    - SetWindowLongPtr
    - memcpy
    - EmptyClipboard
    - OpenClipboard
    - GetWindowLong
    - DefWindowProc
    - gf_sys_clock
    - DD_GetCoordinates
    - SetWindowLong
    - strlen
    - LOWORD
    - mouse_start_timer
    - gf_free
    - FLT2FIX
    - CallWindowProc
    - GetWindowLongPtr
    - DD_SetCursor
    - GlobalUnlock
    - gf_strdup
    - memset
    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:
    - GetWindowLong
    - _SetLayeredWindowAttributes
    - RGB
    - GetVersionEx
    - GF_LOG
    - GetModuleHandle
    - SetWindowLong
    - GetProcAddress
    - gf_opts_get_key
    - sscanf
    - gf_opts_set_key
    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:
    - SetForegroundWindow
    - MAKEINTRESOURCE
    - GetStockObject
    - GetModuleHandle
    - _T
    - DragAcceptFiles
    - SetFocus
    - ShowWindow
    - SetWindowLong
    - SetWindowless
    - SetWindowLongPtr
    - LoadIcon
    - LoadCursor
    - CreateWindow
    - AdjustWindowRect
    - memset
    - RegisterClass
    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:
    - SetWindowTextW
    - gf_free
    - gf_malloc
    - GF_LOG
    - GetMessage
    - gf_th_id
    - DispatchMessage
    - gf_utf8_mbstowcs
    - DD_InitWindows
    - SetWindowText
    - PostQuitMessage
    - strlen
    - TranslateMessage
    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:
    - GetWindowLong
    - gf_sleep
    - GetWindowLongPtr
    - gf_th_new
    - GetParent
    - SetWindowLong
    - SetWindowLongPtr
    - DD_InitWindows
    - gf_th_run
    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:
    - gf_sleep
    - gf_th_del
    - UnregisterClass
    - _T
    - GetModuleHandle
    - SetWindowLong
    - SetWindowLongPtr
    - dd_closewindow
    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:
    - SetCursor
    - ShowCursor
    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:
    - GetSystemMetrics
    - gf_free
    - MapWindowPoints
    - DestroyObjects
    - SetWindowPos
    - DD_SetCursor
    - DD_SetupOpenGL
    - PeekMessage
    - ShowWindow
    - wglMakeCurrent
    - SetWindowText
    - get_sys_col
    - DispatchMessage
    - gf_strdup
    - DD_SetBackBufferSize
    - TranslateMessage
    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:
    - GetDesktopWindow
    - pDS::lpVtbl::SetCooperativeLevel
    - SAFE_DS_RELEASE
    - DSCONTEXT
    - DD_GetGlobalHWND
    - FAILED
    - DirectSoundCreate
    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::Lock
    - DSContext*::pOutput::lpVtbl::Unlock
    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:
    - DSCONTEXT
    - pOutput::lpVtbl::Stop
    - CloseHandle
    - SAFE_DS_RELEASE
    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:
    - DS_ReleaseBuffer
    - DSCONTEXT
    - SAFE_DS_RELEASE
    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:
    - gf_module_get_bool
    - CreateEvent
    - SAFE_DS_RELEASE
    - DS_Configure
    - IDirectSoundNotify*::lpVtbl::SetNotificationPositions
    - GF_LOG
    - DSCONTEXT
    - pOutput::lpVtbl::QueryInterface
    - CloseHandle
    - pDS::lpVtbl::CreateSoundBuffer
    - DS_ReleaseBuffer
    - DS_ResetBuffer
    - memset
    - gf_audio_fmt_bit_depth
    - FAILED
    - IDirectSoundNotify*::lpVtbl::Release
    - pOutput::lpVtbl::Play
    - gf_opts_set_key
    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:
    - pOutput::lpVtbl::Unlock
    - pOutput::lpVtbl::Lock
    - GF_LOG
    - DSCONTEXT
    - gf_assert
    - GF_AudioOutput*::FillBuffer
    - DS_RestoreBuffer
    - FAILED
    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:
    - DSCONTEXT
    - WaitForMultipleObjects
    - DS_FillBuffer
    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:
    - gf_sleep
    - pOutput::lpVtbl::GetCurrentPosition
    - GF_LOG
    - DSCONTEXT
    - 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::Play
    - DSCONTEXT
    - pOutput::lpVtbl::Stop
    - 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:
    - DSCONTEXT
    - pOutput::lpVtbl::SetVolume
    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
    - gf_malloc
    - FreeLibrary
    - LoadLibrary
    - CoInitialize
    - GetProcAddress
    - GF_REGISTER_MODULE_INTERFACE
    - memset
    - FAILED
    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:
    - CoUninitialize
    - DSCONTEXT
    - gf_free
    - FreeLibrary
    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:
    - ZeroMemory
    - pBack::lpVtbl::Blt
    - GF_COL_TO_565
    - GF_COL_TO_555
    - FAILED
    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:
    - DD_InitYUV
    - ZeroMemory
    - GF_LOG
    - strcmp
    - pDD::lpVtbl::CreateSurface
    - SAFE_DD_RELEASE
    - gf_module_get_key
    - FAILED
    - DD_ClearBackBuffer
    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:
    - DirectDrawCreate
    - pDD::lpVtbl::SetCooperativeLevel
    - pDD::lpVtbl::CreateClipper
    - DestroyObjects
    - ZeroMemory
    - GF_LOG
    - LPDIRECTDRAWCLIPPER::lpVtbl::SetHWnd
    - pDD::lpVtbl::CreateSurface
    - pPrimary::lpVtbl::GetPixelFormat
    - LPDIRECTDRAW::lpVtbl::Release
    - pPrimary::lpVtbl::SetClipper
    - pDD::lpVtbl::SetDisplayMode
    - LPDIRECTDRAW::lpVtbl::QueryInterface
    - memset
    - FAILED
    - LPDIRECTDRAWCLIPPER::lpVtbl::Release
    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:
    - ZeroMemory
    - FAILED
    - LPDDRAWSURFACE::lpVtbl::Lock
    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:
    - FAILED
    - LPDDRAWSURFACE::lpVtbl::Unlock
    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:
    - memset
    - DD_UnlockSurface
    - DD_LockSurface
    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::GetDC
    - pBack::lpVtbl::IsLost
    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:
    - GF_COL_ARGB
    - GF_LOG
    - MAKERECT
    - DDSurface*::pSurface::lpVtbl::SetColorKey
    - DDContext*::pBack::lpVtbl::Blt
    - FAILED
    - DDContext*::pBack::lpVtbl::BltFast
    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
    - MAX
    - pDD::lpVtbl::CreateSurface
    - SAFE_DD_RELEASE
    - FAILED
    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_GetSurface
    - DD_LockSurface
    - DD_BlitSurface
    - GF_LOG
    - DDSurface*::pSurface::lpVtbl::UpdateOverlay
    - yuv_pool::pSurface::lpVtbl::UpdateOverlay
    - ClientToScreen
    - DD_UnlockSurface
    - MAKERECT
    - pPrimary::lpVtbl::Blt
    - gf_stretch_bits
    - memset
    - FAILED
    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:
    - DD_GetSurface
    - DD_BlitSurface
    - gf_opts_set_key
    - gf_malloc
    - gf_module_get_bool
    - is_yuv_planar
    - is_yuv_supported
    - pDD::lpVtbl::GetFourCCCodes
    - gf_sys_clock
    - strcmp
    - SAFE_DD_RELEASE
    - gf_module_get_key
    - sscanf
    - sprintf
    - gf_free
    - GF_LOG
    - GF_4CC
    - memset
    - gf_4cc_to_str
    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:
    - CreateBackBuffer
    - InitDirectDraw
    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_NewAudio
    - SDL_NewVideo
    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_DeleteAudio
    - SDL_DeleteVideo
    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_GetCurrentVideoDriver
    - sprintf
    - SDL_SetWindowTitle
    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:
    - sprintf
    - SDL_WM_SetCaption
    - SDL_VideoDriverName
    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: gf_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:
    - gf_strcpy
    - sprintf
    - putenv
    - 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:
    - gf_free
    - SDL_VERSION_ATLEAST
    - SDL_FreeYUVOverlay
    - SDL_DestroyTexture
    - SDL_FreeSurface
    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: gf_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:
    - SDL_GetError
    - SDL_VERSION_ATLEAST
    - gf_malloc
    - gf_free
    - gf_file_load_data
    - gf_strcat
    - GF_LOG
    - SDL_FreeSurface
    - SDL_SetWindowIcon
    - gf_img_png_dec
    - SDL_CreateRGBSurfaceFrom
    - gf_opts_default_shared_directory
    - gf_pixel_get_bytes_per_pixel
    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_SetRenderDrawColor
    - SDL_CreateRenderer
    - SDL_DestroyRenderer
    - SDL_GL_SetAttribute
    - SDL_CreateWindow
    - SDL_GL_CreateContext
    - GF_VideoOutput*::on_event
    - gf_mx_v
    - SDL_SetWindowSize
    - SDLVid_SetIcon
    - SDL_GetError
    - SDL_GetWindowID
    - setlocale
    - SDL_GetDisplayOrientation
    - atoi
    - gf_module_get_bool
    - SDL_SetVideoMode
    - SDL_DestroyWindow
    - SDL_RenderClear
    - gf_mx_p
    - SDL_GL_SetSwapInterval
    - SDLVID
    - SDL_GL_MakeCurrent
    - SDL_VERSION_ATLEAST
    - GF_LOG
    - SDL_RaiseWindow
    - memset
    - gf_opts_get_key
    - SDL_GL_GetDrawableSize
    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:
    - SDLVID
    - SDL_SetCursor
    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:
    - fprintf
    - gf_list_count
    - SDL_EnableKeyRepeat
    - putenv
    - gf_list_add
    - SDL_GetVideoInfo
    - SDL_InitSubSystem
    - gf_list_find
    - SDLVid_SetCaption
    - SDL_GetTicks
    - SDLVid_LoadCursor
    - SDL_GetDesktopDisplayMode
    - SDL_WasInit
    - gf_list_new
    - SDL_GetCursor
    - SDL_VERSION_ATLEAST
    - GF_LOG
    - SDL_EnableUNICODE
    - SDL_ListModes
    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_VERSION_ATLEAST
    - SDL_DestroyWindow
    - SDL_QuitSubSystem
    - SDL_DestroyRenderer
    - SDLVid_DestroyObjects
    - SDL_InitSubSystem
    - SDL_GL_DeleteContext
    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:
    - SDL_DestroyWindow
    - SDLVid_ResetWindow
    - 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:
    - gf_sleep
    - SDLVid_ShutdownWindow
    - SDL_ShowCursor
    - SDLVid_ProcessMessageQueue
    - SDLVid_InitializeWindow
    - SDL_GetTicks
    - gf_mx_p
    - gf_mx_v
    - SDLVID
    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_list_count
    - SDL_VERSION_ATLEAST
    - gf_sleep
    - gf_list_del
    - SDLOUT_InitSDL
    - gf_sys_is_cov_mode
    - SDL_QuitSubSystem
    - SDLVid_InitializeWindow
    - SDL_ShowWindow
    - sdl_translate_key
    - SDLVID
    - SDLOUT_CloseSDL
    - gf_th_run
    - SDLVid_SetCursor
    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:
    - gf_sleep
    - SDLVid_ShutdownWindow
    - SDL_PushEvent
    - SDLVID
    - SDLOUT_CloseSDL
    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_module_get_bool
    - SDL_PixelFormatEnumToMasks
    - SDL_VERSION_ATLEAST
    - SDL_SetWindowFullscreen
    - GF_VideoOutput*::on_event
    - SDL_GetNumDisplayModes
    - SDL_GetDisplayMode
    - SDL_VideoModeOK
    - SDL_GetCurrentDisplayMode
    - SDL_SetWindowDisplayMode
    - SDL_SetVideoMode
    - SDLVid_ResizeWindow
    - SDLVid_DestroyObjects
    - gf_mx_p
    - gf_mx_v
    - SDLVID
    - memset
    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_VERSION_ATLEAST
    - gf_free
    - gf_malloc
    - SDL_DestroyTexture
    - SDL_SetRenderDrawColor
    - SDL_CreateTexture
    - SDL_MapRGB
    - SDL_FreeSurface
    - SDL_RenderPresent
    - SDL_FillRect
    - SDL_CreateRGBSurface
    - SDL_RenderClear
    - strcmp
    - SDLVID
    - gf_module_get_key
    - SDL_Flip
    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_UpdateTexture
    - SDL_RenderCopy
    - SDL_RenderReadPixels
    - SDLVID
    - memset
    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:
    - SDL_UnlockSurface
    - SDL_LockSurface
    - SDLVid_MapPixelFormat
    - SDLVID
    - memset
    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:
    - SDL_UpdateTexture
    - GF_LOG
    - SDL_RenderCopy
    - SDL_RenderPresent
    - SDL_GL_SwapWindow
    - CGLSetParameter
    - gpac_on_video_swap
    - SDL_RenderReadPixels
    - CGLGetCurrentContext
    - SDLVID
    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:
    - SDL_GL_SwapBuffers
    - SDL_UnlockSurface
    - SDL_LockSurface
    - SDLVid_MapPixelFormat
    - gf_stretch_bits
    - SDLVID
    - memset
    - SDL_BlitSurface
    - SDL_Flip
    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:
    - SDLVid_ProcessMessageQueue
    - SDL_SetWindowPosition
    - SDLVid_SetBackbufferSize
    - SDLVid_ResizeWindow
    - SDL_SetHint
    - SDL_StartTextInput
    - SDL_WM_SetCaption
    - SDL_GetError
    - SDL_StopTextInput
    - SDL_GetWindowPosition
    - SDLVid_ProcessEvent
    - SDLVID
    - SDL_GL_MakeCurrent
    - SDLVid_SetCursor
    - SDL_VERSION_ATLEAST
    - GF_LOG
    - SDLVid_ResetWindow
    - get_sys_col
    - SDL_SetWindowTitle
    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_GetError
    - SDL_VERSION_ATLEAST
    - SDL_UpdateTexture
    - SDL_SetRenderDrawColor
    - SDL_RenderCopy
    - GF_LOG
    - SDL_DestroyTexture
    - SDL_CreateTexture
    - SDL_UnlockTexture
    - SDL_RenderFillRect
    - SDL_RenderClear
    - SDL_QueryTexture
    - SDL_SetTextureBlendMode
    - SDL_SetTextureAlphaMod
    - gf_stretch_bits
    - SDLVID
    - memset
    - SDL_LockTexture
    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_GetError
    - SDL_FreeYUVOverlay
    - SDL_UnlockSurface
    - SDL_LockSurface
    - GF_LOG
    - SDL_FreeSurface
    - SDL_UnlockYUVOverlay
    - SDL_LockYUVOverlay
    - SDL_CreateRGBSurface
    - SDL_DisplayYUVOverlay
    - gf_stretch_bits
    - SDLVID
    - memset
    - SDL_BlitSurface
    - SDL_CreateYUVOverlay
    - memcpy
    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
    - SDL_VERSION_ATLEAST
    - gf_malloc
    - gf_mx_new
    - gf_th_new
    - SDL_StartTextInput
    - SDLVid_MapPixelFormat
    - GF_REGISTER_MODULE_INTERFACE
    - SDL_EnableUNICODE
    - memset
    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_list_count
    - gf_free
    - gf_th_del
    - gf_list_del
    - gf_list_del_item
    - SDL_QuitSubSystem
    - SDLVID
    - 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
    - SDLAUD
    - GF_AudioOutput*::FillBuffer
    - memset
    - 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:
    - GF_LOG
    - sdl_close_audio
    - SDLOUT_InitSDL
    - SDL_InitSubSystem
    - SDLAUD
    - SDL_QuitSubSystem
    - SDL_OpenAudio
    - SDL_WasInit
    - memset
    - SDLOUT_CloseSDL
    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
    - SDL_QuitSubSystem
    - SDLAUD
    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_VERSION_ATLEAST
    - GF_LOG
    - sdl_close_audio
    - SDLAUD
    - SDL_OpenAudio
    - memset
    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:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gpac_force_step_mode
    - 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_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    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_count
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_get_ipid
    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::FillRectangle
    - SET_DRAWING_FLAGS
    - DirectFBVidCtx*::primary::SetColor
    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::FillRectangle
    - SET_DRAWING_FLAGS
    - DirectFBVidCtx*::primary::SetColor
    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::FillRectangle
    - SET_DRAWING_FLAGS
    - DirectFBVidCtx*::primary::SetColor
    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:
    - DirectFBSetOption
    - strdup
    - DirectFBVidCtx*::dfb::GetInputDevice
    - strlwr
    - malloc
    - DirectFBVidCtx*::primary::GetSize
    - DirectFBVidCtx*::dfb::CreateSurface
    - DirectFBVidCtx*::primary::GetPixelFormat
    - DirectFBVidCtx*::dfb::CreateInputEventBuffer
    - DirectFBCreate
    - DirectFBVid_TranslatePixelFormatToGPAC
    - DirectFBInit
    - snprintf
    - DirectFBVidCtx*::dfb::EnumInputDevices
    - DFBCHECK
    - DirectFBVidCtx*::dfb::SetCooperativeLevel
    - free
    - DirectFBVidCtx*::primary::Clear
    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*::events::Release
    - DirectFBVidCtx*::dfb::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
    - DirectFBVid_TranslatePixelFormatFromGPAC
    - DirectFBVidCtx*::dfb::CreateSurface
    - DirectFBVidCtx*::primary::StretchBlit
    - DirectFBVidCtx*::primary::Blit
    - memset
    - IDirectFBSurface*::Release
    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:
    - directfb_translate_key
    - DFB_EVENT
    - DirectFBVidCtx*::events::GetEvent
    - DirectFBVidCtx*::mouse::GetXY
    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
    - GF_LOG
    - DirectFBVID
    - DirectFBVid_CtxSetIsInit
    - DirectFBVid_CtxSetFlipMode
    - strcmp
    - gf_module_get_key
    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
    - DirectFBVid_ShutdownWrapper
    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:
    - GF_LOG
    - DirectFBVID
    - DirectFBVid_CtxPrimaryFlip
    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
    - DirectFBVid_CtxGetWidth
    - DirectFBVid_CtxGetHeight
    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
    - GF_VideoOutput*::on_event
    - DirectFBVid_ProcessMessageQueueWrapper
    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:
    - GF_VideoOutput*::on_event
    - DirectFBVid_CtxGetWidth
    - DirectFBVid_ProcessMessageQueue
    - DirectFBVID
    - DirectFBVid_CtxGetHeight
    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_CtxIsHwMemory
    - DirectFBVid_CtxPrimaryUnlock
    - DirectFBVid_CtxGetWidth
    - GF_LOG
    - DirectFBVid_CtxGetPixelFormat
    - memset
    - DirectFBVid_CtxPrimaryLock
    - DirectFBVid_CtxGetPrimary
    - DirectFBVID
    - DirectFBVid_CtxGetHeight
    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
    - DirectFBVid_BlitWrapper
    - 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
    - gf_malloc
    - DirectFBVid_GetCtxSizeOf
    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:
    - DirectFBVID
    - gf_free
    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
    - gf_sleep
    - CloseHandle
    - waveOutReset
    - SetEvent
    - waveOutClose
    - WAVCTX
    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:
    - CreateEvent
    - waveOutPrepareHeader
    - gf_malloc
    - waveOutWrite
    - Sleep
    - waveOutOpen
    - close_waveform
    - memset
    - gf_audio_fmt_bit_depth
    - WAVCTX
    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:
    - WaitForSingleObject
    - waveOutWrite
    - waveOutUnprepareHeader
    - GF_AudioOutput*::FillBuffer
    - waveOutPrepareHeader
    - WAVCTX
    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:
    - memset
    - waveOutPause
    - WAVCTX
    - waveOutRestart
    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:
    - set_vol_pan
    - WAVCTX
    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:
    - set_vol_pan
    - WAVCTX
    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:46,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pData
    - ctx
    argTypes:
    - DtMxData*
    - DtCbkCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 47
    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:51,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:58,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:64,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:69,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:76,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:80,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:83,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:85,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:88,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:98,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:100,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:102,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:104,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:106,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:110,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:111,1
    - Dst: _mm_set1_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:138,1
    - Dst: _mm_set1_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:139,1
    - Dst: _mm_storeu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:142,1
    - Dst: _mm_max_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:142,1
    - Dst: _mm_min_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:142,1
    - Dst: _mm_loadu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:142,1
    - Dst: _mm_storeu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:147,1
    - Dst: _mm_max_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:147,1
    - Dst: _mm_min_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:147,1
    - Dst: _mm_loadu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:147,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:150,1
    - Dst: _mm_storeu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:160,1
    - Dst: _mm_max_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:160,1
    - Dst: _mm_min_epi16
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:160,1
    - Dst: _mm_loadu_si128
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:160,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:162,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:168,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:173,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:179,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:249,1
    - Dst: memcpy
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:250,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:254,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:254,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:255,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 137
    argCount: 2
    argNames:
    - pData
    - cbck
    argTypes:
    - DtMxData*
    - DtCbkCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 257
    functionName: OnNewFrameVideo
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_sys_clock_high_res
    - _mm_min_epi16
    - gf_filter_pck_get_data
    - _mm_loadu_si128
    - _mm_set1_epi16
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pid_drop_packet
    - _mm_storeu_si128
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_frame_interface
    - memcpy
    - _mm_max_epi16
    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:262,1
    - Dst: OnNewFrameAudio
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:264,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - pData
    - pOpaque
    argTypes:
    - DtMxData*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 265
    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:269,1
    - Dst: DtMxProcess*::Stop
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:273,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:275,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:275,1
    - Dst: DtMxProcess*::Reset
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:277,1
    - Dst: GF_DTOutCtx*::dt_device::Detach
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DTOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 280
    functionName: dtout_disconnect
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - GF_LOG
    - DtMxProcess*::Stop
    - DtMxProcess*::Reset
    - GF_DTOutCtx*::dt_device::Detach
    - DtapiResult2Str
    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:290,1
    - Dst: dtout_disconnect
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:302,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:307,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:328,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:335,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:337,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:339,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:353,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:355,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:357,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:359,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:361,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:395,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:402,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:416,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:420,1
    - Dst: DtMxProcess*::Stop
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:424,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:426,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:426,1
    - Dst: DtMxProcess*::Reset
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:429,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:472,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:516,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:530,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:532,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:532,1
    - Dst: DtapiVidStd2IoStd
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:537,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:539,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:539,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:543,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:545,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:545,1
    - Dst: DtMxPort::AddPhysicalPort
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:548,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:550,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:559,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:561,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:561,1
    - Dst: DtapiVidStd2IoStd
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:567,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:569,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:569,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:575,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:577,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:577,1
    - Dst: DtMxPort::AddPhysicalPort
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:583,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:585,1
    - Dst: std::vector::push_back
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:610,1
    - Dst: ::DtapiGetVidStdInfo
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:618,1
    - Dst: std::vector::push_back
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:633,1
    - Dst: DtDevice*::SetIoConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:635,1
    - Dst: std::vector::data
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:635,1
    - Dst: std::vector::size
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:635,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:637,1
    - Dst: GF_DTOutCtx*::dt_matrix::AttachRowToOutput
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:643,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:645,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:645,1
    - Dst: DtMxRowConfig::m_Audio::push_back
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:675,1
    - Dst: GF_DTOutCtx*::dt_matrix::SetRowConfig
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:679,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:681,1
    - Dst: GF_DTOutCtx*::dt_matrix::GetDefEndToEndDelay
      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_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:692,1
    - Dst: GF_DTOutCtx*::dt_matrix::SetEndToEndDelay
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:694,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:696,1
    - Dst: GF_DTOutCtx*::dt_matrix::AddMatrixCbFunc
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:700,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:702,1
    - Dst: GF_DTOutCtx*::dt_matrix::AddMatrixCbFunc
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:705,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:707,1
    - Dst: GF_DTOutCtx*::dt_matrix::Start
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:715,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:717,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:717,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:720,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: 724
      start: 283
    functionDepth: 2
    functionLinenumber: 283
    functionLinenumberEnd: 724
    functionName: dtout_configure_pid
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - dtout_disconnect
    - GF_DTOutCtx*::dt_matrix::AttachRowToOutput
    - GF_FEVT_INIT
    - DtMxProcess*::Reset
    - DtapiVidStd2IoStd
    - gf_filter_pid_send_event
    - GF_DTOutCtx*::dt_matrix::AddMatrixCbFunc
    - std::vector::size
    - DtMxRowConfig::m_Audio::push_back
    - gf_filter_get_udta
    - GF_DTOutCtx*::dt_matrix::SetEndToEndDelay
    - DtDevice*::SetIoConfig
    - DtMxPort::AddPhysicalPort
    - GF_DTOutCtx*::dt_matrix::Start
    - DtMxProcess*::Stop
    - std::vector::data
    - gf_filter_pid_negotiate_property
    - DtapiResult2Str
    - GF_DTOutCtx*::dt_matrix::SetRowConfig
    - std::vector::push_back
    - ::DtapiGetVidStdInfo
    - gf_filter_pid_init_play_event
    - GF_LOG
    - gf_pixel_get_size_info
    - GF_DTOutCtx*::dt_matrix::GetDefEndToEndDelay
    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:728,1
    - Dst: DtDevice::DtDevice
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:731,1
    - Dst: DtMxProcess::DtMxProcess
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:732,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:734,1
    - Dst: GF_DTOutCtx*::dt_device::AttachToSlot
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:746,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:748,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:748,1
    - Dst: GF_DTOutCtx*::dt_device::AttachToType
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:755,1
    - Dst: GF_DTOutCtx*::dt_device::AttachToType
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:756,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:759,1
    - Dst: DtapiResult2Str
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:759,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 726
    functionDepth: 1
    functionLinenumber: 726
    functionLinenumberEnd: 763
    functionName: dtout_initialize
    functionSourceFile: /src/gpac/modules/dektec_out/dektec_video.cpp
    functionUses: 0
    functionsReached:
    - GF_DTOutCtx*::dt_device::AttachToSlot
    - gf_filter_get_udta
    - GF_LOG
    - DtMxProcess::DtMxProcess
    - GF_DTOutCtx*::dt_device::AttachToType
    - DtapiResult2Str
    - DtDevice::DtDevice
    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:767,1
    - Dst: dtout_disconnect
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 765
    functionDepth: 2
    functionLinenumber: 765
    functionLinenumberEnd: 774
    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:780,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:783,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:784,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/modules/dektec_out/dektec_video.cpp:789,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 778
    functionDepth: 1
    functionLinenumber: 778
    functionLinenumberEnd: 791
    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:
    - GF_LOG
    - memset
    - dx_copy_pixels
    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:
    - fopen
    - sprintf
    - DtFrameBuffer*::Start
    - fclose
    - GF_LOG
    - DtFrameBuffer*::WaitFrame
    - DtFrameBuffer*::WriteVideo
    - fwrite
    - DtFrameBuffer*::AncCommit
    - assert
    - DtapiResult2Str
    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
    - DtContext*::dvc::Detach
    - GF_LOG
    - DtapiResult2Str
    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:
    - memset
    - gf_free
    - 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:
    - DtFrameBuffer*::AttachToOutput
    - GF_LOG
    - Dektec_resize
    - DtDevice*::AttachToSerial
    - DtDevice*::SetIoConfig
    - DtFrameBuffer*::SetIoConfig
    - gf_module_get_int
    - DtapiVidStd2IoStd
    - DtDevice*::AttachToType
    - DtapiResult2Str
    - DtDevice*::AttachToSlot
    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_malloc
    - GF_LOG
    - DtFrameBuffer::DtFrameBuffer
    - GF_REGISTER_MODULE_INTERFACE
    - DtContext::DtContext
    - memset
    - DtDevice::DtDevice
    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:
    - gf_opts_get_bool
    - memset
    - dtout_process_dummy
    - dtout_config_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:
    - gf_strdup
    - gf_free
    - isBestFontFor
    linkageType: ''
    returnType: void
    signature: void setBestFont(const char * listOfFonts[], char ** currentBestFont,
      const char * fontName)
  - BBCount: 29
    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_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:140,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:145,1
    - Dst: strupr
      Src: /src/gpac/modules/ft_font/ft_font.c:146,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:147,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:148,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:150,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/ft_font/ft_font.c:151,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/ft_font/ft_font.c:152,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:154,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/ft_font/ft_font.c:159,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/ft_font/ft_font.c:160,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:162,1
    - Dst: FT_Select_Charmap
      Src: /src/gpac/modules/ft_font/ft_font.c:167,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:168,1
    - Dst: FT_Get_Char_Index
      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: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:172,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:179,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:179,1
    - Dst: FT_Select_Charmap
      Src: /src/gpac/modules/ft_font/ft_font.c:181,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:182,1
    - Dst: FT_Get_Char_Index
      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: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:187,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:188,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:191,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:192,1
    - Dst: strlwr
      Src: /src/gpac/modules/ft_font/ft_font.c:193,1
    - Dst: setBestFont
      Src: /src/gpac/modules/ft_font/ft_font.c:196,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:199,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:201,1
    - Dst: FT_Done_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:204,1
    - Dst: FT_New_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:208,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 83
    argCount: 4
    argNames:
    - cbck
    - file_name
    - file_path
    - file_info
    argTypes:
    - void*
    - char*
    - char*
    - GF_FileEnumInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 212
    functionName: ft_enum_fonts
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strlwr
    - strupr
    - GF_LOG
    - FT_Done_Face
    - FT_New_Face
    - setBestFont
    - FT_Get_Char_Index
    - gf_dynstrcat
    - gf_strdup
    - FT_Select_Charmap
    - strstr
    - gf_opts_set_key
    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:216,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:217,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:218,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: 219
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 219
    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:229,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:229,1
    - Dst: gf_opts_del_section
      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:232,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:233,1
    - Dst: gf_free
      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:242,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:246,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/ft_font/ft_font.c:248,1
    - Dst: gf_dir_exists
      Src: /src/gpac/modules/ft_font/ft_font.c:250,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:251,1
    - Dst: gf_enum_directory
      Src: /src/gpac/modules/ft_font/ft_font.c:252,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:256,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_opts_get_key_count
      Src: /src/gpac/modules/ft_font/ft_font.c:264,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/modules/ft_font/ft_font.c:268,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:270,1
    - Dst: strchr
      Src: /src/gpac/modules/ft_font/ft_font.c:271,1
    - Dst: strchr
      Src: /src/gpac/modules/ft_font/ft_font.c:271,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:273,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:274,1
    - Dst: gf_strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:276,1
    - Dst: gf_strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:277,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:278,1
    - Dst: gf_strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:281,1
    - Dst: gf_strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:282,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:283,1
    - Dst: gf_strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:286,1
    - Dst: gf_strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:287,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:288,1
    - Dst: gf_strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:291,1
    - Dst: strlwr
      Src: /src/gpac/modules/ft_font/ft_font.c:292,1
    - Dst: isBestFontFor
      Src: /src/gpac/modules/ft_font/ft_font.c:295,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:295,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:295,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:296,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:297,1
    - Dst: isBestFontFor
      Src: /src/gpac/modules/ft_font/ft_font.c:300,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:300,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:301,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:302,1
    - Dst: isBestFontFor
      Src: /src/gpac/modules/ft_font/ft_font.c:305,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:305,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:306,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:307,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:311,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:312,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:313,1
    - Dst: gf_opts_set_key
      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:316,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:317,1
    - Dst: gf_opts_save
      Src: /src/gpac/modules/ft_font/ft_font.c:318,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:320,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 89
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 321
    functionName: ft_rescan_fonts
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_opts_del_section
    - strlwr
    - gf_opts_get_key_count
    - gf_opts_save
    - strstr
    - gf_enum_directory
    - gf_opts_set_key
    - strchr
    - gf_opts_get_key_name
    - gf_dir_exists
    - gf_list_get
    - gf_strcpy
    - gf_free
    - GF_LOG
    - gf_strcat
    - isBestFontFor
    - gf_strdup
    - gf_opts_get_key
    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:333,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:334,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/modules/ft_font/ft_font.c:338,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:341,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:342,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:347,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:349,1
    - Dst: strchr
      Src: /src/gpac/modules/ft_font/ft_font.c:355,1
    - Dst: gf_strcpy
      Src: /src/gpac/modules/ft_font/ft_font.c:358,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:359,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:359,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:360,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:362,1
    - Dst: gf_strcat
      Src: /src/gpac/modules/ft_font/ft_font.c:366,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/ft_font/ft_font.c:369,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:369,1
    - Dst: ft_rescan_fonts
      Src: /src/gpac/modules/ft_font/ft_font.c:378,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:381,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:382,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:386,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:387,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:391,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:392,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:394,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:394,1
    - Dst: gf_list_get
      Src: /src/gpac/modules/ft_font/ft_font.c:394,1
    - Dst: GF_FontReader*::set_font
      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:397,1
    - Dst: GF_FontReader*::set_font
      Src: /src/gpac/modules/ft_font/ft_font.c:398,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:404,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_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:419,1
    - Dst: gf_get_default_font_dir
      Src: /src/gpac/modules/ft_font/ft_font.c:428,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:429,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:433,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:434,1
    - Dst: gf_list_count
      Src: /src/gpac/modules/ft_font/ft_font.c:436,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:437,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/modules/ft_font/ft_font.c:437,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 96
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 443
    functionName: ft_init_font_engine
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_opts_get_key_count
    - gf_list_add
    - gf_opts_set_key
    - gf_get_default_font_dir
    - strchr
    - gf_list_get
    - gf_strcpy
    - ft_rescan_fonts
    - GF_FontReader*::set_font
    - strcmp
    - strlen
    - gf_list_pop_back
    - FT_Init_FreeType
    - gf_free
    - GF_LOG
    - gf_strcat
    - gf_strdup
    - gf_opts_get_key
    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:451,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/modules/ft_font/ft_font.c:452,1
    - Dst: FT_Done_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:453,1
    - Dst: FT_Done_FreeType
      Src: /src/gpac/modules/ft_font/ft_font.c:457,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - dr
    argTypes:
    - GF_FontReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 460
    functionName: ft_shutdown_font_engine
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - FT_Done_Face
    - gf_list_pop_front
    - FT_Done_FreeType
    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:468,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:471,1
    - Dst: strupr
      Src: /src/gpac/modules/ft_font/ft_font.c:472,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:473,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:474,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:475,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:480,1
    - Dst: strupr
      Src: /src/gpac/modules/ft_font/ft_font.c:481,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:482,1
    - Dst: strstr
      Src: /src/gpac/modules/ft_font/ft_font.c:483,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:484,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 3
    argNames:
    - font
    - fontName
    - styles
    argTypes:
    - FT_Face
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 495
    functionName: ft_check_face
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strupr
    - stricmp
    - gf_strdup
    - strstr
    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:502,1
    - Dst: ft_check_face
      Src: /src/gpac/modules/ft_font/ft_font.c:503,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ft
    - fontName
    - styles
    argTypes:
    - FTBuilder*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 497
    functionDepth: 1
    functionLinenumber: 497
    functionLinenumberEnd: 506
    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: 27
    BranchProfiles: []
    Callsites:
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:523,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:526,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:526,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:531,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:531,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:536,1
    - Dst: stricmp
      Src: /src/gpac/modules/ft_font/ft_font.c:536,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:542,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:543,1
    - Dst: strcmp
      Src: /src/gpac/modules/ft_font/ft_font.c:544,1
    - Dst: ft_font_in_cache
      Src: /src/gpac/modules/ft_font/ft_font.c:548,1
    - Dst: strlen
      Src: /src/gpac/modules/ft_font/ft_font.c:552,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:554,1
    - Dst: ft_rescan_fonts
      Src: /src/gpac/modules/ft_font/ft_font.c:555,1
    - Dst: ft_set_font
      Src: /src/gpac/modules/ft_font/ft_font.c:556,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:564,1
    - Dst: gf_strdup
      Src: /src/gpac/modules/ft_font/ft_font.c:565,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/ft_font/ft_font.c:566,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/modules/ft_font/ft_font.c:567,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/modules/ft_font/ft_font.c:569,1
    - Dst: ft_font_in_cache
      Src: /src/gpac/modules/ft_font/ft_font.c:576,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:578,1
    - Dst: FT_New_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:583,1
    - Dst: ft_check_face
      Src: /src/gpac/modules/ft_font/ft_font.c:591,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:592,1
    - Dst: gf_list_add
      Src: /src/gpac/modules/ft_font/ft_font.c:593,1
    - Dst: FT_Done_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:597,1
    - Dst: FT_New_Face
      Src: /src/gpac/modules/ft_font/ft_font.c:601,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:622,1
    - Dst: gf_error_to_string
      Src: /src/gpac/modules/ft_font/ft_font.c:622,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:624,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:627,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/modules/ft_font/ft_font.c:628,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 99
    argCount: 3
    argNames:
    - dr
    - OrigFontName
    - styles
    argTypes:
    - GF_FontReader*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 510
    functionDepth: 2
    functionLinenumber: 510
    functionLinenumberEnd: 630
    functionName: ft_set_font
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 1
    functionsReached:
    - gf_opts_set_key
    - ft_rescan_fonts
    - gf_free
    - ft_set_font
    - ft_font_in_cache
    - GF_LOG
    - FT_Done_Face
    - FT_New_Face
    - stricmp
    - ft_check_face
    - gf_dynstrcat
    - strcmp
    - strlen
    - gf_strdup
    - gf_list_add
    - gf_opts_get_key
    - gf_error_to_string
    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:642,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: 646
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 646
    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:661,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/modules/ft_font/ft_font.c:670,1
    - Dst: gf_utf8_reorder_bidi
      Src: /src/gpac/modules/ft_font/ft_font.c:676,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: 683
      start: 649
    functionDepth: 1
    functionLinenumber: 649
    functionLinenumberEnd: 683
    functionName: ft_get_glyphs
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_utf8_mbstowcs
    - gf_utf8_reorder_bidi
    - 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:707,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:707,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:707,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - to
    - user
    argTypes:
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 704
    functionDepth: 1
    functionLinenumber: 704
    functionLinenumberEnd: 711
    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:717,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/modules/ft_font/ft_font.c:719,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:719,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:719,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - to
    - user
    argTypes:
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 713
    functionDepth: 1
    functionLinenumber: 713
    functionLinenumberEnd: 722
    functionName: ft_line_to
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_path_close
    - INT2FIX
    - gf_path_add_line_to
    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:727,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:727,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:727,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:727,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:727,1
    - Dst: gf_path_close
      Src: /src/gpac/modules/ft_font/ft_font.c:728,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - control
    - to
    - user
    argTypes:
    - FTCST*
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 724
    functionDepth: 1
    functionLinenumber: 724
    functionLinenumberEnd: 730
    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:735,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:735,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:735,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:735,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:735,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:735,1
    - Dst: INT2FIX
      Src: /src/gpac/modules/ft_font/ft_font.c:735,1
    - Dst: gf_path_close
      Src: /src/gpac/modules/ft_font/ft_font.c:736,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - c1
    - c2
    - to
    - user
    argTypes:
    - FTCST*
    - FTCST*
    - FTCST*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 732
    functionDepth: 1
    functionLinenumber: 732
    functionLinenumberEnd: 738
    functionName: ft_cubic_to
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_path_add_cubic_to
    - gf_path_close
    - 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:753,1
    - Dst: FT_Get_Char_Index
      Src: /src/gpac/modules/ft_font/ft_font.c:755,1
    - Dst: GF_LOG
      Src: /src/gpac/modules/ft_font/ft_font.c:758,1
    - Dst: FT_Load_Glyph
      Src: /src/gpac/modules/ft_font/ft_font.c:763,1
    - Dst: FT_Get_Glyph
      Src: /src/gpac/modules/ft_font/ft_font.c:765,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/ft_font/ft_font.c:771,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/modules/ft_font/ft_font.c:773,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:775,1
    - Dst: FT_Outline_Decompose
      Src: /src/gpac/modules/ft_font/ft_font.c:789,1
    - Dst: FT_Glyph_Get_CBox
      Src: /src/gpac/modules/ft_font/ft_font.c:791,1
    - Dst: FT_Done_Glyph
      Src: /src/gpac/modules/ft_font/ft_font.c:803,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 39
    argCount: 2
    argNames:
    - dr
    - glyph_name
    argTypes:
    - GF_FontReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 741
    functionDepth: 1
    functionLinenumber: 741
    functionLinenumberEnd: 805
    functionName: ft_load_glyph
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - FT_Glyph_Get_CBox
    - gf_free
    - FT_Get_Glyph
    - GF_LOG
    - FT_Done_Glyph
    - FT_Load_Glyph
    - GF_SAFEALLOC
    - FT_Get_Char_Index
    - FT_Select_Charmap
    - FT_Outline_Decompose
    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:812,1
    - Dst: memset
      Src: /src/gpac/modules/ft_font/ft_font.c:813,1
    - Dst: GF_REGISTER_MODULE_INTERFACE
      Src: /src/gpac/modules/ft_font/ft_font.c:814,1
    - Dst: gf_malloc
      Src: /src/gpac/modules/ft_font/ft_font.c:816,1
    - Dst: memset
      Src: /src/gpac/modules/ft_font/ft_font.c:817,1
    - Dst: gf_list_new
      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
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 808
    functionDepth: 1
    functionLinenumber: 808
    functionLinenumberEnd: 833
    functionName: ft_load
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_REGISTER_MODULE_INTERFACE
    - gf_malloc
    - gf_list_new
    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:841,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/modules/ft_font/ft_font.c:842,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:844,1
    - Dst: gf_list_del
      Src: /src/gpac/modules/ft_font/ft_font.c:847,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:849,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:850,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_list_del
      Src: /src/gpac/modules/ft_font/ft_font.c:853,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:855,1
    - Dst: gf_free
      Src: /src/gpac/modules/ft_font/ft_font.c:856,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 836
    functionDepth: 1
    functionLinenumber: 836
    functionLinenumberEnd: 857
    functionName: ft_delete
    functionSourceFile: /src/gpac/modules/ft_font/ft_font.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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: 869
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 869
    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:874,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 871
    functionDepth: 2
    functionLinenumber: 871
    functionLinenumberEnd: 876
    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:883,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 886
      start: 878
    functionDepth: 2
    functionLinenumber: 878
    functionLinenumberEnd: 886
    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:
    - NewGlobalRef
    - GF_LOG
    - GetEnv
    - FindClass
    - GetMethodID
    - 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:
    - GF_LOG
    - GetJavaVM
    - GetEnv
    - AttachCurrentThread
    - DetachCurrentThread
    - CallNonvirtualVoidMethod
    - DeleteGlobalRef
    - PopLocalFrame
    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
    - GetJavaVM
    - AttachCurrentThread
    - CallNonvirtualVoidMethod
    - NewObject
    - CallStaticIntMethod
    - NewByteArray
    - NewShortArray
    - PushLocalFrame
    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:
    - GF_LOG
    - GetShortArrayElements
    - CallNonvirtualIntMethod
    - GF_AudioOutput*::FillBuffer
    - GetByteArrayElements
    - ReleaseByteArrayElements
    - ReleaseShortArrayElements
    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
    - CallNonvirtualVoidMethod
    - GetEnv
    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
    - CallNonvirtualIntMethod
    - GetEnv
    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:
    - GF_LOG
    - CallStaticIntMethod
    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:
    - GF_LOG
    - pa_simple_drain
    - pa_strerror
    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:
    - GF_LOG
    - pa_simple_new
    - pa_simple_free
    - pa_strerror
    - pa_simple_flush
    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:
    - gf_sleep
    - GF_LOG
    - pa_simple_write
    - GF_AudioOutput*::FillBuffer
    - pa_strerror
    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:
    - GF_LOG
    - pa_strerror
    - 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_SAFEALLOC
    - gf_free
    - GF_REGISTER_MODULE_INTERFACE
    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
    - gf_sk_receive_no_select
    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
    - Dst: MIN
      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_u8
    - gf_rtp_get_report_time
    - GF_LOG
    - gf_rtp_get_next_report_time
    - gf_gmtime
    - MIN
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_log_tool_level_on
    - gf_bs_read_u32
    - gf_bs_reassign_buffer
    - asctime
    - gf_bs_read_u16
    - gf_bs_skip_bytes
    - gf_bs_read_u24
    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_LOG
    - gf_bs_write_int
    - gf_gmtime
    - gf_net_get_ntp
    - gf_bs_write_u16
    - gf_log_tool_level_on
    - gf_bs_write_u32
    - gf_bs_write_u24
    - asctime
    - gf_bs_write_u8
    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_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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_u32
    - gf_bs_write_int
    - gf_bs_write_u8
    - 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_rtp_get_report_time
    - gf_sk_send
    - gf_free
    - RTCP_FormatBYE
    - RTCP_FormatSDES
    - gf_bs_get_content
    - gf_bs_new
    - GF_RTPChannel*::send_interleave
    - gf_bs_del
    - 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_rtp_get_report_time
    - gf_sk_send
    - gf_free
    - RTCP_FormatSDES
    - gf_bs_get_content
    - GF_LOG
    - gf_rtp_get_next_report_time
    - gf_bs_new
    - GF_RTPChannel*::send_interleave
    - gf_bs_del
    - 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: gf_strlcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:131,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:133,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:143,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/ietf/rtsp_session.c:149,1
    - Dst: MIN
      Src: /src/gpac/src/ietf/rtsp_session.c:153,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/ietf/rtsp_session.c:153,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:154,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:158,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 103
    argCount: 7
    argNames:
    - sURL
    - Server
    - Port
    - Service
    - useTCP
    - User
    - Pass
    argTypes:
    - char*
    - char[]
    - u16*
    - char[]
    - Bool*
    - char[]
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 163
    functionName: RTSP_UnpackURL
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - strchr
    - atoi
    - GF_ARRAY_LENGTH
    - stricmp
    - MIN
    - strrchr
    - strlen
    - strstr
    - gf_strlcpy
    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:178,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_session.c:181,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:186,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:187,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtsp_session.c:202,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/ietf/rtsp_session.c:207,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:209,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:210,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:212,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:214,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_session.c:215,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/ietf/rtsp_session.c:216,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 167
    functionDepth: 2
    functionLinenumber: 167
    functionLinenumberEnd: 218
    functionName: GF_RTSPSession *gf_rtsp_session_new(char *sURL, u16 DefaultPort)
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - RTSP_UnpackURL
    - gf_rtsp_set_buffer_size
    - strnicmp
    - GF_SAFEALLOC
    - gf_rtsp_session_reset
    - gf_list_new
    - gf_strdup
    - strncmp
    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: 224
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 224
    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: gf_strcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 238
    functionName: gf_rtsp_reset_aggregation
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - gf_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:242,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_session.c:243,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:244,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_session.c:245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 247
    functionName: RemoveTCPChannels
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_rem
    - gf_list_get
    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:257,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:260,1
    - Dst: gf_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:268,1
    - Dst: gf_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:272,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:283,1
    - Dst: RemoveTCPChannels
      Src: /src/gpac/src/ietf/rtsp_session.c:284,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/ietf/rtsp_session.c:292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:295,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - sess
    - ResetConnection
    argTypes:
    - GF_RTSPSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 250
    functionDepth: 2
    functionLinenumber: 250
    functionLinenumberEnd: 301
    functionName: gf_rtsp_session_reset
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - gf_sk_del
    - RemoveTCPChannels
    - GF_LOG
    - gf_opts_get_bool
    - gf_ssl_del
    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: 310
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 310
    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:318,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:320,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:321,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:322,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:323,1
    - Dst: gf_list_del
      Src: /src/gpac/src/ietf/rtsp_session.c:324,1
    - Dst: gf_free
      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_free
      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_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:333,1
    - Dst: gf_ssl_del
      Src: /src/gpac/src/ietf/rtsp_session.c:334,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:337,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 313
    functionDepth: 3
    functionLinenumber: 313
    functionLinenumberEnd: 338
    functionName: gf_rtsp_session_del
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_free
    - gf_list_del
    - gf_rtsp_session_reset
    - gf_ssl_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: 346
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 346
    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: 358
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 358
    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: 365
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 365
    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:375,1
    - Dst: strstr
      Src: /src/gpac/src/ietf/rtsp_session.c:377,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - sess
    - url
    argTypes:
    - GF_RTSPSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 379
    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: 386
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 386
    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: 394
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 394
    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: 400
      start: 396
    functionDepth: 0
    functionLinenumber: 396
    functionLinenumberEnd: 400
    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: 409
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 409
    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:506,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_session.c:511,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/ietf/rtsp_session.c:513,1
    - Dst: gf_rtsp_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:515,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:516,1
    - Dst: gf_rtsp_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:519,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - sess
    - buffer
    - Size
    argTypes:
    - GF_RTSPSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 521
    functionName: gf_rtsp_send_data
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_rtsp_write_sock
    - gf_rtsp_check_connection
    - gf_base64_encode
    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:528,1
    - Dst: gf_list_get
      Src: /src/gpac/src/ietf/rtsp_session.c:530,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/ietf/rtsp_session.c:536,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: 538
      start: 525
    functionDepth: 1
    functionLinenumber: 525
    functionLinenumberEnd: 538
    functionName: GetTCPChannel
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_rem
    - gf_list_get
    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:557,1
    - Dst: gf_rtsp_refill_buffer
      Src: /src/gpac/src/ietf/rtsp_session.c:559,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:562,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:562,1
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:570,1
    - Dst: GF_RTSPSession*::RTSP_SignalData
      Src: /src/gpac/src/ietf/rtsp_session.c:576,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:583,1
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:584,1
    - Dst: GF_RTSPSession*::RTSP_SignalData
      Src: /src/gpac/src/ietf/rtsp_session.c:587,1
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:594,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:597,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:599,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:608,1
    - Dst: GetTCPChannel
      Src: /src/gpac/src/ietf/rtsp_session.c:610,1
    - Dst: GF_RTSPSession*::RTSP_SignalData
      Src: /src/gpac/src/ietf/rtsp_session.c:613,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:619,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:624,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:627,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 64
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 541
    functionDepth: 2
    functionLinenumber: 541
    functionLinenumberEnd: 630
    functionName: gf_rtsp_do_deinterleave
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_fill_buffer
    - GF_LOG
    - gf_rtsp_refill_buffer
    - GetTCPChannel
    - gf_fatal_assert
    - GF_RTSPSession*::RTSP_SignalData
    - gf_realloc
    - memcpy
    - strncmp
    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:639,1
    - Dst: gf_rtsp_do_deinterleave
      Src: /src/gpac/src/ietf/rtsp_session.c:643,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 633
    functionDepth: 3
    functionLinenumber: 633
    functionLinenumberEnd: 648
    functionName: gf_rtsp_session_read
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_rtsp_do_deinterleave
    - gf_rtsp_fill_buffer
    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:658,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_session.c:659,1
    - Dst: gf_list_count
      Src: /src/gpac/src/ietf/rtsp_session.c:660,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - sess
    - LowInterID
    argTypes:
    - GF_RTSPSession*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 651
    functionDepth: 2
    functionLinenumber: 651
    functionLinenumberEnd: 663
    functionName: gf_rtsp_unregister_interleave
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - 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:673,1
    - Dst: gf_malloc
      Src: /src/gpac/src/ietf/rtsp_session.c:675,1
    - Dst: gf_list_add
      Src: /src/gpac/src/ietf/rtsp_session.c:679,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: 683
      start: 665
    functionDepth: 2
    functionLinenumber: 665
    functionLinenumberEnd: 683
    functionName: gf_rtsp_register_interleave
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_malloc
    - GetTCPChannel
    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:698,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - sess
    - SignalData
    argTypes:
    - GF_RTSPSession*
    - gf_rtsp_interleave_callback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 701
    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:709,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - sess
    - BufferSize
    argTypes:
    - GF_RTSPSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 711
    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:727,1
    - Dst: SSL_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:732,1
    - Dst: SSL_load_error_strings
      Src: /src/gpac/src/ietf/rtsp_session.c:738,1
    - Dst: ERR_error_string_n
      Src: /src/gpac/src/ietf/rtsp_session.c:739,1
    - Dst: ERR_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:739,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:741,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/ietf/rtsp_session.c:751,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: 752
      start: 713
    functionDepth: 1
    functionLinenumber: 713
    functionLinenumberEnd: 752
    functionName: rstp_do_write_sock
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - SSL_get_error
    - gf_sk_send_ex
    - GF_LOG
    - SSL_write
    - SSL_load_error_strings
    - ERR_get_error
    - ERR_error_string_n
    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:773,1
    - Dst: gf_rand
      Src: /src/gpac/src/ietf/rtsp_session.c:778,1
    - Dst: snprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:779,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/ietf/rtsp_session.c:779,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:781,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/ietf/rtsp_session.c:785,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtsp_session.c:789,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:791,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:792,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:793,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:794,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: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:799,1
    - Dst: rstp_do_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:802,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:802,1
    - Dst: gf_rstp_do_read_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:808,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtsp_session.c:810,1
    - Dst: gf_assert
      Src: /src/gpac/src/ietf/rtsp_session.c:814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:816,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:819,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:819,1
    - Dst: strncmp
      Src: /src/gpac/src/ietf/rtsp_session.c:819,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:819,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/ietf/rtsp_session.c:825,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:830,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/ietf/rtsp_session.c:837,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/ietf/rtsp_session.c:839,1
    - Dst: SSL_new
      Src: /src/gpac/src/ietf/rtsp_session.c:849,1
    - Dst: SSL_set_fd
      Src: /src/gpac/src/ietf/rtsp_session.c:850,1
    - Dst: gf_sk_get_handle
      Src: /src/gpac/src/ietf/rtsp_session.c:850,1
    - Dst: SSL_ctrl
      Src: /src/gpac/src/ietf/rtsp_session.c:851,1
    - Dst: SSL_set_connect_state
      Src: /src/gpac/src/ietf/rtsp_session.c:852,1
    - Dst: SSL_set_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:853,1
    - Dst: SSL_set_alpn_protos
      Src: /src/gpac/src/ietf/rtsp_session.c:854,1
    - Dst: SSL_connect
      Src: /src/gpac/src/ietf/rtsp_session.c:858,1
    - Dst: SSL_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:860,1
    - Dst: SSL_load_error_strings
      Src: /src/gpac/src/ietf/rtsp_session.c:863,1
    - Dst: ERR_error_string_n
      Src: /src/gpac/src/ietf/rtsp_session.c:864,1
    - Dst: ERR_get_error
      Src: /src/gpac/src/ietf/rtsp_session.c:864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:866,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:872,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:881,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/ietf/rtsp_session.c:884,1
    - Dst: memset
      Src: /src/gpac/src/ietf/rtsp_session.c:886,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:888,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:889,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:890,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:891,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: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:898,1
    - Dst: rstp_do_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:900,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_session.c:900,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 108
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 760
    functionDepth: 2
    functionLinenumber: 760
    functionLinenumberEnd: 901
    functionName: gf_rtsp_http_tunnel_setup
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - SSL_set_mode
    - gf_rand
    - gf_assert
    - gf_rand_init
    - SSL_set_connect_state
    - snprintf
    - gf_sk_connect
    - gf_sk_get_handle
    - SSL_load_error_strings
    - SSL_ctrl
    - SSL_new
    - ERR_error_string_n
    - SSL_set_alpn_protos
    - SSL_connect
    - SSL_get_error
    - gf_sys_clock_high_res
    - gf_sys_clock
    - gf_sk_set_block_mode
    - gf_sk_new_ex
    - strlen
    - SSL_set_fd
    - rstp_do_write_sock
    - ERR_get_error
    - sprintf
    - GF_LOG
    - gf_rstp_do_read_sock
    - gf_strdup
    - memset
    - gf_opts_get_key
    - strncmp
    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:923,1
    - Dst: gf_ssl_new
      Src: /src/gpac/src/ietf/rtsp_session.c:928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/ietf/rtsp_session.c:930,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/ietf/rtsp_session.c:930,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:931,1
    - Dst: SSL_set_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:934,1
    - Dst: gf_sk_get_local_info
      Src: /src/gpac/src/ietf/rtsp_session.c:938,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:940,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:943,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:945,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/ietf/rtsp_session.c:948,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/ietf/rtsp_session.c:950,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/ietf/rtsp_session.c:955,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/ietf/rtsp_session.c:965,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:967,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:969,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtsp_session.c:970,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/ietf/rtsp_session.c:970,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/ietf/rtsp_session.c:972,1
    - Dst: gf_list_new
      Src: /src/gpac/src/ietf/rtsp_session.c:973,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 908
    functionDepth: 1
    functionLinenumber: 908
    functionLinenumberEnd: 978
    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_del
    - gf_sk_get_local_info
    - gf_gpac_version
    - GF_LOG
    - gf_sk_accept
    - gf_rtsp_set_buffer_size
    - gf_sk_set_block_mode
    - gf_list_new
    - GF_SAFEALLOC
    - gf_ssl_new
    - gf_opts_get_key
    - gf_dynstrcat
    - gf_strdup
    - gf_sk_server_mode
    - SSL_set_mode
    - gf_error_to_string
    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:991,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:1000,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:1001,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - sess
    - URL
    argTypes:
    - GF_RTSPSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 982
    functionDepth: 2
    functionLinenumber: 982
    functionLinenumberEnd: 1003
    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:1017,1
    - Dst: gf_rand
      Src: /src/gpac/src/ietf/rtsp_session.c:1019,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtsp_session.c:1023,1
    - Dst: gf_strdup
      Src: /src/gpac/src/ietf/rtsp_session.c:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1006
    functionDepth: 0
    functionLinenumber: 1006
    functionLinenumberEnd: 1025
    functionName: gf_rtsp_generate_session_id
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sprintf
    - gf_rand
    - gf_rand_init
    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:1032,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:1033,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - sess
    - buffer
    argTypes:
    - GF_RTSPSession*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1035
      start: 1028
    functionDepth: 1
    functionLinenumber: 1028
    functionLinenumberEnd: 1035
    functionName: gf_rtsp_get_session_ip
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_sk_get_local_ip
    - gf_strlcpy
    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:1046,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1051
      start: 1039
    functionDepth: 1
    functionLinenumber: 1039
    functionLinenumberEnd: 1051
    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:1058,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - sess
    - buf
    argTypes:
    - GF_RTSPSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1059
      start: 1054
    functionDepth: 0
    functionLinenumber: 1054
    functionLinenumberEnd: 1059
    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:1065,1
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:1074,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:1077,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 3
    argNames:
    - sess
    - data
    - len
    argTypes:
    - GF_RTSPSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 1061
    functionDepth: 2
    functionLinenumber: 1061
    functionLinenumberEnd: 1080
    functionName: gf_rtsp_write_sock
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - memcpy
    - rstp_do_write_sock
    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:1094,1
    - Dst: gf_rtsp_write_sock
      Src: /src/gpac/src/ietf/rtsp_session.c:1095,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: 1097
      start: 1082
    functionDepth: 3
    functionLinenumber: 1082
    functionLinenumberEnd: 1097
    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:1104,1
    - Dst: memmove
      Src: /src/gpac/src/ietf/rtsp_session.c:1114,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1100
    functionDepth: 2
    functionLinenumber: 1100
    functionLinenumberEnd: 1118
    functionName: gf_rstp_flush_buffer
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - memmove
    - rstp_do_write_sock
    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: 1123
      start: 1120
    functionDepth: 0
    functionLinenumber: 1120
    functionLinenumberEnd: 1123
    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:1129,1
    - Dst: gf_realloc
      Src: /src/gpac/src/ietf/rtsp_session.c:1138,1
    - Dst: memcpy
      Src: /src/gpac/src/ietf/rtsp_session.c:1141,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - sess
    - post_sess
    argTypes:
    - GF_RTSPSession*
    - GF_RTSPSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1125
    functionDepth: 0
    functionLinenumber: 1125
    functionLinenumberEnd: 1154
    functionName: gf_rtsp_merge_tunnel
    functionSourceFile: /src/gpac/src/ietf/rtsp_session.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - memcpy
    - strcmp
    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: 1159
      start: 1156
    functionDepth: 0
    functionLinenumber: 1156
    functionLinenumberEnd: 1159
    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: 1163
      start: 1160
    functionDepth: 0
    functionLinenumber: 1160
    functionLinenumberEnd: 1163
    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_SAFEALLOC
    - gf_rand
    - gf_bs_new
    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: 0
    functionsReached:
    - gf_sk_del
    - gf_free
    - 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: 0
    functionsReached:
    - gf_strdup
    - gf_sk_is_multicast_address
    - gf_free
    - memcpy
    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_rtp_reorderer_reset
    - gf_sk_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: gf_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: gf_strlcpy
      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: 0
    functionsReached:
    - gf_rtp_reorderer_new
    - gf_sk_setup_multicast_ex
    - gf_sk_bind
    - gf_sk_get_local_ip
    - gf_malloc
    - gf_sk_set_buffer_size
    - gf_sk_is_multicast_address
    - gf_get_user_name
    - gf_log_tool_level_on
    - gf_sk_new_ex
    - strlen
    - gf_strlcpy
    - gf_rtp_reorderer_del
    - gf_sk_del
    - gf_free
    - gf_sk_setup_multicast
    - gf_strcat
    - GF_LOG
    - stricmp
    - gf_strdup
    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_rtp_get_report_time
    - gf_rand
    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_rtp_reorderer_get
    - memcpy
    - gf_free
    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_rtp_reorderer_get
    - memcpy
    - gf_free
    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_sk_receive
    - gf_sk_send
    - GF_LOG
    - gf_error_to_string
    - gf_sys_clock
    - gf_rtp_reorderer_add
    - gf_rtp_reorderer_get
    - memcpy
    - gf_sk_receive_no_select
    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_LOG
    - gf_rtp_channel_time
    - gf_net_get_ntp
    - gf_bs_read_int
    - gf_log_tool_level_on
    - gf_bs_read_u32
    - gf_bs_reassign_buffer
    - gf_bs_read_u16
    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: 0
    functionsReached:
    - gf_bs_get_position
    - gf_sk_send
    - gf_bs_write_int
    - gf_rtp_get_next_report_time
    - gf_net_get_ntp
    - gf_rtp_send_rtcp_report
    - GF_RTPChannel*::send_interleave
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    - memcpy
    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: 0
    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_rtp_reorderer_reset
    - gf_free
    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:
    - gf_free
    - gf_malloc
    - GF_LOG
    - GF_4CC
    - memcpy
    - ABSDIFF
    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_LOG
    - gf_free
    - gf_sys_clock
    - gf_assert
    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_malloc
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_token_get
    - atof
    - gf_sdp_fmtp_new
    - gf_malloc
    - atoi
    - SDP_GetFMTPForPayload
    - strcmp
    - strlen
    - gf_strdup
    - gf_list_add
    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_list_count
    - gf_free
    - gf_list_del
    - gf_sdp_conn_del
    - gf_list_get
    - SDPM_DESTROY
    - gf_sdp_fmtp_del
    - gf_list_rem
    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_SAFEALLOC
    - gf_list_new
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - SDP_DESTROY
    - gf_sdp_conn_del
    - gf_sdp_media_del
    - gf_list_get
    - 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_list_del
    - gf_free
    - gf_sdp_info_reset
    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:
    - sprintf
    - gf_list_enum
    - strcmp
    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:
    - atoi
    - GF_LOG
    - MIN
    - gf_assert
    - strlen
    - memset
    - memcpy
    - strstr
    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: gf_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: gf_strcat
      Src: /src/gpac/src/ietf/sdp.c:757,1
    - Dst: gf_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:
    - SDP_ParseAttribute
    - gf_sdp_info_reset
    - SDP_IsDynamicPayload
    - GF_SAFEALLOC
    - gf_list_add
    - strstr
    - gf_sdp_conn_new
    - gf_token_get
    - SDP_MakeSeconds
    - gf_strcpy
    - gf_sk_is_multicast_address
    - atoi
    - gf_list_enum
    - gf_token_get_line
    - gf_sdp_conn_del
    - strcmp
    - strlen
    - gf_free
    - gf_strcat
    - gf_sys_is_cov_mode
    - gf_strdup
    - gf_sdp_media_new
    - gf_utf8_is_legal
    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:
    - gf_sdp_info_check
    - SDP_WRITE_ALLOC_INT
    - gf_malloc
    - SDP_WRITE_ALLOC_FLOAT
    - gf_list_enum
    - SDP_WRITE_ALLOC_STR
    - TEST_SDP_WRITE_SINGLE
    - SDP_WRITE_CONN
    - 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_get_position
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_align
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - 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_sampling_rate
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_mp3_num_channels
    - GF_4CC
    - gf_bs_new
    - gf_bs_del
    - gf_bs_read_u16
    - gf_mp3_window_size
    - gf_mp3_frame_size
    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_read_u8
    - gf_bs_get_position
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - 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_bs_get_position
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_free
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u24
    - 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_bs_get_position
    - gf_bs_read_u8
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_rtp_ttxt_flush
    - gf_assert
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_read_u16
    - gf_bs_available
    - gf_bs_skip_bytes
    - 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_bs_get_content
    - gf_bs_del
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_free
    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_RTPDepacketizer*::on_sl_packet
    - gf_bs_new
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_rtp_h264_flush
    - 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_bs_get_content
    - gf_bs_del
    - GF_RTPDepacketizer*::on_sl_packet
    - gf_free
    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_RTPDepacketizer*::on_sl_packet
    - gf_bs_new
    - gf_rtp_hevc_vvc_flush
    - gf_bs_write_u32
    - gf_bs_write_data
    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_RTPDepacketizer*::on_sl_packet
    - gf_bs_new
    - gf_rtp_hevc_vvc_flush
    - gf_bs_write_u32
    - gf_bs_write_data
    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_RTPDepacketizer*::on_sl_packet
    - gf_free
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_bs_read_u16
    linkageType: ''
    returnType: void
    signature: void gf_rtp_parse_3gpp_dims(GF_RTPDepacketizer *rtp, GF_RTPHeader *hdr,
      u8 *payload, u32 size)
  - BBCount: 11
    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: 11
    EdgeCount: 11
    ICount: 51
    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_RTPDepacketizer*::on_sl_packet
    - gf_eac3_parser
    - gf_ac3_parser
    - memset
    - gf_odf_ac3_cfg_write
    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
    - atoi
    - stricmp
    - gf_list_enum
    - gf_strdup
    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: gf_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_strcpy
    - gf_free
    - atoi
    - gf_bs_get_content
    - stricmp
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u8
    - strlen
    - gf_strdup
    - sscanf
    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_list_count
    - gf_bs_write_int
    - gf_bs_get_content
    - payt_set_param
    - gf_bs_new
    - gf_bs_del
    - GF_SAFEALLOC
    - gf_list_add
    - gf_bs_write_u8
    - gf_odf_avc_cfg_new
    - gf_odf_vvc_cfg_del
    - gf_odf_opus_cfg_write
    - gf_odf_vvc_cfg_new
    - strchr
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_odf_hevc_cfg_new
    - gf_list_get
    - memcpy
    - gf_odf_hevc_cfg_write
    - atoi
    - gf_list_enum
    - strnicmp
    - gf_bs_read_int
    - gf_bs_write_u24
    - gf_bs_write_data
    - gf_odf_avc_cfg_del
    - strlen
    - gf_list_new
    - sscanf
    - gf_free
    - gf_bs_align
    - gf_m4a_write_config
    - gf_odf_avc_cfg_write
    - GF_LOG
    - stricmp
    - gf_odf_vvc_cfg_write
    - gf_base64_decode
    - gf_bs_write_u16
    - memset
    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_list_count
    - strchr
    - gf_free
    - gf_rtp_is_valid_static_payt
    - atoi
    - GF_LOG
    - gf_rtp_payt_setup
    - gf_sys_is_cov_mode
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_get
    - gf_rtp_get_payload_type
    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_RTPDepacketizer*::depacketize
    - gf_assert
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_rtsp_transport_del
    - gf_list_get
    - RSP_FREE_CLEAN
    - 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_list_del
    - gf_rtsp_response_reset
    - gf_free
    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:
    - GF_SAFEALLOC
    - strstr
    - sscanf
    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:
    - gf_strdup
    - memcpy
    - 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: gf_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_strcpy
    - gf_token_get
    - gf_malloc
    - gf_rtsp_transport_parse
    - stricmp
    - strstr
    - strnicmp
    - gf_rtsp_range_parse
    - GF_SAFEALLOC
    - strlen
    - gf_strdup
    - gf_list_add
    - sscanf
    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_token_get
    - gf_rtsp_parse_header
    - atoi
    - gf_token_get_line
    - strcmp
    - gf_strdup
    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: gf_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:
    - gf_strcpy
    - gf_sk_del
    - gf_rtsp_read_reply
    - gf_rtsp_response_reset
    - gf_malloc
    - IsRTSPMessage
    - gf_rtsp_fill_buffer
    - GF_LOG
    - RTSP_ParseResponseHeader
    - stricmp
    - gf_rtsp_get_body_info
    - gf_rtsp_check_connection
    - gf_rtsp_session_reset
    - strcmp
    - gf_rtsp_get_response
    - gf_rtsp_session_read
    - memcpy
    - strncmp
    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:
    - gf_list_count
    - gf_malloc
    - gf_list_get
    - gf_rtsp_nc_to_string
    - RTSP_WRITE_INT
    - RTSP_WRITE_ALLOC_STR
    - RTSP_WRITE_FLOAT_WITHOUT_CHECK
    - RTSP_WRITE_HEX
    - strlen
    - RTSP_WRITE_HEADER
    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_LOG
    - gf_free
    - RTSP_WriteResponse
    - gf_rtsp_send_data
    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_get_body_info
    - gf_rtsp_refill_buffer
    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:
    - strchr
    - atoi
    - gf_token_find
    - strstr
    - strncmp
    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:
    - gf_sk_receive
    - SSL_get_error
    - gf_sk_probe
    - SSL_pending
    - SSL_read
    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_malloc
    - gf_rtsp_fill_buffer
    - gf_rstp_do_read_sock
    - memcpy
    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: gf_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_strcpy
    - gf_token_get
    - gf_free
    - stricmp
    - strnicmp
    - GF_SAFEALLOC
    - sscanf
    - gf_strdup
    - strstr
    linkageType: ''
    returnType: GF_RTSPTransport
    signature: GF_RTSPTransport *gf_rtsp_transport_parse(u8 *buffer)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/src/ietf/rtsp_common.c:294,1
    - Dst: gf_token_get_line
      Src: /src/gpac/src/ietf/rtsp_common.c:296,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:300,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:310,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_common.c:315,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_common.c:315,1
    - Dst: gf_strcat
      Src: /src/gpac/src/ietf/rtsp_common.c:318,1
    - Dst: gf_strcat
      Src: /src/gpac/src/ietf/rtsp_common.c:319,1
    - Dst: strlen
      Src: /src/gpac/src/ietf/rtsp_common.c:324,1
    - Dst: gf_rtsp_set_response_value
      Src: /src/gpac/src/ietf/rtsp_common.c:326,1
    - Dst: gf_rtsp_set_command_value
      Src: /src/gpac/src/ietf/rtsp_common.c:329,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/ietf/rtsp_common.c:336,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtsp_common.c:343,1
    - Dst: gf_token_get
      Src: /src/gpac/src/ietf/rtsp_common.c:347,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 5
    argNames:
    - buffer
    - BufferSize
    - BodyStart
    - com
    - rsp
    argTypes:
    - u8*
    - u32
    - u32
    - GF_RTSPCommand*
    - GF_RTSPResponse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 284
    functionDepth: 2
    functionLinenumber: 284
    functionLinenumberEnd: 353
    functionName: gf_rtsp_parse_header
    functionSourceFile: /src/gpac/src/ietf/rtsp_common.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - gf_token_get
    - gf_strcat
    - gf_rtsp_set_response_value
    - gf_token_get_line
    - gf_rtsp_set_command_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: 449
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 449
    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_int
    - gf_bs_write_long_int
    - gf_bs_write_data
    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_bs_get_position
    - gf_free
    - gf_bs_align
    - GP_RTPPacketizer*::OnData
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_get_content
    - gf_bs_new
    - gf_rtp_build_au_hdr_size
    - gf_bs_del
    - gf_bs_write_data
    - gf_bs_seek
    - 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: 1
    functionLinenumber: 402
    functionLinenumberEnd: 537
    functionName: gp_rtp_builder_do_avc
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - 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: 1
    functionLinenumber: 539
    functionLinenumberEnd: 693
    functionName: gp_rtp_builder_do_hevc
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - strlen
    - GP_RTPPacketizer*::OnPacketDone
    - memset
    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: 1
    functionLinenumber: 695
    functionLinenumberEnd: 855
    functionName: gp_rtp_builder_do_vvc
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - strlen
    - GP_RTPPacketizer*::OnPacketDone
    - memset
    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: 0
    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: 1
    functionLinenumber: 865
    functionLinenumberEnd: 942
    functionName: gp_rtp_builder_do_latm
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg4.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GP_RTPPacketizer*::OnData
    - gf_malloc
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - latm_flush
    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: 1
    functionLinenumber: 32
    functionLinenumberEnd: 47
    functionName: rtp_amr_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GP_RTPPacketizer*::OnData
    - gf_bs_get_content
    - 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: 2
    functionLinenumber: 49
    functionLinenumberEnd: 120
    functionName: gp_rtp_builder_do_amr
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - gf_bs_new
    - rtp_amr_flush
    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: 1
    functionLinenumber: 131
    functionLinenumberEnd: 192
    functionName: gp_rtp_builder_do_qcelp
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - GP_RTPPacketizer*::OnPacketDone
    - qes_get_rate_size
    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: 1
    functionLinenumber: 194
    functionLinenumberEnd: 214
    functionName: rtp_evrc_smv_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GP_RTPPacketizer*::OnData
    - gf_bs_write_int
    - gf_bs_get_content
    - 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: 2
    functionLinenumber: 216
    functionLinenumberEnd: 283
    functionName: gp_rtp_builder_do_smv
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - gf_bs_new
    - qes_get_rate_size
    - gf_bs_write_u8
    - rtp_evrc_smv_flush
    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: 1
    functionLinenumber: 285
    functionLinenumberEnd: 339
    functionName: gp_rtp_builder_do_h263
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_new
    - gf_bs_del
    - 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: 0
    functionLinenumber: 341
    functionLinenumberEnd: 376
    functionName: gp_rtp_builder_do_mp2t
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnPacketDone
    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: 1
    functionLinenumber: 377
    functionLinenumberEnd: 585
    functionName: gp_rtp_builder_do_tx3g
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GP_RTPPacketizer*::OnData
    - gf_bs_write_int
    - GP_RTPPacketizer*::OnNewPacket
    - gf_bs_get_content
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u24
    - GP_RTPPacketizer*::OnPacketDone
    - gf_bs_write_u8
    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: 1
    functionLinenumber: 589
    functionLinenumberEnd: 711
    functionName: gp_rtp_builder_do_dims
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - GP_RTPPacketizer*::OnPacketDone
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_skip_bytes
    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: 0
    functionLinenumber: 716
    functionLinenumberEnd: 729
    functionName: gf_rtp_ac3_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnPacketDone
    - GP_RTPPacketizer*::OnData
    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: 1
    functionLinenumber: 731
    functionLinenumberEnd: 819
    functionName: gp_rtp_builder_do_ac3
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnNewPacket
    - gf_rtp_ac3_flush
    - gf_assert
    - MIN
    - 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: 1
    functionLinenumber: 821
    functionLinenumberEnd: 846
    functionName: gp_rtp_builder_do_opus
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_3gpp.c
    functionUses: 0
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - GF_LOG
    - GP_RTPPacketizer*::OnNewPacket
    - GP_RTPPacketizer*::OnDataReference
    - 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:
    - memset
    - GF_SAFEALLOC
    - memcpy
    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: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    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: 3
    functionLinenumber: 86
    functionLinenumberEnd: 135
    functionName: gf_rtp_builder_process
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 0
    functionsReached:
    - gp_rtp_builder_do_mp2t
    - gp_rtp_builder_do_mpeg12_video
    - gp_rtp_builder_do_qcelp
    - gp_rtp_builder_do_ac3
    - gp_rtp_builder_do_mpeg12_audio
    - gp_rtp_builder_do_vvc
    - gp_rtp_builder_do_opus
    - gp_rtp_builder_do_amr
    - gp_rtp_builder_do_h263
    - gp_rtp_builder_do_smv
    - gp_rtp_builder_do_dims
    - gp_rtp_builder_do_tx3g
    - gp_rtp_builder_do_mpeg4
    - gp_rtp_builder_do_avc
    - gp_rtp_builder_do_latm
    - gp_rtp_builder_do_hevc
    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: gf_strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:156,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:237,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:244,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:250,1
    - Dst: strnicmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:256,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:261,1
    - Dst: gf_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: gf_strcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:395,1
    - Dst: gf_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: 1
    functionsReached:
    - gf_strcpy
    - gf_rtp_builder_init
    - strnicmp
    - gf_get_bit_size
    - memset
    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
    - gf_malloc
    - memcmp
    - gf_get_bit_size
    - memcpy
    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: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:464,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:471,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:477,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:480,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:485,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:486,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:487,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:488,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:491,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:492,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:495,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:496,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:499,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:500,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:503,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:504,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:507,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:508,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:511,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:512,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:515,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:516,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:519,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:520,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:523,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:525,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:527,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:530,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:533,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:534,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:538,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:539,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:543,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:544,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:547,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:548,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:551,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:552,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:555,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:556,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:559,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:560,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:563,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:564,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:567,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:568,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:572,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:573,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:576,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/ietf/rtp_packetizer.c:577,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 110
    argCount: 3
    argNames:
    - rtpb
    - szPayloadName
    - szMediaName
    argTypes:
    - GP_RTPPacketizer*
    - char[]
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 581
    functionName: gf_rtp_builder_get_payload_name
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 0
    functionsReached:
    - gf_strlcat
    - gf_strlcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_rtp_builder_get_payload_name(GP_RTPPacketizer *rtpb, char
      szPayloadName[MAX_PAYT_LEN], char szMediaName[MAX_MEDIA_LEN])
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtp_packetizer.c:612,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:613,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:616,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:618,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:625,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:626,1
    - Dst: sprintf
      Src: /src/gpac/src/ietf/rtp_packetizer.c:629,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/ietf/rtp_packetizer.c:630,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:634,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:639,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:640,1
    - Dst: strcmp
      Src: /src/gpac/src/ietf/rtp_packetizer.c:640,1
    - Dst: SDP_ADD_STR
      Src: /src/gpac/src/ietf/rtp_packetizer.c:641,1
    - Dst: SDP_ADD_STR
      Src: /src/gpac/src/ietf/rtp_packetizer.c:643,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:657,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:658,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:659,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
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:667,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:668,1
    - Dst: SDP_ADD_INT
      Src: /src/gpac/src/ietf/rtp_packetizer.c:669,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: 675
      start: 584
    functionDepth: 1
    functionLinenumber: 584
    functionLinenumberEnd: 675
    functionName: gf_rtp_builder_format_sdp
    functionSourceFile: /src/gpac/src/ietf/rtp_packetizer.c
    functionUses: 0
    functionsReached:
    - sprintf
    - SDP_ADD_INT
    - gf_dynstrcat
    - strcmp
    - 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: 604
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 604
    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: 611
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 611
    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: 1
    functionLinenumber: 33
    functionLinenumberEnd: 66
    functionName: mpa12_do_flush
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg12.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GP_RTPPacketizer*::OnData
    - gf_bs_get_content
    - gf_bs_get_size
    - GP_RTPPacketizer*::OnNewPacket
    - gf_bs_new
    - gf_bs_del
    - 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: 2
    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_u16
    - GP_RTPPacketizer*::OnDataReference
    - gf_bs_write_data
    - 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: 1
    functionLinenumber: 117
    functionLinenumberEnd: 241
    functionName: gp_rtp_builder_do_mpeg12_video
    functionSourceFile: /src/gpac/src/ietf/rtp_pck_mpeg12.c
    functionUses: 1
    functionsReached:
    - GP_RTPPacketizer*::OnData
    - gf_mv12_next_start_code
    - GP_RTPPacketizer*::OnNewPacket
    - MIN
    - GP_RTPPacketizer*::OnDataReference
    - GP_RTPPacketizer*::OnPacketDone
    - gf_mv12_next_slice_start
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_rtsp_transport_del
    - gf_list_get
    - 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_list_del
    - gf_free
    - gf_rtsp_command_reset
    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_list_count
    - gf_malloc
    - gf_list_get
    - RTSP_WRITE_INT
    - RTSP_WRITE_ALLOC_STR
    - RTSP_WRITE_FLOAT_WITHOUT_CHECK
    - RTSP_WRITE_HEX
    - strlen
    - RTSP_WRITE_HEADER
    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: snprintf
      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: snprintf
      Src: /src/gpac/src/ietf/rtsp_command.c:337,1
    - Dst: gf_free
      Src: /src/gpac/src/ietf/rtsp_command.c:338,1
    - Dst: snprintf
      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: gf_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_rtsp_send_data
    - sprintf
    - gf_strcpy
    - gf_free
    - GF_LOG
    - gf_url_concatenate
    - snprintf
    - 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_token_get
    - gf_malloc
    - gf_rtsp_transport_parse
    - stricmp
    - strnicmp
    - gf_rtsp_range_parse
    - strlen
    - gf_strdup
    - gf_list_add
    - sscanf
    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
    - gf_rtsp_parse_header
    - gf_token_get_line
    - strcmp
    - gf_strdup
    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_rtsp_fill_buffer
    - gf_rtsp_command_reset
    - snprintf
    - strstr
    - gf_rtsp_send_data
    - strchr
    - gf_malloc
    - gf_rtsp_get_body_info
    - memcpy
    - RTSP_ParseCommandHeader
    - strcmp
    - strlen
    - gf_sk_del
    - gf_rtsp_read_reply
    - GF_LOG
    - stricmp
    - gf_base64_decode
    - gf_rtsp_session_reset
    - gf_strdup
    - strncmp
    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_rtp_send_packet
    - gf_error_to_string
    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
    - memmove
    - memcpy
    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_rtp_new_ex
    - gf_rtp_initialize
    - GF_LOG
    - gf_rtp_setup_transport
    - gf_error_to_string
    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:
    - gf_rtp_new_ex
    - gf_sk_is_multicast_address
    - gf_rtp_initialize
    - GF_LOG
    - gf_rtp_setup_transport
    - rand
    - memset
    - gf_error_to_string
    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_rtp_streamer_del
    - gf_m4a_get_config
    - gf_m4v_get_config
    - gf_codecid_name
    - gf_malloc
    - GF_LOG
    - gf_rtp_builder_init
    - GF_SAFEALLOC
    - gf_rtp_builder_new
    - memset
    - rtp_stream_init_channel
    - gf_error_to_string
    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_builder_del
    - gf_free
    - gf_rtp_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:
    - snprintf
    - gf_dynstrcat
    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_list_count
    - gf_odf_vvc_cfg_read
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - snprintf
    - gf_odf_vvc_cfg_del
    - gf_odf_hevc_cfg_del
    - gf_odf_hevc_cfg_read
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_dynstrcat
    - gf_rtp_builder_get_payload_name
    - gf_rtp_get_ports
    - strnicmp
    - gf_base64_encode
    - gf_bs_write_data
    - gf_odf_avc_cfg_del
    - gf_free
    - gf_media_format_ttxt_sdp
    - gf_rtp_builder_format_sdp
    - MIN
    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_fclose
    - gf_malloc
    - gf_free
    - gf_net_is_ipv6
    - gf_file_temp
    - gf_fsize
    - gf_fread
    - gf_file_delete
    - gf_fprintf
    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: 4
    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: 5
    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: 5
    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_decode_rtcp
    - gf_rtp_read_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: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:55,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:57,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:62,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 65
    functionName: gf_crypt_init_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - GF_SAFEALLOC
    - memcpy
    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:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 75
    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:80,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 85
    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:91,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 96
    functionName: gf_crypt_set_IV_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memset
    - memcpy
    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:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 104
    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: 20
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CipherInit_ex
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:118,1
    - Dst: EVP_aes_128_cbc
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:118,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:120,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:129,1
    - Dst: EVP_DecryptUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:130,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:132,1
    - Dst: EVP_EncryptUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:134,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:136,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:142,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:143,1
    - Dst: EVP_EncryptUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:145,1
    - Dst: EVP_DecryptUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:148,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:151,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:153,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:155,1
    - Dst: AES_set_encrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:162,1
    - Dst: AES_set_decrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:164,1
    - Dst: AES_cbc_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:171,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:174,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:175,1
    - Dst: AES_cbc_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:176,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:177,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 59
    argCount: 4
    argNames:
    - td
    - plaintext
    - len
    - aes_crypt_type
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 180
    functionName: gf_crypt_crypt_openssl_cbc
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_EncryptUpdate
    - AES_cbc_encrypt
    - memset
    - EVP_CipherInit_ex
    - EVP_CIPHER_CTX_set_padding
    - AES_set_encrypt_key
    - AES_set_decrypt_key
    - EVP_DecryptUpdate
    - memcpy
    - EVP_aes_128_cbc
    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:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 185
    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:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 190
    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:211,1
    - Dst: AES_set_encrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:212,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 216
    functionName: gf_set_key_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - AES_set_encrypt_key
    - memcpy
    - 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:226,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:228,1
    - Dst: memset
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:229,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 232
    functionName: gf_crypt_set_IV_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - memset
    - memcpy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_crypt_set_IV_openssl_ctr(GF_Crypt* td, const u8 *iv, u32
      iv_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CIPHER_CTX_num
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:241,1
    - Dst: EVP_CIPHER_CTX_get_updated_iv
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:243,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:246,1
    - Dst: EVP_CIPHER_CTX_iv_noconst
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:246,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 254
    functionName: gf_crypt_get_IV_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CIPHER_CTX_get_updated_iv
    - memcpy
    - EVP_CIPHER_CTX_iv_noconst
    - EVP_CIPHER_CTX_num
    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:260,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:262,1
    - Dst: memcpy
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:267,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 272
    functionName: gf_crypt_init_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - GF_SAFEALLOC
    - memcpy
    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:279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 282
    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:293,1
    - Dst: EVP_aes_128_ctr
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:293,1
    - Dst: EVP_CIPHER_CTX_set_num
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:296,1
    - Dst: EVP_EncryptUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:300,1
    - Dst: CRYPTO_ctr128_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:309,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 312
    functionName: gf_crypt_crypt_openssl_ctr
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CIPHER_CTX_set_num
    - EVP_EncryptUpdate
    - EVP_EncryptInit_ex
    - EVP_aes_128_ctr
    - CRYPTO_ctr128_encrypt
    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:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 317
    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:321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 322
    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:339,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:341,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - td
    - key
    - iv
    argTypes:
    - GF_Crypt*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 345
    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:352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - td
    argTypes:
    - GF_Crypt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 355
    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:360,1
    - Dst: EVP_CIPHER_CTX_new
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:364,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - td
    - key
    argTypes:
    - GF_Crypt*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 365
    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: 370
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 370
    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:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - td
    - iv
    - iv_size
    argTypes:
    - GF_Crypt*
    - u8*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 377
    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: 11
    BranchProfiles: []
    Callsites:
    - Dst: EVP_CipherInit_ex
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:390,1
    - Dst: EVP_aes_128_ecb
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:390,1
    - Dst: EVP_CIPHER_CTX_set_padding
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:392,1
    - Dst: EVP_CipherUpdate
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:397,1
    - Dst: AES_set_encrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:404,1
    - Dst: AES_set_decrypt_key
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:406,1
    - Dst: AES_ecb_encrypt
      Src: /src/gpac/src/crypto/g_crypt_openssl.c:417,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 4
    argNames:
    - td
    - plaintext
    - len
    - aes_crypt_type
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 420
    functionName: gf_crypt_crypt_openssl_ecb
    functionSourceFile: /src/gpac/src/crypto/g_crypt_openssl.c
    functionUses: 0
    functionsReached:
    - EVP_CipherUpdate
    - EVP_CipherInit_ex
    - EVP_CIPHER_CTX_set_padding
    - AES_set_encrypt_key
    - AES_set_decrypt_key
    - AES_ecb_encrypt
    - EVP_aes_128_ecb
    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:424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - plaintext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 422
    functionDepth: 1
    functionLinenumber: 422
    functionLinenumberEnd: 425
    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:429,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - td
    - ciphertext
    - len
    argTypes:
    - GF_Crypt*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 427
    functionDepth: 1
    functionLinenumber: 427
    functionLinenumberEnd: 430
    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: 472
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 472
    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_openssl
    - GF_SAFEALLOC
    - gf_free
    - gf_crypt_open_open_tinyaes
    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*::_set_key
    - gf_crypt_close
    - GF_Crypt*::_init_crypt
    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
    - AES_init_ctx_iv
    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
    - AES_init_ctx_iv
    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:
    - SubBytes
    - MixColumns
    - AddRoundKey
    - ShiftRows
    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
    - AddRoundKey
    - InvSubBytes
    - 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:
    - XorWithIv
    - Cipher
    - memcpy
    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:
    - XorWithIv
    - memcpy
    - 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
    - Cipher
    - gf_assert
    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_set_ss
    - _mm_max_ss
    - _mm_min_ss
    - _mm_store_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:
    - SUBPIXELS
    - TRUNC
    - gray_set_cell
    - gray_record_cell
    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:
    - evg_sweep_lines
    - gray_render_line
    - gray3d_move_to
    - edgeFunction
    - gray_record_cell
    - evg3d_persp_divide
    - evg_ndc_to_raster
    - memset
    - gf_realloc
    - gf_mx_apply_vec_4x4
    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_argb_to_ayuv_wide
    - GF_COL_ARGB
    - GF_EVGSurface*::frag_shader
    - GF_COLW_A
    - GF_COLW_G
    - float_clamp
    - gf_evg_ayuv_to_argb
    - GF_COL_R
    - GF_COL_A
    - GF_COLW_R
    - GF_COL_G
    - gf_evg_ayuv_to_argb_wide
    - GF_COLW_ARGB
    - gf_evg_argb_to_ayuv
    - GF_COL_B
    - GF_COLW_B
    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:
    - get_patch_pixel
    - GF_EVGSurface*::fill_single_a
    - EVG_Surface3DExt*::depth_test
    - remove_patch_pixel
    - float_clamp
    - GF_EVGSurface*::fill_spans
    - edgeFunction_pre
    - push_patch_pixel
    - gf_vec_len
    - gf_vec_diff
    - GF_EVGSurface*::fill_single
    - evg_get_fragment
    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:
    - evg_sweep_lines
    - gf_vec_diff
    - gf_mx_copy
    - gray3d_move_to
    - gray_render_line
    - GF_EVGSurface*::ext3d::depth_test
    - GF_EVGSurface*::fill_single_a
    - gray_record_cell
    - GF_EVGSurface*::fill_spans
    - gf_mx_add_matrix_4x4
    - gf_vec_len
    - evg_ndc_to_raster
    - GETVEC
    - memset
    - gf_realloc
    - precompute_tri
    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:
    - evg_sweep_lines
    - gf_path_get_bounds
    - gf_mx_copy
    - gray3d_move_to
    - gray_render_line
    - gf_evg_surface_set_path
    - gray_record_cell
    - gf_mx_add_matrix_4x4
    - evg3d_persp_divide
    - evg_ndc_to_raster
    - memset
    - gf_realloc
    - gf_mx_apply_vec_4x4
    - precompute_tri
    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:
    - GF_SAFEALLOC
    - evg_3d_update_depth_range
    - gf_mx_init
    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:
    - MIN
    - INT2FIX
    - color_interpolate
    - gf_mulfix
    - FIX2INT
    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:
    - MIN
    - MAX
    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:
    - gf_mx2d_init
    - evg_linear_gradient_brush
    - evg_solid_brush
    - gf_cmx_init
    - evg_texture_brush
    - evg_radial_gradient_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_init
    - gf_mx2d_copy
    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:
    - gradient_get_color
    - evg_col_to_wide
    - gf_assert
    - FIX2INT
    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:
    - gradient_get_color
    - evg_col_to_wide
    - FIX2INT
    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_init
    - gf_invfix
    - gf_mx2d_add_scale
    - gf_v2d_len
    - gf_mx2d_add_matrix
    - gf_mx2d_add_rotation
    - gf_atan2
    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_SAFEALLOC
    - gf_evg_stencil_set_linear_gradient
    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_sqrt
    - gf_mx2d_apply_coords
    - evg_col_to_wide
    - gf_assert
    - INT2FIX
    - FIX2INT
    - gf_mulfix
    - gradient_get_color
    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:
    - gf_sqrt
    - evg_col_to_wide
    - FIX2INT
    - gf_mulfix
    - gradient_get_color
    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_invfix
    - gf_mx2d_apply_point
    - gf_mulfix
    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_COL_A
    - gf_cmx_apply
    - gf_evg_argb_to_ayuv
    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_ARGB
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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:
    - GF_COLW_ARGB
    - mul_wide
    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:
    - gf_mx2d_apply_coords
    - ABS
    - INT2FIX
    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:
    - struct __evg_texture*::tx_callback
    - GF_COLW_ARGB
    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:
    - EVG_LERP
    - gf_muldiv
    - gf_evg_ayuv_to_argb
    - GF_COL_A
    - EVG_Texture*::tx_get_pixel
    - gf_cmx_apply
    - FIX2INT
    - gf_evg_argb_to_ayuv
    - tex_untransform_coord
    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
    - INT2FIX
    - EVG_Texture*::tx_get_pixel
    - ABS
    - 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_R
    - GF_COL_A
    - GF_COL_G
    - GF_COLW_ARGB
    - GF_COL_B
    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_cmx_apply_wide
    - gf_muldiv
    - EVG_Texture*::tx_get_pixel_wide
    - gf_evg_ayuv_to_argb_wide
    - FIX2INT
    - EVG_LERP_WIDE
    - tex_untransform_coord
    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
    - EVG_Texture*::tx_get_pixel_wide
    - INT2FIX
    - gf_evg_ayuv_to_argb_wide
    - ABS
    - FIX2INT
    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:
    - EVG_LERP
    - gf_muldiv
    - gf_evg_ayuv_to_argb
    - GF_COL_A
    - EVG_Texture*::tx_get_pixel
    - gf_cmx_apply
    - FIX2INT
    - gf_evg_argb_to_ayuv
    - gf_mx2d_is_identity
    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:
    - EVG_LERP
    - gf_muldiv
    - gf_evg_ayuv_to_argb
    - tx_get_pixel
    - GF_COL_A
    - gf_cmx_apply
    - 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_cmx_apply_wide
    - gf_muldiv
    - EVG_Texture*::tx_get_pixel_wide
    - gf_evg_ayuv_to_argb_wide
    - FIX2INT
    - EVG_LERP_WIDE
    - gf_mx2d_is_identity
    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_cmx_apply_wide
    - gf_muldiv
    - gf_evg_ayuv_to_argb_wide
    - FIX2INT
    - tx_get_pixel_wide
    - EVG_LERP_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_cmx_init
    - GF_SAFEALLOC
    - gf_evg_stencil_set_filter
    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:
    - GF_COL_ARGB
    - GET_LE_10BIT_AS_8
    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:
    - GF_COL_ARGB
    - GET_LE_10BIT_AS_8
    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:
    - GF_COL_ARGB
    - GET_LE_10BIT_AS_8
    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:
    - GF_COL_ARGB
    - GET_LE_10BIT_AS_8
    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:
    - GF_COL_ARGB
    - GET_LE_10BIT_AS_8
    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:
    - evg_col_to_wide
    - struct __evg_texture*::tx_get_pixel
    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:
    - gf_mx2d_apply_point
    - GF_COL_ARGB
    - evg_col_to_wide
    - texture_set_callbacks
    - 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:
    - memcmp
    - gf_cmx_init
    - gf_cmx_copy
    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_argb_to_ayuv
    - EVG_Texture*::tx_get_pixel
    - gf_evg_ayuv_to_argb
    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_argb_to_ayuv_wide
    - floor
    - EVG_LERP
    - gf_evg_argb_to_ayuv
    - GF_COLW_G
    - GF_COLW_A
    - EVG_Texture*::tx_get_pixel_wide
    - gf_evg_ayuv_to_argb
    - GF_COL_R
    - GF_COL_A
    - GF_COLW_R
    - EVG_Texture*::tx_get_pixel
    - gf_evg_ayuv_to_argb_wide
    - GF_COL_G
    - memset
    - GF_COL_B
    - GF_COLW_B
    - EVG_LERP_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:
    - GF_EVGStencil*::fill_run
    - EVGRasterCtx*::surf::sten2::fill_run
    - EVGRasterCtx*::surf::update_run
    - GF_COL_A
    - EVGRasterCtx*::surf::sten3::fill_run
    - GF_EVGSurface*::get_alpha
    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:
    - gf_mx2d_apply_coords
    - UPSCALE
    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:
    - SUBPIXELS
    - TRUNC
    - gray_record_cell
    - 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:
    - SUBPIXELS
    - gray_set_cell
    - 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:
    - SUBPIXELS
    - gray_set_cell
    - gray_render_scanline
    - 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
    - evg_translate_point
    - gray_render_line
    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:
    - gf_realloc
    - EVGRasterCtx*::surf::render_span
    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:
    - gray_hline
    - EVGRasterCtx*::surf::render_span
    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_sleep
    - th_fetch_lines
    - gray_sweep_line
    - gf_sema_wait
    - gf_mx_p
    - gf_mx_v
    - gray_quick_sort
    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:
    - evg_sweep_lines
    - EVG_Outline_Decompose
    - gray_record_cell
    - memset
    - 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_B
    - GF_COL_G
    - GF_COL_R
    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:
    - overmask_rgb_const_run
    - mul255
    - GF_COL_R
    - GF_COL_G
    - GF_COL_B
    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:
    - overmask_rgb_const_run
    - mul255
    - GF_EVGSurface*::get_alpha
    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_EVGSurface*::fill_run
    - overmask_rgb
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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:
    - GF_COL_B
    - GF_COL_G
    - memcpy
    - GF_COL_R
    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_B
    - GF_COL_G
    - GF_COL_R
    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:
    - mul255
    - overmask_grey_const_run
    - GF_COL_R
    - GF_COL_G
    - GF_COL_B
    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:
    - mul255
    - overmask_grey_const_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    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_EVGSurface*::fill_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - overmask_grey
    - GF_COL_B
    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:
    - memset
    - GF_COL_B
    - GF_COL_G
    - GF_COL_R
    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
    - gf_mx2d_add_translation
    - gf_mx2d_add_scale
    - INT2FIX
    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:
    - GF_SAFEALLOC
    - gf_free
    - evg_raster_ctx_init
    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:
    - sprintf
    - gf_sys_get_rti
    - gf_malloc
    - gf_mx_new
    - gf_sema_new
    - gf_th_new
    - gf_opts_get_bool
    - memset
    - gf_realloc
    - gf_th_run
    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
    - gf_th_del
    - gf_sleep
    - gf_sema_notify
    - gf_sema_del
    - evg_raster_ctx_uninit
    - 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:
    - get_surface_world_matrix
    - gf_mx2d_copy
    - gf_mx2d_init
    - gf_mx2d_add_matrix
    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
    - gf_pixel_get_size_info
    - evg_surface_set_components_idx
    - 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_alphagrey
    - evg_surface_clear_332
    - evg_surface_clear_yuyv
    - evg_surface_clear_nv12
    - gf_evg_argb_to_ayuv
    - evg_surface_clear_565
    - evg_surface_clear_555
    - evg_surface_clear_yuv422p
    - evg_surface_clear_yuv422p_10
    - evg_surface_clear_rgb
    - evg_surface_clear_yuv420p
    - evg_surface_clear_argb
    - evg_surface_clear_rgbx
    - evg_surface_clear_444
    - evg_surface_clear_yuv444p_10
    - evg_surface_clear_yuv420p_10
    - evg_surface_clear_grey
    - evg_surface_clear_nv12_10
    - evg_surface_clear_yuv444p
    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:
    - GF_COL_ARGB
    - gf_evg_rgb_to_yuv
    - evg_col_to_wide
    - GF_COL_A
    - memset
    - 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_init
    - gf_invfix
    - gf_mx2d_add_translation
    - evg_texture_init
    - gf_divfix
    - gf_mx2d_add_scale
    - evg_col_to_wide
    - INT2FIX
    - gf_mx2d_copy
    - gf_mx2d_inverse
    - GF_COL_A
    - evg_radial_init
    - gf_evg_argb_to_ayuv
    - evg_gradient_precompute
    - gf_mx2d_apply_rect
    - gf_mx2d_add_matrix
    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:
    - setup_grey_callback
    - gf_evg_setup_multi_texture
    - gf_evg_restore_stencil
    - evg_raster_render_path_3d
    - 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:
    - evg_raster_render3d
    - setup_grey_callback
    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:
    - evg_raster_render3d_path
    - setup_grey_callback
    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:
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - do_composite_mode
    - GF_COL_B
    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:
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - do_composite_mode
    - GF_COL_B
    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:
    - GF_COL_A
    - mul255
    - GF_EVGSurface*::get_alpha
    - overmask_argb_const_run
    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_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    - memcpy
    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_B
    - GF_COL_G
    - GF_COL_R
    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_B
    - GF_COL_G
    - overmask_rgbx_const_run
    - GF_COL_R
    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:
    - mul255
    - GF_EVGSurface*::get_alpha
    - overmask_rgbx_const_run
    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_EVGSurface*::fill_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - overmask_rgbx
    - GF_COL_B
    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:
    - GF_COL_B
    - GF_COL_G
    - memcpy
    - GF_COL_R
    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_B
    - GF_COL_G
    - GF_COL_R
    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:
    - mul255
    - overmask_alphagrey_const_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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:
    - mul255
    - overmask_alphagrey_const_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    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:
    - overmask_alphagrey
    - GF_EVGSurface*::fill_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    - memcpy
    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_B
    - GF_COL_G
    - GF_COL_R
    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_ARGB
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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_ARGB
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - TRUNC_8BIT
    - GF_COL_B
    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:
    - TRUNC_16BIT
    - GF_COLW_ARGB
    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:
    - gf_cmx_multiply
    - FLT2FIX
    - gf_cmx_init
    - gf_cmx_copy
    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:
    - overmask_yuv420p_const_run
    - GF_COL_R
    - GF_COL_G
    - GF_EVGSurface*::yuv_flush_uv
    - memset
    - GF_COL_B
    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:
    - overmask_yuv420p_const_run
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_EVGSurface*::yuv_flush_uv
    - memset
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    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:
    - mul255_zero
    - gf_assert
    - memset
    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_EVGSurface*::fill_run
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_EVGSurface*::yuv_flush_uv
    - GF_COL_B
    - overmask_yuv420p
    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:
    - mul255_zero
    - memset
    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:
    - memset
    - memcpy
    - 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:
    - mul255_zero
    - memset
    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_B
    - GF_COL_G
    - overmask_yuv420p_const_run
    - GF_COL_R
    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:
    - overmask_yuv420p_const_run
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    - GF_EVGSurface*::get_alpha
    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_EVGSurface*::fill_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    - overmask_yuv420p
    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:
    - overmask_yuvy
    - GF_COL_R
    - GF_COL_G
    - memset
    - GF_COL_B
    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:
    - overmask_yuvy
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - memset
    - GF_COL_B
    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_EVGSurface*::fill_run
    - overmask_yuvy
    - mul255
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - memset
    - GF_COL_B
    - overmask_yuv420p
    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
    - set_u16_le
    - get_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
    - set_u16_le
    - get_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
    - set_u16_le
    - get_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
    - set_u16_le
    - GF_EVGSurface*::yuv_flush_uv
    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*::get_alpha
    - GF_EVGSurface*::yuv_flush_uv
    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
    - mul_10_zero
    - get_u16_le
    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
    - set_u16_le
    - GF_EVGSurface*::yuv_flush_uv
    - overmask_yuv420p_10
    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:
    - memset
    - set_u16_le
    - gf_evg_rgb_to_yuv
    - memcpy
    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
    - set_u16_le
    - get_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
    - mul_10_zero
    - get_u16_le
    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:
    - memset
    - set_u16_le
    - gf_evg_rgb_to_yuv
    - memcpy
    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
    - set_u16_le
    - get_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
    - mul_10_zero
    - get_u16_le
    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:
    - set_u16_le
    - gf_evg_rgb_to_yuv
    - memcpy
    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
    - set_u16_le
    - overmask_yuv420p_10
    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:
    - set_u16_le
    - gf_evg_rgb_to_yuv
    - memcpy
    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:
    - mul255
    - write_565
    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:
    - mul255
    - write_565
    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_B
    - GF_COL_G
    - write_565
    - GF_COL_R
    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:
    - mul255
    - GF_COL_R
    - GF_COL_G
    - write_565
    - GF_COL_B
    - overmask_565_const_run
    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:
    - mul255
    - GF_EVGSurface*::get_alpha
    - overmask_565_const_run
    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_EVGSurface*::fill_run
    - overmask_565
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - write_565
    - GF_COL_B
    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
    - write_565
    - GF_COL_R
    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:
    - write_555
    - GF_COL_B
    - GF_COL_G
    - GF_COL_R
    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:
    - overmask_555_const_run
    - mul255
    - GF_COL_R
    - write_555
    - GF_COL_G
    - GF_COL_B
    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
    - mul255
    - GF_EVGSurface*::get_alpha
    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_EVGSurface*::fill_run
    - overmask_555
    - GF_COL_R
    - write_555
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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_R
    - write_555
    - GF_COL_G
    - GF_COL_B
    - memcpy
    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:
    - write_444
    - GF_COL_B
    - GF_COL_G
    - GF_COL_R
    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:
    - write_444
    - mul255
    - overmask_444_const_run
    - GF_COL_R
    - GF_COL_G
    - GF_COL_B
    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:
    - mul255
    - GF_EVGSurface*::get_alpha
    - overmask_444_const_run
    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:
    - write_444
    - GF_EVGSurface*::fill_run
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - overmask_444
    - GF_COL_B
    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:
    - write_444
    - GF_COL_R
    - GF_COL_G
    - GF_COL_B
    - memcpy
    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:
    - mul255
    - write_332
    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:
    - mul255
    - write_332
    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_B
    - GF_COL_G
    - write_332
    - GF_COL_R
    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:
    - overmask_332_const_run
    - mul255
    - GF_COL_R
    - GF_COL_G
    - write_332
    - GF_COL_B
    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
    - mul255
    - GF_EVGSurface*::get_alpha
    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_EVGSurface*::fill_run
    - GF_COL_R
    - GF_COL_A
    - write_332
    - GF_COL_G
    - overmask_332
    - GF_COL_B
    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_R
    - GF_COL_G
    - write_332
    - GF_COL_B
    - memcpy
    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:
    - stbl_GetSampleInfos
    - gf_list_count
    - stbl_findEntryForTime
    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: gf_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_strcpy
    - GF_LOG
    - gf_bs_get_content
    - gf_odf_desc_esd_new
    - gf_bs_new
    - gf_bs_write_u32_le
    - gf_bs_write_u16
    - gf_bs_write_u16_le
    - gf_bs_del
    - gf_bs_write_data
    - memset
    - gf_bs_write_u8
    - gf_4cc_to_str
    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: 112
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:158,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:162,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/media.c:175,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/media.c:181,1
    - Dst: AVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:224,1
    - Dst: AVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:226,1
    - Dst: HEVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:234,1
    - Dst: HEVC_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:236,1
    - Dst: AV1_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:243,1
    - Dst: VP9_RewriteESDescriptorEx
      Src: /src/gpac/src/isomedia/media.c:251,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/media.c:264,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/media.c:277,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:281,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/isomedia/media.c:284,1
    - Dst: gf_isom_get_ttxt_esd
      Src: /src/gpac/src/isomedia/media.c:305,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:322,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/media.c:327,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:328,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/media.c:329,1
    - Dst: gf_isom_get_3gpp_audio_esd
      Src: /src/gpac/src/isomedia/media.c:347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:362,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:365,1
    - Dst: gf_odf_opus_cfg_write
      Src: /src/gpac/src/isomedia/media.c:368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:381,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:384,1
    - Dst: gf_odf_iamf_cfg_write
      Src: /src/gpac/src/isomedia/media.c:388,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:397,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:410,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:426,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:431,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/media.c:433,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/isomedia/media.c:447,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/media.c:455,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:457,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:458,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/media.c:459,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/media.c:460,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/media.c:462,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/media.c:464,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/media.c:465,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/media.c:480,1
    CyclomaticComplexity: 93
    EdgeCount: 93
    ICount: 292
    argCount: 4
    argNames:
    - mdia
    - sampleDescIndex
    - out_esd
    - true_desc_only
    argTypes:
    - GF_MediaBox*
    - u32
    - GF_ESD**
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 483
    functionName: Media_GetESD
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u8
    - gf_odf_opus_cfg_write
    - gf_malloc
    - gf_odf_iamf_cfg_write
    - gf_odf_desc_copy
    - gf_list_get
    - memcpy
    - gf_isom_get_3gpp_audio_esd
    - AVC_RewriteESDescriptorEx
    - gf_isom_box_find_child
    - gf_bs_write_data
    - strlen
    - gf_isom_get_ttxt_esd
    - VP9_RewriteESDescriptorEx
    - gf_m4a_write_config
    - GF_LOG
    - HEVC_RewriteESDescriptorEx
    - gf_odf_desc_esd_new
    - AV1_RewriteESDescriptorEx
    - gf_bs_write_u16
    - memset
    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:491,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - stsh
    - sampleNumber
    argTypes:
    - GF_ShadowSyncBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 496
    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: 64
    BranchProfiles: []
    Callsites:
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/media.c:518,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/media.c:528,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:535,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/media.c:541,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/media.c:545,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/media.c:554,1
    - Dst: Media_IsSampleSyncShadow
      Src: /src/gpac/src/isomedia/media.c:568,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/media.c:580,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:585,1
    - Dst: gf_isom_datamap_open
      Src: /src/gpac/src/isomedia/media.c:611,1
    - Dst: gf_isom_datamap_open
      Src: /src/gpac/src/isomedia/media.c:616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:621,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/media.c:629,1
    - Dst: GF_MediaBox*::mediaTrack::sample_alloc_cbk
      Src: /src/gpac/src/isomedia/media.c:656,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/media.c:658,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media.c:661,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/media.c:667,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/media.c:670,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/media.c:673,1
    - Dst: gf_isom_datamap_get_data
      Src: /src/gpac/src/isomedia/media.c:679,1
    - Dst: Media_RewriteODFrame
      Src: /src/gpac/src/isomedia/media.c:700,1
    - Dst: gf_isom_is_nalu_based_entry
      Src: /src/gpac/src/isomedia/media.c:704,1
    - Dst: gf_isom_is_encrypted_entry
      Src: /src/gpac/src/isomedia/media.c:707,1
    - Dst: gf_isom_nalu_sample_rewrite
      Src: /src/gpac/src/isomedia/media.c:708,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/media.c:711,1
    - Dst: gf_isom_nalu_get_sample_sap
      Src: /src/gpac/src/isomedia/media.c:712,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/media.c:725,1
    - Dst: gf_isom_rewrite_text_sample
      Src: /src/gpac/src/isomedia/media.c:728,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 183
    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: 732
      start: 498
    functionDepth: 2
    functionLinenumber: 498
    functionLinenumberEnd: 732
    functionName: Media_GetSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - gf_bs_get_size
    - gf_sys_old_arch_compat
    - gf_isom_rewrite_text_sample
    - Media_IsSampleSyncShadow
    - gf_isom_nalu_sample_rewrite
    - Media_GetSampleDesc
    - gf_isom_is_nalu_based_entry
    - gf_malloc
    - stbl_GetSampleDTS
    - gf_isom_datamap_open
    - gf_list_get
    - gf_isom_datamap_get_data
    - gf_realloc
    - stbl_GetSampleRAP
    - stbl_GetSampleCTS
    - gf_isom_is_encrypted_entry
    - gf_isom_nalu_get_sample_sap
    - stbl_GetSampleSize
    - stbl_GetSampleDepType
    - GF_MediaBox*::mediaTrack::sample_alloc_cbk
    - stbl_GetSampleDTS_and_Duration
    - Media_RewriteODFrame
    - gf_bs_get_refreshed_size
    - memset
    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:741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:743,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/media.c:759,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/media.c:761,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/media.c:764,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - mdia
    - dataEntryIndex
    argTypes:
    - GF_MediaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 736
    functionDepth: 1
    functionLinenumber: 736
    functionLinenumberEnd: 766
    functionName: Media_CheckDataEntry
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_datamap_new
    - gf_isom_datamap_del
    - gf_list_get
    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:775,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:785,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - mdia
    - StreamDescIndex
    argTypes:
    - GF_MediaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 769
    functionDepth: 2
    functionLinenumber: 769
    functionLinenumberEnd: 793
    functionName: Media_IsSelfContained
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - Media_GetSampleDesc
    - gf_list_get
    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:801,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/media.c:803,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - mdia
    argTypes:
    - GF_MediaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 795
    functionDepth: 3
    functionLinenumber: 795
    functionLinenumberEnd: 809
    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:832,1
    - Dst: stbl_SearchSAPs
      Src: /src/gpac/src/isomedia/media.c:839,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: 858
      start: 814
    functionDepth: 1
    functionLinenumber: 814
    functionLinenumberEnd: 858
    functionName: Media_FindSyncSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_SearchSAPs
    - stbl_GetSampleRAP
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Media_FindSyncSample(GF_SampleTableBox *stbl, u32 searchFromSample,
      u32 *sampleNumber, u8 mode)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media.c:869,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/media.c:880,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/media.c:887,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 4
    argNames:
    - dref
    - URLname
    - URNname
    - dataRefIndex
    argTypes:
    - GF_DataReferenceBox*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 861
    functionDepth: 1
    functionLinenumber: 861
    functionLinenumberEnd: 894
    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:914,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/media.c:915,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/media.c:922,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/media.c:927,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:933,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:947,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/media.c:949,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 41
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 897
    functionDepth: 3
    functionLinenumber: 897
    functionLinenumberEnd: 957
    functionName: Media_SetDuration
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleDTS_and_Duration
    - Media_GetESD
    - Track_IsMPEG4Stream
    - gf_sys_old_arch_compat
    - stbl_GetSampleCTS
    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:967,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:970,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/media.c:972,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/media.c:973,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:977,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/media.c:980,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:981,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:984,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 3
    argNames:
    - dref_entry
    - origName
    - finalName
    argTypes:
    - GF_DataEntryURLBox*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 964
    functionDepth: 1
    functionLinenumber: 964
    functionLinenumberEnd: 989
    functionName: Media_SetDrefURL
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strrchr
    - gf_strdup
    - 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:998,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1005,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:1008,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1012,1
    - Dst: Media_SetDrefURL
      Src: /src/gpac/src/isomedia/media.c:1016,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:1018,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:1021,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1025,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:1028,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:1030,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/media.c:1035,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:1037,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/media.c:1041,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 46
    argCount: 5
    argNames:
    - movie
    - dref
    - URLname
    - URNname
    - dataRefIndex
    argTypes:
    - GF_ISOFile*
    - GF_DataReferenceBox*
    - char*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 992
    functionDepth: 2
    functionLinenumber: 992
    functionLinenumberEnd: 1045
    functionName: Media_CreateDataRef
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_strdup
    - strcmp
    - Media_SetDrefURL
    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:1058,1
    - Dst: stbl_AddSize
      Src: /src/gpac/src/isomedia/media.c:1062,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1069,1
    - Dst: stbl_AddCTS
      Src: /src/gpac/src/isomedia/media.c:1073,1
    - Dst: stbl_AddCTS
      Src: /src/gpac/src/isomedia/media.c:1076,1
    - Dst: stbl_AddRAP
      Src: /src/gpac/src/isomedia/media.c:1084,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1090,1
    - Dst: stbl_AddRAP
      Src: /src/gpac/src/isomedia/media.c:1095,1
    - Dst: stbl_AddRedundant
      Src: /src/gpac/src/isomedia/media.c:1102,1
    - Dst: stbl_AddChunkOffset
      Src: /src/gpac/src/isomedia/media.c:1108,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1114,1
    - Dst: stbl_AddShadow
      Src: /src/gpac/src/isomedia/media.c:1117,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: 1118
      start: 1048
    functionDepth: 1
    functionLinenumber: 1048
    functionLinenumberEnd: 1118
    functionName: Media_AddSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - stbl_AddChunkOffset
    - stbl_AddRAP
    - stbl_AddCTS
    - stbl_AddDTS
    - stbl_AddRedundant
    - stbl_AddShadow
    - stbl_AddSize
    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:1128,1
    - Dst: stbl_SetChunkOffset
      Src: /src/gpac/src/isomedia/media.c:1129,1
    - Dst: stbl_SetSampleCTS
      Src: /src/gpac/src/isomedia/media.c:1134,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1138,1
    - Dst: stbl_AddCTS
      Src: /src/gpac/src/isomedia/media.c:1140,1
    - Dst: stbl_SetSampleRAP
      Src: /src/gpac/src/isomedia/media.c:1145,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media.c:1149,1
    - Dst: stbl_AddRAP
      Src: /src/gpac/src/isomedia/media.c:1153,1
    - Dst: stbl_SetRedundant
      Src: /src/gpac/src/isomedia/media.c:1158,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: 1161
      start: 1121
    functionDepth: 1
    functionLinenumber: 1121
    functionLinenumberEnd: 1161
    functionName: UpdateSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - stbl_AddRAP
    - stbl_SetSampleSize
    - stbl_SetSampleRAP
    - stbl_SetRedundant
    - stbl_SetChunkOffset
    - stbl_AddCTS
    - stbl_SetSampleCTS
    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:1180,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/media.c:1188,1
    - Dst: stbl_unpackCTS
      Src: /src/gpac/src/isomedia/media.c:1192,1
    - Dst: stbl_AddDTS
      Src: /src/gpac/src/isomedia/media.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media.c:1195,1
    - Dst: UpdateSample
      Src: /src/gpac/src/isomedia/media.c:1198,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/media.c:1202,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/media.c:1208,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/media.c:1211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:1213,1
    - Dst: gf_isom_datamap_get_offset
      Src: /src/gpac/src/isomedia/media.c:1219,1
    - Dst: gf_isom_datamap_add_data
      Src: /src/gpac/src/isomedia/media.c:1221,1
    - Dst: stbl_SetSampleSize
      Src: /src/gpac/src/isomedia/media.c:1226,1
    - Dst: stbl_SetChunkOffset
      Src: /src/gpac/src/isomedia/media.c:1227,1
    - Dst: UpdateSample
      Src: /src/gpac/src/isomedia/media.c:1229,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: 1230
      start: 1163
    functionDepth: 2
    functionLinenumber: 1163
    functionLinenumberEnd: 1230
    functionName: Media_UpdateSample
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - stbl_unpackCTS
    - gf_free
    - gf_isom_box_del_parent
    - GF_LOG
    - UpdateSample
    - stbl_GetSampleDTS
    - gf_isom_datamap_get_offset
    - stbl_SetSampleSize
    - stbl_AddDTS
    - gf_list_get
    - stbl_SetChunkOffset
    - gf_isom_datamap_add_data
    - Media_GetSampleDesc
    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:1244,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/media.c:1249,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/media.c:1252,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/media.c:1254,1
    - Dst: UpdateSample
      Src: /src/gpac/src/isomedia/media.c:1261,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: 1262
      start: 1232
    functionDepth: 2
    functionLinenumber: 1232
    functionLinenumberEnd: 1262
    functionName: Media_UpdateSampleReference
    functionSourceFile: /src/gpac/src/isomedia/media.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - UpdateSample
    - stbl_GetSampleDTS
    - gf_list_get
    - 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_u8
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - memset
    - gf_bs_read_u16
    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_u16
    - gf_isom_box_write_header
    - gf_bs_write_u32
    - gf_bs_write_u8
    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_u8
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - memset
    - gf_bs_read_u16
    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
    - strlen
    - gf_bs_write_u8
    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:
    - gf_bs_read_u8
    - gpp_read_rgba
    - 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_u8
    - gpp_read_box
    - gf_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gpp_read_style
    - gf_isom_box_array_read
    - gf_bs_read_u32
    - gpp_read_rgba
    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_u8
    - gf_free
    - gpp_read_box
    - gf_malloc
    - gf_isom_base_sample_entry_read
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_peek_bits
    - gf_bs_read_data
    - gf_isom_box_array_read
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:
    - gpp_write_rgba
    - gf_bs_write_u16
    - gf_bs_write_u8
    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
    - gpp_write_style
    - gpp_write_rgba
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - gpp_write_box
    - gf_bs_write_u8
    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
    - gf_bs_write_u32
    - gf_bs_write_data
    - gpp_write_box
    - strlen
    - 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
    - gf_bs_read_u16
    - gpp_read_style
    - ISOM_DECREASE_SIZE
    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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:
    - gpp_write_rgba
    - gf_isom_box_write_header
    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_bs_read_u32
    - gf_malloc
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_u16
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u32
    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_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u16
    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
    - strlen
    - gf_bs_write_u8
    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:
    - gf_isom_box_write_header
    - gpp_write_box
    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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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_bs_read_u32
    - gf_malloc
    - 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_isom_full_box_write
    - gf_bs_write_u32
    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: 8
    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:1064,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1071,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1072,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1077,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1081,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1086,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1087,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1092,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1096,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1097,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1103,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 1049
    functionDepth: 1
    functionLinenumber: 1049
    functionLinenumberEnd: 1105
    functionName: dimC_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_free
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_strdup
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    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:1111,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1113,1
    - Dst: gf_bs_write_u8
      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_int
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1118,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1120,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1120,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1121,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1123,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1123,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1124,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1126
      start: 1108
    functionDepth: 1
    functionLinenumber: 1108
    functionLinenumberEnd: 1126
    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
    - gf_bs_write_data
    - strlen
    - 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:1131,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1134
      start: 1127
    functionDepth: 0
    functionLinenumber: 1127
    functionLinenumberEnd: 1134
    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:1141,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1143
      start: 1139
    functionDepth: 1
    functionLinenumber: 1139
    functionLinenumberEnd: 1143
    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:1147,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1148,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1149
      start: 1144
    functionDepth: 0
    functionLinenumber: 1144
    functionLinenumberEnd: 1149
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1156,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1151
    functionDepth: 1
    functionLinenumber: 1151
    functionLinenumberEnd: 1161
    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:1167,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1170,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1170,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1172,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1174
      start: 1164
    functionDepth: 1
    functionLinenumber: 1164
    functionLinenumberEnd: 1174
    functionName: diST_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    - gf_bs_write_data
    - 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:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1175
    functionDepth: 0
    functionLinenumber: 1175
    functionLinenumberEnd: 1180
    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:1186,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1187,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: 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:1192,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1194
      start: 1190
    functionDepth: 1
    functionLinenumber: 1190
    functionLinenumberEnd: 1194
    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:1201,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1204,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: 1208
      start: 1196
    functionDepth: 1
    functionLinenumber: 1196
    functionLinenumberEnd: 1208
    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:1214,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1217,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1219
      start: 1209
    functionDepth: 1
    functionLinenumber: 1209
    functionLinenumberEnd: 1219
    functionName: dims_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    - gf_isom_base_sample_entry_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:1225,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1227,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1228,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1222
    functionDepth: 1
    functionLinenumber: 1222
    functionLinenumberEnd: 1230
    functionName: dims_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_3gpp.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_data
    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:1237,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_3gpp.c:1238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1232
    functionDepth: 1
    functionLinenumber: 1232
    functionLinenumberEnd: 1240
    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_bs_get_position
    - gf_bs_seek
    - GF_LOG
    - gf_isom_box_parse_ex
    - gf_isom_box_del
    - gf_4cc_to_str
    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: 8
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:72,1
    - Dst: gf_strcat
      Src: /src/gpac/src/isomedia/box_funcs.c:73,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:75,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:77,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:79,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:81,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:83,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/box_funcs.c:85,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - UUID
    argTypes:
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 89
    functionName: gf_isom_solve_uuid_box
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_strcat
    - snprintf
    - strnicmp
    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: 262
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 262
    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:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - outBox
    - bs
    argTypes:
    - GF_Box**
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 437
    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:443,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:445,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - boxlist
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 448
    functionName: gf_isom_box_array_reset
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del
    - gf_list_count
    - gf_list_get
    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:452,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_funcs.c:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - boxlist
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 450
    functionDepth: 2
    functionLinenumber: 450
    functionLinenumberEnd: 454
    functionName: gf_isom_box_array_del
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_isom_box_array_reset
    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:460,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:462,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_funcs.c:463,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/isomedia/box_funcs.c:465,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - child_boxes
    - boxlist
    argTypes:
    - GF_List**
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 466
    functionName: gf_isom_box_array_reset_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_reset
    - gf_isom_box_del_parent
    - gf_list_get
    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:470,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_funcs.c:471,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - child_boxes
    - boxlist
    argTypes:
    - GF_List**
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 467
    functionDepth: 2
    functionLinenumber: 467
    functionLinenumberEnd: 472
    functionName: gf_isom_box_array_del_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_isom_box_array_reset_parent
    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:484,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_funcs.c:486,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_funcs.c:488,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_funcs.c:490,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:499,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:502,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:505,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:508,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_funcs.c:511,1
    - Dst: strtol
      Src: /src/gpac/src/isomedia/box_funcs.c:525,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_funcs.c:527,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_funcs.c:529,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_funcs.c:533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:535,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:535,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 477
    functionDepth: 1
    functionLinenumber: 477
    functionLinenumberEnd: 538
    functionName: gf_isom_box_write_header
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 16
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - strtol
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    - memcpy
    - gf_4cc_to_str
    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:544,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_funcs.c:546,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_funcs.c:547,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 540
    functionDepth: 2
    functionLinenumber: 540
    functionLinenumberEnd: 549
    functionName: gf_isom_full_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - 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:557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:559,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_funcs.c:561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:563,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/box_funcs.c:563,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:563,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: 569
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 569
    functionName: gf_isom_box_array_write
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_write
    - GF_LOG
    - gf_list_get
    - gf_4cc_to_str
    - 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:578,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:580,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/box_funcs.c:582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:584,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/box_funcs.c:584,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:584,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - parent
    - list
    argTypes:
    - GF_Box*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 572
    functionDepth: 1
    functionLinenumber: 572
    functionLinenumberEnd: 591
    functionName: gf_isom_box_array_size
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_size
    - GF_LOG
    - gf_list_get
    - gf_4cc_to_str
    - 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: 610
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 610
    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: 619
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 619
    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: 632
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 632
    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: 637
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 637
    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: 1029
      start: 1027
    functionDepth: 0
    functionLinenumber: 1027
    functionLinenumberEnd: 1029
    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: 1034
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1034
    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: 1039
      start: 1037
    functionDepth: 0
    functionLinenumber: 1037
    functionLinenumberEnd: 1039
    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: 1044
      start: 1042
    functionDepth: 0
    functionLinenumber: 1042
    functionLinenumberEnd: 1044
    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: 1050
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1050
    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: 1053
      start: 1051
    functionDepth: 0
    functionLinenumber: 1051
    functionLinenumberEnd: 1053
    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: 1056
      start: 1054
    functionDepth: 0
    functionLinenumber: 1054
    functionLinenumberEnd: 1056
    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: 1059
      start: 1057
    functionDepth: 0
    functionLinenumber: 1057
    functionLinenumberEnd: 1059
    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: 1062
      start: 1060
    functionDepth: 0
    functionLinenumber: 1060
    functionLinenumberEnd: 1062
    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: 1065
      start: 1063
    functionDepth: 0
    functionLinenumber: 1063
    functionLinenumberEnd: 1065
    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: 1068
      start: 1066
    functionDepth: 0
    functionLinenumber: 1066
    functionLinenumberEnd: 1068
    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: 1071
      start: 1069
    functionDepth: 0
    functionLinenumber: 1069
    functionLinenumberEnd: 1071
    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: 1074
      start: 1072
    functionDepth: 0
    functionLinenumber: 1072
    functionLinenumberEnd: 1074
    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: 1077
      start: 1075
    functionDepth: 0
    functionLinenumber: 1075
    functionLinenumberEnd: 1077
    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: 1080
      start: 1078
    functionDepth: 0
    functionLinenumber: 1078
    functionLinenumberEnd: 1080
    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: 1083
      start: 1081
    functionDepth: 0
    functionLinenumber: 1081
    functionLinenumberEnd: 1083
    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: 1086
      start: 1084
    functionDepth: 0
    functionLinenumber: 1084
    functionLinenumberEnd: 1086
    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: 1089
      start: 1087
    functionDepth: 0
    functionLinenumber: 1087
    functionLinenumberEnd: 1089
    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:1890,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - a
    - parent_4cc
    argTypes:
    - GF_Box*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1892
      start: 1887
    functionDepth: 0
    functionLinenumber: 1887
    functionLinenumberEnd: 1892
    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: 1898
      start: 1894
    functionDepth: 0
    functionLinenumber: 1894
    functionLinenumberEnd: 1898
    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:1902,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - boxCode
    - disable
    argTypes:
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1900
    functionDepth: 1
    functionLinenumber: 1900
    functionLinenumberEnd: 1909
    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:1913,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1928,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:1928,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1930,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1933,1
    - Dst: get_box_reg_idx
      Src: /src/gpac/src/isomedia/box_funcs.c:1944,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:1947,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 28
    argCount: 3
    argNames:
    - boxCode
    - parent_type
    - start_from
    argTypes:
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1953
      start: 1911
    functionDepth: 1
    functionLinenumber: 1911
    functionLinenumberEnd: 1953
    functionName: get_box_reg_idx
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - strstr
    - gf_4cc_to_str_safe
    - get_box_reg_idx
    - 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:1959,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/isomedia/box_funcs.c:1980,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:1983,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:1983,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/isomedia/box_funcs.c:1984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:1996,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:1996,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2001,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2001,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2004,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2004,1
    - Dst: uuid_box_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2011,1
    - Dst: unkn_box_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2014,1
    - Dst: new_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2023,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: 2041
      start: 1955
    functionDepth: 2
    functionLinenumber: 1955
    functionLinenumberEnd: 2041
    functionName: gf_isom_box_new_ex
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - unkn_box_new
    - gf_file_exists
    - GF_LOG
    - gf_4cc_to_str_safe
    - uuid_box_new
    - new_fn
    - snprintf
    - gf_opts_get_key
    - gf_4cc_to_str
    - get_box_reg_idx
    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:2046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - boxType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2047
      start: 2043
    functionDepth: 3
    functionLinenumber: 2043
    functionLinenumberEnd: 2047
    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:2054,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/box_funcs.c:2061,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2063,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2071,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2071,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_funcs.c:2073,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2074,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_funcs.c:2083,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:2087,1
    - Dst: gf_4cc_to_str_safe
      Src: /src/gpac/src/isomedia/box_funcs.c:2089,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2091,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_funcs.c:2093,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2093,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2093,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2103,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2105,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2120,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2120,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2126,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_funcs.c:2129,1
    - Dst: GF_Box*::registry::add_rem_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2133,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/box_funcs.c:2137,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_funcs.c:2138,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 82
    argCount: 2
    argNames:
    - parent
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2145
      start: 2049
    functionDepth: 1
    functionLinenumber: 2049
    functionLinenumberEnd: 2145
    functionName: gf_isom_box_array_read
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 3
    functionsReached:
    - gf_bs_get_cookie
    - gf_opts_get_bool
    - gf_isom_box_del_parent
    - GF_LOG
    - GF_Box*::registry::add_rem_fn
    - gf_4cc_to_str_safe
    - gf_list_new
    - gf_list_find
    - gf_isom_box_parse_ex
    - strcmp
    - strlen
    - gf_isom_box_del
    - gf_list_add
    - strstr
    - gf_4cc_to_str
    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:2159,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2159,1
    - Dst: struct box_registry_entry*::del_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2161,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2167
      start: 2147
    functionDepth: 3
    functionLinenumber: 2147
    functionLinenumberEnd: 2167
    functionName: gf_isom_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - struct box_registry_entry*::del_fn
    - gf_4cc_to_str
    - gf_isom_box_array_del
    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:2174,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2174,1
    - Dst: GF_Box*::registry::read_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2177,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - a
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2178
      start: 2170
    functionDepth: 1
    functionLinenumber: 2170
    functionLinenumberEnd: 2178
    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:2186,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2186,1
    - Dst: GF_Box*::registry::write_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - a
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2190
      start: 2182
    functionDepth: 1
    functionLinenumber: 2182
    functionLinenumberEnd: 2190
    functionName: gf_isom_box_write_listing
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_Box*::registry::write_fn
    - 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:2199,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_funcs.c:2205,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/box_funcs.c:2206,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 3
    argNames:
    - s
    - child
    - pos
    argTypes:
    - GF_Box*
    - GF_Box*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2193
    functionDepth: 1
    functionLinenumber: 2193
    functionLinenumberEnd: 2209
    functionName: gf_isom_check_position
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_list_insert
    - gf_list_del_item
    - gf_list_find
    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:2216,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:2218,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_funcs.c:2219,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - s
    - childlist
    - pos
    argTypes:
    - GF_Box*
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2221
      start: 2211
    functionDepth: 2
    functionLinenumber: 2211
    functionLinenumberEnd: 2221
    functionName: gf_isom_check_position_list
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    - gf_list_count
    - gf_list_get
    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:2228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2234,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2238,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2238,1
    - Dst: gf_isom_box_write_listing
      Src: /src/gpac/src/isomedia/box_funcs.c:2239,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/box_funcs.c:2242,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_funcs.c:2244,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2247,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2247,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - a
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2251
      start: 2224
    functionDepth: 2
    functionLinenumber: 2224
    functionLinenumberEnd: 2251
    functionName: gf_isom_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_isom_box_array_write
    - GF_LOG
    - gf_isom_box_write_listing
    - gf_4cc_to_str
    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:2257,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2257,1
    - Dst: GF_Box*::registry::size_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2269,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2270
      start: 2253
    functionDepth: 1
    functionLinenumber: 2253
    functionLinenumberEnd: 2270
    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:2281,1
    - Dst: gf_isom_box_array_size
      Src: /src/gpac/src/isomedia/box_funcs.c:2287,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2291
      start: 2272
    functionDepth: 2
    functionLinenumber: 2272
    functionLinenumberEnd: 2291
    functionName: gf_isom_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_size_listing
    - gf_isom_box_array_size
    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:2299,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_funcs.c:2300,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_funcs.c:2301,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2304
      start: 2295
    functionDepth: 1
    functionLinenumber: 2295
    functionLinenumberEnd: 2304
    functionName: gf_isom_full_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u24
    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:2319,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_funcs.c:2343,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_funcs.c:2351,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_funcs.c:2358,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2361,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 2
    argNames:
    - idx
    - trace
    argTypes:
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2367
      start: 2307
    functionDepth: 4
    functionLinenumber: 2307
    functionLinenumberEnd: 2367
    functionName: gf_isom_dump_supported_box
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del
    - new_fn
    - gf_isom_box_dump
    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: 2373
      start: 2369
    functionDepth: 0
    functionLinenumber: 2369
    functionLinenumberEnd: 2373
    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:2379,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2383,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2385,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2389,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2389,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2391,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2391,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2396,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:2399,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2401,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2405,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2407,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/box_funcs.c:2410,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2412,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2414,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: 2417
      start: 2377
    functionDepth: 1
    functionLinenumber: 2377
    functionLinenumberEnd: 2417
    functionName: gf_isom_box_dump_start_ex
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_sys_is_test_mode
    - gf_4cc_to_str
    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:2420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - name
    - trace
    argTypes:
    - GF_Box*
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2421
      start: 2418
    functionDepth: 2
    functionLinenumber: 2418
    functionLinenumberEnd: 2421
    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:2428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_funcs.c:2432,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_funcs.c:2432,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_funcs.c:2435,1
    - Dst: GF_Box*::registry::dump_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2437,1
    - Dst: GF_Box*::registry::dump_fn
      Src: /src/gpac/src/isomedia/box_funcs.c:2440,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ptr
    - trace
    - subtree_root
    argTypes:
    - void*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2443
      start: 2423
    functionDepth: 1
    functionLinenumber: 2423
    functionLinenumberEnd: 2443
    functionName: gf_isom_box_dump_ex
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - GF_LOG
    - GF_Box*::registry::dump_fn
    - gf_fprintf
    - gf_4cc_to_str
    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:2446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - trace
    argTypes:
    - void*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2447
      start: 2444
    functionDepth: 2
    functionLinenumber: 2444
    functionLinenumberEnd: 2447
    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:2452,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_funcs.c:2455,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - name
    - ptr
    - trace
    argTypes:
    - char*
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2456
      start: 2449
    functionDepth: 1
    functionLinenumber: 2449
    functionLinenumberEnd: 2456
    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:2461,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/box_funcs.c:2462,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2464
      start: 2458
    functionDepth: 0
    functionLinenumber: 2458
    functionLinenumberEnd: 2464
    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:2472,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:2474,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 2
    argNames:
    - children
    - code
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2487
      start: 2467
    functionDepth: 1
    functionLinenumber: 2467
    functionLinenumberEnd: 2487
    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:2493,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_funcs.c:2495,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - children
    - a
    argTypes:
    - GF_List*
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2500
      start: 2489
    functionDepth: 1
    functionLinenumber: 2489
    functionLinenumberEnd: 2500
    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:2506,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_funcs.c:2507,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2508,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_funcs.c:2512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - child_boxes
    - b
    argTypes:
    - GF_List**
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2513
      start: 2502
    functionDepth: 4
    functionLinenumber: 2502
    functionLinenumberEnd: 2513
    functionName: gf_isom_box_del_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 4
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_isom_box_del
    - gf_list_del_item
    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:2518,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - parent_box
    - box
    argTypes:
    - GF_Box*
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2520
      start: 2515
    functionDepth: 0
    functionLinenumber: 2515
    functionLinenumberEnd: 2520
    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:2524,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_funcs.c:2526,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_funcs.c:2527,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parent
    - code
    argTypes:
    - GF_List**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2529
      start: 2522
    functionDepth: 4
    functionLinenumber: 2522
    functionLinenumberEnd: 2529
    functionName: gf_isom_box_new_parent
    functionSourceFile: /src/gpac/src/isomedia/box_funcs.c
    functionUses: 3
    functionsReached:
    - gf_list_add
    - gf_isom_box_new
    - gf_list_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:2538,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/box_funcs.c:2539,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - box
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2542
      start: 2531
    functionDepth: 1
    functionLinenumber: 2531
    functionLinenumberEnd: 2542
    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_isom_box_write_header
    - gf_bs_write_u32
    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_bs_read_u32
    - gf_bs_read_data
    - gf_malloc
    - 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_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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_u8
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_bs_write_u64
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_u8
    - gf_malloc
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_isom_box_array_read
    - gf_bs_read_u16
    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_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_write_u16
    - gf_bs_write_data
    - strlen
    - 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_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u16
    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
    - strlen
    - gf_bs_write_u8
    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_isom_full_box_write
    - gf_bs_write_data
    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_isom_full_box_write
    - gf_bs_write_data
    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_u32
    - gf_bs_read_data
    - gf_malloc
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_data
    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_u8
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_u32
    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_u32
    - gf_bs_write_data
    - 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_u8
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_int
    - 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_int
    - gf_bs_write_u24
    - 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_list_count
    - gf_free
    - gf_list_del
    - gf_isom_cenc_samp_aux_info_del
    - gf_list_get
    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_u8
    - gf_bs_get_position
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_skip_bytes
    - 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_get_position
    - GF_LOG
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_seek
    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:
    - gf_list_count
    - gf_isom_box_write_header
    - gf_bs_write_int
    - gf_bs_write_u24
    - gf_bs_write_data
    - gf_bs_write_u32
    - gf_list_get
    - store_senc_info
    - 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_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - 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_u32
    - gf_bs_write_u24
    - gf_bs_write_data
    - 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_list_del
    - gf_isom_cenc_samp_aux_info_del
    - gf_list_pop_back
    - gf_free
    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: 47
    EdgeCount: 47
    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_bs_get_position
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_list_add
    - gf_isom_get_sample_cenc_info_internal
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_list_enum
    - gf_isom_cenc_samp_aux_info_del
    - gf_bs_read_int
    - gf_list_new
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - 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_u8
    - gf_bs_get_position
    - ISOM_DECREASE_SIZE
    - gf_bs_skip_bytes
    - gf_bs_read_u24
    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_count
    - gf_isom_box_write_header
    - gf_bs_write_u24
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    - store_senc_info
    - 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:1749,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1732
    functionDepth: 1
    functionLinenumber: 1732
    functionLinenumberEnd: 1752
    functionName: aeib_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_data
    - gf_malloc
    - ISOM_DECREASE_SIZE
    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:1761,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1764,1
    - Dst: strlen
      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:1765,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1767,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1756
    functionDepth: 3
    functionLinenumber: 1756
    functionLinenumberEnd: 1769
    functionName: aeib_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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:1775,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1778
      start: 1771
    functionDepth: 0
    functionLinenumber: 1771
    functionLinenumberEnd: 1778
    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:1783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1787
      start: 1781
    functionDepth: 1
    functionLinenumber: 1781
    functionLinenumberEnd: 1787
    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:1791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1789
    functionDepth: 0
    functionLinenumber: 1789
    functionLinenumberEnd: 1792
    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:1799,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: 1803
      start: 1794
    functionDepth: 1
    functionLinenumber: 1794
    functionLinenumberEnd: 1803
    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:1807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1805
    functionDepth: 2
    functionLinenumber: 1805
    functionLinenumberEnd: 1808
    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:1813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1814
      start: 1811
    functionDepth: 3
    functionLinenumber: 1811
    functionLinenumberEnd: 1814
    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:1820,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1816
    functionDepth: 2
    functionLinenumber: 1816
    functionLinenumberEnd: 1822
    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:1827,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1825
    functionDepth: 1
    functionLinenumber: 1825
    functionLinenumberEnd: 1829
    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:1836,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_drm.c:1837,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1838
      start: 1831
    functionDepth: 0
    functionLinenumber: 1831
    functionLinenumberEnd: 1838
    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:1847,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1840
    functionDepth: 1
    functionLinenumber: 1840
    functionLinenumberEnd: 1853
    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:1862,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_drm.c:1865,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_drm.c:1865,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1866,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1869
      start: 1857
    functionDepth: 2
    functionLinenumber: 1857
    functionLinenumberEnd: 1869
    functionName: flxs_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u8
    - gf_bs_write_data
    - 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:1875,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1871
    functionDepth: 0
    functionLinenumber: 1871
    functionLinenumberEnd: 1877
    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:1882,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1884
      start: 1880
    functionDepth: 1
    functionLinenumber: 1880
    functionLinenumberEnd: 1884
    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:1888,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1889
      start: 1886
    functionDepth: 0
    functionLinenumber: 1886
    functionLinenumberEnd: 1889
    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:1895,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1896,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1897,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1900
      start: 1891
    functionDepth: 1
    functionLinenumber: 1891
    functionLinenumberEnd: 1900
    functionName: adaf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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:1909,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1912,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1913,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_drm.c:1914,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1904
    functionDepth: 3
    functionLinenumber: 1904
    functionLinenumberEnd: 1916
    functionName: adaf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_drm.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u8
    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: 1923
      start: 1918
    functionDepth: 0
    functionLinenumber: 1918
    functionLinenumberEnd: 1923
    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_LOG
    - gf_bs_read_data
    - 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_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    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_list_del_item
    - gf_isom_box_find_child
    - gf_sys_old_arch_compat
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_add
    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_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    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_u16
    - gf_isom_audio_sample_get_audio_codec_cfg_box
    - gf_bs_write_u32
    - gf_bs_write_data
    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
    - memcpy
    - gf_malloc
    - gf_list_get
    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
    - memcpy
    - gf_malloc
    - gf_list_get
    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_odf_ac4_cfg_deep_copy
    - gf_isom_get_track_box
    - gf_malloc
    - gf_list_get
    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_isom_get_track_box
    - gf_malloc
    - gf_isom_get_original_format_type
    - gf_list_get
    - memcpy
    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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - 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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - 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_isom_get_track_box
    - gf_isom_get_original_format_type
    - gf_list_get
    - memset
    - gf_odf_opus_cfg_write
    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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_is_video_handler_type
    - gf_isom_box_del
    - memcpy
    - 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_isom_get_track_box
    - memcpy
    - gf_list_get
    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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_box_new
    - gf_isom_box_del
    - gf_list_add
    - memcpy
    - 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_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_get
    - memcpy
    - 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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_odf_ac4_cfg_deep_copy
    - gf_list_count
    - gf_isom_box_new
    - gf_isom_box_del
    - gf_list_add
    - 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_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_get
    - gf_odf_ac4_cfg_deep_copy
    - 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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_list_count
    - gf_isom_box_new
    - gf_isom_box_del
    - gf_list_add
    - memcpy
    - gf_isom_get_mp4time
    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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_isom_box_del_parent
    - gf_list_count
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_read
    - 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:
    - memset
    - gf_isom_get_track_box
    - gf_list_get
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_box_new_parent
    - gf_isom_box_new
    - gf_strdup
    - gf_list_add
    - 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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_strdup
    - 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:
    - memset
    - gf_isom_get_track_box
    - gf_list_get
    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_new_parent
    - gf_list_count
    - gf_odf_desc_del
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_isom_sample_entry_get_bitrate_box
    - gf_realloc
    - gf_list_add
    - memcpy
    - gf_list_rem
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_box_new
    - gf_strdup
    - gf_list_add
    - 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_isom_box_find_child
    - gf_list_get
    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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_strdup
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - GF_LOG
    - gf_isom_box_new
    - gf_strdup
    - gf_list_add
    - 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: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_box_new_parent
    - GF_LOG
    - gf_isom_box_new
    - gf_strdup
    - gf_list_add
    - 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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_list_get
    - gf_strdup
    - 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_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - boxstring_new_with_data
    - gf_list_get
    - 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
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - boxstring_new_with_data
    - gf_isom_box_new
    - gf_list_add
    - 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_isom_box_new_parent
    - gf_list_enum
    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_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_sample_entry_get_bitrate_box
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    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: 17
    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
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/sample_descs.c:1843,1
    - Dst: gf_isom_enable_auto_track_reorder
      Src: /src/gpac/src/isomedia/sample_descs.c:1844,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 53
    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: 1846
      start: 1783
    functionDepth: 5
    functionLinenumber: 1783
    functionLinenumberEnd: 1846
    functionName: gf_isom_tmcd_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_enable_auto_track_reorder
    - gf_isom_box_find_child
    - gf_sys_old_arch_compat
    - gf_isom_box_new_ex
    - gf_list_add
    - gf_isom_get_mp4time
    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:1856,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1859,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1863,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1866,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1870,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1872,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1875,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1876,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - outDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1879
      start: 1848
    functionDepth: 4
    functionLinenumber: 1848
    functionLinenumberEnd: 1879
    functionName: gf_isom_evte_config_new
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_box_new
    - gf_list_add
    - 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:1889,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/sample_descs.c:1892,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1915,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/sample_descs.c:1918,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/sample_descs.c:1922,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/sample_descs.c:1924,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/sample_descs.c:1927,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/sample_descs.c:1928,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/sample_descs.c:1934,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/sample_descs.c:1946,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/sample_descs.c:1948,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: 1951
      start: 1881
    functionDepth: 5
    functionLinenumber: 1881
    functionLinenumberEnd: 1951
    functionName: gf_isom_new_mpha_description
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_isom_box_new
    - gf_list_add
    - memcpy
    - gf_isom_get_mp4time
    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:1960,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1963,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: 1972
      start: 1955
    functionDepth: 1
    functionLinenumber: 1955
    functionLinenumberEnd: 1972
    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:1980,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:1983,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:1990,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/sample_descs.c:2009,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: 2015
      start: 1974
    functionDepth: 2
    functionLinenumber: 1974
    functionLinenumberEnd: 2015
    functionName: gf_isom_get_pcm_config
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    - gf_list_get
    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:2023,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/sample_descs.c:2026,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/sample_descs.c:2033,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2034,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/sample_descs.c:2035,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:2040,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2042,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2044,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/sample_descs.c:2045,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/sample_descs.c:2046,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: 2048
      start: 2017
    functionDepth: 1
    functionLinenumber: 2017
    functionLinenumberEnd: 2048
    functionName: gf_isom_get_lpcm_config
    functionSourceFile: /src/gpac/src/isomedia/sample_descs.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_bs_read_double
    - gf_bs_new
    - gf_bs_del
    - gf_list_get
    - gf_bs_read_u32
    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_LOG
    - gf_bs_peek_bits
    - ISOM_DECREASE_SIZE
    - gf_isom_box_parse_ex
    - gf_isom_box_del
    - gf_list_add
    - gf_bs_read_u32
    - gf_4cc_to_str
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_get_position
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_isom_box_del_parent
    - gf_bs_seek
    - GF_LOG
    - gf_isom_box_parse
    - gf_bs_peek_bits
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_isom_box_array_read
    - gf_list_new
    - gf_isom_box_del
    - gf_list_add
    - gf_bs_read_u16
    - gf_4cc_to_str
    - gf_isom_box_array_del
    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_u16
    - gf_isom_box_write_header
    - gf_bs_write_data
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_bs_read_u32
    - gf_bs_read_data
    - gf_malloc
    - 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_int
    - gf_isom_full_box_write
    - gf_bs_write_data
    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
    - udta_getEntry
    - gf_list_get
    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:
    - gf_isom_box_new_parent
    - gf_list_count
    - udta_on_child_box_ex
    - udta_getEntry
    - gf_isom_box_new
    - gf_list_get
    - gf_isom_box_del
    - 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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_bs_write_u32
    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_u8
    - gf_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    - gf_bs_read_u32
    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_u32
    - gf_bs_write_data
    - 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_u8
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u16
    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
    - strlen
    - gf_bs_write_u8
    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:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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_isom_box_write_header
    - gf_bs_write_u32
    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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_float
    - gf_bs_read_u32
    - 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_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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_isom_box_write_header
    - gf_bs_write_u32
    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_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_list_add
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_count
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    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
    - memcmp
    - gf_list_enum
    - gf_list_add
    - gf_isom_box_new
    - strlen
    - gf_strdup
    - gf_sys_is_test_mode
    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_list_count
    - gf_free
    - gf_list_del_item
    - gf_list_get
    - gf_isom_box_del
    - 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_isom_box_del
    - gf_isom_box_new
    - gf_free
    - gf_list_enum
    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_list_count
    - Media_IsSelfContained
    - GF_LOG
    - gf_isom_get_track
    - GF_SAFEALLOC
    - gf_isom_box_new
    - CleanWriters
    - Media_SelfContainedType
    - gf_list_insert
    - gf_list_add
    - gf_isom_box_array_del_parent
    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:
    - gf_isom_box_new
    - Media_IsSelfContained
    - gf_malloc
    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:
    - gf_isom_box_del
    - shift_chunk_offsets
    - gf_list_enum
    - ShiftMetaOffset
    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_gz_compress_payload_ex
    - gf_free
    - gf_isom_box_write
    - gf_bs_get_content
    - GF_4CC
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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_isom_box_size
    - gf_bs_prevent_dispatch
    - gf_isom_write_compressed_box
    - gf_isom_box_write
    - gf_list_del_item
    - gf_list_enum
    - GF_4CC
    - gf_list_insert
    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_gz_compress_payload_ex
    - gf_isom_box_size
    - gf_free
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_list_del_item
    - gf_list_enum
    - gf_bs_new
    - gf_bs_del
    - gf_list_insert
    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:
    - gf_set_progress
    - MovieWriter*::movie::progress_cbk
    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_isom_datamap_get_data
    - muxer_report_progress
    - gf_realloc
    - gf_bs_write_data
    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_count
    - gf_isom_get_sample_info
    - gf_isom_get_track_by_id
    - gf_list_del_item
    - gf_list_enum
    - gf_isom_sample_del
    - gf_list_get
    - gf_list_insert
    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
    - gf_list_enum
    - store_meta_item_sample_ref_offsets
    - gf_list_get
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err store_meta_item_references(GF_ISOFile *movie, GF_List *writers,
      GF_MetaBox *meta)
  - BBCount: 42
    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:985,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:987,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:992,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:994,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 138
    argCount: 6
    argNames:
    - file
    - meta
    - bs
    - Emulation
    - baseOffset
    - mdatSize
    argTypes:
    - GF_ISOFile*
    - GF_MetaBox*
    - GF_BitStream*
    - Bool
    - u64
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 850
    functionDepth: 1
    functionLinenumber: 850
    functionLinenumberEnd: 1013
    functionName: DoWriteMeta
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fclose
    - gf_bs_seek
    - gf_fopen
    - gf_list_enum
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_fsize
    - gf_fread
    - gf_list_get
    - gf_bs_write_data
    - gf_list_add
    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:1031,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1037,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1043,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1045,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1056,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/isom_store.c:1065,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_store.c:1067,1
    - Dst: update_writer_constant_dur
      Src: /src/gpac/src/isomedia/isom_store.c:1070,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:1086,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1090,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1102,1
    - Dst: WriteSample
      Src: /src/gpac/src/isomedia/isom_store.c:1108,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: 1124
      start: 1016
    functionDepth: 3
    functionLinenumber: 1016
    functionLinenumberEnd: 1124
    functionName: DoWrite
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - DoWriteMeta
    - WriteSample
    - Media_IsSelfContained
    - stbl_SetChunkAndOffset
    - gf_list_enum
    - update_writer_constant_dur
    - 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:1141,1
    - Dst: ShiftOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1157,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:1162,1
    - Dst: GetMoovAndMetaSize
      Src: /src/gpac/src/isomedia/isom_store.c:1166,1
    - Dst: ShiftOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1181,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:1186,1
    - Dst: GetMoovAndMetaSize
      Src: /src/gpac/src/isomedia/isom_store.c:1191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:1199,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: 1205
      start: 1128
    functionDepth: 6
    functionLinenumber: 1128
    functionLinenumberEnd: 1205
    functionName: UpdateOffsets
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - store_meta_item_references
    - ShiftOffset
    - GetMoovAndMetaSize
    - GF_LOG
    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:1215,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_store.c:1220,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1221,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:1222,1
    - Dst: SetupWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1227,1
    - Dst: gf_isom_datamap_get_offset
      Src: /src/gpac/src/isomedia/isom_store.c:1233,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1237,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1238,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1239,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1244,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1246,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1252,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1254,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1260,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1262,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1270,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1275,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1280,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1288,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1289,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1290,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1293,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1295,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1299,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1301,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1306,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1308,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1315,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1333,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1338,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1340,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_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1348,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1349,1
    - Dst: ResetWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1351,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1352,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1352,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1358,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1359,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1360,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1361,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1361,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1363,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_store.c:1371,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1372,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1374,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1382,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1384,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1392,1
    - Dst: UpdateOffsets
      Src: /src/gpac/src/isomedia/isom_store.c:1395,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:1400,1
    - Dst: WriteMoovAndMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1403,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1408,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1412,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1414,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1423,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:1424,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_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1431,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:1432,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:1433,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1440,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1452,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1454,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1467,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1468,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1469,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1472,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1474,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1478,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1480,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1485,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1487,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1493,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_store.c:1508,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1515,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1517,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1526,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:1526,1
    - Dst: UpdateOffsets
      Src: /src/gpac/src/isomedia/isom_store.c:1530,1
    - Dst: WriteMoovAndMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1535,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1537,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1539,1
    - Dst: ResetWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1543,1
    - Dst: DoWrite
      Src: /src/gpac/src/isomedia/isom_store.c:1544,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1549,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:1560,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:1562,1
    - Dst: CleanWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1568,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_store.c:1569,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: 1571
      start: 1209
    functionDepth: 7
    functionLinenumber: 1209
    functionLinenumberEnd: 1571
    functionName: WriteFlat
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - UpdateOffsets
    - gf_bs_get_size
    - gf_bs_write_u64
    - SetupWriters
    - ResetWriters
    - gf_bs_seek
    - DoWrite
    - gf_isom_box_write
    - gf_isom_datamap_get_offset
    - gf_list_enum
    - store_meta_item_references
    - gf_list_new
    - gf_isom_box_size
    - gf_list_del
    - gf_bs_write_u32
    - WriteMoovAndMeta
    - CleanWriters
    - strncmp
    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:1612,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_store.c:1619,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/isom_store.c:1641,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_store.c:1643,1
    - Dst: update_writer_constant_dur
      Src: /src/gpac/src/isomedia/isom_store.c:1646,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:1654,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1668,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1678,1
    - Dst: WriteSample
      Src: /src/gpac/src/isomedia/isom_store.c:1684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:1699,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: 1706
      start: 1573
    functionDepth: 3
    functionLinenumber: 1573
    functionLinenumberEnd: 1706
    functionName: DoFullInterleave
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - WriteSample
    - gf_list_count
    - Media_IsSelfContained
    - stbl_SetChunkAndOffset
    - stbl_GetSampleDTS
    - gf_list_enum
    - update_writer_constant_dur
    - 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:1736,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_store.c:1737,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_store.c:1739,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:1741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:1743,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:1746,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:1748,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1756,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1763,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:1769,1
    - Dst: DoWriteMeta
      Src: /src/gpac/src/isomedia/isom_store.c:1771,1
    - Dst: DoFullInterleave
      Src: /src/gpac/src/isomedia/isom_store.c:1781,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:1794,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:1808,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_store.c:1830,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/isomedia/isom_store.c:1833,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/isomedia/isom_store.c:1835,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/isom_store.c:1854,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/isom_store.c:1860,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/isom_store.c:1868,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_store.c:1871,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_store.c:1875,1
    - Dst: update_writer_constant_dur
      Src: /src/gpac/src/isomedia/isom_store.c:1877,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1890,1
    - Dst: stbl_SetChunkAndOffset
      Src: /src/gpac/src/isomedia/isom_store.c:1901,1
    - Dst: WriteSample
      Src: /src/gpac/src/isomedia/isom_store.c:1907,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:1944,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: 1950
      start: 1713
    functionDepth: 4
    functionLinenumber: 1713
    functionLinenumberEnd: 1950
    functionName: DoInterleave
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - gf_list_count
    - gf_sys_old_arch_compat
    - update_writer_constant_dur
    - gf_timestamp_greater
    - gf_malloc
    - Media_IsSelfContained
    - DoFullInterleave
    - gf_list_get
    - DoWriteMeta
    - stbl_SetChunkAndOffset
    - gf_list_enum
    - stbl_GetSampleSize
    - gf_bs_write_data
    - WriteSample
    - gf_free
    - stbl_GetSampleDTS_and_Duration
    - GF_LOG
    - memset
    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:1957,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/isomedia/isom_store.c:1958,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:1958,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:1962,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:1965,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - size
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1970
      start: 1953
    functionDepth: 1
    functionLinenumber: 1953
    functionLinenumberEnd: 1970
    functionName: write_blank_data
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - memset
    - gf_sys_is_test_mode
    - gf_bs_write_data
    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:1975,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1976,1
    - Dst: write_blank_data
      Src: /src/gpac/src/isomedia/isom_store.c:1977,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - size
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1978
      start: 1972
    functionDepth: 2
    functionLinenumber: 1972
    functionLinenumberEnd: 1978
    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:1987,1
    - Dst: SetupWriters
      Src: /src/gpac/src/isomedia/isom_store.c:1992,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1997,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1998,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:1999,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2002,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2004,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2008,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2010,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2014,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2016,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2022,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_store.c:2037,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2044,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2046,1
    - Dst: DoInterleave
      Src: /src/gpac/src/isomedia/isom_store.c:2053,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2053,1
    - Dst: UpdateOffsets
      Src: /src/gpac/src/isomedia/isom_store.c:2057,1
    - Dst: WriteMoovAndMeta
      Src: /src/gpac/src/isomedia/isom_store.c:2061,1
    - Dst: write_free_box
      Src: /src/gpac/src/isomedia/isom_store.c:2065,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2072,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2074,1
    - Dst: ResetWriters
      Src: /src/gpac/src/isomedia/isom_store.c:2079,1
    - Dst: DoInterleave
      Src: /src/gpac/src/isomedia/isom_store.c:2080,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2085,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2097,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2099,1
    - Dst: CleanWriters
      Src: /src/gpac/src/isomedia/isom_store.c:2105,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_store.c:2106,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 138
    argCount: 3
    argNames:
    - mw
    - bs
    - drift_inter
    argTypes:
    - MovieWriter*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2108
      start: 1981
    functionDepth: 7
    functionLinenumber: 1981
    functionLinenumberEnd: 2108
    functionName: WriteInterleaved
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_isom_box_size
    - UpdateOffsets
    - write_free_box
    - gf_isom_box_write
    - gf_list_del
    - gf_list_enum
    - DoInterleave
    - gf_bs_write_u32
    - SetupWriters
    - WriteMoovAndMeta
    - gf_list_new
    - ResetWriters
    - CleanWriters
    - strncmp
    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:2113,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2115,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_store.c:2117,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:2120,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:2126,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2128,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_store.c:2130,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2131,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_store.c:2132,1
    - Dst: purge_free_boxes
      Src: /src/gpac/src/isomedia/isom_store.c:2138,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - par
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2140
      start: 2111
    functionDepth: 4
    functionLinenumber: 2111
    functionLinenumberEnd: 2140
    functionName: purge_free_boxes
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 1
    functionsReached:
    - purge_free_boxes
    - gf_list_count
    - gf_free
    - gf_isom_box_array_del
    - gf_list_get
    - gf_isom_box_del
    - gf_list_rem
    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:2146,1
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:2151,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:2153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2160,1
    - Dst: ShiftMetaOffset
      Src: /src/gpac/src/isomedia/isom_store.c:2163,1
    - Dst: shift_chunk_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:2168,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_store.c:2172,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_store.c:2173,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:2175,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - movie
    - shift_offset
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2179
      start: 2142
    functionDepth: 5
    functionLinenumber: 2142
    functionLinenumberEnd: 2179
    functionName: inplace_shift_moov_meta_offsets
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_del_item
    - shift_chunk_offsets
    - ShiftMetaOffset
    - gf_list_get
    - gf_isom_box_del
    - gf_list_add
    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:2190,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2194,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2199,1
    - Dst: inplace_shift_moov_meta_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:2205,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2211,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2218,1
    - Dst: inplace_shift_moov_meta_offsets
      Src: /src/gpac/src/isomedia/isom_store.c:2226,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2234,1
    - Dst: gf_bs_get_size
      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: write_blank_data
      Src: /src/gpac/src/isomedia/isom_store.c:2236,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2237,1
    - Dst: muxer_report_progress
      Src: /src/gpac/src/isomedia/isom_store.c:2243,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2251,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_store.c:2252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2254,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2258,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:2259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2262,1
    - Dst: muxer_report_progress
      Src: /src/gpac/src/isomedia/isom_store.c:2269,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2271,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: 2274
      start: 2181
    functionDepth: 6
    functionLinenumber: 2181
    functionLinenumberEnd: 2274
    functionName: inplace_shift_mdat
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_isom_box_size
    - GF_LOG
    - gf_bs_get_size
    - muxer_report_progress
    - write_blank_data
    - gf_bs_read_data
    - inplace_shift_moov_meta_offsets
    - gf_bs_write_data
    - gf_bs_seek
    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:2295,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2300,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2305,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2311,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2326,1
    - Dst: purge_free_boxes
      Src: /src/gpac/src/isomedia/isom_store.c:2335,1
    - Dst: store_meta_item_references
      Src: /src/gpac/src/isomedia/isom_store.c:2336,1
    - Dst: purge_free_boxes
      Src: /src/gpac/src/isomedia/isom_store.c:2339,1
    - Dst: inplace_shift_mdat
      Src: /src/gpac/src/isomedia/isom_store.c:2361,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2371,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2372,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2373,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2376,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2380,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2384,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2390,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2401,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2412,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2413,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2414,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2415,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2418,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2420,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2422,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2426,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2428,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_store.c:2432,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2433,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2440,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2441,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_store.c:2443,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2451,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2453,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_store.c:2459,1
    - Dst: inplace_shift_mdat
      Src: /src/gpac/src/isomedia/isom_store.c:2481,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2486,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_store.c:2490,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2494,1
    - Dst: write_free_box
      Src: /src/gpac/src/isomedia/isom_store.c:2495,1
    CyclomaticComplexity: 70
    EdgeCount: 70
    ICount: 196
    argCount: 2
    argNames:
    - mw
    - bs
    argTypes:
    - MovieWriter*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2496
      start: 2276
    functionDepth: 7
    functionLinenumber: 2276
    functionLinenumberEnd: 2496
    functionName: WriteInplace
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - purge_free_boxes
    - gf_bs_get_position
    - gf_isom_box_size
    - gf_isom_box_write
    - inplace_shift_mdat
    - gf_bs_get_size
    - gf_list_enum
    - gf_bs_write_u64
    - store_meta_item_references
    - gf_bs_write_u32
    - gf_bs_seek
    - gf_bs_write_u8
    - write_free_box
    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:2502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - cbk
    - data
    - block_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2503
      start: 2498
    functionDepth: 0
    functionLinenumber: 2498
    functionLinenumberEnd: 2503
    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:2516,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_store.c:2519,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_store.c:2534,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:2535,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_store.c:2536,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:2537,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_store.c:2538,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_store.c:2539,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_store.c:2541,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_store.c:2542,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_store.c:2545,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:2554,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_store.c:2559,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_store.c:2560,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/isom_store.c:2564,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2565,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_store.c:2566,1
    - Dst: gf_isom_flush_chunk
      Src: /src/gpac/src/isomedia/isom_store.c:2572,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_store.c:2578,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2580,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2587,1
    - Dst: gf_bs_new_cbk
      Src: /src/gpac/src/isomedia/isom_store.c:2590,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2591,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2592,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2593,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2597,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_store.c:2597,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:2602,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_store.c:2604,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2609,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2610,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2611,1
    - Dst: gf_bs_write_u32
      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_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2616,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2618,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2622,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2629,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:2634,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_store.c:2635,1
    - Dst: gf_bs_write_u32
      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_write_u64
      Src: /src/gpac/src/isomedia/isom_store.c:2640,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2641,1
    - Dst: GF_ISOFile*::on_block_patch
      Src: /src/gpac/src/isomedia/isom_store.c:2642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2649,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_store.c:2653,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2654,1
    - Dst: GF_ISOFile*::on_block_patch
      Src: /src/gpac/src/isomedia/isom_store.c:2656,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2657,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_store.c:2662,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2664,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_store.c:2669,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2670,1
    - Dst: gf_bs_insert_data
      Src: /src/gpac/src/isomedia/isom_store.c:2672,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2674,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_store.c:2682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_store.c:2684,1
    - Dst: gf_bs_new_cbk
      Src: /src/gpac/src/isomedia/isom_store.c:2687,1
    - Dst: gf_isom_is_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_store.c:2689,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/isom_store.c:2690,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/isom_store.c:2693,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2694,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_store.c:2696,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/isom_store.c:2700,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/isom_store.c:2703,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_store.c:2707,1
    - Dst: WriteInterleaved
      Src: /src/gpac/src/isomedia/isom_store.c:2715,1
    - Dst: WriteInterleaved
      Src: /src/gpac/src/isomedia/isom_store.c:2718,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2721,1
    - Dst: WriteFlat
      Src: /src/gpac/src/isomedia/isom_store.c:2724,1
    - Dst: WriteInplace
      Src: /src/gpac/src/isomedia/isom_store.c:2728,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_store.c:2732,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_store.c:2734,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_store.c:2742,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2743,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_store.c:2747,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_store.c:2748,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_store.c:2751,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_store.c:2755,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/isom_store.c:2757,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_store.c:2759,1
    - Dst: muxer_report_progress
      Src: /src/gpac/src/isomedia/isom_store.c:2762,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 196
    argCount: 2
    argNames:
    - movie
    - for_fragments
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2765
      start: 2508
    functionDepth: 8
    functionLinenumber: 2508
    functionLinenumberEnd: 2765
    functionName: WriteToFile
    functionSourceFile: /src/gpac/src/isomedia/isom_store.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_get_size
    - gf_bs_get_content
    - gf_bs_insert_data
    - gf_bs_new
    - gf_bs_write_u64
    - gf_bs_read_data
    - gf_bs_new_cbk
    - gf_bs_del
    - GF_ISOFile*::on_block_patch
    - gf_bs_seek
    - gf_list_add
    - strstr
    - gf_bs_write_u8
    - gf_malloc
    - gf_fopen
    - gf_list_find
    - gf_bs_from_file
    - gf_isom_box_new
    - gf_list_get
    - gf_sys_is_test_mode
    - gf_list_insert
    - muxer_report_progress
    - gf_list_enum
    - gf_isom_is_inplace_rewrite
    - gf_bs_write_data
    - strcmp
    - gf_list_new
    - WriteFlat
    - gf_isom_flush_chunk
    - WriteInterleaved
    - WriteInplace
    - gf_free
    - gf_fclose
    - GF_LOG
    - gf_isom_insert_copyright
    - gf_bs_write_u32
    - gf_strdup
    - memset
    - 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: 44
    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: strcmp
      Src: /src/gpac/src/isomedia/track.c:211,1
    - Dst: gf_odf_desc_new
      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_new
      Src: /src/gpac/src/isomedia/track.c:218,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:250,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/track.c:251,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/track.c:258,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:282,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 169
    argCount: 4
    argNames:
    - moov
    - trackID
    - StreamDescIndex
    - outESD
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    - u32
    - GF_ESD**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 65
    functionDepth: 5
    functionLinenumber: 65
    functionLinenumberEnd: 289
    functionName: GetESD
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_from_id
    - gf_odf_desc_del
    - gf_isom_box_new_parent
    - gf_free
    - Media_GetESD
    - Track_FindRef
    - gf_isom_get_track
    - gf_isom_get_tracknum_from_id
    - gf_list_enum
    - gf_gz_decompress_payload_ex
    - gf_odf_desc_new
    - gf_odf_desc_copy
    - strcmp
    - gf_list_add
    - gf_isom_get_rvc_config
    - Media_GetSampleDesc
    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:321,1
    - Dst: gf_isom_get_tracknum_from_id
      Src: /src/gpac/src/isomedia/track.c:321,1
    - Dst: Media_GetSampleDescIndex
      Src: /src/gpac/src/isomedia/track.c:324,1
    - Dst: GetESD
      Src: /src/gpac/src/isomedia/track.c:326,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: 327
      start: 315
    functionDepth: 6
    functionLinenumber: 315
    functionLinenumberEnd: 327
    functionName: GetESDForTime
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - Media_GetSampleDescIndex
    - gf_isom_get_track
    - gf_isom_get_tracknum_from_id
    - GetESD
    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:342,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - trak
    - ReferenceType
    - dpnd
    argTypes:
    - GF_TrackBox*
    - u32
    - GF_TrackReferenceTypeBox**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 330
    functionDepth: 1
    functionLinenumber: 330
    functionLinenumberEnd: 350
    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: 376
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 376
    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:387,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:402,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/track.c:413,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/track.c:414,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 26
    argCount: 2
    argNames:
    - trak
    - keep_utc
    argTypes:
    - GF_TrackBox*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 379
    functionDepth: 4
    functionLinenumber: 379
    functionLinenumberEnd: 416
    functionName: SetTrackDurationEx
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - Media_SetDuration
    - gf_sys_is_test_mode
    - gf_list_enum
    - 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:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 418
    functionDepth: 5
    functionLinenumber: 418
    functionLinenumberEnd: 421
    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:433,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:436,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - traf
    - sample_index
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 427
    functionDepth: 1
    functionLinenumber: 427
    functionLinenumberEnd: 448
    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:454,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:455,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - traf
    - sample_idx
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 461
    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: 169
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:511,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:519,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:521,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/track.c:534,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:567,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:571,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/track.c:577,1
    - Dst: stbl_RemoveDTS
      Src: /src/gpac/src/isomedia/track.c:578,1
    - Dst: stbl_AppendTime
      Src: /src/gpac/src/isomedia/track.c:579,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:597,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/track.c:599,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:600,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:605,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/track.c:606,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/isomedia/track.c:609,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/track.c:617,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/track.c:619,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:623,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:624,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:625,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:626,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:627,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:628,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:629,1
    - Dst: gf_isom_box_array_reset_parent
      Src: /src/gpac/src/isomedia/track.c:630,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:632,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:636,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:640,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:644,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/track.c:645,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:648,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:649,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:652,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:653,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/track.c:656,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:657,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/track.c:659,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/track.c:660,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/track.c:662,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/track.c:663,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/track.c:689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:730,1
    - Dst: traf_get_sample_entry
      Src: /src/gpac/src/isomedia/track.c:733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:735,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:777,1
    - Dst: stbl_AppendSize
      Src: /src/gpac/src/isomedia/track.c:781,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:786,1
    - Dst: stbl_AppendTime
      Src: /src/gpac/src/isomedia/track.c:790,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:833,1
    - Dst: stbl_AppendChunk
      Src: /src/gpac/src/isomedia/track.c:837,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:841,1
    - Dst: stbl_AppendSampleToChunk
      Src: /src/gpac/src/isomedia/track.c:845,1
    - Dst: stbl_AppendTrafMap
      Src: /src/gpac/src/isomedia/track.c:852,1
    - Dst: stbl_AppendCTSOffset
      Src: /src/gpac/src/isomedia/track.c:867,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/track.c:870,1
    - Dst: stbl_AppendRAP
      Src: /src/gpac/src/isomedia/track.c:874,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/track.c:876,1
    - Dst: stbl_AppendPadding
      Src: /src/gpac/src/isomedia/track.c:878,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/track.c:881,1
    - Dst: stbl_AppendDegradation
      Src: /src/gpac/src/isomedia/track.c:883,1
    - Dst: stbl_AppendDependencyType
      Src: /src/gpac/src/isomedia/track.c:886,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/track.c:886,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/track.c:886,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDED
      Src: /src/gpac/src/isomedia/track.c:886,1
    - Dst: GF_ISOM_GET_FRAG_REDUNDANT
      Src: /src/gpac/src/isomedia/track.c:886,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/track.c:900,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:924,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:927,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:930,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:932,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:933,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:934,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:940,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:941,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/track.c:942,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/track.c:943,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/track.c:950,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:954,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/track.c:955,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:959,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:960,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:963,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:964,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/track.c:965,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/track.c:970,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:976,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:977,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/track.c:981,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:987,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:989,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:992,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:993,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:999,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1004,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/track.c:1008,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1024,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/track.c:1025,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1029,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/track.c:1030,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1055,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/track.c:1061,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/track.c:1066,1
    - Dst: gf_isom_get_tracknum_from_id
      Src: /src/gpac/src/isomedia/track.c:1072,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/isomedia/track.c:1073,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/isomedia/track.c:1078,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1081,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1082,1
    - Dst: gf_isom_create_piff_psec_box
      Src: /src/gpac/src/isomedia/track.c:1099,1
    - Dst: gf_isom_create_samp_enc_box
      Src: /src/gpac/src/isomedia/track.c:1101,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1104,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1107,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1108,1
    - Dst: gf_isom_cenc_has_saiz_saio_traf
      Src: /src/gpac/src/isomedia/track.c:1113,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1124,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1132,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1142,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1156,1
    - Dst: saio_get_index
      Src: /src/gpac/src/isomedia/track.c:1164,1
    - Dst: gf_isom_get_sample_cenc_info_internal
      Src: /src/gpac/src/isomedia/track.c:1176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1179,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/track.c:1179,1
    - Dst: gf_isom_cenc_merge_saiz_saio
      Src: /src/gpac/src/isomedia/track.c:1196,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/track.c:1207,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/track.c:1211,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/track.c:1213,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1214,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/track.c:1216,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1218,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1222,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/track.c:1230,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1234,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/isomedia/track.c:1235,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1242,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1244,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1256,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1262,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1262,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1266,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1266,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1272,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1277,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1277,1
    - Dst: saio_get_index
      Src: /src/gpac/src/isomedia/track.c:1285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1287,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/track.c:1287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1294,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/track.c:1298,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1299,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/track.c:1305,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/track.c:1307,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/track.c:1308,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/track.c:1310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/track.c:1312,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/track.c:1312,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/track.c:1322,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/track.c:1327,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/track.c:1330,1
    CyclomaticComplexity: 246
    EdgeCount: 246
    ICount: 648
    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: 1332
      start: 463
    functionDepth: 5
    functionLinenumber: 463
    functionLinenumberEnd: 1332
    functionName: MergeTrack
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - stbl_AppendRAP
    - gf_bs_get_content
    - gf_isom_create_piff_psec_box
    - gf_isom_is_video_handler_type
    - gf_bs_new
    - GF_ISOM_GET_FRAG_DEPENDED
    - gf_isom_is_cenc_media
    - gf_bs_del
    - stbl_AppendPadding
    - GF_SAFEALLOC
    - gf_bs_read_data
    - gf_isom_box_freeze_order
    - gf_isom_box_del
    - gf_bs_seek
    - gf_list_add
    - stbl_AppendTime
    - gf_isom_create_samp_enc_box
    - gf_isom_get_sample_cenc_info_internal
    - gf_isom_box_new_parent
    - gf_malloc
    - GF_ISOM_GET_FRAG_REDUNDANT
    - senc_Parse
    - gf_isom_box_write
    - gf_isom_push_mdat_end
    - gf_isom_add_sample_aux_info_internal
    - stbl_AppendTrafMap
    - GF_ISOM_GET_FRAG_DEPENDS
    - stbl_AppendSize
    - gf_list_get
    - gf_list_last
    - gf_realloc
    - gf_list_rem
    - memcpy
    - GF_ISOM_GET_FRAG_LEAD
    - gf_isom_cenc_merge_saiz_saio
    - stbl_AppendChunk
    - gf_isom_get_cenc_info
    - GF_ISOM_GET_FRAG_DEG
    - stbl_AppendCTSOffset
    - gf_isom_box_array_reset_parent
    - gf_isom_clone_box
    - gf_list_enum
    - stbl_AppendDependencyType
    - gf_list_new
    - stbl_AppendDegradation
    - sgpd_del_entry
    - gf_error_to_string
    - gf_isom_box_size
    - gf_free
    - stbl_GetSampleDTS_and_Duration
    - gf_isom_box_del_parent
    - GF_LOG
    - stbl_AppendSampleToChunk
    - gf_list_del_item
    - gf_isom_is_identical_sgpd
    - gf_isom_get_tracknum_from_id
    - saio_get_index
    - GF_ISOM_GET_FRAG_PAD
    - gf_isom_cenc_has_saiz_saio_traf
    - GF_ISOM_GET_FRAG_SYNC
    - traf_get_sample_entry
    - gf_list_transfer
    - gf_4cc_to_str
    - stbl_RemoveDTS
    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:1346,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/track.c:1348,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - moov
    - TrackID
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1340
    functionDepth: 1
    functionLinenumber: 1340
    functionLinenumberEnd: 1353
    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:1364,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1366,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - trak
    - ReferenceType
    argTypes:
    - GF_TrackBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1355
    functionDepth: 5
    functionLinenumber: 1355
    functionLinenumberEnd: 1371
    functionName: Track_RemoveRef
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_isom_box_del_parent
    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:1398,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1402,1
    - Dst: mdia_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1404,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1408,1
    - Dst: mdia_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1410,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1414,1
    - Dst: mdia_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1416,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1420,1
    - Dst: minf_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1422,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1430,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1434,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1438,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1442,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1446,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1450,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1454,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1458,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1462,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1466,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1470,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1474,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1478,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1483,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1487,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1491,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1496,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1500,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1505,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1506,1
    - Dst: minf_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1508,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/track.c:1515,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1519,1
    - Dst: dinf_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1521,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1527,1
    - Dst: minf_on_child_box
      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:1540,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1544,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1548,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1552,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1556,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1562,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1563,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/track.c:1565,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 243
    argCount: 3
    argNames:
    - mdia
    - MediaType
    - TimeScale
    argTypes:
    - GF_MediaBox**
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1569
      start: 1373
    functionDepth: 5
    functionLinenumber: 1373
    functionLinenumberEnd: 1569
    functionName: NewMedia
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_box_del_parent
    - minf_on_child_box
    - dinf_on_child_box
    - gf_isom_box_new
    - mdia_on_child_box
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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:1585,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/track.c:1591,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1600,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1602,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1609,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1613,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1618,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/track.c:1620,1
    - Dst: Track_RemoveRef
      Src: /src/gpac/src/isomedia/track.c:1623,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1628,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1631,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/track.c:1634,1
    - Dst: Track_RemoveRef
      Src: /src/gpac/src/isomedia/track.c:1637,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/track.c:1646,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1650,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/track.c:1653,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1675,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1682,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/track.c:1686,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1710,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1716,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1726,1
    - Dst: AVC_HEVC_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1750,1
    - Dst: LSR_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1754,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1767,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1772,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1777,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/track.c:1780,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/track.c:1783,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: AVC_HEVC_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1800,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1803,1
    - Dst: AVC_HEVC_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1805,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1808,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1810,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1820,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1822,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1825,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1827,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1829,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1832,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1834,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1836,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1839,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1841,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1843,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1846,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1848,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1850,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/track.c:1853,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1855,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1858,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1867,1
    - Dst: LSR_UpdateESD
      Src: /src/gpac/src/isomedia/track.c:1869,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/track.c:1872,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/track.c:1873,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/track.c:1882,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/track.c:1883,1
    - Dst: stsd_on_child_box
      Src: /src/gpac/src/isomedia/track.c:1885,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/track.c:1887,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: 1890
      start: 1571
    functionDepth: 6
    functionLinenumber: 1571
    functionLinenumberEnd: 1890
    functionName: Track_SetStreamDescriptor
    functionSourceFile: /src/gpac/src/isomedia/track.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_odf_desc_del
    - LSR_UpdateESD
    - gf_list_count
    - Media_GetESD
    - Track_IsMPEG4Stream
    - Track_FindRef
    - AVC_HEVC_UpdateESD
    - gf_isom_box_find_child
    - gf_list_new
    - gf_list_add
    - gf_isom_box_new
    - gf_odf_desc_new
    - Track_RemoveRef
    - gf_list_get
    - reftype_AddRefTrack
    - stsd_on_child_box
    - trak_on_child_box
    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: 12
    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: 14
    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_isom_probe_type
    - gf_fopen
    - GF_4CC
    - gf_fseek
    - gf_blob_get
    - gf_fread
    - gf_blob_release
    - strncmp
    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: gf_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
    - gf_list_add
    - gf_odf_avc_cfg_new
    - gf_isom_box_new_parent
    - strchr
    - gf_malloc
    - gf_isom_box_new
    - memcpy
    - gf_strcpy
    - atoi
    - gf_media_nalu_next_start_code
    - AVC_RewriteESDescriptor
    - strlen
    - sscanf
    - gf_m4a_write_config
    - GF_LOG
    - stricmp
    - gf_odf_desc_esd_new
    - memset
    - strncmp
    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_isom_new_movie
    - gf_bs_truncate
    - gf_bs_seek
    - gf_isom_delete_movie
    - gf_isom_parse_movie_boxes
    - isom_create_init_from_mem
    - gf_isom_datamap_new
    - gf_strdup
    - strncmp
    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: 1
    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_bs_seek
    - gf_isom_parse_movie_boxes
    - gf_bs_untruncate
    - gf_bs_truncate
    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: 15
    functionsReached:
    - gf_isom_create_movie
    - gf_isom_open_file
    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_isom_box_new_parent
    - gf_list_count
    - gf_isom_box_size
    - gf_isom_close_fragments
    - gf_isom_box_write
    - gf_isom_get_duration
    - SetTrackDuration
    - gf_bs_new_cbk
    - gf_bs_del
    - strcmp
    - gf_list_get
    - WriteToFile
    - gf_isom_datamap_del
    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: 6
    functionsReached:
    - gf_isom_write
    - gf_isom_delete_movie
    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_odf_desc_del
    - gf_free
    - gf_malloc
    - gf_list_del
    - gf_list_enum
    - GetESDForTime
    - gf_odf_desc_copy
    - gf_list_new
    - memset
    - gf_list_add
    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: 21
    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: 20
    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_isom_get_moof
    - gf_list_get
    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: 6
    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: 5
    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_isom_get_track_id
    - gf_list_enum
    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_list_count
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    - gf_list_get
    - gf_strdup
    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:
    - udta_getEntry
    - gf_list_count
    - gf_isom_get_track_box
    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_isom_box_new_parent
    - gf_isom_get_track_box
    - udta_getEntry
    - gf_list_get
    - gf_strdup
    - trak_on_child_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
    - Track_FindRef
    - gf_isom_get_tracknum_from_id
    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
    - Track_FindRef
    - gf_list_get
    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:
    - gf_isom_get_track_box
    - GetMediaTime
    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: 5
    functionsReached:
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_has_movie
    - GetESD
    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:
    - Media_GetESD
    - gf_isom_get_track_box
    - 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:
    - Media_SetDuration
    - gf_isom_get_track_box
    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
    - udta_getEntry
    - gf_list_get
    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:
    - udta_getEntry
    - memcpy
    - gf_malloc
    - gf_list_get
    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:
    - udta_getEntry
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    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:
    - udta_getEntry
    - gf_isom_get_track_box
    - gf_list_get
    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_is_encrypted_entry
    - gf_isom_get_track_box
    - gf_isom_is_cenc_media
    - gf_list_get
    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_is_encrypted_entry
    - gf_isom_get_track_box
    - IsMP4Description
    - gf_list_get
    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
    - IsMP4Description
    - gf_list_get
    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
    - Media_GetSampleDesc
    - gf_list_get
    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: 17
    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_isom_get_track_box
    - GF_LOG
    - gf_list_get
    - gf_audio_fmt_from_isobmf
    - gf_audio_fmt_bit_depth
    - gf_4cc_to_str
    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: 8
    EdgeCount: 8
    ICount: 10
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1883
      start: 1867
    functionDepth: 0
    functionLinenumber: 1867
    functionLinenumberEnd: 1883
    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:1889,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1893
      start: 1885
    functionDepth: 0
    functionLinenumber: 1885
    functionLinenumberEnd: 1893
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1898,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:1901,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 6
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1903
      start: 1895
    functionDepth: 1
    functionLinenumber: 1895
    functionLinenumberEnd: 1903
    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:1908,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1913
      start: 1905
    functionDepth: 0
    functionLinenumber: 1905
    functionLinenumberEnd: 1913
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:1923,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/isom_read.c:1933,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    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: 1934
      start: 1915
    functionDepth: 1
    functionLinenumber: 1915
    functionLinenumberEnd: 1934
    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:1947,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:1959,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/isom_read.c:1969,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_read.c:1974,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:1975,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 34
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1984
      start: 1939
    functionDepth: 3
    functionLinenumber: 1939
    functionLinenumberEnd: 1984
    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_get_track_box
    - gf_isom_set_last_error
    - gf_isom_sample_del
    - gf_isom_sample_new
    - 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:1989,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1990
      start: 1986
    functionDepth: 0
    functionLinenumber: 1986
    functionLinenumberEnd: 1990
    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:1997,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:2004,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2006
      start: 1992
    functionDepth: 1
    functionLinenumber: 1992
    functionLinenumberEnd: 2006
    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:2013,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_read.c:2019,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2021
      start: 2009
    functionDepth: 1
    functionLinenumber: 2009
    functionLinenumberEnd: 2021
    functionName: gf_isom_get_sample_size
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - stbl_GetSampleSize
    - gf_isom_get_track_box
    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:2026,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2030
      start: 2023
    functionDepth: 0
    functionLinenumber: 2023
    functionLinenumberEnd: 2030
    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:2035,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 8
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2043
      start: 2032
    functionDepth: 0
    functionLinenumber: 2032
    functionLinenumberEnd: 2043
    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:2048,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2052
      start: 2045
    functionDepth: 0
    functionLinenumber: 2045
    functionLinenumberEnd: 2052
    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:2057,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2069
      start: 2054
    functionDepth: 0
    functionLinenumber: 2054
    functionLinenumberEnd: 2069
    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:2075,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2079
      start: 2072
    functionDepth: 0
    functionLinenumber: 2072
    functionLinenumberEnd: 2079
    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:2087,1
    - Dst: stbl_GetSampleRAP
      Src: /src/gpac/src/isomedia/isom_read.c:2095,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2098
      start: 2082
    functionDepth: 1
    functionLinenumber: 2082
    functionLinenumberEnd: 2098
    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:2107,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:2118,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/isom_read.c:2122,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_read.c:2124,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:2126,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2133
      start: 2101
    functionDepth: 3
    functionLinenumber: 2101
    functionLinenumberEnd: 2133
    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_get_track_box
    - gf_isom_set_last_error
    - gf_isom_sample_del
    - gf_isom_sample_new
    - 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:2138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2139
      start: 2135
    functionDepth: 0
    functionLinenumber: 2135
    functionLinenumberEnd: 2139
    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:2148,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_read.c:2156,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2158
      start: 2143
    functionDepth: 1
    functionLinenumber: 2143
    functionLinenumberEnd: 2158
    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:2164,1
    - Dst: Media_IsSelfContained
      Src: /src/gpac/src/isomedia/isom_read.c:2166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2167
      start: 2160
    functionDepth: 3
    functionLinenumber: 2160
    functionLinenumberEnd: 2167
    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:2178,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_read.c:2183,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - dts
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2186
      start: 2170
    functionDepth: 1
    functionLinenumber: 2170
    functionLinenumberEnd: 2186
    functionName: gf_isom_get_sample_from_dts
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - stbl_findEntryForTime
    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:2207,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_read.c:2220,1
    - Dst: Media_FindSyncSample
      Src: /src/gpac/src/isomedia/isom_read.c:2278,1
    - Dst: Media_FindSyncSample
      Src: /src/gpac/src/isomedia/isom_read.c:2288,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:2302,1
    - Dst: stbl_GetSampleShadow
      Src: /src/gpac/src/isomedia/isom_read.c:2310,1
    - Dst: Media_GetSample
      Src: /src/gpac/src/isomedia/isom_read.c:2322,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:2325,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/src/isomedia/isom_read.c:2334,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/isom_read.c:2350,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:2354,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_read.c:2359,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: 2365
      start: 2194
    functionDepth: 3
    functionLinenumber: 2194
    functionLinenumberEnd: 2365
    functionName: gf_isom_get_sample_for_media_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_free
    - Media_FindSyncSample
    - stbl_GetSampleShadow
    - gf_isom_get_sample_rap_roll_info
    - stbl_findEntryForTime
    - gf_isom_sample_del
    - gf_isom_sample_new
    - Media_GetSample
    - gf_isom_get_sample
    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:2378,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/isomedia/isom_read.c:2384,1
    - Dst: GetMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2396,1
    - Dst: GetNextMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2404,1
    - Dst: GetPrevMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2406,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2408,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/isom_read.c:2413,1
    - Dst: GetNextMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2428,1
    - Dst: GetPrevMediaTime
      Src: /src/gpac/src/isomedia/isom_read.c:2430,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2432,1
    - Dst: gf_isom_get_sample_for_media_time
      Src: /src/gpac/src/isomedia/isom_read.c:2440,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2451,1
    - Dst: gf_isom_get_sample_for_movie_time
      Src: /src/gpac/src/isomedia/isom_read.c:2454,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: 2480
      start: 2367
    functionDepth: 4
    functionLinenumber: 2367
    functionLinenumberEnd: 2480
    functionName: gf_isom_get_sample_for_movie_time
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - GetMediaTime
    - GetPrevMediaTime
    - gf_isom_get_sample_for_media_time
    - gf_isom_sample_new
    - GetNextMediaTime
    - gf_isom_get_sample_for_movie_time
    - gf_timestamp_greater
    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:2488,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2492
      start: 2484
    functionDepth: 0
    functionLinenumber: 2484
    functionLinenumberEnd: 2492
    functionName: gf_isom_get_missing_bytes
    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_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:2498,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: 2503
      start: 2494
    functionDepth: 0
    functionLinenumber: 2494
    functionLinenumberEnd: 2503
    functionName: gf_isom_set_sample_padding
    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_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:2512,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2517,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2518,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2533,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - mediaOffset
    argTypes:
    - GF_ISOFile*
    - u32
    - s64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2545
      start: 2506
    functionDepth: 1
    functionLinenumber: 2506
    functionLinenumberEnd: 2545
    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:2553,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2557,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2558
      start: 2549
    functionDepth: 1
    functionLinenumber: 2549
    functionLinenumberEnd: 2558
    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:2572,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2577,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2585,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: 2603
      start: 2562
    functionDepth: 1
    functionLinenumber: 2562
    functionLinenumberEnd: 2603
    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:2610,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2605
    functionDepth: 0
    functionLinenumber: 2605
    functionLinenumberEnd: 2617
    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:2624,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2630
      start: 2620
    functionDepth: 0
    functionLinenumber: 2620
    functionLinenumberEnd: 2630
    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: 2648
      start: 2633
    functionDepth: 0
    functionLinenumber: 2633
    functionLinenumberEnd: 2648
    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: 2657
      start: 2650
    functionDepth: 0
    functionLinenumber: 2650
    functionLinenumberEnd: 2657
    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: 2664
      start: 2659
    functionDepth: 0
    functionLinenumber: 2659
    functionLinenumberEnd: 2664
    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:2671,1
    - Dst: stbl_GetPaddingBits
      Src: /src/gpac/src/isomedia/isom_read.c:2676,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: 2679
      start: 2666
    functionDepth: 1
    functionLinenumber: 2666
    functionLinenumberEnd: 2679
    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:2687,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2692
      start: 2682
    functionDepth: 0
    functionLinenumber: 2682
    functionLinenumberEnd: 2692
    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:2702,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2709,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2711
      start: 2694
    functionDepth: 1
    functionLinenumber: 2694
    functionLinenumberEnd: 2711
    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:2722,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2731,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2733,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: 2735
      start: 2713
    functionDepth: 1
    functionLinenumber: 2713
    functionLinenumberEnd: 2735
    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
    - memcpy
    - gf_list_get
    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:2749,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:2752,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:2762,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2763,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:2765,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: 2769
      start: 2737
    functionDepth: 1
    functionLinenumber: 2737
    functionLinenumberEnd: 2769
    functionName: gf_isom_get_user_data_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - memcmp
    - gf_list_enum
    - memset
    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:2785,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:2795,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:2800,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:2801,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:2809,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:2810,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:2818,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2820,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:2830,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2832,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_read.c:2846,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:2847,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:2849,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:2858,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:2860,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:2874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:2876,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:2883,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:2884,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_read.c:2885,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_read.c:2887,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/isom_read.c:2890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:2892,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:2896,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:2897,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: 2899
      start: 2771
    functionDepth: 3
    functionLinenumber: 2771
    functionLinenumberEnd: 2899
    functionName: gf_isom_get_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_array_write
    - gf_malloc
    - gf_isom_box_write
    - GF_LOG
    - gf_bs_get_content
    - memcmp
    - gf_list_enum
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    - memset
    - strlen
    - memcpy
    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:2905,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2906
      start: 2901
    functionDepth: 1
    functionLinenumber: 2901
    functionLinenumberEnd: 2906
    functionName: gf_isom_delete
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 11
    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:2917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:2932,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:2942,1
    - Dst: stbl_GetSampleSize
      Src: /src/gpac/src/isomedia/isom_read.c:2944,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: 2974
      start: 2908
    functionDepth: 1
    functionLinenumber: 2908
    functionLinenumberEnd: 2974
    functionName: gf_isom_get_chunks_infos
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - stbl_GetSampleSize
    - gf_isom_get_track_box
    - stbl_GetSampleDTS_and_Duration
    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:2988,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/isom_read.c:2993,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_read.c:2993,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/isom_read.c:3000,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/isom_read.c:3001,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/isom_read.c:3002,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: 3087
      start: 2976
    functionDepth: 1
    functionLinenumber: 2976
    functionLinenumberEnd: 3087
    functionName: gf_isom_get_fragment_defaults
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_id
    - gf_isom_get_track_box
    - GetTrex
    - GF_ISOM_GET_FRAG_DEG
    - GF_ISOM_GET_FRAG_PAD
    - GF_ISOM_GET_FRAG_SYNC
    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:3102,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:3109,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3117,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:3128,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/isom_read.c:3133,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_read.c:3141,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 35
    argCount: 3
    argNames:
    - movie
    - MissingBytes
    - new_location
    argTypes:
    - GF_ISOFile*
    - u64*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3143
      start: 3090
    functionDepth: 1
    functionLinenumber: 3090
    functionLinenumberEnd: 3143
    functionName: gf_isom_refresh_fragmented
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_datamap_new
    - gf_bs_get_size
    - gf_bs_get_refreshed_size
    - gf_isom_parse_movie_boxes
    - gf_list_get
    - gf_isom_datamap_del
    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: 3150
      start: 3146
    functionDepth: 0
    functionLinenumber: 3146
    functionLinenumberEnd: 3150
    functionName: gf_isom_set_single_moof_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_set_single_moof_mode(GF_ISOFile *movie, Bool mode)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3165,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3167,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - movie
    - top_box_start
    argTypes:
    - GF_ISOFile*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3174
      start: 3153
    functionDepth: 1
    functionLinenumber: 3153
    functionLinenumberEnd: 3174
    functionName: gf_isom_reset_data_offset
    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_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: 3186
      start: 3176
    functionDepth: 0
    functionLinenumber: 3176
    functionLinenumberEnd: 3186
    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: 3194
      start: 3188
    functionDepth: 0
    functionLinenumber: 3188
    functionLinenumberEnd: 3194
    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:3204,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/isom_read.c:3209,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_read.c:3209,1
    - Dst: stbl_UnpackOffsets
      Src: /src/gpac/src/isomedia/isom_read.c:3213,1
    - Dst: stbl_unpackCTS
      Src: /src/gpac/src/isomedia/isom_read.c:3215,1
    - Dst: stbl_RemoveDTS
      Src: /src/gpac/src/isomedia/isom_read.c:3225,1
    - Dst: stbl_RemoveCTS
      Src: /src/gpac/src/isomedia/isom_read.c:3226,1
    - Dst: stbl_RemoveSize
      Src: /src/gpac/src/isomedia/isom_read.c:3227,1
    - Dst: stbl_RemoveChunk
      Src: /src/gpac/src/isomedia/isom_read.c:3228,1
    - Dst: stbl_RemoveRedundant
      Src: /src/gpac/src/isomedia/isom_read.c:3229,1
    - Dst: stbl_RemoveRAPs
      Src: /src/gpac/src/isomedia/isom_read.c:3230,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_read.c:3239,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_read.c:3251,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3262,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_read.c:3263,1
    - Dst: stbl_RemoveShadow
      Src: /src/gpac/src/isomedia/isom_read.c:3279,1
    - Dst: stbl_RemoveSubSample
      Src: /src/gpac/src/isomedia/isom_read.c:3280,1
    - Dst: stbl_RemovePaddingBits
      Src: /src/gpac/src/isomedia/isom_read.c:3281,1
    - Dst: stbl_RemoveSampleGroup
      Src: /src/gpac/src/isomedia/isom_read.c:3282,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/isom_read.c:3284,1
    - Dst: gf_isom_cenc_samp_aux_info_del
      Src: /src/gpac/src/isomedia/isom_read.c:3285,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/isom_read.c:3288,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3289,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3290,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: 3298
      start: 3196
    functionDepth: 1
    functionLinenumber: 3196
    functionLinenumberEnd: 3298
    functionName: gf_isom_purge_samples
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - stbl_RemoveSubSample
    - stbl_unpackCTS
    - GetTrex
    - stbl_RemoveShadow
    - stbl_RemoveRAPs
    - gf_isom_get_track_box
    - gf_list_pop_front
    - stbl_RemoveCTS
    - stbl_UnpackOffsets
    - stbl_RemoveSize
    - stbl_RemoveRedundant
    - stbl_RemoveSampleGroup
    - gf_isom_cenc_samp_aux_info_del
    - stbl_RemoveChunk
    - stbl_RemovePaddingBits
    - gf_isom_get_track_id
    - gf_free
    - memmove
    - stbl_RemoveDTS
    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:3354,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3355,1
    - Dst: gf_isom_box_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:3375,1
    - Dst: gf_isom_box_array_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3378,1
    - Dst: gf_isom_box_array_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3381,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_read.c:3386,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3388,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3393,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3394,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_read.c:3396,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3402,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:3404,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 83
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3407
      start: 3302
    functionDepth: 5
    functionLinenumber: 3302
    functionLinenumberEnd: 3407
    functionName: gf_isom_recreate_tables
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_enum
    - gf_list_del_item
    - memset
    - gf_isom_box_array_del_parent
    - 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:3417,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3418,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:3427,1
    - Dst: gf_isom_recreate_tables
      Src: /src/gpac/src/isomedia/isom_read.c:3434,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3438,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3439,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 2
    argNames:
    - movie
    - reset_sample_count
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3460
      start: 3410
    functionDepth: 6
    functionLinenumber: 3410
    functionLinenumberEnd: 3460
    functionName: gf_isom_reset_tables
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - stbl_GetSampleDTS_and_Duration
    - gf_isom_box_del_parent
    - gf_isom_recreate_tables
    - gf_list_enum
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_reset_tables(GF_ISOFile *movie, Bool reset_sample_count)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_needs_layer_reconstruction
      Src: /src/gpac/src/isomedia/isom_read.c:3470,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3473,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3474,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:3487,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_read.c:3502,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:3504,1
    - Dst: stbl_GetSampleDTS_and_Duration
      Src: /src/gpac/src/isomedia/isom_read.c:3521,1
    - Dst: gf_isom_recreate_tables
      Src: /src/gpac/src/isomedia/isom_read.c:3527,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3532,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3533,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:3542,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:3546,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_read.c:3555,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 70
    argCount: 2
    argNames:
    - movie
    - reset_tables
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3560
      start: 3462
    functionDepth: 6
    functionLinenumber: 3462
    functionLinenumberEnd: 3560
    functionName: gf_isom_release_segment
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - stbl_GetSampleDTS_and_Duration
    - gf_isom_box_del_parent
    - gf_isom_recreate_tables
    - gf_list_enum
    - gf_isom_get_reference
    - gf_isom_needs_layer_reconstruction
    - gf_list_get
    - gf_isom_datamap_del
    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:3582,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/src/isomedia/isom_read.c:3589,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:3591,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:3599,1
    - Dst: gf_bs_truncate
      Src: /src/gpac/src/isomedia/isom_read.c:3600,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:3602,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3606,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3607,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_read.c:3621,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3626,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3627,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: 3643
      start: 3562
    functionDepth: 7
    functionLinenumber: 3562
    functionLinenumberEnd: 3643
    functionName: gf_isom_open_segment
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_bs_truncate
    - gf_isom_release_segment
    - gf_list_get
    - gf_isom_parse_movie_boxes
    - gf_isom_datamap_new
    - gf_bs_seek
    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:3657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3660,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:3663,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_read.c:3666,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:3670,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_read.c:3681,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 2
    argNames:
    - movie
    - for_base_track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3690
      start: 3645
    functionDepth: 3
    functionLinenumber: 3645
    functionLinenumberEnd: 3690
    functionName: GF_ISOTrackID::gf_isom_get_highest_track_in_scalable_segment
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_list_count
    - gf_isom_get_reference_count
    - gf_isom_get_reference
    - gf_list_get
    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: 3699
      start: 3693
    functionDepth: 0
    functionLinenumber: 3693
    functionLinenumberEnd: 3699
    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:3706,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3711,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3714,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - udesc
    - child_boxes
    argTypes:
    - GF_GenericSampleDescription*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3717
      start: 3701
    functionDepth: 1
    functionLinenumber: 3701
    functionLinenumberEnd: 3717
    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:3727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3730,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/isom_read.c:3732,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:3743,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3746,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3759,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3764,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3766,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3769,1
    - Dst: gf_isom_gen_desc_get_dsi
      Src: /src/gpac/src/isomedia/isom_read.c:3771,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:3776,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3779,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3791,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3793,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3796,1
    - Dst: gf_isom_gen_desc_get_dsi
      Src: /src/gpac/src/isomedia/isom_read.c:3798,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_read.c:3803,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3806,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:3812,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:3814,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3817,1
    - Dst: gf_isom_gen_desc_get_dsi
      Src: /src/gpac/src/isomedia/isom_read.c:3819,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 100
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3824
      start: 3719
    functionDepth: 2
    functionLinenumber: 3719
    functionLinenumberEnd: 3824
    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_strcpy
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - gf_isom_gen_desc_get_dsi
    - GF_SAFEALLOC
    - gf_list_get
    - memcpy
    - IsMP4Description
    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:3833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3838,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3840,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: 3855
      start: 3826
    functionDepth: 1
    functionLinenumber: 3826
    functionLinenumberEnd: 3855
    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:3864,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3869,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3871,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: 3883
      start: 3857
    functionDepth: 1
    functionLinenumber: 3857
    functionLinenumberEnd: 3883
    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:3892,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3898,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3900,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:3915,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: 3922
      start: 3885
    functionDepth: 2
    functionLinenumber: 3885
    functionLinenumberEnd: 3922
    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_isom_box_find_child
    - gf_list_get
    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:3932,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:3934,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3938,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3940,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:3945,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:3948,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: 3950
      start: 3924
    functionDepth: 2
    functionLinenumber: 3924
    functionLinenumberEnd: 3950
    functionName: gf_isom_get_audio_layout
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    - gf_list_get
    - memset
    - memcpy
    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:3958,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3965,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3967,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:3973,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: 3982
      start: 3951
    functionDepth: 2
    functionLinenumber: 3951
    functionLinenumberEnd: 3982
    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_isom_box_find_child
    - gf_list_get
    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:3991,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:3996,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:3998,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4007,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4009,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: 4022
      start: 3984
    functionDepth: 1
    functionLinenumber: 3984
    functionLinenumberEnd: 4022
    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:4036,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4041,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4052,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4054,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_read.c:4059,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_read.c:4064,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: 4071
      start: 4024
    functionDepth: 1
    functionLinenumber: 4024
    functionLinenumberEnd: 4071
    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_4CC
    - gf_list_get
    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: 4081
      start: 4073
    functionDepth: 0
    functionLinenumber: 4073
    functionLinenumberEnd: 4081
    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: 4110
      start: 4084
    functionDepth: 0
    functionLinenumber: 4084
    functionLinenumberEnd: 4110
    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:4115,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:4117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - matrix
    argTypes:
    - GF_ISOFile*
    - u32
    - u32[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4119
      start: 4112
    functionDepth: 0
    functionLinenumber: 4112
    functionLinenumberEnd: 4119
    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:4124,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: 4132
      start: 4121
    functionDepth: 0
    functionLinenumber: 4121
    functionLinenumberEnd: 4132
    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:4142,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4166
      start: 4136
    functionDepth: 0
    functionLinenumber: 4136
    functionLinenumberEnd: 4166
    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: 4177
      start: 4168
    functionDepth: 0
    functionLinenumber: 4168
    functionLinenumberEnd: 4177
    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:4190,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4192,1
    - Dst: box_unused_bytes
      Src: /src/gpac/src/isomedia/isom_read.c:4193,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - b
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4196
      start: 4179
    functionDepth: 1
    functionLinenumber: 4179
    functionLinenumberEnd: 4196
    functionName: box_unused_bytes
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - box_unused_bytes
    - gf_list_get
    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:4206,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4208,1
    - Dst: box_unused_bytes
      Src: /src/gpac/src/isomedia/isom_read.c:4209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4212
      start: 4200
    functionDepth: 2
    functionLinenumber: 4200
    functionLinenumberEnd: 4212
    functionName: gf_isom_get_unused_box_bytes
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - box_unused_bytes
    - gf_list_get
    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:4217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4220
      start: 4214
    functionDepth: 0
    functionLinenumber: 4214
    functionLinenumberEnd: 4220
    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:4230,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/isomedia/isom_read.c:4232,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4235,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4239,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4252,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4257,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4262,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 50
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4273
      start: 4223
    functionDepth: 2
    functionLinenumber: 4223
    functionLinenumberEnd: 4273
    functionName: gf_isom_is_single_av
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_count
    - gf_isom_get_sample_count
    - gf_isom_get_media_type
    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: 4279
      start: 4275
    functionDepth: 0
    functionLinenumber: 4275
    functionLinenumberEnd: 4279
    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:4297,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/isomedia/isom_read.c:4299,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_read.c:4300,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4305,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_read.c:4309,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/isom_read.c:4312,1
    - Dst: gf_isom_get_decoder_config
      Src: /src/gpac/src/isomedia/isom_read.c:4343,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_read.c:4383,1
    CyclomaticComplexity: 81
    EdgeCount: 81
    ICount: 149
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4433
      start: 4281
    functionDepth: 2
    functionLinenumber: 4281
    functionLinenumberEnd: 4433
    functionName: gf_isom_guess_specification
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_isom_get_media_type
    - gf_isom_get_sample_count
    - gf_isom_is_video_handler_type
    - gf_isom_get_decoder_config
    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:4440,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:4444,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - list
    - boxType
    - UUID
    argTypes:
    - GF_List*
    - u32
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4448
      start: 4435
    functionDepth: 1
    functionLinenumber: 4435
    functionLinenumberEnd: 4448
    functionName: gf_isom_locate_box
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - memcmp
    - gf_list_enum
    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:4464,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_read.c:4467,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4470,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:4473,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:4483,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4484,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:4485,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: 4494
      start: 4453
    functionDepth: 2
    functionLinenumber: 4453
    functionLinenumberEnd: 4494
    functionName: gf_isom_apple_get_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_locate_box
    - gf_isom_get_meta_extensions
    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:4517,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_read.c:4520,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:4524,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/isom_read.c:4527,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:4535,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4536,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4537,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/isom_read.c:4575,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/isomedia/isom_read.c:4592,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: 4657
      start: 4496
    functionDepth: 2
    functionLinenumber: 4496
    functionLinenumberEnd: 4657
    functionName: gf_isom_apple_enum_tag_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_itags_find_by_itag
    - gf_itags_get_type
    - gf_isom_locate_box
    - gf_isom_get_meta_extensions
    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:4662,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: 4663
      start: 4659
    functionDepth: 3
    functionLinenumber: 4659
    functionLinenumberEnd: 4663
    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:4670,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4673,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:4677,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_read.c:4681,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4687,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4690,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:4705,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4714,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4722,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4725,1
    - Dst: gf_bs_read_double
      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_int
      Src: /src/gpac/src/isomedia/isom_read.c:4734,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4737,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/isomedia/isom_read.c:4740,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_float
      Src: /src/gpac/src/isomedia/isom_read.c:4748,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4749,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4750,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4751,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_int
      Src: /src/gpac/src/isomedia/isom_read.c:4761,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:4764,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/isom_read.c:4768,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/isom_read.c:4786,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:4788,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: 4790
      start: 4665
    functionDepth: 2
    functionLinenumber: 4665
    functionLinenumberEnd: 4790
    functionName: gf_isom_enum_udta_keys
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_bs_is_overflow
    - gf_isom_box_find_child
    - gf_bs_new
    - gf_bs_read_double
    - gf_bs_read_long_int
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_read_float
    - gf_list_get
    - memset
    - gf_isom_locate_box
    - gf_isom_get_meta_extensions
    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:4804,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4807,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: 4815
      start: 4792
    functionDepth: 2
    functionLinenumber: 4792
    functionLinenumberEnd: 4815
    functionName: gf_isom_wma_enum_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_isom_get_meta_extensions
    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:4824,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:4830,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4832,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: 4834
      start: 4818
    functionDepth: 1
    functionLinenumber: 4818
    functionLinenumberEnd: 4834
    functionName: gf_isom_get_track_switch_group_count
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - udta_getEntry
    - gf_list_count
    - gf_isom_get_track_box
    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:4843,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_read.c:4846,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4848,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: 4854
      start: 4836
    functionDepth: 1
    functionLinenumber: 4836
    functionLinenumberEnd: 4854
    functionName: gf_isom_get_track_switch_parameter
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - udta_getEntry
    - gf_isom_get_track_box
    - gf_list_get
    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:4862,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:4863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4869
      start: 4856
    functionDepth: 2
    functionLinenumber: 4856
    functionLinenumberEnd: 4869
    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:4878,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4882,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4885,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4887,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4889,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:4891,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4893,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:4894,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:4896,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:4897,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_read.c:4898,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_read.c:4899,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_read.c:4900,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:4908,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:4909,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: 4912
      start: 4871
    functionDepth: 1
    functionLinenumber: 4871
    functionLinenumberEnd: 4912
    functionName: gf_isom_sample_get_subsamples_buffer
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u32
    - gf_list_get
    - 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:4917,1
    - Dst: gf_isom_sample_get_subsample_entry
      Src: /src/gpac/src/isomedia/isom_read.c:4921,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: 4922
      start: 4914
    functionDepth: 1
    functionLinenumber: 4914
    functionLinenumberEnd: 4922
    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:4929,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4933,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: 4939
      start: 4924
    functionDepth: 1
    functionLinenumber: 4924
    functionLinenumberEnd: 4939
    functionName: gf_isom_sample_get_subsample
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_sample_get_subsample_entry
    - gf_list_get
    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:4953,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4957,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:4961,1
    - Dst: gf_isom_extract_meta_item_mem
      Src: /src/gpac/src/isomedia/isom_read.c:4966,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    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: 4969
      start: 4941
    functionDepth: 2
    functionLinenumber: 4941
    functionLinenumberEnd: 4969
    functionName: gf_isom_get_rvc_config
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_extract_meta_item_mem
    - gf_isom_box_find_child
    - gf_list_get
    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:4975,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4976,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4981
      start: 4971
    functionDepth: 1
    functionLinenumber: 4971
    functionLinenumberEnd: 4981
    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:4988,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:4989,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - movie
    - keep_sample_count
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4999
      start: 4983
    functionDepth: 1
    functionLinenumber: 4983
    functionLinenumberEnd: 4999
    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: 5010
      start: 5004
    functionDepth: 0
    functionLinenumber: 5004
    functionLinenumberEnd: 5010
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5018,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5019,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5026
      start: 5012
    functionDepth: 1
    functionLinenumber: 5012
    functionLinenumberEnd: 5026
    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:5037,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5041,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5052,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5053,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: 5061
      start: 5028
    functionDepth: 1
    functionLinenumber: 5028
    functionLinenumberEnd: 5061
    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:5070,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5075,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5077,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5087,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5095,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5110,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5111,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: 5125
      start: 5063
    functionDepth: 1
    functionLinenumber: 5063
    functionLinenumberEnd: 5125
    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:5137,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5144,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5158,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5178,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5193,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5194,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5212,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: 5220
      start: 5127
    functionDepth: 1
    functionLinenumber: 5127
    functionLinenumberEnd: 5220
    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:5232,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5247,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: 5263
      start: 5222
    functionDepth: 1
    functionLinenumber: 5222
    functionLinenumberEnd: 5263
    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:5277,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5286,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5290,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5317,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5343,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:5345,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5346,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:5347,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:5348,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: 5356
      start: 5265
    functionDepth: 1
    functionLinenumber: 5265
    functionLinenumberEnd: 5356
    functionName: gf_isom_enum_sample_group
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_bs_get_content
    - gf_bs_new
    - sgpd_write_entry
    - gf_bs_del
    - gf_list_get
    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:5366,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5377,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: 5380
      start: 5359
    functionDepth: 1
    functionLinenumber: 5359
    functionLinenumberEnd: 5380
    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:5387,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5393,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: 5413
      start: 5382
    functionDepth: 2
    functionLinenumber: 5382
    functionLinenumberEnd: 5413
    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: 5424
      start: 5417
    functionDepth: 0
    functionLinenumber: 5417
    functionLinenumberEnd: 5424
    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:5432,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - movie
    - segments_only
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5442
      start: 5426
    functionDepth: 1
    functionLinenumber: 5426
    functionLinenumberEnd: 5442
    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:5454,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5458,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5468,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5469,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: 5486
      start: 5444
    functionDepth: 1
    functionLinenumber: 5444
    functionLinenumberEnd: 5486
    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:5493,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_read.c:5502,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: 5505
      start: 5489
    functionDepth: 2
    functionLinenumber: 5489
    functionLinenumberEnd: 5505
    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:5510,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5513
      start: 5507
    functionDepth: 0
    functionLinenumber: 5507
    functionLinenumberEnd: 5513
    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:5518,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5522
      start: 5515
    functionDepth: 0
    functionLinenumber: 5515
    functionLinenumberEnd: 5522
    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:5530,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:5532,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:5535,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_read.c:5538,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/isomedia/isom_read.c:5543,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5549
      start: 5524
    functionDepth: 3
    functionLinenumber: 5524
    functionLinenumberEnd: 5549
    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_track_count
    - gf_isom_get_reference_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: 5556
      start: 5551
    functionDepth: 0
    functionLinenumber: 5551
    functionLinenumberEnd: 5556
    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: 5563
      start: 5558
    functionDepth: 0
    functionLinenumber: 5558
    functionLinenumberEnd: 5563
    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:5574,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5580,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5586
      start: 5567
    functionDepth: 1
    functionLinenumber: 5567
    functionLinenumberEnd: 5586
    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:5603,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:5609,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:5610,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:5612,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:5614,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: 5616
      start: 5596
    functionDepth: 3
    functionLinenumber: 5596
    functionLinenumberEnd: 5616
    functionName: gf_isom_get_pssh
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_list_enum
    - gf_bs_new
    - gf_bs_del
    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:5626,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_read.c:5633,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:5641,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: 5648
      start: 5619
    functionDepth: 1
    functionLinenumber: 5619
    functionLinenumberEnd: 5648
    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:5682,1
    - Dst: gf_isom_cenc_get_default_info_internal
      Src: /src/gpac/src/isomedia/isom_read.c:5692,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5699,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5723,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_count
      Src: /src/gpac/src/isomedia/isom_read.c:5758,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5759,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5768,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_read.c:5789,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: 5796
      start: 5653
    functionDepth: 1
    functionLinenumber: 5653
    functionLinenumberEnd: 5796
    functionName: gf_isom_get_sample_cenc_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 2
    functionsReached:
    - stbl_GetSampleInfos
    - gf_isom_cenc_get_default_info_internal
    - gf_list_count
    - gf_assert
    - gf_list_get
    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:5758,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5759,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5763
      start: 5756
    functionDepth: 1
    functionLinenumber: 5756
    functionLinenumberEnd: 5763
    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:5801,1
    - Dst: gf_isom_get_sample_cenc_info_internal
      Src: /src/gpac/src/isomedia/isom_read.c:5804,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: 5805
      start: 5798
    functionDepth: 2
    functionLinenumber: 5798
    functionLinenumberEnd: 5805
    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:5822,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: 5828
      start: 5808
    functionDepth: 4
    functionLinenumber: 5808
    functionLinenumberEnd: 5828
    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:5837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5841
      start: 5830
    functionDepth: 0
    functionLinenumber: 5830
    functionLinenumberEnd: 5841
    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:5850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5854
      start: 5843
    functionDepth: 0
    functionLinenumber: 5843
    functionLinenumberEnd: 5854
    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: 5860
      start: 5856
    functionDepth: 0
    functionLinenumber: 5856
    functionLinenumberEnd: 5860
    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:5866,1
    - Dst: gf_bs_read_u16
      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_int
      Src: /src/gpac/src/isomedia/isom_read.c:5873,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5874,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5875,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5876,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/isom_read.c:5877,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5878,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5879,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5880,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/isom_read.c:5881,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:5883,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: 5884
      start: 5863
    functionDepth: 1
    functionLinenumber: 5863
    functionLinenumberEnd: 5884
    functionName: gf_isom_parse_trif_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_new
    - gf_bs_del
    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:5892,1
    - Dst: gf_isom_parse_trif_info
      Src: /src/gpac/src/isomedia/isom_read.c:5894,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: 5896
      start: 5886
    functionDepth: 3
    functionLinenumber: 5886
    functionLinenumberEnd: 5896
    functionName: gf_isom_get_tile_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_sample_group_info
    - gf_isom_parse_trif_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:5902,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_read.c:5907,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:5909,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5913,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - file
    - trackNumber
    - ptr
    argTypes:
    - GF_ISOFile*
    - u32
    - GF_OperatingPointsInformation**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5916
      start: 5898
    functionDepth: 3
    functionLinenumber: 5898
    functionLinenumberEnd: 5916
    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_reference
    - gf_isom_get_sample_group_info_entry
    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: 5924
      start: 5918
    functionDepth: 0
    functionLinenumber: 5918
    functionLinenumberEnd: 5924
    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:5934,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5941,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5946,1
    - Dst: gf_isom_is_nalu_based_entry
      Src: /src/gpac/src/isomedia/isom_read.c:5948,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 3
    argNames:
    - file
    - track
    - StreamDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5960
      start: 5926
    functionDepth: 1
    functionLinenumber: 5926
    functionLinenumberEnd: 5960
    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_isom_is_nalu_based_entry
    - gf_list_get
    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: 5973
      start: 5962
    functionDepth: 0
    functionLinenumber: 5962
    functionLinenumberEnd: 5973
    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:5985,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:5989,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:5993,1
    - Dst: gf_isom_sample_entry_get_bitrate_box
      Src: /src/gpac/src/isomedia/isom_read.c:5995,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6007,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: 6033
      start: 5975
    functionDepth: 6
    functionLinenumber: 5975
    functionLinenumberEnd: 6033
    functionName: gf_isom_get_bitrate
    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
    - gf_isom_sample_entry_get_bitrate_box
    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: 6039
      start: 6035
    functionDepth: 0
    functionLinenumber: 6035
    functionLinenumberEnd: 6039
    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:6049,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6051,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: 6089
      start: 6042
    functionDepth: 0
    functionLinenumber: 6042
    functionLinenumberEnd: 6089
    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: 6098
      start: 6091
    functionDepth: 0
    functionLinenumber: 6091
    functionLinenumberEnd: 6098
    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:6111,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6113,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:6117,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/isom_read.c:6118,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:6119,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:6120,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: 6125
      start: 6103
    functionDepth: 2
    functionLinenumber: 6103
    functionLinenumberEnd: 6125
    functionName: gf_isom_get_jp2_config
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_box_array_write
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_list_get
    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:6139,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/isom_read.c:6141,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_read.c:6143,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: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:6149,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/isom_read.c:6151,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:6153,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:6155,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:6156,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_read.c:6159,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:6162,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:6163,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - ptr1
    - ptr2
    - grouping_type
    argTypes:
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6166
      start: 6128
    functionDepth: 3
    functionLinenumber: 6128
    functionLinenumberEnd: 6166
    functionName: gf_isom_is_identical_sgpd
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_size
    - gf_free
    - gf_isom_box_write
    - gf_bs_get_content
    - memcmp
    - gf_bs_new
    - sgpd_write_entry
    - 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:6171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6174
      start: 6168
    functionDepth: 0
    functionLinenumber: 6168
    functionLinenumberEnd: 6174
    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: 6202
      start: 6178
    functionDepth: 0
    functionLinenumber: 6178
    functionLinenumberEnd: 6202
    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: 6220
      start: 6204
    functionDepth: 0
    functionLinenumber: 6204
    functionLinenumberEnd: 6220
    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:6230,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6233,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6235,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: 6239
      start: 6223
    functionDepth: 2
    functionLinenumber: 6223
    functionLinenumberEnd: 6239
    functionName: gf_isom_get_mpegh_compatible_profiles
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_box_find_child
    - gf_list_get
    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:6246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6251
      start: 6241
    functionDepth: 0
    functionLinenumber: 6241
    functionLinenumberEnd: 6251
    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:6258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6261,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_read.c:6264,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6266,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6272,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6276,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_read.c:6277,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6279,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6283,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6291,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6297,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6305,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: 6312
      start: 6253
    functionDepth: 2
    functionLinenumber: 6253
    functionLinenumberEnd: 6312
    functionName: gf_isom_get_y3d_info
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_find_child
    - strlen
    - memset
    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:6322,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 12
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6331
      start: 6315
    functionDepth: 0
    functionLinenumber: 6315
    functionLinenumberEnd: 6331
    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:6343,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: 6411
      start: 6333
    functionDepth: 0
    functionLinenumber: 6333
    functionLinenumberEnd: 6411
    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:6420,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6425,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6428,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6432,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: 6443
      start: 6413
    functionDepth: 2
    functionLinenumber: 6413
    functionLinenumberEnd: 6443
    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_isom_box_find_child
    - gf_list_get
    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:6452,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6456,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6457,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: 6463
      start: 6445
    functionDepth: 1
    functionLinenumber: 6445
    functionLinenumberEnd: 6463
    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:6471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6475,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: 6481
      start: 6465
    functionDepth: 1
    functionLinenumber: 6465
    functionLinenumberEnd: 6481
    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:6490,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6495,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6498,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6502,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6506
      start: 6483
    functionDepth: 2
    functionLinenumber: 6483
    functionLinenumberEnd: 6506
    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_isom_box_find_child
    - gf_list_get
    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:6515,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6523,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_read.c:6527,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6530
      start: 6508
    functionDepth: 2
    functionLinenumber: 6508
    functionLinenumberEnd: 6530
    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_isom_box_find_child
    - gf_list_get
    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:6542,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6552,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6558,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6573,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6574,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_read.c:6601,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_read.c:6608,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_read.c:6614,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:6615,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_read.c:6617,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_read.c:6619,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:6624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_read.c:6627,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/isom_read.c:6627,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: 6632
      start: 6533
    functionDepth: 1
    functionLinenumber: 6533
    functionLinenumberEnd: 6632
    functionName: gf_isom_enum_sample_aux_data
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_bs_read_data
    - gf_list_get
    - gf_bs_seek
    - memcpy
    - gf_error_to_string
    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:6637,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_read.c:6640,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_read.c:6642,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_read.c:6643,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_read.c:6644,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_read.c:6645,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_read.c:6646,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - the_file
    - emsg_data
    - emsg_size
    argTypes:
    - GF_ISOFile*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6653
      start: 6634
    functionDepth: 4
    functionLinenumber: 6634
    functionLinenumberEnd: 6653
    functionName: gf_isom_pop_emsg
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_list_pop_front
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_del
    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:6658,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: 6663
      start: 6655
    functionDepth: 0
    functionLinenumber: 6655
    functionLinenumberEnd: 6663
    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:6669,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: 6677
      start: 6665
    functionDepth: 0
    functionLinenumber: 6665
    functionLinenumberEnd: 6677
    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:6681,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6683,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_read.c:6688,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_read.c:6692,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6693,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_read.c:6694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_read.c:6700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6702,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/isomedia/isom_read.c:6703,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/isomedia/isom_read.c:6704,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: 6707
      start: 6679
    functionDepth: 5
    functionLinenumber: 6679
    functionLinenumberEnd: 6707
    functionName: gf_isom_merge_external_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - gf_list_del_item
    - gf_timestamp_rescale
    - gf_list_get
    - gf_isom_box_del
    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:6713,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: 6724
      start: 6709
    functionDepth: 0
    functionLinenumber: 6709
    functionLinenumberEnd: 6724
    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:6731,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_read.c:6733,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - the_file
    - new_file
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6734
      start: 6726
    functionDepth: 1
    functionLinenumber: 6726
    functionLinenumberEnd: 6734
    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: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_read.c:6742,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_read.c:6751,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 6
    argNames:
    - the_file
    - trackNumber
    - sampleNumber
    - ID
    - nb_refs
    - refs
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - u32*
    - u32*
    - u32**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6758
      start: 6736
    functionDepth: 1
    functionLinenumber: 6736
    functionLinenumberEnd: 6758
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_read.c:6764,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_read.c:6765,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - the_file
    - dref_url
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6768
      start: 6760
    functionDepth: 0
    functionLinenumber: 6760
    functionLinenumberEnd: 6768
    functionName: gf_isom_override_dref_url
    functionSourceFile: /src/gpac/src/isomedia/isom_read.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_free
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_override_dref_url(GF_ISOFile *the_file, const char
      *dref_url)
  - 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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:
    - meta_reset
    - gf_free
    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_get_position
    - gf_bs_read_u8
    - GF_4CC
    - meta_reset
    - ISOM_DECREASE_SIZE
    - gf_bs_peek_bits
    - gf_isom_box_array_read
    - gf_bs_seek
    - 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_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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_isom_full_box_write
    - gf_bs_write_data
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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_list_count
    - gf_free
    - gf_list_del
    - iloc_entry_del
    - gf_list_get
    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:
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_list_new
    - gf_bs_read_u32
    - gf_list_add
    - 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_count
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_long_int
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_list_get
    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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_list_del
    - gf_free
    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:
    - gf_isom_box_array_read
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_bs_write_u16
    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_free
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - memcpy
    - gf_bs_read_u16
    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_byte
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_list_del
    - gf_free
    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
    - gf_isom_box_array_read
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_u16
    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_list_del
    - gf_free
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_bs_read_u32
    - gf_bs_skip_bytes
    - GF_LOG
    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_isom_full_box_write
    - gf_bs_write_u32
    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_u32
    - gf_bs_read_int
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_isom_box_write_header
    - gf_bs_write_u32
    - gf_bs_write_u16
    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_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    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_u32
    - gf_bs_write_data
    - 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_bs_read_u8
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - 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_isom_full_box_write
    - gf_bs_write_u8
    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_bs_read_u32
    - gf_bs_skip_bytes
    - GF_LOG
    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_isom_full_box_write
    - gf_bs_write_u32
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_list_add
    - gf_bs_read_u16
    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_count
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_list_get
    - 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_bs_read_u32
    - gf_bs_read_data
    - gf_malloc
    - 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_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_data
    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_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_isom_oinf_new_entry
    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_free
    - gf_isom_oinf_del_entry
    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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_u8
    - gf_malloc
    - gf_cenc_validate_key_info
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_int
    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_isom_full_box_write
    - gf_bs_write_u32
    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_isom_full_box_write
    - gf_bs_write_utf8
    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_u32
    - gf_bs_read_utf8
    - 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_u16
    - gf_isom_full_box_write
    - gf_bs_write_utf8
    - gf_bs_write_u32
    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_list_count
    - gf_isom_last_error
    - gf_isom_cenc_get_sample_aux_info
    - gf_isom_av1_config_get
    - gf_isom_get_sample_count
    - gf_isom_lhvc_config_get
    - gf_isom_is_cenc_media
    - gf_isom_get_reference
    - gf_isom_get_sample
    - gf_isom_mvc_config_get
    - gf_isom_get_meta_image_props
    - gf_4cc_to_str
    - gf_isom_reset_alt_brands
    - gf_list_add
    - gf_isom_box_del
    - gf_isom_remove_track
    - gf_isom_get_visual_info
    - gf_isom_get_pssh_count
    - gf_isom_meta_add_item_ref
    - gf_malloc
    - gf_isom_add_meta_item_memory
    - gf_isom_get_media_timescale
    - gf_isom_cenc_set_pssh
    - gf_media_split_hevc_tiles
    - gf_isom_extract_meta_item_mem
    - gf_isom_get_original_format_type
    - gf_isom_box_new
    - gf_isom_get_meta_item_info
    - gf_media_av1_layer_size_get
    - gf_list_get
    - gf_dynstrcat
    - gf_isom_get_meta_item_by_id
    - gf_isom_hevc_config_get
    - memcpy
    - gf_isom_meta_get_next_item_id
    - gf_isom_set_brand_info
    - gf_isom_get_cenc_info
    - gf_isom_get_pixel_aspect_ratio
    - gf_isom_get_meta_item_count
    - gf_isom_svc_config_get
    - gf_list_new
    - gf_list_pop_back
    - gf_isom_get_sample_cenc_info
    - gf_isom_is_media_encrypted
    - gf_isom_get_media_subtype
    - sprintf
    - gf_isom_get_reference_count
    - gf_free
    - gf_list_del
    - GF_LOG
    - GF_4CC
    - gf_isom_iff_create_image_item_from_track
    - gf_isom_get_pssh_info
    - gf_isom_get_sample_for_media_time
    - gf_isom_sample_del
    - gf_isom_add_meta_item_sample_ref
    - memset
    - gf_isom_avc_config_get
    - gf_isom_vvc_config_get
    - gf_isom_meta_get_item_ref_count
    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: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/iff.c:1901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1907,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1911,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/iff.c:1914,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1916,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1917,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1918,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:1919,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1920,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:1921,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/iff.c:1924,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:1925,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1926,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/iff.c:1927,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    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: 1929
      start: 1898
    functionDepth: 1
    functionLinenumber: 1898
    functionLinenumberEnd: 1929
    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_LOG
    - gf_bs_get_content
    - GF_4CC
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - 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:1934,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: 1935
      start: 1931
    functionDepth: 2
    functionLinenumber: 1931
    functionLinenumberEnd: 1935
    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:1948,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/isomedia/iff.c:1951,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/iff.c:1956,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/isomedia/iff.c:1957,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1965,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/iff.c:1968,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:1975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:1976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2015,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/iff.c:2022,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/iff.c:2024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2030,1
    - Dst: gf_isom_iff_create_image_grid_item_internal
      Src: /src/gpac/src/isomedia/iff.c:2032,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:2034,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/isomedia/iff.c:2039,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/iff.c:2039,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/iff.c:2046,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/iff.c:2050,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/src/isomedia/iff.c:2057,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:2061,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: 2063
      start: 1937
    functionDepth: 2
    functionLinenumber: 1937
    functionLinenumberEnd: 2063
    functionName: iff_create_auto_grid
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 0
    functionsReached:
    - gf_isom_meta_add_item_ref
    - gf_free
    - gf_isom_set_meta_primary_item
    - GF_LOG
    - GF_4CC
    - gf_isom_get_meta
    - gf_list_enum
    - gf_isom_get_meta_item_count
    - gf_isom_get_meta_item_info
    - gf_isom_get_meta_image_props
    - memset
    - gf_realloc
    - memcpy
    - gf_isom_iff_create_image_grid_item_internal
    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:2070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2073,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/iff.c:2086,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/iff.c:2088,1
    - Dst: gf_bs_write_u8
      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:2093,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_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2097,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/iff.c:2098,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/iff.c:2102,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:2103,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/iff.c:2104,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/iff.c:2105,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: 2107
      start: 2065
    functionDepth: 1
    functionLinenumber: 2065
    functionLinenumberEnd: 2107
    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_LOG
    - gf_bs_get_content
    - GF_4CC
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - 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:2112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/iff.c:2114,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/iff.c:2116,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: 2118
      start: 2109
    functionDepth: 1
    functionLinenumber: 2109
    functionLinenumberEnd: 2118
    functionName: gf_isom_iff_create_image_identity_item
    functionSourceFile: /src/gpac/src/isomedia/iff.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - GF_4CC
    - gf_isom_add_meta_item_memory
    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:2125,1
    - Dst: gf_isom_iff_create_image_item_from_track_internal
      Src: /src/gpac/src/isomedia/iff.c:2127,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: 2128
      start: 2120
    functionDepth: 5
    functionLinenumber: 2120
    functionLinenumberEnd: 2128
    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_count
    - gf_bs_write_int
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    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_get_position
    - gf_bs_read_u8
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_read_data
    - gf_isom_set_nalu_extract_mode
    - gf_isom_sample_new
    - Media_GetSample
    - gf_bs_reassign_buffer
    - gf_bs_write_u8
    - gf_bs_skip_bytes
    - gf_isom_get_track_box
    - gf_realloc
    - gf_isom_get_nalu_extract_mode
    - Track_FindRef
    - gf_bs_read_int
    - stbl_findEntryForTime
    - gf_bs_write_data
    - GF_LOG
    - gf_isom_get_track_by_id
    - gf_bs_write_u32
    - gf_bs_available
    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_read_u8
    - check_sap2
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_reassign_buffer
    - gf_bs_read_u16
    - gf_bs_available
    - 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
    - rewrite_nalus_list
    - gf_list_get
    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_get_position
    - gf_bs_read_u8
    - process_extractor
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_isom_get_reference
    - gf_isom_sample_new
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_isom_nalu_sample_rewrite
    - gf_bs_write_u8
    - gf_bs_skip_bytes
    - gf_malloc
    - hevc_sap_type_from_nal_type
    - GetTrackbyID
    - gf_list_find
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_isom_nalu_get_sample_sap
    - Track_FindRef
    - nalu_merge_ps
    - gf_bs_transfer
    - gf_bs_read_int
    - gf_bs_get_content_no_truncate
    - gf_bs_write_data
    - gf_bs_read_u16
    - gf_isom_get_media_subtype
    - gf_isom_get_reference_count
    - GF_LOG
    - gf_isom_get_sample_ex
    - gf_bs_write_u16
    - gf_bs_write_u32
    - memmove
    - gf_bs_available
    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_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_odf_hevc_cfg_write_bs
    - gf_odf_hevc_cfg_read_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_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_odf_vvc_cfg_write_bs
    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_count
    - gf_malloc
    - gf_list_new
    - gf_list_get
    - gf_list_add
    - memcpy
    - gf_odf_avc_cfg_new
    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_count
    - AVC_DuplicateConfig
    - gf_odf_avc_cfg_del
    - gf_list_get
    - gf_list_insert
    - 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_count
    - gf_odf_hevc_cfg_del
    - HEVC_DuplicateConfig
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    - CHECK_CODE
    - 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:
    - merge_hevc_config
    - GetTrackbyID
    - Track_FindRef
    - merge_avc_config
    - gf_list_get
    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_desc_del
    - gf_odf_avc_cfg_write
    - AVC_DuplicateConfig
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_odf_desc_esd_new
    - merge_avc_config
    - merge_all_config
    - gf_odf_desc_copy
    - gf_odf_avc_cfg_del
    - gf_isom_sample_entry_get_bitrate_box
    - 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_desc_del
    - merge_hevc_config
    - gf_odf_hevc_cfg_del
    - HEVC_DuplicateConfig
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_odf_desc_esd_new
    - merge_all_config
    - gf_odf_desc_copy
    - gf_isom_sample_entry_get_bitrate_box
    - gf_odf_desc_add_desc
    - gf_odf_hevc_cfg_write
    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_isom_box_new_parent
    - gf_list_count
    - gf_odf_desc_del
    - gf_isom_box_del_parent
    - gf_odf_hevc_cfg_del
    - gf_list_get
    - HEVC_RewriteESDescriptor
    - gf_isom_box_find_child
    - gf_odf_hevc_cfg_read
    - AVC_RewriteESDescriptor
    - gf_odf_avc_cfg_del
    - gf_isom_sample_entry_get_bitrate_box
    - gf_odf_avc_cfg_read
    - gf_list_add
    - 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_isom_box_new_parent
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_isom_box_find_child
    - memset
    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_count
    - gf_malloc
    - gf_list_new
    - gf_list_get
    - gf_list_add
    - memcpy
    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_count
    - gf_malloc
    - gf_odf_iamf_cfg_del
    - gf_odf_iamf_cfg_new
    - gf_list_get
    - gf_list_add
    - memcpy
    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_desc_del
    - AV1_DuplicateConfig
    - gf_odf_desc_esd_new
    - gf_odf_av1_cfg_write
    - gf_isom_sample_entry_get_bitrate_box
    - gf_odf_av1_cfg_del
    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:
    - gf_odf_avs3v_cfg_new
    - memcpy
    - 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_desc_del
    - gf_odf_vp_cfg_write
    - gf_odf_vp_cfg_del
    - gf_odf_desc_esd_new
    - gf_isom_sample_entry_get_bitrate_box
    - VP_DuplicateConfig
    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:
    - GF_SAFEALLOC
    - memcpy
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - AVC_DuplicateConfig
    - AVC_RewriteESDescriptor
    - gf_sys_is_test_mode
    - 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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_free
    - gf_isom_box_del_parent
    - gf_isom_check_mvc
    - AVC_DuplicateConfig
    - AVC_RewriteESDescriptor
    - gf_odf_avc_cfg_del
    - gf_list_get
    - 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_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - AVC_RewriteESDescriptor
    - gf_list_get
    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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - AVC_DuplicateConfig
    - AVC_RewriteESDescriptor
    - 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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - HEVC_RewriteESDescriptor
    - HEVC_DuplicateConfig
    - 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_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - VVC_DuplicateConfig
    - 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: gf_strcpy
      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
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_strcpy
    - gf_list_count
    - VP_DuplicateConfig
    - 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
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - AV1_DuplicateConfig
    - gf_list_count
    - 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
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - AVS3V_DuplicateConfig
    - 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
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new_parent
    - gf_list_count
    - IAMF_DuplicateConfig
    - 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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_odf_hevc_cfg_del
    - gf_isom_box_del_parent
    - HEVC_RewriteESDescriptor
    - HEVC_DuplicateConfig
    - nalu_cleanup_config
    - gf_list_get
    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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - nalu_cleanup_config
    - gf_list_get
    - VVC_DuplicateConfig
    - gf_odf_vvc_cfg_del
    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_isom_box_size
    - gf_free
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_isom_box_parse
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_del
    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_avc_svc_type
    - gf_isom_get_track_box
    - AVC_DuplicateConfig
    - gf_list_get
    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_isom_get_track_box
    - gf_isom_get_reference_count
    - HEVC_DuplicateConfig
    - gf_isom_get_reference
    - gf_isom_get_hevc_lhvc_type
    - gf_list_get
    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_get_track_box
    - gf_isom_is_video_handler_type
    - gf_isom_box_find_child
    - gf_list_get
    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_odf_vvc_cfg_new
    - gf_isom_get_track_box
    - gf_isom_get_vvc_type
    - gf_isom_box_find_child
    - gf_list_get
    - VVC_DuplicateConfig
    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_avc_svc_type
    - gf_isom_get_track_box
    - AVC_DuplicateConfig
    - gf_list_get
    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_avc_svc_type
    - gf_isom_get_track_box
    - AVC_DuplicateConfig
    - gf_list_get
    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:
    - AV1_DuplicateConfig
    - gf_isom_get_track_box
    - gf_isom_get_reference_count
    - gf_isom_get_reference
    - gf_list_get
    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
    - VP_DuplicateConfig
    - gf_list_get
    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
    - AVS3V_DuplicateConfig
    - gf_list_get
    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
    - DOVI_DuplicateConfig
    - gf_list_get
    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:
    - IAMF_DuplicateConfig
    - gf_isom_get_track_box
    - gf_list_get
    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_get_track_box
    - gf_isom_is_video_handler_type
    - gf_isom_box_find_child
    - gf_list_get
    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_get_track_box
    - gf_isom_is_video_handler_type
    - gf_isom_box_find_child
    - gf_list_get
    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_isom_get_track_box
    - gf_isom_get_oinf_info
    - HEVC_DuplicateConfig
    - gf_isom_get_hevc_lhvc_type
    - gf_list_get
    - 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_isom_box_write_header
    - gf_bs_write_u32
    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_list_del
    - gf_free
    - 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_free
    - gf_malloc
    - gf_odf_desc_list_read
    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_malloc
    - gf_list_new
    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_isom_box_write_header
    - gf_odf_desc_list_write
    - gf_bs_write_data
    - 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_bs_read_u8
    - gf_avc_read_sps
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_bs_available
    - ISOM_DECREASE_SIZE
    - gf_list_new
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_avcc_use_extensions
    - gf_odf_avc_cfg_del
    - gf_list_get
    - gf_list_add
    - gf_bs_read_u16
    - gf_odf_avc_cfg_new
    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_count
    - gf_isom_box_write_header
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_avcc_use_extensions
    - gf_bs_write_data
    - gf_list_get
    - 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_avcc_use_extensions
    - gf_list_get
    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_free
    - gf_odf_hevc_cfg_del
    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_bs_get_position
    - gf_odf_hevc_cfg_del
    - ISOM_DECREASE_SIZE
    - gf_odf_hevc_cfg_read_bs
    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_isom_box_write_header
    - gf_odf_hevc_cfg_write_bs
    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_bs_get_position
    - gf_odf_vvc_cfg_read_bs
    - gf_odf_vvc_cfg_del
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_odf_vvc_cfg_write_bs
    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_odf_av1_cfg_del
    - gf_free
    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_bs_get_position
    - GF_LOG
    - gf_odf_av1_cfg_read_bs_size
    - bytes
    - 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_isom_box_write_header
    - gf_odf_av1_cfg_write_bs
    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_odf_avs3v_cfg_del
    - gf_free
    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_bs_get_position
    - GF_LOG
    - bytes
    - gf_odf_avs3v_cfg_read_bs
    - 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_free
    - gf_odf_vp_cfg_del
    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_bs_get_position
    - GF_LOG
    - gf_odf_vp_cfg_del
    - bytes
    - 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_isom_full_box_write
    - gf_odf_vp_cfg_write_bs
    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
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_bs_read_u8
    - gf_free
    - GF_ARRAY_LENGTH
    - gf_bs_is_overflow
    - gf_bs_read_long_int
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_list_add
    - gf_bs_read_u16
    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_count
    - gf_bs_write_int
    - gf_bs_write_long_int
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_list_get
    - 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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_bs_read_int
    - GF_SAFEALLOC
    - gf_list_add
    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_bs_write_int
    - gf_list_count
    - 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_isom_ismacryp_delete_sample
    - gf_malloc
    - gf_bs_read_long_int
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_ismacryp_new_sample
    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_write_int
    - gf_bs_get_content
    - gf_bs_write_long_int
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_data
    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:
    - gf_list_enum
    - Media_GetSampleDesc
    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:202,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:207,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 18
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 192
    functionDepth: 3
    functionLinenumber: 192
    functionLinenumberEnd: 216
    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:224,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:227,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 218
    functionDepth: 3
    functionLinenumber: 218
    functionLinenumberEnd: 235
    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:243,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:246,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 237
    functionDepth: 3
    functionLinenumber: 237
    functionLinenumberEnd: 254
    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:263,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:266,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:271,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: 292
      start: 257
    functionDepth: 3
    functionLinenumber: 257
    functionLinenumberEnd: 292
    functionName: gf_isom_get_ismacryp_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    - IsMP4Description
    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:304,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:307,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:314,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: 337
      start: 296
    functionDepth: 3
    functionLinenumber: 296
    functionLinenumberEnd: 337
    functionName: gf_isom_get_omadrm_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    - IsMP4Description
    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:355,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:358,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: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:371,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:376,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:378,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 348
    functionDepth: 5
    functionLinenumber: 348
    functionLinenumberEnd: 383
    functionName: gf_isom_remove_track_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - isom_get_sinf_entry
    - 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:394,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/drm_sample.c:397,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:401,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:405,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:406,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:409,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:410,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: 413
      start: 386
    functionDepth: 3
    functionLinenumber: 386
    functionLinenumberEnd: 413
    functionName: gf_isom_change_ismacryp_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - isom_get_sinf_entry
    - gf_strdup
    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:425,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/drm_sample.c:428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:523,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/drm_sample.c:523,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:528,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:531,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:539,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/drm_sample.c:539,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/drm_sample.c:541,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/drm_sample.c:541,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:544,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:553,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: 557
      start: 416
    functionDepth: 5
    functionLinenumber: 416
    functionLinenumberEnd: 557
    functionName: isom_set_protected_entry
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_malloc
    - GF_LOG
    - gf_4cc_to_str
    - strlen
    - memmove
    - Media_GetSampleDesc
    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:568,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:573,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:576,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:578,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:581,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: 588
      start: 559
    functionDepth: 6
    functionLinenumber: 559
    functionLinenumberEnd: 588
    functionName: gf_isom_set_ismacryp_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - isom_set_protected_entry
    - 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:599,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:602,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:604,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:610,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:615,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:616,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:618,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:620,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: 624
      start: 590
    functionDepth: 6
    functionLinenumber: 590
    functionLinenumberEnd: 624
    functionName: gf_isom_set_oma_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_strdup
    - isom_set_protected_entry
    - memcpy
    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:633,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:638,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:642,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:643,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: 646
      start: 626
    functionDepth: 6
    functionLinenumber: 626
    functionLinenumberEnd: 646
    functionName: gf_isom_set_generic_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - isom_set_protected_entry
    - 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:657,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:660,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/drm_sample.c:664,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:666,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:667,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: 677
      start: 649
    functionDepth: 2
    functionLinenumber: 649
    functionLinenumberEnd: 677
    functionName: gf_isom_get_original_format_type
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 5
    functionsReached:
    - gf_isom_box_find_child
    - gf_list_count
    - gf_isom_get_track_box
    - Media_GetSampleDesc
    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:688,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:692,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
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:701,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:702,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 39
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 725
      start: 681
    functionDepth: 3
    functionLinenumber: 681
    functionLinenumberEnd: 725
    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:733,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: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:742,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:743,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:749,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: 754
      start: 727
    functionDepth: 3
    functionLinenumber: 727
    functionLinenumberEnd: 754
    functionName: gf_isom_get_cenc_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 3
    functionsReached:
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    - IsMP4Description
    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: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/isomedia/drm_sample.c:767,1
    - Dst: isom_set_protected_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:771,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:775,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:782,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:786,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:796,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    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: 799
      start: 759
    functionDepth: 6
    functionLinenumber: 759
    functionLinenumberEnd: 799
    functionName: gf_isom_set_cenc_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - isom_set_protected_entry
    - memcpy
    - gf_cenc_validate_key_info
    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:812,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:819,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:820,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:831,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:832,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:836,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:837,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 808
    functionDepth: 5
    functionLinenumber: 808
    functionLinenumberEnd: 842
    functionName: gf_isom_remove_cenc_saiz
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - gf_list_del
    - gf_list_get
    - 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:853,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:861,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:872,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:873,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:877,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:878,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 849
    functionDepth: 5
    functionLinenumber: 849
    functionLinenumberEnd: 883
    functionName: gf_isom_remove_cenc_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - gf_list_del
    - gf_list_get
    - 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:897,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:902,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:910,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/drm_sample.c:914,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:918,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:922,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:927,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:930,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:936,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:938,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:940,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:942,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:944,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:946,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/drm_sample.c:955,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:959,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:961,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:974,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:977,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:985,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:988,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: 993
      start: 886
    functionDepth: 5
    functionLinenumber: 886
    functionLinenumberEnd: 993
    functionName: gf_isom_cenc_set_pssh
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_malloc
    - memcmp
    - gf_list_enum
    - gf_list_new
    - gf_realloc
    - gf_list_add
    - memcpy
    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:1001,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1007,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1008,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1010,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1014,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1019,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1020,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1023,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1024,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1026,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1030,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1035
      start: 996
    functionDepth: 5
    functionLinenumber: 996
    functionLinenumberEnd: 1035
    functionName: gf_isom_remove_cenc_senc_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - gf_list_del
    - gf_list_get
    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:1042,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1048,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1049,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:1051,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1052,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1056,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1057,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1061,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1062,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/drm_sample.c:1064,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1065,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1069,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1070,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1075
      start: 1037
    functionDepth: 5
    functionLinenumber: 1037
    functionLinenumberEnd: 1075
    functionName: gf_isom_remove_cenc_seig_sample_group
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - gf_list_del
    - gf_list_get
    - 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:1085,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1086,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1091,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1096,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/drm_sample.c:1097,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1102
      start: 1082
    functionDepth: 5
    functionLinenumber: 1082
    functionLinenumberEnd: 1102
    functionName: gf_isom_remove_pssh_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_get
    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:1112,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1121,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1123,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: 1126
      start: 1108
    functionDepth: 4
    functionLinenumber: 1108
    functionLinenumberEnd: 1126
    functionName: gf_isom_create_piff_psec_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new
    - memcpy
    - gf_list_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:1132,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - version
    - flags
    argTypes:
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1128
    functionDepth: 4
    functionLinenumber: 1128
    functionLinenumberEnd: 1140
    functionName: gf_isom_create_samp_enc_box
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new
    - gf_list_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:1145,1
    - Dst: gf_isom_create_samp_enc_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1149,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1151,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1152,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1142
    functionDepth: 5
    functionLinenumber: 1142
    functionLinenumberEnd: 1153
    functionName: gf_isom_cenc_allocate_storage
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_isom_get_track_box
    - gf_list_new
    - gf_isom_create_samp_enc_box
    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:1158,1
    - Dst: gf_isom_create_piff_psec_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1162,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/drm_sample.c:1164,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1165,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: 1166
      start: 1155
    functionDepth: 5
    functionLinenumber: 1155
    functionLinenumberEnd: 1166
    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_add
    - gf_list_new
    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:1174,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1180,1
    - Dst: traf_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1182,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1185,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1194,1
    - Dst: traf_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1196,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1206,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: 1217
      start: 1169
    functionDepth: 5
    functionLinenumber: 1169
    functionLinenumberEnd: 1217
    functionName: gf_isom_cenc_set_saiz_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_realloc
    - traf_on_child_box
    - stbl_on_child_box
    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:1223,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1226,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1230,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1236,1
    - Dst: stbl_on_child_box
      Src: /src/gpac/src/isomedia/drm_sample.c:1242,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1258,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/drm_sample.c:1267,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1277,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/drm_sample.c:1290,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1291,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/drm_sample.c:1295,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: 1306
      start: 1219
    functionDepth: 5
    functionLinenumber: 1219
    functionLinenumberEnd: 1306
    functionName: gf_isom_cenc_merge_saiz_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_malloc
    - stbl_on_child_box
    - gf_assert
    - MAX
    - memset
    - 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:1315,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/drm_sample.c:1332,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1335,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:1337,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1340,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1342,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/drm_sample.c:1344,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/drm_sample.c:1346,1
    - Dst: gf_isom_cenc_set_saiz_saio
      Src: /src/gpac/src/isomedia/drm_sample.c:1355,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: 1359
      start: 1309
    functionDepth: 6
    functionLinenumber: 1309
    functionLinenumberEnd: 1359
    functionName: gf_isom_track_cenc_add_sample_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - GF_SAFEALLOC
    - gf_isom_cenc_set_saiz_saio
    - gf_list_add
    - memcpy
    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:1366,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/drm_sample.c:1367,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_CENCSampleAuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1368
      start: 1362
    functionDepth: 0
    functionLinenumber: 1362
    functionLinenumberEnd: 1368
    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:1383,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/drm_sample.c:1395,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1407,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1408,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1410,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1419,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1422,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:1427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:1437,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1453,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1462,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1465,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:1469,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:1479,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 90
    argCount: 3
    argNames:
    - stbl
    - _traf
    - scheme_type
    argTypes:
    - GF_SampleTableBox*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1496
      start: 1370
    functionDepth: 2
    functionLinenumber: 1370
    functionLinenumberEnd: 1496
    functionName: gf_isom_cenc_has_saiz_saio_full
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_isom_box_find_child
    - gf_list_get
    - gf_opts_get_bool
    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:1395,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1391
    functionDepth: 1
    functionLinenumber: 1391
    functionLinenumberEnd: 1402
    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:1500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - stbl
    - scheme_type
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1501
      start: 1498
    functionDepth: 3
    functionLinenumber: 1498
    functionLinenumberEnd: 1501
    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:1506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - traf
    - scheme_type
    argTypes:
    - GF_TrackFragmentBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1507
      start: 1504
    functionDepth: 3
    functionLinenumber: 1504
    functionLinenumberEnd: 1507
    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:1523,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1524,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1552,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1553,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1604,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/drm_sample.c:1606,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1608,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/drm_sample.c:1609,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1610,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1615,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1618,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/drm_sample.c:1626,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1628,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1632,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/drm_sample.c:1636,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/drm_sample.c:1640,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: 1643
      start: 1511
    functionDepth: 1
    functionLinenumber: 1511
    functionLinenumberEnd: 1643
    functionName: isom_cenc_get_sai_by_saiz_saio
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_malloc
    - gf_bs_read_data
    - gf_list_get
    - gf_bs_seek
    - gf_realloc
    - memcpy
    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:1654,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/isomedia/drm_sample.c:1679,1
    - Dst: gf_isom_cenc_has_saiz_saio_track
      Src: /src/gpac/src/isomedia/drm_sample.c:1682,1
    - Dst: isom_cenc_get_sai_by_saiz_saio
      Src: /src/gpac/src/isomedia/drm_sample.c:1683,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1689,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/drm_sample.c:1690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1698,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1702,1
    - Dst: gf_isom_get_sample_cenc_info_internal
      Src: /src/gpac/src/isomedia/drm_sample.c:1716,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1730,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1734,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: 1736
      start: 1645
    functionDepth: 4
    functionLinenumber: 1645
    functionLinenumberEnd: 1736
    functionName: gf_isom_cenc_get_sample_aux_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - senc_Parse
    - gf_isom_get_cenc_info
    - isom_cenc_get_sai_by_saiz_saio
    - gf_list_get
    - gf_realloc
    - gf_isom_cenc_has_saiz_saio_track
    - gf_isom_get_sample_cenc_info_internal
    - memcpy
    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: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: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1757,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1760,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1765,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/drm_sample.c:1766,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/drm_sample.c:1797,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1800,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/drm_sample.c:1805,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/drm_sample.c:1820,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: 1832
      start: 1738
    functionDepth: 3
    functionLinenumber: 1738
    functionLinenumberEnd: 1832
    functionName: gf_isom_cenc_get_default_info_internal
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_LOG
    - isom_get_sinf_entry
    - gf_isom_box_find_child
    - gf_list_get
    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:1837,1
    - Dst: gf_isom_cenc_get_default_info_internal
      Src: /src/gpac/src/isomedia/drm_sample.c:1839,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: 1841
      start: 1834
    functionDepth: 4
    functionLinenumber: 1834
    functionLinenumberEnd: 1841
    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:1854,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1860,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1863,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1866,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1869,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/drm_sample.c:1872,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1876,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1879,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/drm_sample.c:1883,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/drm_sample.c:1886,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/drm_sample.c:1890,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    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: 1897
      start: 1846
    functionDepth: 6
    functionLinenumber: 1846
    functionLinenumberEnd: 1897
    functionName: gf_isom_set_adobe_protection
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_strdup
    - isom_set_protected_entry
    - memcpy
    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:1905,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1908,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - sampleDescriptionIndex
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1917
      start: 1899
    functionDepth: 3
    functionLinenumber: 1899
    functionLinenumberEnd: 1917
    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:1925,1
    - Dst: isom_get_sinf_entry
      Src: /src/gpac/src/isomedia/drm_sample.c:1928,1
    - Dst: IsMP4Description
      Src: /src/gpac/src/isomedia/drm_sample.c:1934,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: 1949
      start: 1919
    functionDepth: 3
    functionLinenumber: 1919
    functionLinenumberEnd: 1949
    functionName: gf_isom_get_adobe_protection_info
    functionSourceFile: /src/gpac/src/isomedia/drm_sample.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - isom_get_sinf_entry
    - IsMP4Description
    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:1961,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 1
    argNames:
    - the_file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1956
    functionDepth: 1
    functionLinenumber: 1956
    functionLinenumberEnd: 1964
    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:2005,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - key_info
    - key_info_size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2007
      start: 1967
    functionDepth: 1
    functionLinenumber: 1967
    functionLinenumberEnd: 2007
    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_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:170,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:171,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/media_odf.c:174,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:176,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:177,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:184,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:188,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/media_odf.c:198,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/media_odf.c:208,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:210,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:211,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:215,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/isomedia/media_odf.c:220,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/media_odf.c:224,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/isomedia/media_odf.c:227,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:230,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:231,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 172
    argCount: 2
    argNames:
    - mdia
    - sample
    argTypes:
    - GF_MediaBox*
    - GF_ISOSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 31
    functionDepth: 7
    functionLinenumber: 31
    functionLinenumberEnd: 233
    functionName: Media_RewriteODFrame
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 1
    functionsReached:
    - GetESDForTime
    - gf_list_add
    - gf_odf_codec_del
    - gf_odf_codec_get_com
    - gf_malloc
    - gf_odf_desc_copy
    - gf_realloc
    - gf_isom_get_track_from_id
    - gf_odf_codec_decode
    - gf_odf_codec_add_com
    - Track_FindRef
    - gf_list_enum
    - gf_odf_codec_get_au
    - gf_list_new
    - gf_odf_codec_new
    - gf_odf_desc_add_desc
    - gf_odf_desc_del
    - gf_free
    - gf_odf_com_del
    - gf_odf_codec_encode
    - gf_odf_com_new
    - gf_odf_codec_set_au
    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:264,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/media_odf.c:266,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/media_odf.c:270,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/media_odf.c:273,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:279,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:281,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/isomedia/media_odf.c:284,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/isomedia/media_odf.c:286,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/isomedia/media_odf.c:290,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:299,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:302,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/media_odf.c:313,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:316,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:320,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/media_odf.c:334,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:349,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/media_odf.c:350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/media_odf.c:352,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/media_odf.c:358,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/media_odf.c:360,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/media_odf.c:364,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/media_odf.c:366,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:369,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:371,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:377,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:380,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/isomedia/media_odf.c:381,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/media_odf.c:383,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/media_odf.c:385,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:388,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:389,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/isomedia/media_odf.c:395,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/media_odf.c:402,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/media_odf.c:409,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:413,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:414,1
    - Dst: gf_odf_codec_add_com
      Src: /src/gpac/src/isomedia/media_odf.c:419,1
    - Dst: gf_odf_codec_encode
      Src: /src/gpac/src/isomedia/media_odf.c:425,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/isomedia/media_odf.c:429,1
    - Dst: gf_odf_codec_get_au
      Src: /src/gpac/src/isomedia/media_odf.c:433,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/media_odf.c:435,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:441,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:442,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: 444
      start: 237
    functionDepth: 5
    functionLinenumber: 237
    functionLinenumberEnd: 444
    functionName: Media_ParseODFrame
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 0
    functionsReached:
    - gf_isom_sample_new
    - gf_list_add
    - gf_isom_box_new_parent
    - gf_odf_codec_get_com
    - gf_odf_codec_del
    - gf_malloc
    - gf_odf_desc_copy
    - reftype_AddRefTrack
    - trak_on_child_box
    - gf_odf_codec_decode
    - gf_odf_codec_add_com
    - Track_FindRef
    - gf_list_enum
    - gf_odf_codec_get_au
    - gf_list_new
    - gf_odf_codec_new
    - gf_odf_desc_add_desc
    - gf_odf_desc_del
    - gf_odf_com_del
    - GF_LOG
    - gf_odf_codec_encode
    - gf_odf_desc_new
    - gf_isom_sample_del
    - gf_odf_com_new
    - gf_odf_codec_set_au
    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:464,1
    - Dst: gf_odf_codec_new
      Src: /src/gpac/src/isomedia/media_odf.c:471,1
    - Dst: gf_odf_codec_set_au
      Src: /src/gpac/src/isomedia/media_odf.c:473,1
    - Dst: gf_odf_codec_decode
      Src: /src/gpac/src/isomedia/media_odf.c:475,1
    - Dst: gf_odf_codec_get_com
      Src: /src/gpac/src/isomedia/media_odf.c:480,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:486,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:496,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/isomedia/media_odf.c:504,1
    - Dst: gf_odf_codec_del
      Src: /src/gpac/src/isomedia/media_odf.c:509,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: 511
      start: 449
    functionDepth: 2
    functionLinenumber: 449
    functionLinenumberEnd: 511
    functionName: Media_FindOD_ID
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 0
    functionsReached:
    - gf_odf_codec_del
    - gf_odf_codec_get_com
    - gf_odf_codec_decode
    - gf_odf_com_del
    - Track_FindRef
    - gf_list_enum
    - gf_odf_codec_new
    - gf_odf_codec_set_au
    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:519,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/media_odf.c:523,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/media_odf.c:534,1
    - Dst: Media_FindOD_ID
      Src: /src/gpac/src/isomedia/media_odf.c:535,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/media_odf.c:536,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 18
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 514
    functionDepth: 3
    functionLinenumber: 514
    functionLinenumberEnd: 541
    functionName: gf_isom_find_od_id_for_track
    functionSourceFile: /src/gpac/src/isomedia/media_odf.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_isom_sample_del
    - gf_isom_get_sample
    - Media_FindOD_ID
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_find_od_id_for_track(GF_ISOFile *file, u32 track)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:39,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - file
    - root_meta
    - track_num
    argTypes:
    - GF_ISOFile*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 41
    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:46,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: 50
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 50
    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:56,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:59,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:61,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: 66
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 66
    functionName: gf_isom_has_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    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:75,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:79,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:81,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:89,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/meta.c:91,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/isomedia/meta.c:92,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:93,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: 97
      start: 68
    functionDepth: 2
    functionLinenumber: 68
    functionLinenumberEnd: 97
    functionName: gf_isom_extract_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_fclose
    - gf_fopen
    - gf_list_get
    - gf_fwrite
    - 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:103,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:109,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: 119
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 119
    functionName: gf_isom_get_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    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:126,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:128,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: 129
      start: 123
    functionDepth: 2
    functionLinenumber: 123
    functionLinenumberEnd: 129
    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:139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:159,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/meta.c:166,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:175,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:177,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:182,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:192,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: 205
      start: 131
    functionDepth: 2
    functionLinenumber: 131
    functionLinenumberEnd: 205
    functionName: gf_isom_get_meta_item_info
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 5
    functionsReached:
    - gf_list_get
    - GF_4CC
    - gf_list_count
    - gf_isom_get_meta
    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:211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:214,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: 217
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 217
    functionName: gf_isom_get_meta_item_flags
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_get
    - gf_isom_get_meta
    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:223,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:225,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:227,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: 231
      start: 219
    functionDepth: 2
    functionLinenumber: 219
    functionLinenumberEnd: 231
    functionName: gf_isom_get_meta_item_by_id
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    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: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:247,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/isomedia/meta.c:252,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:262,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:264,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:275,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:277,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:320,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:331,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:338,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:340,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/meta.c:352,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/isomedia/meta.c:354,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:355,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/meta.c:356,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/meta.c:358,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/isomedia/meta.c:358,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/meta.c:359,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:360,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/meta.c:361,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:377,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:379,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:384,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:407,1
    - Dst: gf_odf_hevc_cfg_write_bs
      Src: /src/gpac/src/isomedia/meta.c:411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:418,1
    - Dst: gf_odf_avc_cfg_write_bs
      Src: /src/gpac/src/isomedia/meta.c:422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:429,1
    - Dst: gf_odf_vvc_cfg_write_bs
      Src: /src/gpac/src/isomedia/meta.c:433,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:445,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/meta.c:446,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/meta.c:456,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/meta.c:463,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/meta.c:465,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/meta.c:471,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:472,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/meta.c:477,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:478,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/meta.c:481,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/isomedia/meta.c:488,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:490,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:492,1
    CyclomaticComplexity: 93
    EdgeCount: 93
    ICount: 214
    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: 495
      start: 233
    functionDepth: 3
    functionLinenumber: 233
    functionLinenumberEnd: 495
    functionName: gf_isom_extract_meta_item_intern
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - snprintf
    - gf_bs_seek
    - gf_fopen
    - gf_bs_from_file
    - gf_isom_get_meta
    - gf_list_get
    - gf_isom_get_meta_item_by_id
    - gf_odf_vvc_cfg_write_bs
    - gf_bs_is_overflow
    - gf_bs_read_int
    - gf_odf_hevc_cfg_write_bs
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - strlen
    - gf_strlcpy
    - gf_fclose
    - GF_LOG
    - gf_odf_avc_cfg_write_bs
    - gf_bs_write_u32
    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:500,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: 501
      start: 497
    functionDepth: 4
    functionLinenumber: 497
    functionLinenumberEnd: 501
    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:506,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: 507
      start: 503
    functionDepth: 4
    functionLinenumber: 503
    functionLinenumberEnd: 507
    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:519,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:525,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:527,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:532,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:559,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:567,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:570,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:575,1
    - Dst: gf_isom_extract_meta_item_mem
      Src: /src/gpac/src/isomedia/meta.c:599,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: 600
      start: 509
    functionDepth: 5
    functionLinenumber: 509
    functionLinenumberEnd: 600
    functionName: gf_isom_extract_meta_item_get_cenc_info
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_extract_meta_item_mem
    - gf_isom_get_meta
    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:606,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: 609
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 609
    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:621,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:624,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/meta.c:627,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:631,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/meta.c:633,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:637,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:640,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/meta.c:642,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:645,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:646,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/meta.c:652,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/meta.c:653,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:660,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:662,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:670,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:673,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/meta.c:675,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/meta.c:675,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:676,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: 679
      start: 615
    functionDepth: 5
    functionLinenumber: 615
    functionLinenumberEnd: 679
    functionName: gf_isom_set_meta_type
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - sprintf
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_list_del_item
    - gf_strdup
    - gf_list_new
    - gf_isom_box_new
    - gf_isom_get_meta
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_insert_moov
    - gf_4cc_to_str
    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:686,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/meta.c:689,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:693,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: 699
      start: 681
    functionDepth: 5
    functionLinenumber: 681
    functionLinenumberEnd: 699
    functionName: gf_isom_remove_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - gf_isom_box_del_parent
    - gf_isom_get_meta
    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:711,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:714,1
    - Dst: gf_isom_remove_meta_xml
      Src: /src/gpac/src/isomedia/meta.c:717,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:720,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/isomedia/meta.c:726,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:730,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:732,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: 734
      start: 701
    functionDepth: 6
    functionLinenumber: 701
    functionLinenumberEnd: 734
    functionName: gf_isom_set_meta_xml
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_malloc
    - gf_file_load_data
    - gf_isom_get_meta
    - memcpy
    - gf_isom_remove_meta_xml
    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:744,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/meta.c:747,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/isomedia/meta.c:753,1
    - Dst: gf_isom_get_meta_item_flags
      Src: /src/gpac/src/isomedia/meta.c:754,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:758,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:760,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:766,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:842,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:861,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: 868
      start: 738
    functionDepth: 3
    functionLinenumber: 738
    functionLinenumberEnd: 868
    functionName: gf_isom_get_meta_image_props
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_isom_get_meta_item_flags
    - gf_list_get
    - gf_isom_get_meta
    - gf_isom_get_meta_item_by_id
    - memset
    - gf_list_add
    - memcpy
    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:875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:877,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/meta.c:964,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/meta.c:973,1
    - Dst: gf_isom_box_equal
      Src: /src/gpac/src/isomedia/meta.c:989,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 85
    argCount: 2
    argNames:
    - boxes
    - prop
    argTypes:
    - GF_ItemPropertyContainerBox*
    - GF_ImageItemProperties*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 872
    functionDepth: 1
    functionLinenumber: 872
    functionLinenumberEnd: 997
    functionName: meta_find_prop
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_equal
    - memcmp
    - gf_list_get
    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:1003,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1006,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1013,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/meta.c:1015,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/meta.c:1018,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: 1025
      start: 999
    functionDepth: 1
    functionLinenumber: 999
    functionLinenumberEnd: 1025
    functionName: meta_add_item_property_association
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - 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:1034,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1037,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1039,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1042,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:1050,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/meta.c:1052,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/isomedia/meta.c:1055,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1057,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1061,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1063,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1068,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1069,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1077,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1079,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1083,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1086,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1094,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1096,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1100,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1102,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1110,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1112,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1116,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1118,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1132,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1144,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1146,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1152,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1154,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1157,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1159,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1165,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1167,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1170,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1172,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1178,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1181,1
    - Dst: gf_isom_clone_config_box
      Src: /src/gpac/src/isomedia/meta.c:1181,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1182,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1187,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1194,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:1195,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/meta.c:1197,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/meta.c:1198,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/meta.c:1199,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/meta.c:1201,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1202,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1205,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/meta.c:1206,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/meta.c:1210,1
    - Dst: gf_isom_box_equal
      Src: /src/gpac/src/isomedia/meta.c:1212,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/meta.c:1213,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1214,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1220,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1221,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1224,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/meta.c:1227,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1228,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1232,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1234,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/meta.c:1238,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1243,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1246,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1250,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1252,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1254,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1261,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1263,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/meta.c:1267,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1272,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1275,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1279,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1281,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1283,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1294,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1296,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1299,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1304,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1306,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1313,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1314,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1316,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1319,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1320,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1322,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/meta.c:1324,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1328,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1330,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1333,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1335,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1341,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1343,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1344,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1347,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1349,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1351,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1357,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1359,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1362,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1364,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/isomedia/meta.c:1372,1
    - Dst: meta_find_prop
      Src: /src/gpac/src/isomedia/meta.c:1377,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1379,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1384,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1386,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1389,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1390,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1394,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: 1400
      start: 1027
    functionDepth: 5
    functionLinenumber: 1027
    functionLinenumberEnd: 1400
    functionName: meta_process_image_properties
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_cenc_validate_key_info
    - gf_bs_new
    - meta_find_prop
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_list_add
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_list_pop_front
    - gf_strdup
    - gf_list_find
    - memcpy
    - gf_isom_box_array_del
    - gf_isom_box_find_child
    - gf_isom_clone_config_box
    - gf_list_new
    - strlen
    - gf_isom_box_array_read
    - gf_free
    - gf_isom_box_del_parent
    - gf_file_load_data
    - GF_LOG
    - meta_add_item_property_association
    - gf_list_del
    - gf_opts_get_bool
    - memset
    - gf_isom_box_equal
    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:1409,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1411,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1417,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1419,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1431,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: 1437
      start: 1402
    functionDepth: 2
    functionLinenumber: 1402
    functionLinenumberEnd: 1437
    functionName: gf_isom_meta_get_next_item_id
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    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:1453,1
    - Dst: gf_isom_get_meta
      Src: /src/gpac/src/isomedia/meta.c:1455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1460,1
    - Dst: FlushCaptureMode
      Src: /src/gpac/src/isomedia/meta.c:1465,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:1470,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:1472,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1476,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1478,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1481,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1486,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1491,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1493,1
    - Dst: gf_isom_get_sample_size
      Src: /src/gpac/src/isomedia/meta.c:1504,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1506,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1511,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1515,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1526,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1528,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1530,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1533,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1535,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/meta.c:1538,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:1539,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/meta.c:1543,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1545,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1548,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1551,1
    - Dst: meta_process_image_properties
      Src: /src/gpac/src/isomedia/meta.c:1558,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/meta.c:1566,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/isomedia/meta.c:1569,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1576,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1579,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1600,1
    - Dst: meta_add_item_property_association
      Src: /src/gpac/src/isomedia/meta.c:1604,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1610,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1614,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1615,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1622,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1624,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1625,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/meta.c:1630,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1638,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1640,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1641,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1649,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1653,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/meta.c:1657,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/meta.c:1660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1666,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1670,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1674,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1676,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1677,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/isomedia/meta.c:1678,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1684,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/meta.c:1689,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/meta.c:1690,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1691,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1713,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1717,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/meta.c:1727,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/meta.c:1730,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:1738,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:1741,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/meta.c:1747,1
    - Dst: gf_fsize
      Src: /src/gpac/src/isomedia/meta.c:1751,1
    - Dst: gf_fread
      Src: /src/gpac/src/isomedia/meta.c:1756,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/meta.c:1758,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/meta.c:1761,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/meta.c:1772,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/meta.c:1775,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/meta.c:1779,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: 1785
      start: 1439
    functionDepth: 6
    functionLinenumber: 1439
    functionLinenumberEnd: 1785
    functionName: gf_isom_add_meta_item_extended
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_isom_can_access_movie
    - gf_list_count
    - GF_SAFEALLOC
    - meta_process_image_properties
    - gf_list_add
    - gf_isom_box_new_parent
    - gf_isom_meta_add_item_ref
    - Media_CreateDataRef
    - gf_malloc
    - gf_isom_add_meta_item_memory
    - gf_isom_get_sample_info
    - gf_fopen
    - gf_list_find
    - FlushCaptureMode
    - gf_isom_box_new
    - gf_fsize
    - gf_list_get
    - gf_isom_get_meta
    - memcpy
    - gf_isom_get_sample_size
    - gf_bs_write_data
    - gf_list_new
    - Media_FindDataRef
    - gf_fclose
    - gf_isom_box_del_parent
    - GF_LOG
    - meta_add_item_property_association
    - gf_isom_sample_del
    - gf_fread
    - gf_strdup
    - memset
    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:1792,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: 1793
      start: 1787
    functionDepth: 7
    functionLinenumber: 1787
    functionLinenumberEnd: 1793
    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:1800,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: 1801
      start: 1795
    functionDepth: 7
    functionLinenumber: 1795
    functionLinenumberEnd: 1801
    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:1806,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: 1807
      start: 1803
    functionDepth: 7
    functionLinenumber: 1803
    functionLinenumberEnd: 1807
    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:1812,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: 1813
      start: 1809
    functionDepth: 7
    functionLinenumber: 1809
    functionLinenumberEnd: 1813
    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:1817,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1819,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - meta
    - prop_idx
    argTypes:
    - GF_MetaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1815
    functionDepth: 1
    functionLinenumber: 1815
    functionLinenumberEnd: 1825
    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:1829,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1831,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - meta
    - prop_idx
    argTypes:
    - GF_MetaBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1838
      start: 1827
    functionDepth: 1
    functionLinenumber: 1827
    functionLinenumberEnd: 1838
    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:1842,1
    - Dst: meta_use_item_prop_idx
      Src: /src/gpac/src/isomedia/meta.c:1845,1
    - Dst: meta_shift_item_prop_idx
      Src: /src/gpac/src/isomedia/meta.c:1847,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1848,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1849,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - meta
    argTypes:
    - GF_MetaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1853
      start: 1840
    functionDepth: 5
    functionLinenumber: 1840
    functionLinenumberEnd: 1853
    functionName: meta_cleanup_associations
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_del_parent
    - meta_use_item_prop_idx
    - meta_shift_item_prop_idx
    - gf_list_get
    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:1864,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/meta.c:1866,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/meta.c:1867,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/meta.c:1873,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: 1879
      start: 1855
    functionDepth: 1
    functionLinenumber: 1855
    functionLinenumberEnd: 1879
    functionName: meta_cleanup_item_association
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - memmove
    - strstr
    - gf_4cc_to_str
    - gf_list_get
    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:1887,1
    - Dst: gf_isom_get_meta_item_by_id
      Src: /src/gpac/src/isomedia/meta.c:1891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/meta.c:1893,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1896,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1897,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1899,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1901,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1906,1
    - Dst: iloc_entry_del
      Src: /src/gpac/src/isomedia/meta.c:1907,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1915,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1917,1
    - Dst: meta_cleanup_item_association
      Src: /src/gpac/src/isomedia/meta.c:1919,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1921,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/meta.c:1922,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1923,1
    - Dst: meta_cleanup_associations
      Src: /src/gpac/src/isomedia/meta.c:1931,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1936,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1938,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/meta.c:1947,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1956,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/meta.c:1957,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:1967,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:1969,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1986,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: 1988
      start: 1882
    functionDepth: 6
    functionLinenumber: 1882
    functionLinenumberEnd: 1988
    functionName: gf_isom_remove_meta_item
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_isom_box_del_parent
    - GF_LOG
    - gf_isom_get_meta
    - iloc_entry_del
    - meta_cleanup_item_association
    - gf_list_get
    - gf_isom_get_meta_item_by_id
    - memmove
    - meta_cleanup_associations
    - 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:1993,1
    - Dst: gf_isom_has_meta_xml
      Src: /src/gpac/src/isomedia/meta.c:1996,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/meta.c:1998,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:1999,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: 2003
      start: 1990
    functionDepth: 5
    functionLinenumber: 1990
    functionLinenumberEnd: 2003
    functionName: gf_isom_set_meta_primary_item
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_has_meta_xml
    - gf_isom_box_del_parent
    - gf_isom_get_meta
    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:2014,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2017,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2020,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2022,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2029,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/meta.c:2031,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/meta.c:2043,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: 2052
      start: 2008
    functionDepth: 5
    functionLinenumber: 2008
    functionLinenumberEnd: 2052
    functionName: gf_isom_meta_add_item_ref
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 4
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_meta
    - gf_list_get
    - gf_realloc
    - gf_list_add
    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:2058,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2064,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/meta.c:2068,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2075,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2076,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2084,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/meta.c:2085,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/meta.c:2098,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2116,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/meta.c:2120,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2125,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2126,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 68
    argCount: 2
    argNames:
    - movie
    - meta
    argTypes:
    - GF_ISOFile*
    - GF_MetaBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2136
      start: 2054
    functionDepth: 1
    functionLinenumber: 2054
    functionLinenumberEnd: 2136
    functionName: gf_isom_meta_restore_items_ref
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - gf_list_count
    - gf_list_enum
    - gf_isom_is_video_handler_type
    - gf_list_get
    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:2146,1
    - Dst: gf_isom_meta_get_next_item_id
      Src: /src/gpac/src/isomedia/meta.c:2150,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2154,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/meta.c:2156,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2159,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2161,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/meta.c:2168,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2175,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/meta.c:2178,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: 2184
      start: 2140
    functionDepth: 5
    functionLinenumber: 2140
    functionLinenumberEnd: 2184
    functionName: gf_isom_meta_add_item_group
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    - gf_list_new
    - gf_isom_meta_get_next_item_id
    - 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:2193,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2197,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2199,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: 2205
      start: 2188
    functionDepth: 2
    functionLinenumber: 2188
    functionLinenumberEnd: 2205
    functionName: gf_isom_meta_get_item_ref_count
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    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:2211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2217,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: 2227
      start: 2206
    functionDepth: 2
    functionLinenumber: 2206
    functionLinenumberEnd: 2227
    functionName: gf_isom_meta_item_has_ref
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    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:2234,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/meta.c:2238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/meta.c:2240,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: 2247
      start: 2229
    functionDepth: 2
    functionLinenumber: 2229
    functionLinenumberEnd: 2247
    functionName: gf_isom_meta_get_item_ref_id
    functionSourceFile: /src/gpac/src/isomedia/meta.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_isom_get_meta
    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:40,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - trace
    - data
    - dataLength
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 44
    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:49,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - trace
    - data
    - dataLength
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 53
    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:59,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
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:64,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: 65
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 65
    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:74,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:77,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:80,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:83,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:86,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:91,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 3
    argNames:
    - trace
    - data
    - dataLength
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 95
    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:104,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:107,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:110,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: 114
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 114
    functionName: gf_isom_box_array_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_dump_ex
    - gf_list_enum
    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:129,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/box_dump.c:131,1
    - Dst: strrchr
      Src: /src/gpac/src/isomedia/box_dump.c:132,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:135,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:142,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:152,1
    - Dst: gf_isom_box_is_file_level
      Src: /src/gpac/src/isomedia/box_dump.c:155,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:156,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:156,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:158,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:160,1
    - Dst: gf_isom_dump_js_cleanup
      Src: /src/gpac/src/isomedia/box_dump.c:163,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: 166
      start: 121
    functionDepth: 2
    functionLinenumber: 121
    functionLinenumberEnd: 166
    functionName: gf_isom_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_is_file_level
    - gf_list_enum
    - gf_isom_dump_js_cleanup
    - gf_isom_box_dump_ex
    - strrchr
    - gf_fprintf
    - gf_4cc_to_str
    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:176,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:178,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:179,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:181,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:184,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:186,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 168
    functionDepth: 3
    functionLinenumber: 168
    functionLinenumberEnd: 189
    functionName: reftype_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - GF_4CC
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:200,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:201,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:202,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:204,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:207,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:209,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 191
    functionDepth: 3
    functionLinenumber: 191
    functionLinenumberEnd: 213
    functionName: ireftype_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - GF_4CC
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:218,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:219,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 215
    functionDepth: 3
    functionLinenumber: 215
    functionLinenumberEnd: 222
    functionName: free_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
    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:226,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:227,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 224
    functionDepth: 3
    functionLinenumber: 224
    functionLinenumberEnd: 230
    functionName: wide_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
    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:240,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:241,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:244,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:246,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 232
    functionDepth: 3
    functionLinenumber: 232
    functionLinenumberEnd: 249
    functionName: mdat_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
    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:254,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:256,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:257,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 251
    functionDepth: 3
    functionLinenumber: 251
    functionLinenumberEnd: 260
    functionName: moov_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:273,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 262
    functionDepth: 3
    functionLinenumber: 262
    functionLinenumberEnd: 277
    functionName: mvhd_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:289,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 279
    functionDepth: 3
    functionLinenumber: 279
    functionLinenumberEnd: 292
    functionName: mdhd_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
    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:296,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:297,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 294
    functionDepth: 3
    functionLinenumber: 294
    functionLinenumberEnd: 300
    functionName: vmhd_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
    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:305,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:306,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 302
    functionDepth: 3
    functionLinenumber: 302
    functionLinenumberEnd: 310
    functionName: gmin_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
    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:322,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:331,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:332,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 312
    functionDepth: 3
    functionLinenumber: 312
    functionLinenumberEnd: 334
    functionName: clef_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
    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:338,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:339,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 336
    functionDepth: 3
    functionLinenumber: 336
    functionLinenumberEnd: 342
    functionName: smhd_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:354,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 344
    functionDepth: 3
    functionLinenumber: 344
    functionLinenumberEnd: 358
    functionName: hmhd_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
    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:362,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:363,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 360
    functionDepth: 3
    functionLinenumber: 360
    functionLinenumberEnd: 366
    functionName: nmhd_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
    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:370,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:371,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 368
    functionDepth: 3
    functionLinenumber: 368
    functionLinenumberEnd: 374
    functionName: stbl_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
    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:378,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:379,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 376
    functionDepth: 3
    functionLinenumber: 376
    functionLinenumberEnd: 382
    functionName: dinf_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
    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:388,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:390,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:392,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:394,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:397,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:399,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:403,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 384
    functionDepth: 3
    functionLinenumber: 384
    functionLinenumberEnd: 405
    functionName: url_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:415,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:417,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 407
    functionDepth: 3
    functionLinenumber: 407
    functionLinenumberEnd: 419
    functionName: urn_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
    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:424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:425,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 421
    functionDepth: 3
    functionLinenumber: 421
    functionLinenumberEnd: 429
    functionName: alis_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
    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:436,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:437,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 431
    functionDepth: 3
    functionLinenumber: 431
    functionLinenumberEnd: 440
    functionName: cprt_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
    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:447,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:448,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 442
    functionDepth: 3
    functionLinenumber: 442
    functionLinenumberEnd: 451
    functionName: kind_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
    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:456,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:458,1
    - Dst: gf_fputc
      Src: /src/gpac/src/isomedia/box_dump.c:459,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - trace
    - name
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 461
    functionName: dump_escape_string
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_fputc
    - strlen
    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:467,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:468,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:474,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:475,1
    - Dst: dump_escape_string
      Src: /src/gpac/src/isomedia/box_dump.c:476,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:477,1
    - Dst: gf_format_duration
      Src: /src/gpac/src/isomedia/box_dump.c:477,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:480,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/isomedia/box_dump.c:483,1
    - Dst: dump_escape_string
      Src: /src/gpac/src/isomedia/box_dump.c:484,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:487,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 463
    functionDepth: 3
    functionLinenumber: 463
    functionLinenumberEnd: 489
    functionName: chpl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_format_duration
    - dump_escape_string
    - gf_sys_is_cov_mode
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_list_get
    - gf_fprintf
    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:495,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:496,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:500,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:503,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:505,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 491
    functionDepth: 3
    functionLinenumber: 491
    functionLinenumberEnd: 507
    functionName: pdin_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
    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:512,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:513,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:514,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:514,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:516,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:516,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:518,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:519,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:520,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:522,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:523,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 509
    functionDepth: 3
    functionLinenumber: 509
    functionLinenumberEnd: 525
    functionName: hdlr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - dump_data
    - strlen
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_4cc_to_str
    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:532,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:533,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/isomedia/box_dump.c:537,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:539,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:542,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 527
    functionDepth: 3
    functionLinenumber: 527
    functionLinenumberEnd: 546
    functionName: iods_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_odf_dump_desc
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:553,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:554,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:556,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:558,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 548
    functionDepth: 3
    functionLinenumber: 548
    functionLinenumberEnd: 560
    functionName: trak_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
    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:567,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:568,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:570,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:572,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 562
    functionDepth: 3
    functionLinenumber: 562
    functionLinenumberEnd: 574
    functionName: mp4s_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
    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:700,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:702,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:705,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:706,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:716,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:718,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:719,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:720,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:722,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:726,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:727,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 136
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 577
    functionDepth: 3
    functionLinenumber: 577
    functionLinenumberEnd: 729
    functionName: video_sample_entry_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - isalnum
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - strlen
    - gf_fprintf
    - gf_4cc_to_str
    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:734,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:736,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:744,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:746,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:749,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:751,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:758,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:763,1
    - Dst: gf_bs_new
      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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:768,1
    - Dst: gf_bs_read_u32
      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_double
      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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:775,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:775,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:776,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 2
    argNames:
    - p
    - trace
    argTypes:
    - GF_AudioSampleEntryBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 732
    functionDepth: 1
    functionLinenumber: 732
    functionLinenumberEnd: 779
    functionName: base_audio_entry_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_double
    - gf_bs_new
    - gf_bs_del
    - gf_fprintf
    - gf_bs_read_u32
    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:851,1
    - Dst: base_audio_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:852,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:853,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:856,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:858,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 72
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 781
    functionDepth: 3
    functionLinenumber: 781
    functionLinenumberEnd: 860
    functionName: audio_sample_entry_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - base_audio_entry_dump
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:876,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:877,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:878,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 862
    functionDepth: 3
    functionLinenumber: 862
    functionLinenumberEnd: 880
    functionName: gen_sample_entry_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
    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:887,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:891,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_dump.c:892,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_dump.c:893,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/box_dump.c:895,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_dump.c:897,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_dump.c:898,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:900,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:902,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:903,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:904,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_dump.c:905,1
    - Dst: gf_isom_box_dump_ex
      Src: /src/gpac/src/isomedia/box_dump.c:906,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_dump.c:907,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:910,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:911,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_dump.c:914,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 3
    argNames:
    - data
    - data_size
    - trace
    argTypes:
    - u8*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 882
    functionDepth: 4
    functionLinenumber: 882
    functionLinenumberEnd: 915
    functionName: gnr_dump_exts
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_del
    - gf_list_pop_front
    - gf_isom_box_parse
    - dump_data_attribute
    - gf_bs_new
    - gf_isom_box_dump_ex
    - gf_bs_del
    - gf_bs_set_cookie
    - gf_list_new
    - gf_fprintf
    - gf_list_add
    - gf_bs_available
    - gf_isom_box_array_del
    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:924,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:926,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:927,1
    - Dst: gnr_dump_exts
      Src: /src/gpac/src/isomedia/box_dump.c:929,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:931,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 917
    functionDepth: 5
    functionLinenumber: 917
    functionLinenumberEnd: 933
    functionName: gnrm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gnr_dump_exts
    - GF_4CC
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:942,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:944,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:945,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:946,1
    - Dst: gnr_dump_exts
      Src: /src/gpac/src/isomedia/box_dump.c:949,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:951,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 935
    functionDepth: 5
    functionLinenumber: 935
    functionLinenumberEnd: 953
    functionName: gnrv_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gnr_dump_exts
    - GF_4CC
    - isalnum
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:962,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:964,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:965,1
    - Dst: gnr_dump_exts
      Src: /src/gpac/src/isomedia/box_dump.c:969,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:971,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 955
    functionDepth: 5
    functionLinenumber: 955
    functionLinenumberEnd: 973
    functionName: gnra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gnr_dump_exts
    - GF_4CC
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:977,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:978,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:979,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 975
    functionDepth: 3
    functionLinenumber: 975
    functionLinenumberEnd: 981
    functionName: edts_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
    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:990,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:991,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:994,1
    - Dst: gf_isom_box_array_dump
      Src: /src/gpac/src/isomedia/box_dump.c:995,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:997,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 983
    functionDepth: 3
    functionLinenumber: 983
    functionLinenumberEnd: 999
    functionName: udta_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_dump
    - gf_list_enum
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:1004,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1005,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1006,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 1001
    functionDepth: 3
    functionLinenumber: 1001
    functionLinenumberEnd: 1008
    functionName: dref_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
    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:1013,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1015,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1016,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1017,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 1010
    functionDepth: 3
    functionLinenumber: 1010
    functionLinenumberEnd: 1019
    functionName: stsd_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
    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:1030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1031,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1035,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1039,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1041,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1043,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1021
    functionDepth: 3
    functionLinenumber: 1021
    functionLinenumberEnd: 1045
    functionName: stts_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
    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:1056,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1057,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1061,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1065,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1067,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1069,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1071
      start: 1047
    functionDepth: 3
    functionLinenumber: 1047
    functionLinenumberEnd: 1071
    functionName: ctts_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
    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:1078,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1079,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1073
    functionDepth: 3
    functionLinenumber: 1073
    functionLinenumberEnd: 1082
    functionName: cslg_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
    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:1087,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1088,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1089,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 1084
    functionDepth: 3
    functionLinenumber: 1084
    functionLinenumberEnd: 1091
    functionName: ccst_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
    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:1100,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1101,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:1101,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:1103,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1104,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1107,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1093
    functionDepth: 3
    functionLinenumber: 1093
    functionLinenumberEnd: 1111
    functionName: stsh_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:1120,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1121,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:1121,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:1124,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1128,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1130,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1133,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1135,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1137
      start: 1113
    functionDepth: 3
    functionLinenumber: 1113
    functionLinenumberEnd: 1137
    functionName: elst_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:1148,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1149,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1153,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1161,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1163,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1165,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1139
    functionDepth: 3
    functionLinenumber: 1139
    functionLinenumberEnd: 1167
    functionName: stsc_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
    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:1178,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1181,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1184,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1187,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1190,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1192,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1196,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1199,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1204,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1206,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1169
    functionDepth: 3
    functionLinenumber: 1169
    functionLinenumberEnd: 1208
    functionName: stsz_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
    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:1219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1220,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1223,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1226,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1230,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1232,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 1210
    functionDepth: 3
    functionLinenumber: 1210
    functionLinenumberEnd: 1234
    functionName: stco_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
    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:1253,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1254,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1261,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1265,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1267,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1236
    functionDepth: 3
    functionLinenumber: 1236
    functionLinenumberEnd: 1269
    functionName: stss_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
    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:1280,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1281,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1284,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1287,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1291,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1293,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1271
    functionDepth: 3
    functionLinenumber: 1271
    functionLinenumberEnd: 1295
    functionName: stdp_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
    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:1306,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1315,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1323,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1332,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1341,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1350,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1354,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1356,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 82
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1297
    functionDepth: 3
    functionLinenumber: 1297
    functionLinenumberEnd: 1358
    functionName: sdtp_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
    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:1369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1370,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1373,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1376,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1379,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1381,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1360
    functionDepth: 3
    functionLinenumber: 1360
    functionLinenumberEnd: 1383
    functionName: co64_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
    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:1390,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1391,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/isomedia/box_dump.c:1395,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1397,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1400,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1402,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1404
      start: 1385
    functionDepth: 3
    functionLinenumber: 1385
    functionLinenumberEnd: 1404
    functionName: esds_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_odf_dump_desc
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:1408,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1409,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1406
    functionDepth: 3
    functionLinenumber: 1406
    functionLinenumberEnd: 1412
    functionName: minf_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
    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:1418,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1420,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1423,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1425,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:1428,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1430,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1434,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1437,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1414
    functionDepth: 3
    functionLinenumber: 1414
    functionLinenumberEnd: 1439
    functionName: tkhd_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
    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:1443,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1444,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1441
    functionDepth: 3
    functionLinenumber: 1441
    functionLinenumberEnd: 1447
    functionName: tref_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
    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:1451,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1452,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1455
      start: 1449
    functionDepth: 3
    functionLinenumber: 1449
    functionLinenumberEnd: 1455
    functionName: mdia_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
    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:1459,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1460,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1463
      start: 1457
    functionDepth: 3
    functionLinenumber: 1457
    functionLinenumberEnd: 1463
    functionName: mfra_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
    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:1469,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1470,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1472,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1477,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1479,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1481
      start: 1465
    functionDepth: 3
    functionLinenumber: 1465
    functionLinenumberEnd: 1481
    functionName: tfra_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
    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:1487,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1489,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1490,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1483
    functionDepth: 3
    functionLinenumber: 1483
    functionLinenumberEnd: 1492
    functionName: mfro_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
    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:1498,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1499,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1502
      start: 1495
    functionDepth: 3
    functionLinenumber: 1495
    functionLinenumberEnd: 1502
    functionName: elng_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
    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: 1508
      start: 1504
    functionDepth: 0
    functionLinenumber: 1504
    functionLinenumberEnd: 1508
    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: 1512
      start: 1508
    functionDepth: 0
    functionLinenumber: 1508
    functionLinenumberEnd: 1512
    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:1515,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1516,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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1529,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1531,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1532,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1535
      start: 1512
    functionDepth: 3
    functionLinenumber: 1512
    functionLinenumberEnd: 1535
    functionName: dump_alac
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1541,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1542,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1544,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1545,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1546,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1548,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_dump.c:1549,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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1564,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1566,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_dump.c:1567,1
    - Dst: gf_fprintf
      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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1573,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1574,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1577,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1580
      start: 1538
    functionDepth: 3
    functionLinenumber: 1538
    functionLinenumberEnd: 1580
    functionName: dump_uncc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - get_4cc_and_print
    - gf_bs_seek
    - gf_fprintf
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_bs_read_u32
    - 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:1587,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ctype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1585
    functionDepth: 1
    functionLinenumber: 1585
    functionLinenumberEnd: 1590
    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:1595,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1596,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1598,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1599,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1601,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1602,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1604,1
    - Dst: get_comp_type_name
      Src: /src/gpac/src/isomedia/box_dump.c:1604,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/box_dump.c:1606,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1608,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1609,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1612,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1614,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1615,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1592
    functionDepth: 3
    functionLinenumber: 1592
    functionLinenumberEnd: 1617
    functionName: dump_cmpd
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - get_comp_type_name
    - gf_fprintf
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_bs_read_u32
    - gf_bs_read_utf8
    - gf_bs_read_u16
    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:1628,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1629,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1632,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1633,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1634,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1636,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_dump.c:1637,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1638,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1639,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:1642,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1644,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1645,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1649,1
    - Dst: get_and_print
      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_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1652,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1653,1
    - Dst: get_comp_type_name
      Src: /src/gpac/src/isomedia/box_dump.c:1653,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1655,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_dump.c:1656,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1657,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1658,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1659,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1663,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1669,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1669,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1669,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1673,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1673,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1673,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1675,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1675,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/box_dump.c:1675,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1677,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1677,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1677,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1681,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1681,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1681,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1681,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1683,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1683,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/box_dump.c:1683,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/isomedia/box_dump.c:1683,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1686,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1686,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1686,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1686,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1689,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/box_dump.c:1689,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1692,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1694,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1697,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1698,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1699,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 65
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1624
    functionDepth: 3
    functionLinenumber: 1624
    functionLinenumberEnd: 1702
    functionName: dump_cpal
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_ARRAY_LENGTH
    - get_comp_type_name
    - gf_bs_new
    - gf_bs_read_double
    - gf_bs_del
    - gf_bs_read_int
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - snprintf
    - gf_fprintf
    - get_and_print
    - gf_bs_read_float
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_available
    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:1707,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1708,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:1713,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1715,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1717,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1720,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1721,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1722,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/isomedia/box_dump.c:1722,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1725,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1726,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1728
      start: 1704
    functionDepth: 3
    functionLinenumber: 1704
    functionLinenumberEnd: 1728
    functionName: dump_cpat
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_bs_read_float
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1733,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1734,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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1739,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1742,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1744,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1744,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1746,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1748,1
    - Dst: gf_bs_read_int
      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_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1752,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1755,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1757,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1757,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1759,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1762,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1764,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1764,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1766,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1769,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1771,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1772,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1773,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1775,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1777,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1778,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1779,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1781
      start: 1730
    functionDepth: 3
    functionLinenumber: 1730
    functionLinenumberEnd: 1781
    functionName: dump_sbpm
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - get_and_print
    - gf_bs_read_u32
    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:1786,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1787,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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1792,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1793,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1794,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1797
      start: 1783
    functionDepth: 3
    functionLinenumber: 1783
    functionLinenumberEnd: 1797
    functionName: dump_cloc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1802,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1803,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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1809,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1810,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1811,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1812,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1813,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1814,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1817
      start: 1799
    functionDepth: 3
    functionLinenumber: 1799
    functionLinenumberEnd: 1817
    functionName: dump_taic
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1822,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1823,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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1831,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1832,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1833,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1834,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1836
      start: 1819
    functionDepth: 3
    functionLinenumber: 1819
    functionLinenumberEnd: 1836
    functionName: dump_itai
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1841,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1842,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1845,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1846,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1847,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1849,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1850,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1851,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1852,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1855
      start: 1838
    functionDepth: 3
    functionLinenumber: 1838
    functionLinenumberEnd: 1855
    functionName: dump_cmpc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - get_4cc_and_print
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1860,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1861,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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1868,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1869,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1870,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1871,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1873
      start: 1857
    functionDepth: 3
    functionLinenumber: 1857
    functionLinenumberEnd: 1873
    functionName: dump_fpac
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1879,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1880,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1882,1
    - Dst: get_4cc_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1883,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/isomedia/box_dump.c:1884,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1886,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:1887,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1889,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_dump.c:1890,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:1891,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1892,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1893,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1894,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1896
      start: 1876
    functionDepth: 3
    functionLinenumber: 1876
    functionLinenumberEnd: 1896
    functionName: dump_gmcc
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_free
    - get_4cc_and_print
    - gf_fprintf
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - dump_data_attribute
    - gf_bs_read_utf8
    - 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:1901,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1902,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1905,1
    - Dst: get_and_print
      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_int
      Src: /src/gpac/src/isomedia/box_dump.c:1909,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1910,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1911,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1916,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_dump.c:1918,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1920,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_dump.c:1922,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_dump.c:1925,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:1927,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_dump.c:1929,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:1931,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_dump.c:1933,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1936,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1938,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1941,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1942,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 46
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1898
    functionDepth: 3
    functionLinenumber: 1898
    functionLinenumberEnd: 1944
    functionName: dump_icef
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gf_fprintf
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_bs_read_u32
    - get_and_print
    - gf_bs_read_u16
    - 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:1950,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:1951,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1953,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1954,1
    - Dst: gf_bs_read_int
      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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1957,1
    - Dst: gf_bs_read_int
      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: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1963,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:1964,1
    - Dst: get_and_print
      Src: /src/gpac/src/isomedia/box_dump.c:1965,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_dump.c:1967,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:1968,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1970,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:1971,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:1972,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:1973,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 2
    argNames:
    - u
    - trace
    argTypes:
    - GF_UnknownBox*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1975
      start: 1946
    functionDepth: 3
    functionLinenumber: 1946
    functionLinenumberEnd: 1975
    functionName: dump_dvc1
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - 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:1989,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:1992,1
    - Dst: dump_alac
      Src: /src/gpac/src/isomedia/box_dump.c:1996,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:1997,1
    - Dst: dump_uncc
      Src: /src/gpac/src/isomedia/box_dump.c:1998,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:1999,1
    - Dst: dump_cmpd
      Src: /src/gpac/src/isomedia/box_dump.c:2000,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2001,1
    - Dst: dump_cpal
      Src: /src/gpac/src/isomedia/box_dump.c:2002,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2003,1
    - Dst: dump_cpat
      Src: /src/gpac/src/isomedia/box_dump.c:2004,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2005,1
    - Dst: dump_cloc
      Src: /src/gpac/src/isomedia/box_dump.c:2006,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2007,1
    - Dst: dump_sbpm
      Src: /src/gpac/src/isomedia/box_dump.c:2008,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2009,1
    - Dst: dump_taic
      Src: /src/gpac/src/isomedia/box_dump.c:2010,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2011,1
    - Dst: dump_itai
      Src: /src/gpac/src/isomedia/box_dump.c:2012,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2013,1
    - Dst: dump_fpac
      Src: /src/gpac/src/isomedia/box_dump.c:2014,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2015,1
    - Dst: dump_gmcc
      Src: /src/gpac/src/isomedia/box_dump.c:2016,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2017,1
    - Dst: dump_dvc1
      Src: /src/gpac/src/isomedia/box_dump.c:2018,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2019,1
    - Dst: dump_cmpc
      Src: /src/gpac/src/isomedia/box_dump.c:2020,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:2021,1
    - Dst: dump_icef
      Src: /src/gpac/src/isomedia/box_dump.c:2022,1
    - Dst: gf_isom_box_dump_start_ex
      Src: /src/gpac/src/isomedia/box_dump.c:2036,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2037,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2038,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/isomedia/box_dump.c:2042,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2045,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2045,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/isomedia/box_dump.c:2046,1
    - Dst: dump_js_data
      Src: /src/gpac/src/isomedia/box_dump.c:2047,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2054,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2058,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2060,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2061,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:2063,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2066,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2067,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 89
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2069
      start: 1982
    functionDepth: 4
    functionLinenumber: 1982
    functionLinenumberEnd: 2069
    functionName: unkn_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_taic
    - snprintf
    - dump_data_attribute
    - dump_itai
    - gf_isom_box_dump_start_ex
    - dump_alac
    - dump_icef
    - dump_cmpd
    - gf_isom_box_dump_start
    - dump_cloc
    - dump_dvc1
    - gf_file_exists
    - dump_uncc
    - dump_cpal
    - dump_cmpc
    - dump_gmcc
    - gf_fprintf
    - dump_sbpm
    - dump_cpat
    - dump_js_data
    - GF_4CC
    - dump_fpac
    - gf_isom_box_dump_done
    - gf_opts_get_key
    - gf_4cc_to_str
    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:2073,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2074,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2075,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2077
      start: 2071
    functionDepth: 3
    functionLinenumber: 2071
    functionLinenumberEnd: 2077
    functionName: uuid_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
    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:2081,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2082,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2083,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2085
      start: 2079
    functionDepth: 3
    functionLinenumber: 2079
    functionLinenumberEnd: 2085
    functionName: void_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
    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:2093,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2094,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2094,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2097,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2097,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2100,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2104
      start: 2087
    functionDepth: 3
    functionLinenumber: 2087
    functionLinenumberEnd: 2104
    functionName: ftyp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:2112,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2113,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2115,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2118,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2122
      start: 2106
    functionDepth: 3
    functionLinenumber: 2106
    functionLinenumberEnd: 2122
    functionName: padb_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
    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:2130,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2131,1
    - Dst: gf_4cc_to_str
      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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2133,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2134,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2137,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2138,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2138,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2139,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2142,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2143,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2143,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2144,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2147,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2148,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2148,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2149,1
    - Dst: gf_isom_box_dump_start
      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_4cc_to_str
      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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2155,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2156,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 36
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2162
      start: 2124
    functionDepth: 3
    functionLinenumber: 2124
    functionLinenumberEnd: 2162
    functionName: gppc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:2186,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2187,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2188,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2190,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:2195,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2198,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:2201,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:2205,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2207,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2208,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2212,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2216,1
    - Dst: gf_avcc_use_extensions
      Src: /src/gpac/src/isomedia/box_dump.c:2219,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2220,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/isomedia/box_dump.c:2220,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2224,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2226,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2228,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2229,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2230,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2231,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2233,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2235,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2236,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2237,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2238,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2242,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2244,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2245,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2246,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2247,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2251,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2253,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 67
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2255
      start: 2165
    functionDepth: 3
    functionLinenumber: 2165
    functionLinenumberEnd: 2255
    functionName: avcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_list_count
    - gf_list_get
    - gf_avcc_use_extensions
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_avc_hevc_get_chroma_format_name
    - gf_fprintf
    - dump_data
    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:2275,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2276,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2277,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2281,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2283,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2285,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2287,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2290,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:2296,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2298,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:2303,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:2314,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:2317,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2320,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/isomedia/box_dump.c:2321,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2323,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2325,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2328,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2329,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2332,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2333,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2335,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2337,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2340,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2342,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 68
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2344
      start: 2257
    functionDepth: 3
    functionLinenumber: 2257
    functionLinenumberEnd: 2344
    functionName: hvcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_list_count
    - gf_list_get
    - gf_isom_box_dump_start
    - dump_data
    - gf_avc_hevc_get_chroma_format_name
    - gf_fprintf
    - 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:2352,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:2353,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2354,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2358,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:2362,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:2368,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2370,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2374,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2377,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/isomedia/box_dump.c:2378,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:2383,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2385,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:2386,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2387,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2389,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2391,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2393,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2396,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2397,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2398,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2400,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2401,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2403,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2405,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2408,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2410,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 48
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2412
      start: 2346
    functionDepth: 3
    functionLinenumber: 2346
    functionLinenumberEnd: 2412
    functionName: vvcc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_list_count
    - gf_list_get
    - gf_isom_box_dump_start
    - dump_data
    - gf_avc_hevc_get_chroma_format_name
    - gf_fprintf
    - 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:2419,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2420,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2423
      start: 2415
    functionDepth: 3
    functionLinenumber: 2415
    functionLinenumberEnd: 2423
    functionName: vvnc_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
    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:2428,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2430,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2435,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2438,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2439,1
    - Dst: gf_av1_get_obu_name
      Src: /src/gpac/src/isomedia/box_dump.c:2439,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2440,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2441,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2443,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2445,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2447
      start: 2426
    functionDepth: 2
    functionLinenumber: 2426
    functionLinenumberEnd: 2447
    functionName: av1c_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_av1_get_obu_name
    - dump_data
    - gf_list_get
    - gf_fprintf
    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:2452,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2454,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:2464,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2466,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2470
      start: 2450
    functionDepth: 1
    functionLinenumber: 2450
    functionLinenumberEnd: 2470
    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:2475,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2477,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:2478,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2479,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2483
      start: 2473
    functionDepth: 2
    functionLinenumber: 2473
    functionLinenumberEnd: 2483
    functionName: av3c_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - dump_data
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2499,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2500,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2502
      start: 2486
    functionDepth: 3
    functionLinenumber: 2486
    functionLinenumberEnd: 2502
    functionName: SmDm_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
    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:2507,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2508,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2511
      start: 2504
    functionDepth: 3
    functionLinenumber: 2504
    functionLinenumberEnd: 2511
    functionName: CoLL_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
    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:2518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2519,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:2522,1
    - Dst: gf_odf_dump_desc
      Src: /src/gpac/src/isomedia/box_dump.c:2524,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2526,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2529,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2531
      start: 2513
    functionDepth: 3
    functionLinenumber: 2513
    functionLinenumberEnd: 2531
    functionName: m4ds_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_odf_dump_desc
    - gf_list_enum
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:2536,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2537,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2540
      start: 2533
    functionDepth: 3
    functionLinenumber: 2533
    functionLinenumberEnd: 2540
    functionName: btrt_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
    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:2546,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2547,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2549,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2552,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2554,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2556
      start: 2542
    functionDepth: 3
    functionLinenumber: 2542
    functionLinenumberEnd: 2556
    functionName: ftab_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
    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:2560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - trace
    - name
    - col
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2561
      start: 2558
    functionDepth: 1
    functionLinenumber: 2558
    functionLinenumberEnd: 2561
    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:2564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - trace
    - name
    - col
    argTypes:
    - FILE*
    - char*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2565
      start: 2562
    functionDepth: 1
    functionLinenumber: 2562
    functionLinenumberEnd: 2565
    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:2568,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - trace
    - rec
    argTypes:
    - FILE*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2569
      start: 2566
    functionDepth: 1
    functionLinenumber: 2566
    functionLinenumberEnd: 2569
    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:2572,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2574,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:2578,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2580,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:2581,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2582,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - trace
    - rec
    argTypes:
    - FILE*
    - GF_StyleRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2583
      start: 2570
    functionDepth: 2
    functionLinenumber: 2570
    functionLinenumberEnd: 2583
    functionName: tx3g_dump_style
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - tx3g_dump_rgba8
    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:2588,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2589,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:2592,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2593,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2594,1
    - Dst: tx3g_dump_box
      Src: /src/gpac/src/isomedia/box_dump.c:2595,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2596,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2598,1
    - Dst: tx3g_dump_style
      Src: /src/gpac/src/isomedia/box_dump.c:2599,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2600,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2601,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2603
      start: 2585
    functionDepth: 3
    functionLinenumber: 2585
    functionLinenumberEnd: 2603
    functionName: tx3g_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_dump_box
    - tx3g_dump_rgba8
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_fprintf
    - 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:2608,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2609,1
    - Dst: gf_fprintf
      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: tx3g_dump_rgb16
      Src: /src/gpac/src/isomedia/box_dump.c:2614,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2615,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2617,1
    - Dst: tx3g_dump_box
      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
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2620,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2622
      start: 2605
    functionDepth: 3
    functionLinenumber: 2605
    functionLinenumberEnd: 2622
    functionName: text_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_dump_box
    - gf_isom_box_dump_start
    - tx3g_dump_rgb16
    - gf_isom_box_dump_done
    - gf_fprintf
    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:2628,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2629,1
    - Dst: tx3g_dump_style
      Src: /src/gpac/src/isomedia/box_dump.c:2630,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2632,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2636
      start: 2624
    functionDepth: 3
    functionLinenumber: 2624
    functionLinenumberEnd: 2636
    functionName: styl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - tx3g_dump_style
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:2640,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2641,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2644
      start: 2637
    functionDepth: 3
    functionLinenumber: 2637
    functionLinenumberEnd: 2644
    functionName: hlit_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
    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:2648,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:2649,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2650,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2653
      start: 2645
    functionDepth: 3
    functionLinenumber: 2645
    functionLinenumberEnd: 2653
    functionName: hclr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - tx3g_dump_rgba8
    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:2659,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2660,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2662,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2665,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2667,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2655
    functionDepth: 3
    functionLinenumber: 2655
    functionLinenumberEnd: 2669
    functionName: krok_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
    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:2673,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2674,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2677
      start: 2670
    functionDepth: 3
    functionLinenumber: 2670
    functionLinenumberEnd: 2677
    functionName: dlay_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
    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:2681,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2682,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2685
      start: 2678
    functionDepth: 3
    functionLinenumber: 2678
    functionLinenumberEnd: 2685
    functionName: href_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
    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:2689,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2690,1
    - Dst: tx3g_dump_box
      Src: /src/gpac/src/isomedia/box_dump.c:2691,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2692,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2694
      start: 2686
    functionDepth: 3
    functionLinenumber: 2686
    functionLinenumberEnd: 2694
    functionName: tbox_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - tx3g_dump_box
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:2698,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2699,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2702
      start: 2695
    functionDepth: 3
    functionLinenumber: 2695
    functionLinenumberEnd: 2702
    functionName: blnk_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
    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:2706,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2707,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2708,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2703
    functionDepth: 3
    functionLinenumber: 2703
    functionLinenumberEnd: 2710
    functionName: twrp_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
    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:2716,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2717,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2720
      start: 2713
    functionDepth: 2
    functionLinenumber: 2713
    functionLinenumberEnd: 2720
    functionName: meta_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start_ex
    - gf_isom_box_dump_done
    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:2727,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2728,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2729,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:2731,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/isomedia/box_dump.c:2732,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2734,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2735,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2737
      start: 2723
    functionDepth: 3
    functionLinenumber: 2723
    functionLinenumberEnd: 2737
    functionName: xml_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_fwrite
    - gf_fprintf
    - 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:2743,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2744,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2747
      start: 2740
    functionDepth: 3
    functionLinenumber: 2740
    functionLinenumberEnd: 2747
    functionName: bxml_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
    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:2753,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2754,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2750
    functionDepth: 3
    functionLinenumber: 2750
    functionLinenumberEnd: 2757
    functionName: pitm_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
    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:2761,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2762,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2763,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2765
      start: 2759
    functionDepth: 3
    functionLinenumber: 2759
    functionLinenumberEnd: 2765
    functionName: ipro_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
    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:2770,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2771,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:2771,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2774
      start: 2767
    functionDepth: 3
    functionLinenumber: 2767
    functionLinenumberEnd: 2774
    functionName: infe_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:2778,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2779,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2782
      start: 2776
    functionDepth: 3
    functionLinenumber: 2776
    functionLinenumberEnd: 2782
    functionName: iinf_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
    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:2788,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2789,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2790,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2792,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:2793,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2794,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:2796,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2797,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2799,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2804,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2806,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2808
      start: 2784
    functionDepth: 3
    functionLinenumber: 2784
    functionLinenumberEnd: 2808
    functionName: iloc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    - gf_fprintf
    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:2812,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2813,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2816
      start: 2810
    functionDepth: 3
    functionLinenumber: 2810
    functionLinenumberEnd: 2816
    functionName: iref_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
    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:2821,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2822,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2825
      start: 2818
    functionDepth: 3
    functionLinenumber: 2818
    functionLinenumberEnd: 2825
    functionName: hinf_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
    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:2830,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2831,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2834
      start: 2827
    functionDepth: 3
    functionLinenumber: 2827
    functionLinenumberEnd: 2834
    functionName: trpy_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
    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:2841,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2842,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2845
      start: 2836
    functionDepth: 3
    functionLinenumber: 2836
    functionLinenumberEnd: 2845
    functionName: totl_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
    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:2852,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2853,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2854,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2856
      start: 2847
    functionDepth: 3
    functionLinenumber: 2847
    functionLinenumberEnd: 2856
    functionName: nump_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
    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:2862,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2863,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2866
      start: 2858
    functionDepth: 3
    functionLinenumber: 2858
    functionLinenumberEnd: 2866
    functionName: npck_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
    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:2872,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2873,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2876
      start: 2868
    functionDepth: 3
    functionLinenumber: 2868
    functionLinenumberEnd: 2876
    functionName: tpyl_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
    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:2882,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2883,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2886
      start: 2878
    functionDepth: 3
    functionLinenumber: 2878
    functionLinenumberEnd: 2886
    functionName: tpay_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
    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:2892,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2893,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2896
      start: 2888
    functionDepth: 3
    functionLinenumber: 2888
    functionLinenumberEnd: 2896
    functionName: maxr_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
    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:2903,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2904,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2905,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2907
      start: 2898
    functionDepth: 3
    functionLinenumber: 2898
    functionLinenumberEnd: 2907
    functionName: dmed_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
    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:2913,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2914,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2915,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2917
      start: 2909
    functionDepth: 3
    functionLinenumber: 2909
    functionLinenumberEnd: 2917
    functionName: dimm_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
    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:2923,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2924,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2925,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2927
      start: 2919
    functionDepth: 3
    functionLinenumber: 2919
    functionLinenumberEnd: 2927
    functionName: drep_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
    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:2932,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2933,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2934,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2936
      start: 2929
    functionDepth: 3
    functionLinenumber: 2929
    functionLinenumberEnd: 2936
    functionName: tssy_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
    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:2941,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2942,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2945
      start: 2938
    functionDepth: 3
    functionLinenumber: 2938
    functionLinenumberEnd: 2945
    functionName: rssr_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
    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:2951,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2952,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2953,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2955
      start: 2947
    functionDepth: 3
    functionLinenumber: 2947
    functionLinenumberEnd: 2955
    functionName: tmin_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
    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:2961,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2962,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2957
    functionDepth: 3
    functionLinenumber: 2957
    functionLinenumberEnd: 2965
    functionName: tmax_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
    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:2971,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2972,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2973,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2975
      start: 2967
    functionDepth: 3
    functionLinenumber: 2967
    functionLinenumberEnd: 2975
    functionName: pmax_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
    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:2981,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2982,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2983,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2985
      start: 2977
    functionDepth: 3
    functionLinenumber: 2977
    functionLinenumberEnd: 2985
    functionName: dmax_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
    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:2991,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:2992,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:2993,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2995
      start: 2987
    functionDepth: 3
    functionLinenumber: 2987
    functionLinenumberEnd: 2995
    functionName: payt_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
    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:3001,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3002,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3005
      start: 2997
    functionDepth: 3
    functionLinenumber: 2997
    functionLinenumberEnd: 3005
    functionName: name_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
    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:3011,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3012,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3013,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3015
      start: 3007
    functionDepth: 3
    functionLinenumber: 3007
    functionLinenumberEnd: 3015
    functionName: rely_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
    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:3021,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3022,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3023,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3025
      start: 3017
    functionDepth: 3
    functionLinenumber: 3017
    functionLinenumberEnd: 3025
    functionName: snro_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
    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:3031,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3032,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3033,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3035
      start: 3027
    functionDepth: 3
    functionLinenumber: 3027
    functionLinenumberEnd: 3035
    functionName: tims_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
    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:3041,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3042,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3043,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3037
    functionDepth: 3
    functionLinenumber: 3037
    functionLinenumberEnd: 3045
    functionName: tsro_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
    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:3067,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3068,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3070,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3072,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3074,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3076,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3078
      start: 3048
    functionDepth: 3
    functionLinenumber: 3048
    functionLinenumberEnd: 3078
    functionName: ghnt_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
    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:3082,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3083,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3086
      start: 3080
    functionDepth: 3
    functionLinenumber: 3080
    functionLinenumberEnd: 3086
    functionName: hnti_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
    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:3091,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3092,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3094,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3095,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3097
      start: 3088
    functionDepth: 3
    functionLinenumber: 3088
    functionLinenumberEnd: 3097
    functionName: sdp_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
    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:3102,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3103,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:3103,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3105,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3106,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3108
      start: 3099
    functionDepth: 3
    functionLinenumber: 3099
    functionLinenumberEnd: 3108
    functionName: rtp_hnti_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:3114,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3115,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3118
      start: 3110
    functionDepth: 3
    functionLinenumber: 3110
    functionLinenumberEnd: 3118
    functionName: rtpo_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
    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:3124,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3125,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3128
      start: 3122
    functionDepth: 3
    functionLinenumber: 3122
    functionLinenumberEnd: 3128
    functionName: mvex_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
    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:3133,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3134,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3137
      start: 3130
    functionDepth: 3
    functionLinenumber: 3130
    functionLinenumberEnd: 3137
    functionName: mehd_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
    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:3141,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3142,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      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_DEPENDS
      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_DEPENDED
      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_REDUNDANT
      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_PAD
      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_SYNC
      Src: /src/gpac/src/isomedia/box_dump.c:3147,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3148,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/box_dump.c:3148,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 3
    argNames:
    - name
    - sample_flags
    - trace
    argTypes:
    - char*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3150
      start: 3139
    functionDepth: 1
    functionLinenumber: 3139
    functionLinenumberEnd: 3150
    functionName: sample_flags_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - GF_ISOM_GET_FRAG_REDUNDANT
    - GF_ISOM_GET_FRAG_DEG
    - GF_ISOM_GET_FRAG_DEPENDS
    - GF_ISOM_GET_FRAG_DEPENDED
    - GF_ISOM_GET_FRAG_PAD
    - GF_ISOM_GET_FRAG_SYNC
    - gf_fprintf
    - GF_ISOM_GET_FRAG_LEAD
    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: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: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3159,1
    - Dst: sample_flags_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3160,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3163
      start: 3152
    functionDepth: 3
    functionLinenumber: 3152
    functionLinenumberEnd: 3163
    functionName: trex_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - sample_flags_dump
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:3168,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3169,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3172
      start: 3165
    functionDepth: 3
    functionLinenumber: 3165
    functionLinenumberEnd: 3172
    functionName: trep_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
    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:3178,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3179,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3179,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3181,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3182,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3185
      start: 3174
    functionDepth: 3
    functionLinenumber: 3174
    functionLinenumberEnd: 3185
    functionName: moof_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_count
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:3191,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3192,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3195
      start: 3187
    functionDepth: 3
    functionLinenumber: 3187
    functionLinenumberEnd: 3195
    functionName: mfhd_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
    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:3199,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3200,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3203
      start: 3197
    functionDepth: 3
    functionLinenumber: 3197
    functionLinenumberEnd: 3203
    functionName: traf_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
    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:3209,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/box_dump.c:3209,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/box_dump.c:3209,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3211,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/box_dump.c:3212,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/box_dump.c:3212,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDED
      Src: /src/gpac/src/isomedia/box_dump.c:3212,1
    - Dst: GF_ISOM_GET_FRAG_REDUNDANT
      Src: /src/gpac/src/isomedia/box_dump.c:3212,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/box_dump.c:3212,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/box_dump.c:3212,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3214,1
    - Dst: GF_ISOM_GET_FRAG_PAD
      Src: /src/gpac/src/isomedia/box_dump.c:3215,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/box_dump.c:3215,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/box_dump.c:3215,1
    - Dst: GF_ISOM_GET_FRAG_LEAD
      Src: /src/gpac/src/isomedia/box_dump.c:3216,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDS
      Src: /src/gpac/src/isomedia/box_dump.c:3216,1
    - Dst: GF_ISOM_GET_FRAG_DEPENDED
      Src: /src/gpac/src/isomedia/box_dump.c:3216,1
    - Dst: GF_ISOM_GET_FRAG_REDUNDANT
      Src: /src/gpac/src/isomedia/box_dump.c:3216,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - trace
    - flags
    - field_idx
    argTypes:
    - FILE*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3205
    functionDepth: 1
    functionLinenumber: 3205
    functionLinenumberEnd: 3218
    functionName: frag_dump_sample_flags
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - GF_ISOM_GET_FRAG_REDUNDANT
    - GF_ISOM_GET_FRAG_DEG
    - GF_ISOM_GET_FRAG_DEPENDS
    - GF_ISOM_GET_FRAG_DEPENDED
    - GF_ISOM_GET_FRAG_PAD
    - GF_ISOM_GET_FRAG_SYNC
    - gf_fprintf
    - GF_ISOM_GET_FRAG_LEAD
    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:3224,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3225,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3228,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3230,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3234,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3238,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3241,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3244,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3246,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3248
      start: 3220
    functionDepth: 3
    functionLinenumber: 3220
    functionLinenumberEnd: 3248
    functionName: tfhd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - frag_dump_sample_flags
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:3254,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3255,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3256,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3257,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3259
      start: 3250
    functionDepth: 3
    functionLinenumber: 3250
    functionLinenumberEnd: 3259
    functionName: tfxd_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
    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: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:3268,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3270,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3272,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3274
      start: 3261
    functionDepth: 3
    functionLinenumber: 3261
    functionLinenumberEnd: 3274
    functionName: tfrf_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
    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:3288,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:3290,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3294,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3297,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3302,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3305,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3308,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3312,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3314,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:3323,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_dump.c:3323,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3327,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3331,1
    - Dst: sample_flags_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3345,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3351,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3353,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3356,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3358,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3361,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3364,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3366,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3371,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3374,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3381,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3383,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3387,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3389,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3393,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3396,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3399,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3401,1
    - Dst: frag_dump_sample_flags
      Src: /src/gpac/src/isomedia/box_dump.c:3402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3403,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3407,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:3409,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 103
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3412
      start: 3275
    functionDepth: 3
    functionLinenumber: 3275
    functionLinenumberEnd: 3412
    functionName: trun_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - sample_flags_dump
    - frag_dump_sample_flags
    - gf_isom_ctrn_field_size_bits
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:3421,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3423,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_dump.c:3425,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3426,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3429,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - tlv
    - trace
    argTypes:
    - GF_List*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3434
      start: 3417
    functionDepth: 1
    functionLinenumber: 3417
    functionLinenumberEnd: 3434
    functionName: TLV_Dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_count
    - GF_4CC
    - gf_list_get
    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:3439,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3445,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3448,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3452,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3456,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3461,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3465,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - dte
    - trace
    argTypes:
    - GF_List*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3470
      start: 3435
    functionDepth: 1
    functionLinenumber: 3435
    functionLinenumberEnd: 3470
    functionName: DTE_Dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_count
    - gf_list_get
    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:3486,1
    - Dst: IsHintTrack
      Src: /src/gpac/src/isomedia/box_dump.c:3487,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3489,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/box_dump.c:3492,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3494,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3512,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:3516,1
    - Dst: gf_isom_hint_sample_new
      Src: /src/gpac/src/isomedia/box_dump.c:3517,1
    - Dst: gf_isom_hint_sample_read
      Src: /src/gpac/src/isomedia/box_dump.c:3521,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:3522,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3524,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3526,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3529,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3534,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3539,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3543,1
    - Dst: dump_data_attribute
      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:3548,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3551,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3554,1
    - Dst: gf_isom_hint_rtp_length
      Src: /src/gpac/src/isomedia/box_dump.c:3555,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3559,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3561,1
    - Dst: TLV_Dump
      Src: /src/gpac/src/isomedia/box_dump.c:3562,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3563,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3566,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3568,1
    - Dst: DTE_Dump
      Src: /src/gpac/src/isomedia/box_dump.c:3569,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3570,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3572,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3577,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3578,1
    - Dst: gf_isom_hint_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3579,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: 3581
      start: 3473
    functionDepth: 3
    functionLinenumber: 3473
    functionLinenumberEnd: 3581
    functionName: gf_isom_dump_hint_sample
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 2
    functionsReached:
    - gf_isom_hint_sample_new
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_hint_rtp_length
    - dump_data_attribute
    - gf_bs_new
    - gf_isom_hint_sample_read
    - gf_bs_del
    - gf_isom_sample_del
    - gf_isom_hint_sample_del
    - gf_isom_get_sample
    - gf_isom_box_dump
    - gf_list_get
    - gf_fprintf
    - TLV_Dump
    - DTE_Dump
    - Media_GetSampleDesc
    - IsHintTrack
    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:3587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - trace
    - rec
    argTypes:
    - FILE*
    - GF_BoxRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3588
      start: 3585
    functionDepth: 1
    functionLinenumber: 3585
    functionLinenumberEnd: 3588
    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:3607,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: 3608
      start: 3590
    functionDepth: 1
    functionLinenumber: 3590
    functionLinenumberEnd: 3608
    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:3612,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3614,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3616,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3618,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:3622,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3624,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:3625,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3626,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: 3627
      start: 3610
    functionDepth: 2
    functionLinenumber: 3610
    functionLinenumberEnd: 3627
    functionName: tx3g_dump_style_nobox
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - tx3g_print_char_offsets
    - tx3g_dump_rgba8
    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:3638,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3640,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: 3643
      start: 3629
    functionDepth: 0
    functionLinenumber: 3629
    functionLinenumberEnd: 3643
    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:3647,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3650,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3653,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3656,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3659,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3662,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3665,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3668,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3671,1
    - Dst: tx3g_dump_rgba8
      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:3675,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:3680,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3683,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3685,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3691,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3694,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3697,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3700,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3703,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3709,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3711,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:3714,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3718,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3722,1
    - Dst: tx3g_dump_box_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3728,1
    - Dst: tx3g_dump_style_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3729,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3730,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: 3731
      start: 3645
    functionDepth: 3
    functionLinenumber: 3645
    functionLinenumberEnd: 3731
    functionName: dump_ttxt_header
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - tx3g_dump_style_nobox
    - tx3g_dump_box_nobox
    - tx3g_dump_rgba8
    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:3740,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:3740,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3744,1
    - Dst: tx3g_dump_rgba8
      Src: /src/gpac/src/isomedia/box_dump.c:3745,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3750,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3752,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3754,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3759,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:3761,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_dump.c:3766,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/isomedia/box_dump.c:3767,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/isomedia/box_dump.c:3771,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3777,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3787,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3790,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3793,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3796,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3799,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3803,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3805,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:3812,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3818,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3820,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3822,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3824,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3826,1
    - Dst: tx3g_dump_box_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3829,1
    - Dst: tx3g_dump_style_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3832,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:3837,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3839,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3845,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3846,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3847,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3852,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3853,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3854,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3858,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3859,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3860,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3869,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3873,1
    - Dst: tx3g_print_char_offsets
      Src: /src/gpac/src/isomedia/box_dump.c:3874,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3875,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3877,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3883,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: 3885
      start: 3733
    functionDepth: 3
    functionLinenumber: 3733
    functionLinenumberEnd: 3885
    functionName: dump_ttxt_sample
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - tx3g_format_time
    - gf_free
    - gf_malloc
    - gf_utf8_wcslen
    - tx3g_dump_box_nobox
    - tx3g_dump_rgba8
    - gf_list_enum
    - gf_utf8_mbstowcs
    - tx3g_dump_style_nobox
    - tx3g_print_char_offsets
    - gf_fprintf
    - memcpy
    - gf_isom_box_dump
    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:3895,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3905,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3917,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/box_dump.c:3917,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:3920,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3922,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:3926,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3928,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:3932,1
    - Dst: dump_ttxt_header
      Src: /src/gpac/src/isomedia/box_dump.c:3934,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:3936,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3937,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3940,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3943,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3946,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3949,1
    - Dst: tx3g_dump_rgb16
      Src: /src/gpac/src/isomedia/box_dump.c:3951,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:3961,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3963,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3965,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3967,1
    - Dst: tx3g_dump_box_nobox
      Src: /src/gpac/src/isomedia/box_dump.c:3969,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:3973,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:3976,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3980,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:3983,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3984,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:3985,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:3988,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3989,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:3990,1
    - Dst: dump_ttxt_sample
      Src: /src/gpac/src/isomedia/box_dump.c:3994,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4001,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4002,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4003,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4006,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:4006,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4010,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4012,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4014,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: 4016
      start: 3886
    functionDepth: 4
    functionLinenumber: 3886
    functionLinenumberEnd: 4016
    functionName: gf_isom_dump_ttxt_track
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_sample_count
    - tx3g_dump_box_nobox
    - gf_bs_new
    - gf_bs_del
    - gf_isom_get_sample
    - gf_isom_box_dump
    - gf_isom_get_track_box
    - gf_list_get
    - gf_set_progress
    - dump_ttxt_sample
    - gf_isom_delete_text_sample
    - gf_fprintf
    - dump_ttxt_header
    - gf_isom_get_track_id
    - tx3g_format_time
    - gf_isom_sample_del
    - gf_isom_parse_text_sample
    - tx3g_dump_rgb16
    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:4024,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:4029,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_dump.c:4035,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/isomedia/box_dump.c:4040,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:4071,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:4076,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4082,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/isomedia/box_dump.c:4084,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4086,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4089,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4091,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4101,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/isomedia/box_dump.c:4112,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4115,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:4124,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4128,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4130,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:4131,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: 4134
      start: 4020
    functionDepth: 1
    functionLinenumber: 4020
    functionLinenumberEnd: 4134
    functionName: dump_ttxt_sample_srt
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_utf8_mbstowcs
    - gf_utf8_wcstombs
    - gf_color_get_name
    - gf_fprintf
    - memcpy
    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:4146,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4147,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4147,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4149,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4150,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4150,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: 4151
      start: 4141
    functionDepth: 1
    functionLinenumber: 4141
    functionLinenumberEnd: 4151
    functionName: vttmx_timestamp_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_bs_write_data
    - strlen
    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:4158,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4158,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4159,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4162,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4163,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4165,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/box_dump.c:4168,1
    - Dst: vttmx_timestamp_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4172,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4173,1
    - Dst: vttmx_timestamp_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4174,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4177,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4178,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4178,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4180,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4182,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4182,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4185,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4187,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4190,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:4190,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_dump.c:4191,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: 4193
      start: 4153
    functionDepth: 2
    functionLinenumber: 4153
    functionLinenumberEnd: 4193
    functionName: webvtt_write_cue_bs
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - vttmx_timestamp_dump
    - gf_bs_write_data
    - strlen
    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:4204,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/box_dump.c:4205,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/box_dump.c:4206,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/isomedia/box_dump.c:4232,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:4234,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4238,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4243,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/box_dump.c:4247,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4250,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/isomedia/box_dump.c:4253,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4257,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:4258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4259,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/isomedia/box_dump.c:4260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4261,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/isomedia/box_dump.c:4276,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4277,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:4278,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_dump.c:4281,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4286,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4288,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:4289,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4290,1
    - Dst: webvtt_write_cue_bs
      Src: /src/gpac/src/isomedia/box_dump.c:4291,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/isomedia/box_dump.c:4292,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_dump.c:4294,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_dump.c:4295,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/box_dump.c:4296,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4297,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4299,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:4300,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4302,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4309,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4310,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4314,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4315,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4316,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4319,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4320,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4321,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4323,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:4327,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4330,1
    - Dst: dump_ttxt_sample_srt
      Src: /src/gpac/src/isomedia/box_dump.c:4332,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4334,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4335,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4336,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4337,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4340,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 115
    argCount: 3
    argNames:
    - the_file
    - track
    - dump
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4342
      start: 4197
    functionDepth: 5
    functionLinenumber: 4197
    functionLinenumberEnd: 4342
    functionName: gf_isom_dump_srt_track
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - dump_ttxt_sample_srt
    - gf_isom_get_media_duration
    - gf_bs_get_content
    - gf_isom_get_sample_count
    - gf_bs_new
    - gf_bs_del
    - gf_webvtt_cue_del
    - gf_isom_get_sample
    - gf_isom_get_track_box
    - gf_isom_get_sample_info
    - gf_list_get
    - gf_isom_get_edit_list_type
    - webvtt_write_cue_bs
    - gf_webvtt_parse_cues_from_data
    - gf_set_progress
    - gf_fprintf
    - gf_isom_delete_text_sample
    - gf_isom_get_media_subtype
    - tx3g_format_time
    - gf_free
    - gf_list_del
    - gf_bs_write_u16
    - gf_isom_sample_del
    - gf_isom_parse_text_sample
    - gf_opts_get_bool
    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:4352,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/isomedia/box_dump.c:4362,1
    - Dst: gf_strcat
      Src: /src/gpac/src/isomedia/box_dump.c:4363,1
    - Dst: gf_fopen
      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:4367,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4375,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:4377,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4380,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4385,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/box_dump.c:4389,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4392,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4397,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4398,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4399,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4406,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4407,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4408,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4409,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4410,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4413,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4415,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:4420,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4422,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/box_dump.c:4423,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/isomedia/box_dump.c:4424,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/isomedia/box_dump.c:4425,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 65
    argCount: 3
    argNames:
    - the_file
    - track
    - dump
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4427
      start: 4344
    functionDepth: 1
    functionLinenumber: 4344
    functionLinenumberEnd: 4427
    functionName: gf_isom_dump_svg_track
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_isom_get_track_box
    - gf_fclose
    - gf_isom_get_sample_info
    - gf_fopen
    - gf_strcat
    - gf_isom_get_sample_count
    - gf_bs_new
    - gf_bs_del
    - gf_isom_sample_del
    - gf_set_progress
    - gf_isom_get_sample
    - gf_isom_parse_text_sample
    - gf_file_delete
    - gf_fprintf
    - gf_isom_delete_text_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:4435,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/box_dump.c:4447,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4450,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4455,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/isomedia/box_dump.c:4459,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4461,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4465,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4466,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4467,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4473,1
    - Dst: gf_format_duration
      Src: /src/gpac/src/isomedia/box_dump.c:4473,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4474,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4476,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4479,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4480,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: 4483
      start: 4429
    functionDepth: 1
    functionLinenumber: 4429
    functionLinenumberEnd: 4483
    functionName: gf_isom_dump_ogg_chap
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_format_duration
    - gf_isom_get_track_box
    - gf_isom_get_sample_info
    - gf_isom_get_sample_count
    - gf_bs_new
    - gf_bs_del
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_isom_parse_text_sample
    - gf_isom_delete_text_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:4489,1
    - Dst: gf_isom_dump_srt_track
      Src: /src/gpac/src/isomedia/box_dump.c:4491,1
    - Dst: gf_isom_dump_ttxt_track
      Src: /src/gpac/src/isomedia/box_dump.c:4495,1
    - Dst: gf_isom_dump_ogg_chap
      Src: /src/gpac/src/isomedia/box_dump.c:4498,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: 4502
      start: 4484
    functionDepth: 6
    functionLinenumber: 4484
    functionLinenumberEnd: 4502
    functionName: gf_isom_text_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 2
    functionsReached:
    - gf_isom_dump_ogg_chap
    - gf_isom_dump_svg_track
    - gf_isom_dump_ttxt_track
    - gf_isom_dump_srt_track
    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:4509,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4510,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4513
      start: 4506
    functionDepth: 3
    functionLinenumber: 4506
    functionLinenumberEnd: 4513
    functionName: sinf_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
    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:4519,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4520,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:4520,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4521,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4523
      start: 4515
    functionDepth: 3
    functionLinenumber: 4515
    functionLinenumberEnd: 4523
    functionName: frma_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:4529,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4530,1
    - Dst: gf_4cc_to_str
      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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4532,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4534,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4536
      start: 4525
    functionDepth: 3
    functionLinenumber: 4525
    functionLinenumberEnd: 4536
    functionName: schm_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:4540,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4541,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4544
      start: 4538
    functionDepth: 3
    functionLinenumber: 4538
    functionLinenumberEnd: 4544
    functionName: schi_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
    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:4550,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4551,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4552,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4555
      start: 4546
    functionDepth: 3
    functionLinenumber: 4546
    functionLinenumberEnd: 4555
    functionName: iKMS_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
    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:4562,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4563,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4566
      start: 4557
    functionDepth: 3
    functionLinenumber: 4557
    functionLinenumberEnd: 4566
    functionName: iSFM_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
    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:4571,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4572,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4575
      start: 4568
    functionDepth: 3
    functionLinenumber: 4568
    functionLinenumberEnd: 4575
    functionName: iSLT_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
    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:4585,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4589,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/isomedia/box_dump.c:4590,1
    - Dst: Media_GetSampleDesc
      Src: /src/gpac/src/isomedia/box_dump.c:4592,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4606,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4608,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - trace
    argTypes:
    - GF_ISOFile*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4610
      start: 4577
    functionDepth: 3
    functionLinenumber: 4577
    functionLinenumberEnd: 4610
    functionName: gf_isom_dump_ismacryp_protection
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_box_dump
    - gf_fprintf
    - gf_isom_get_sample_description_count
    - Media_GetSampleDesc
    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:4619,1
    - Dst: gf_isom_get_ismacryp_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4622,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4624,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4628,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4629,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/isomedia/box_dump.c:4630,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:4631,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4633,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:4634,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4636,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_dump.c:4638,1
    - Dst: gf_isom_ismacryp_delete_sample
      Src: /src/gpac/src/isomedia/box_dump.c:4639,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: 4641
      start: 4612
    functionDepth: 2
    functionLinenumber: 4612
    functionLinenumberEnd: 4641
    functionName: gf_isom_dump_ismacryp_sample
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - gf_isom_ismacryp_delete_sample
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_isom_has_sync_points
    - dump_data_attribute
    - gf_fprintf
    - gf_isom_get_ismacryp_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:4663,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/box_dump.c:4666,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/isomedia/box_dump.c:4668,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/isomedia/box_dump.c:4669,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4673,1
    - Dst: gf_bs_new
      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_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4682,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4684,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4684,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4686,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4686,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4688,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:4691,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4692,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:4692,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:4693,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4696,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4699,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4706,1
    - Dst: gf_id3_get_genre
      Src: /src/gpac/src/isomedia/box_dump.c:4706,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4711,1
    - Dst: dump_data_string
      Src: /src/gpac/src/isomedia/box_dump.c:4714,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4718,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4725,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4734,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/isomedia/box_dump.c:4738,1
    - Dst: dump_data_string
      Src: /src/gpac/src/isomedia/box_dump.c:4739,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:4741,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4745,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4750,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4751,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 94
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4753
      start: 4648
    functionDepth: 3
    functionLinenumber: 4648
    functionLinenumberEnd: 4753
    functionName: ilst_item_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_id3_get_genre
    - dump_data_string
    - gf_isom_box_find_child
    - gf_bs_new
    - gf_bs_read_int
    - gf_itags_find_by_itag
    - gf_itags_get_type
    - gf_isom_box_dump_start
    - gf_itags_get_name
    - gf_bs_del
    - gf_fprintf
    - dump_data
    - gf_isom_box_dump_done
    - gf_utf8_is_legal
    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:4761,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4763,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4766,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4768,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4770,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4771,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4774,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4775,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4779,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4780,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4784,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4784,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4787,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4787,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4789,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4791
      start: 4757
    functionDepth: 3
    functionLinenumber: 4757
    functionLinenumberEnd: 4791
    functionName: abst_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    - gf_fprintf
    - gf_isom_box_dump
    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:4797,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4799,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4802,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4807,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4808,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4812,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4814
      start: 4793
    functionDepth: 3
    functionLinenumber: 4793
    functionLinenumberEnd: 4814
    functionName: afra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    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:4820,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4822,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4825,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4826,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4830,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4831,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4833,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4834,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4837,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4839
      start: 4816
    functionDepth: 3
    functionLinenumber: 4816
    functionLinenumberEnd: 4839
    functionName: afrt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    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:4845,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4847,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4850,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4851,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:4855,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4856,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4859,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4861
      start: 4841
    functionDepth: 3
    functionLinenumber: 4841
    functionLinenumberEnd: 4861
    functionName: asrt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    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:4872,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4873,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:4876,1
    - Dst: ilst_item_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:4877,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4880,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4882
      start: 4865
    functionDepth: 4
    functionLinenumber: 4865
    functionLinenumberEnd: 4882
    functionName: ilst_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - ilst_item_box_dump
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:4886,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4888,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4891
      start: 4884
    functionDepth: 3
    functionLinenumber: 4884
    functionLinenumberEnd: 4891
    functionName: databox_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
    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:4895,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4896,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4897,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4899
      start: 4893
    functionDepth: 3
    functionLinenumber: 4893
    functionLinenumberEnd: 4899
    functionName: vexu_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
    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:4905,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4906,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:4909,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4910,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4911,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4913,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4915
      start: 4901
    functionDepth: 3
    functionLinenumber: 4901
    functionLinenumberEnd: 4915
    functionName: eyes_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
    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:4921,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4922,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4923,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4925
      start: 4917
    functionDepth: 3
    functionLinenumber: 4917
    functionLinenumberEnd: 4925
    functionName: hero_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4934,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4935,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4937
      start: 4927
    functionDepth: 3
    functionLinenumber: 4927
    functionLinenumberEnd: 4937
    functionName: amve_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
    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:4942,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4944,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:4947,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4951,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4955,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4960,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4963,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4964,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4966
      start: 4939
    functionDepth: 3
    functionLinenumber: 4939
    functionLinenumberEnd: 4966
    functionName: ohdr_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
    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:4970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4972,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:4974,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4975,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4976,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4978
      start: 4967
    functionDepth: 3
    functionLinenumber: 4967
    functionLinenumberEnd: 4978
    functionName: grpi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - gf_isom_box_dump_done
    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:4982,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4983,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4984,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4986
      start: 4979
    functionDepth: 3
    functionLinenumber: 4979
    functionLinenumberEnd: 4986
    functionName: mdri_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
    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:4990,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4992,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:4993,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:4994,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:4995,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4997
      start: 4987
    functionDepth: 3
    functionLinenumber: 4987
    functionLinenumberEnd: 4997
    functionName: odtt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - gf_isom_box_dump_done
    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:5001,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5003,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:5004,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5005,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5006,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5008
      start: 4998
    functionDepth: 3
    functionLinenumber: 4998
    functionLinenumberEnd: 5008
    functionName: odrb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - gf_isom_box_dump_done
    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:5011,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5012,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5013,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5015
      start: 5009
    functionDepth: 3
    functionLinenumber: 5009
    functionLinenumberEnd: 5015
    functionName: odkm_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
    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:5021,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5022,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5023,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5025
      start: 5018
    functionDepth: 3
    functionLinenumber: 5018
    functionLinenumberEnd: 5025
    functionName: pasp_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5035,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5036,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5038
      start: 5027
    functionDepth: 3
    functionLinenumber: 5027
    functionLinenumberEnd: 5038
    functionName: clap_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
    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:5045,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5047,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5049,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5049,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5052,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5054,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5056
      start: 5041
    functionDepth: 3
    functionLinenumber: 5041
    functionLinenumberEnd: 5056
    functionName: tsel_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:5082,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:5087,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:5092,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:5097,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5099,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5100,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5102
      start: 5058
    functionDepth: 3
    functionLinenumber: 5058
    functionLinenumberEnd: 5102
    functionName: metx_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
    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:5109,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5110,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5112,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5114,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5116
      start: 5104
    functionDepth: 3
    functionLinenumber: 5104
    functionLinenumberEnd: 5116
    functionName: txtc_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
    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:5121,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5122,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5125
      start: 5118
    functionDepth: 3
    functionLinenumber: 5118
    functionLinenumberEnd: 5125
    functionName: dims_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
    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:5130,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5131,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5134
      start: 5127
    functionDepth: 3
    functionLinenumber: 5127
    functionLinenumberEnd: 5134
    functionName: diST_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
    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:5139,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5140,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5144
      start: 5136
    functionDepth: 3
    functionLinenumber: 5136
    functionLinenumberEnd: 5144
    functionName: dimC_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
    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:5150,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5151,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5156,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5158,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5160,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5162,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5166
      start: 5146
    functionDepth: 3
    functionLinenumber: 5146
    functionLinenumberEnd: 5166
    functionName: dOps_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
    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:5171,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5175,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5179,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5180,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/isomedia/box_dump.c:5181,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5187
      start: 5168
    functionDepth: 3
    functionLinenumber: 5168
    functionLinenumberEnd: 5187
    functionName: iacb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_iamf_get_obu_name
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_list_get
    - gf_fprintf
    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:5196,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5198,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5200,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5204,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5207,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5209,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5210,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5212,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5215
      start: 5189
    functionDepth: 3
    functionLinenumber: 5189
    functionLinenumberEnd: 5215
    functionName: dac3_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
    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:5220,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5221,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5223,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5225
      start: 5217
    functionDepth: 3
    functionLinenumber: 5217
    functionLinenumberEnd: 5225
    functionName: dac4_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
    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:5231,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5232,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5236
      start: 5227
    functionDepth: 3
    functionLinenumber: 5227
    functionLinenumberEnd: 5236
    functionName: dmlp_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
    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:5241,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5242,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5247
      start: 5238
    functionDepth: 3
    functionLinenumber: 5238
    functionLinenumberEnd: 5247
    functionName: dvcC_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
    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:5251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5252
      start: 5249
    functionDepth: 4
    functionLinenumber: 5249
    functionLinenumberEnd: 5252
    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:5257,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:5258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5259,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5262
      start: 5254
    functionDepth: 3
    functionLinenumber: 5254
    functionLinenumberEnd: 5262
    functionName: lsrc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_attribute
    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:5267,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5268,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5271
      start: 5264
    functionDepth: 3
    functionLinenumber: 5264
    functionLinenumberEnd: 5271
    functionName: lsr1_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
    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:5278,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5280,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:5283,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5286,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5289,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5291,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5293
      start: 5274
    functionDepth: 3
    functionLinenumber: 5274
    functionLinenumberEnd: 5293
    functionName: sidx_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
    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:5299,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5301,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:5304,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5307,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5309,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5311,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5316,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5318,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5320
      start: 5295
    functionDepth: 3
    functionLinenumber: 5295
    functionLinenumberEnd: 5320
    functionName: ssix_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
    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:5327,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5329,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5331,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5331,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5334,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5336,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5338
      start: 5323
    functionDepth: 3
    functionLinenumber: 5323
    functionLinenumberEnd: 5338
    functionName: leva_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:5342,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5343,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5346
      start: 5340
    functionDepth: 3
    functionLinenumber: 5340
    functionLinenumberEnd: 5346
    functionName: strk_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
    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:5352,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5354,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5357,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5357,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5360,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5362,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5364
      start: 5348
    functionDepth: 3
    functionLinenumber: 5348
    functionLinenumberEnd: 5364
    functionName: stri_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:5370,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5373,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5373,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5374,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5377,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5380,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5382,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5384
      start: 5366
    functionDepth: 3
    functionLinenumber: 5366
    functionLinenumberEnd: 5384
    functionName: stsg_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:5390,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5391,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5394,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5397,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5399,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5401
      start: 5386
    functionDepth: 3
    functionLinenumber: 5386
    functionLinenumberEnd: 5401
    functionName: pcrb_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
    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:5412,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:5413,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5418,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5420,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5422,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5425,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5426,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5428,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5433,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5436,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5438
      start: 5403
    functionDepth: 3
    functionLinenumber: 5403
    functionLinenumberEnd: 5438
    functionName: subs_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    - gf_fprintf
    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:5445,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5447,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5448,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5450
      start: 5441
    functionDepth: 3
    functionLinenumber: 5441
    functionLinenumberEnd: 5450
    functionName: tfdt_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5458,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5459,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5461
      start: 5451
    functionDepth: 3
    functionLinenumber: 5451
    functionLinenumberEnd: 5461
    functionName: rsot_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
    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: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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5472,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5473,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5475
      start: 5464
    functionDepth: 3
    functionLinenumber: 5464
    functionLinenumberEnd: 5475
    functionName: rvcc_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
    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:5486,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5489,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5489,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:5492,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5493,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5493,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5495,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5498,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5502,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5504,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5508,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5510,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5512
      start: 5477
    functionDepth: 3
    functionLinenumber: 5477
    functionLinenumberEnd: 5512
    functionName: sbgp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - isalnum
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_fprintf
    - gf_4cc_to_str
    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:5519,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5521,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5523,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:5526,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:5532,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5535,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5538,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5541,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5544,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5547,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5547,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5547,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5548,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5553,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5554,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5558,1
    - Dst: gf_list_get
      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:5566,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5568,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5570,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5571,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5573,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5576,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5577,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5579,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:5582,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5584,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:5588,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5590,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 62
    argCount: 2
    argNames:
    - ptr
    - trace
    argTypes:
    - GF_OperatingPointsInformation*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5592
      start: 5514
    functionDepth: 1
    functionLinenumber: 5514
    functionLinenumberEnd: 5592
    functionName: oinf_entry_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_count
    - gf_list_get
    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:5598,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5599,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5600,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5604,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5605,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5607,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5608,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5610,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ptr
    - trace
    argTypes:
    - GF_LHVCLayerInformation*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5612
      start: 5594
    functionDepth: 1
    functionLinenumber: 5594
    functionLinenumberEnd: 5612
    functionName: linf_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_count
    - gf_list_get
    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:5621,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5622,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5623,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:5627,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5628,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5629,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5630,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_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5636,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5637,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5640,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5640,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5640,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5642,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5642,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5642,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5644,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5646,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5647,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5650,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5650,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5652,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:5655,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - trace
    - data
    - data_size
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5656
      start: 5614
    functionDepth: 1
    functionLinenumber: 5614
    functionLinenumberEnd: 5656
    functionName: trif_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_fprintf
    - 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:5666,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5667,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5668,1
    - Dst: gf_bs_new
      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_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5676,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5677,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5681,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_dump.c:5683,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5684,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:5686,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5687,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:5690,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5691,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - trace
    - data
    - data_size
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5693
      start: 5658
    functionDepth: 1
    functionLinenumber: 5658
    functionLinenumberEnd: 5693
    functionName: nalm_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_fprintf
    - 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:5702,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5705,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5705,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5706,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5708,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5710,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5712,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5713,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:5716,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:5719,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:5720,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5723,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5726,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5729,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5732,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:5735,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5738,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5745,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5752,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5757,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5758,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5760,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5763,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5767,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5769,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5772,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5774,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5776,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5778,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5780,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5781,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5783,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:5784,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5786,1
    - Dst: oinf_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5791,1
    - Dst: linf_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5794,1
    - Dst: trif_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5797,1
    - Dst: nalm_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5801,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5804,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5809,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:5812,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5814,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:5817,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5819,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5825,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5825,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:5828,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5830,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5836,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5848,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5850,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5851,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5851,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5853,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/isomedia/box_dump.c:5860,1
    - Dst: snprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5864,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5864,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/isomedia/box_dump.c:5865,1
    - Dst: dump_js_data
      Src: /src/gpac/src/isomedia/box_dump.c:5866,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5872,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:5873,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5874,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5882,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5885,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5888,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5891,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5894,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5897,1
    - Dst: oinf_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5900,1
    - Dst: linf_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5903,1
    - Dst: trif_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5906,1
    - Dst: nalm_dump
      Src: /src/gpac/src/isomedia/box_dump.c:5909,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5912,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5915,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5918,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5921,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5925,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5929,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5933,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 206
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5935
      start: 5696
    functionDepth: 3
    functionLinenumber: 5696
    functionLinenumberEnd: 5935
    functionName: sgpd_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_file_exists
    - dump_js_data
    - oinf_entry_dump
    - linf_dump
    - nalm_dump
    - trif_dump
    - gf_isom_box_dump_start
    - snprintf
    - gf_list_get
    - gf_fprintf
    - dump_data
    - gf_isom_box_dump_done
    - gf_opts_get_key
    - gf_4cc_to_str
    - 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:5946,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5948,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:5950,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5951,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5951,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5953,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5956,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5959,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5963,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:5965,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5967
      start: 5937
    functionDepth: 3
    functionLinenumber: 5937
    functionLinenumberEnd: 5967
    functionName: saiz_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - isalnum
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_fprintf
    - gf_4cc_to_str
    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:5978,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5980,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_dump.c:5982,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5983,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:5983,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5985,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5989,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5993,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:5997,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6001,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6004,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6006,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6008
      start: 5969
    functionDepth: 3
    functionLinenumber: 5969
    functionLinenumberEnd: 6008
    functionName: saio_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - isalnum
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_fprintf
    - gf_4cc_to_str
    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:6015,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6017,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6018,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6019,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6024,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6025,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6026,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6030,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6031,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6032,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6035,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6036,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6038,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6040
      start: 6010
    functionDepth: 3
    functionLinenumber: 6010
    functionLinenumberEnd: 6040
    functionName: pssh_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_hex
    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:6047,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6049,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6052,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6054,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6055,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6056,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6058,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:6061,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6064,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6065,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6067,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6069
      start: 6042
    functionDepth: 3
    functionLinenumber: 6042
    functionLinenumberEnd: 6069
    functionName: tenc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_hex
    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:6076,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6077,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6079,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6080,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6081,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6082,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6083,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6084,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6086
      start: 6071
    functionDepth: 3
    functionLinenumber: 6071
    functionLinenumberEnd: 6086
    functionName: piff_pssh_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_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:6093,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6094,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6096,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6097,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6098,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6099,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6101
      start: 6088
    functionDepth: 3
    functionLinenumber: 6088
    functionLinenumberEnd: 6101
    functionName: piff_tenc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_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:6121,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6124,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6126,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:6127,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6128,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:6133,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6134,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6137,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:6148,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6152,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:6169,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/box_dump.c:6171,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6174,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6176,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6178,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6180,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6182,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_dump.c:6183,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6186,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6188,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6192,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/isomedia/box_dump.c:6193,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_dump.c:6194,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6196,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6197,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6199,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_dump.c:6201,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6204,1
    - Dst: gf_bs_read_int
      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:6212,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6216,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6218,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6219,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_dump.c:6221,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_dump.c:6222,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6223,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6226,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6228,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6230,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:6233,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6238,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6240,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 105
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6242
      start: 6103
    functionDepth: 3
    functionLinenumber: 6103
    functionLinenumberEnd: 6242
    functionName: senc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_new
    - gf_cenc_key_info_get_iv_size
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_box_dump_start
    - dump_data
    - gf_list_get
    - gf_fprintf
    - gf_bs_reassign_buffer
    - gf_isom_box_dump_done
    - gf_bs_read_u32
    - gf_bs_read_u16
    - 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:6246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6247
      start: 6244
    functionDepth: 4
    functionLinenumber: 6244
    functionLinenumberEnd: 6247
    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:6258,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/isomedia/box_dump.c:6262,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6268,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6269,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6272
      start: 6249
    functionDepth: 3
    functionLinenumber: 6249
    functionLinenumberEnd: 6272
    functionName: prft_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_gmtime
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    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:6277,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6279,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6282
      start: 6274
    functionDepth: 3
    functionLinenumber: 6274
    functionLinenumberEnd: 6282
    functionName: adkm_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
    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:6287,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6288,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6291
      start: 6284
    functionDepth: 3
    functionLinenumber: 6284
    functionLinenumberEnd: 6291
    functionName: ahdr_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
    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:6296,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6297,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6300
      start: 6293
    functionDepth: 3
    functionLinenumber: 6293
    functionLinenumberEnd: 6300
    functionName: aprm_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
    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:6306,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6307,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6310
      start: 6302
    functionDepth: 3
    functionLinenumber: 6302
    functionLinenumberEnd: 6310
    functionName: aeib_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
    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:6315,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6316,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6317,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6319
      start: 6312
    functionDepth: 3
    functionLinenumber: 6312
    functionLinenumberEnd: 6319
    functionName: akey_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
    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:6324,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6325,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6326,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6328
      start: 6321
    functionDepth: 3
    functionLinenumber: 6321
    functionLinenumberEnd: 6328
    functionName: flxs_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
    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:6334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6335,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6338
      start: 6330
    functionDepth: 3
    functionLinenumber: 6330
    functionLinenumberEnd: 6338
    functionName: adaf_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
    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:6345,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6346,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6349
      start: 6341
    functionDepth: 3
    functionLinenumber: 6341
    functionLinenumberEnd: 6349
    functionName: ispe_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
    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:6355,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6356,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6357,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6359
      start: 6351
    functionDepth: 3
    functionLinenumber: 6351
    functionLinenumberEnd: 6359
    functionName: a1lx_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
    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:6365,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6366,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6367,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6369
      start: 6361
    functionDepth: 3
    functionLinenumber: 6361
    functionLinenumberEnd: 6369
    functionName: a1op_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
    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:6378,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6381,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6383,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:6384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6385,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6387,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6391,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6391,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6394,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6394,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6398,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6398,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6400,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:6402,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/isomedia/box_dump.c:6403,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:6406,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6410,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:6410,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6415,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6417
      start: 6371
    functionDepth: 3
    functionLinenumber: 6371
    functionLinenumberEnd: 6417
    functionName: colr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_base64_encode
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_fprintf
    - gf_4cc_to_str
    - 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:6424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6425,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6427,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6430,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6432,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6434
      start: 6419
    functionDepth: 3
    functionLinenumber: 6419
    functionLinenumberEnd: 6434
    functionName: pixi_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
    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:6440,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6441,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6444
      start: 6436
    functionDepth: 3
    functionLinenumber: 6436
    functionLinenumberEnd: 6444
    functionName: rloc_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
    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:6450,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6451,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6452,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6454
      start: 6446
    functionDepth: 3
    functionLinenumber: 6446
    functionLinenumberEnd: 6454
    functionName: irot_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
    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:6461,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6462,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6463,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6466,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6467,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6473,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6476
      start: 6456
    functionDepth: 3
    functionLinenumber: 6456
    functionLinenumberEnd: 6476
    functionName: imir_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
    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:6483,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6484,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6488
      start: 6478
    functionDepth: 3
    functionLinenumber: 6478
    functionLinenumberEnd: 6488
    functionName: txlo_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
    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:6495,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6496,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6498,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6500
      start: 6490
    functionDepth: 3
    functionLinenumber: 6490
    functionLinenumberEnd: 6500
    functionName: fnch_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
    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:6506,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6507,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6510
      start: 6502
    functionDepth: 3
    functionLinenumber: 6502
    functionLinenumberEnd: 6510
    functionName: clli_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
    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:6517,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6519,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6521,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6522,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6524
      start: 6512
    functionDepth: 3
    functionLinenumber: 6512
    functionLinenumberEnd: 6524
    functionName: mdcv_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
    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:6528,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6529,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6532
      start: 6526
    functionDepth: 3
    functionLinenumber: 6526
    functionLinenumberEnd: 6532
    functionName: ipco_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
    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:6536,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6537,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6540
      start: 6534
    functionDepth: 3
    functionLinenumber: 6534
    functionLinenumberEnd: 6540
    functionName: iprp_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
    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:6548,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6549,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6550,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:6552,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6553,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6555,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6557,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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6562,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6564,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6566
      start: 6542
    functionDepth: 3
    functionLinenumber: 6542
    functionLinenumberEnd: 6566
    functionName: ipma_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    - gf_fprintf
    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:6572,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6573,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6574,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6575,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6578
      start: 6568
    functionDepth: 3
    functionLinenumber: 6568
    functionLinenumberEnd: 6578
    functionName: auxc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_attribute
    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:6584,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6585,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6586,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6589
      start: 6580
    functionDepth: 3
    functionLinenumber: 6580
    functionLinenumberEnd: 6589
    functionName: auxi_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
    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:6594,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6595,1
    - Dst: oinf_entry_dump
      Src: /src/gpac/src/isomedia/box_dump.c:6597,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6601
      start: 6591
    functionDepth: 3
    functionLinenumber: 6591
    functionLinenumberEnd: 6601
    functionName: oinf_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - oinf_entry_dump
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:6605,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6606,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6610
      start: 6602
    functionDepth: 3
    functionLinenumber: 6602
    functionLinenumberEnd: 6610
    functionName: tols_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
    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:6614,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6615,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6618
      start: 6612
    functionDepth: 3
    functionLinenumber: 6612
    functionLinenumberEnd: 6618
    functionName: trgr_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
    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:6626,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6627,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6629,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6630,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6632
      start: 6620
    functionDepth: 3
    functionLinenumber: 6620
    functionLinenumberEnd: 6632
    functionName: trgt_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - GF_4CC
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:6636,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6637,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6640
      start: 6634
    functionDepth: 3
    functionLinenumber: 6634
    functionLinenumberEnd: 6640
    functionName: grpl_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
    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:6649,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:6650,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6652,1
    - Dst: dump_data_attribute
      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:6655,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6658,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6661,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6663,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6665
      start: 6642
    functionDepth: 3
    functionLinenumber: 6642
    functionLinenumberEnd: 6665
    functionName: grptype_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - GF_4CC
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_attribute
    - gf_fprintf
    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:6670,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6672,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6673,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6674,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6677
      start: 6667
    functionDepth: 3
    functionLinenumber: 6667
    functionLinenumberEnd: 6677
    functionName: stvi_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_attribute
    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:6710,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6711,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6712,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6714
      start: 6679
    functionDepth: 3
    functionLinenumber: 6679
    functionLinenumberEnd: 6714
    functionName: def_parent_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
    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:6726,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6727,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6728,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6730
      start: 6716
    functionDepth: 3
    functionLinenumber: 6716
    functionLinenumberEnd: 6730
    functionName: def_parent_full_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
    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:6733,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6734,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6737
      start: 6731
    functionDepth: 3
    functionLinenumber: 6731
    functionLinenumberEnd: 6737
    functionName: fiin_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
    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:6749,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6751,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6754,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6757,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6759,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6761
      start: 6739
    functionDepth: 3
    functionLinenumber: 6739
    functionLinenumberEnd: 6761
    functionName: fecr_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
    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:6767,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6769,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6772,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6775,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6778,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6780
      start: 6763
    functionDepth: 3
    functionLinenumber: 6763
    functionLinenumberEnd: 6780
    functionName: gitn_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
    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:6784,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6785,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6788
      start: 6782
    functionDepth: 3
    functionLinenumber: 6782
    functionLinenumberEnd: 6788
    functionName: paen_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
    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:6794,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6796,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6799,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:6799,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6801,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6804,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6807,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6810,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6812
      start: 6790
    functionDepth: 3
    functionLinenumber: 6790
    functionLinenumberEnd: 6812
    functionName: fpar_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_attribute
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - strlen
    - gf_fprintf
    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:6818,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6819,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6822,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6824,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6826,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6828,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6830,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6833,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6836,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6838
      start: 6814
    functionDepth: 3
    functionLinenumber: 6814
    functionLinenumberEnd: 6838
    functionName: segr_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
    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:6843,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6845,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6848
      start: 6840
    functionDepth: 3
    functionLinenumber: 6840
    functionLinenumberEnd: 6848
    functionName: srpp_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
    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:6858,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6859,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6862,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6864,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6866,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6868,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6871,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6873,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6875
      start: 6852
    functionDepth: 3
    functionLinenumber: 6852
    functionLinenumberEnd: 6875
    functionName: fdpa_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_attribute
    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:6881,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:6882,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6883,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/isomedia/box_dump.c:6885,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6886,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6888
      start: 6877
    functionDepth: 3
    functionLinenumber: 6877
    functionLinenumberEnd: 6888
    functionName: extr_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_attribute
    - gf_fprintf
    - gf_isom_box_dump
    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:6896,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6897,1
    - Dst: gf_isom_box_array_dump
      Src: /src/gpac/src/isomedia/box_dump.c:6899,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6901,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6903
      start: 6890
    functionDepth: 3
    functionLinenumber: 6890
    functionLinenumberEnd: 6903
    functionName: fdsa_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_array_dump
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:6912,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6914,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6916,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6919,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6923
      start: 6907
    functionDepth: 3
    functionLinenumber: 6907
    functionLinenumberEnd: 6923
    functionName: trik_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
    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:6929,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6931,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6932,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6934
      start: 6925
    functionDepth: 3
    functionLinenumber: 6925
    functionLinenumberEnd: 6934
    functionName: bloc_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
    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:6940,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6942,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6945
      start: 6936
    functionDepth: 3
    functionLinenumber: 6936
    functionLinenumberEnd: 6945
    functionName: ainf_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
    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:6952,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6954,1
    - Dst: dump_data
      Src: /src/gpac/src/isomedia/box_dump.c:6955,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6956,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6958,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6960
      start: 6948
    functionDepth: 3
    functionLinenumber: 6948
    functionLinenumberEnd: 6960
    functionName: mhac_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - dump_data
    - gf_isom_box_dump_done
    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:6967,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6968,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:6972,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6974,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6975,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6977
      start: 6962
    functionDepth: 3
    functionLinenumber: 6962
    functionLinenumberEnd: 6977
    functionName: mhap_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
    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:6982,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6984,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:6986,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6988
      start: 6978
    functionDepth: 3
    functionLinenumber: 6978
    functionLinenumberEnd: 6988
    functionName: tmcd_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
    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:6994,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6995,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:6998,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7000,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7002,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7004
      start: 6990
    functionDepth: 3
    functionLinenumber: 6990
    functionLinenumberEnd: 7004
    functionName: tcmi_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
    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:7010,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7011,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7012,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7014
      start: 7006
    functionDepth: 3
    functionLinenumber: 7006
    functionLinenumberEnd: 7014
    functionName: fiel_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
    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:7020,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7021,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7022,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7024
      start: 7016
    functionDepth: 3
    functionLinenumber: 7016
    functionLinenumberEnd: 7024
    functionName: gama_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
    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:7030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7031,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7032,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7034,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7035,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7036,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7039
      start: 7026
    functionDepth: 3
    functionLinenumber: 7026
    functionLinenumberEnd: 7039
    functionName: chrm_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
    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:7046,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7047,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7050,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7052,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7054
      start: 7041
    functionDepth: 3
    functionLinenumber: 7041
    functionLinenumberEnd: 7054
    functionName: chan_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
    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:7059,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7060,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7061,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7063
      start: 7056
    functionDepth: 3
    functionLinenumber: 7056
    functionLinenumberEnd: 7063
    functionName: jp_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
    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:7067,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7068,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7069,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7071
      start: 7065
    functionDepth: 3
    functionLinenumber: 7065
    functionLinenumberEnd: 7071
    functionName: jp2h_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
    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:7076,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7078,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7079,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7081,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7082,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7082,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7084,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7086
      start: 7073
    functionDepth: 3
    functionLinenumber: 7073
    functionLinenumberEnd: 7086
    functionName: jp2p_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_list_get
    - gf_fprintf
    - gf_4cc_to_str
    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:7092,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7093,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7094,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7095,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7097
      start: 7088
    functionDepth: 3
    functionLinenumber: 7088
    functionLinenumberEnd: 7097
    functionName: jsub_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
    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:7103,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7104,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7107
      start: 7099
    functionDepth: 3
    functionLinenumber: 7099
    functionLinenumberEnd: 7107
    functionName: orfo_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
    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:7112,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7113,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7116
      start: 7109
    functionDepth: 3
    functionLinenumber: 7109
    functionLinenumberEnd: 7116
    functionName: ihdr_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
    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:7121,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7122,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7125
      start: 7118
    functionDepth: 3
    functionLinenumber: 7118
    functionLinenumberEnd: 7125
    functionName: dfla_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
    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:7131,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7132,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7144
      start: 7127
    functionDepth: 3
    functionLinenumber: 7127
    functionLinenumberEnd: 7144
    functionName: ddts_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
    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:7152,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7153,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7166,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7168,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7169,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7173,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7175
      start: 7146
    functionDepth: 3
    functionLinenumber: 7146
    functionLinenumberEnd: 7175
    functionName: udts_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
    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:7181,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7182,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7184,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7187,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7190,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7193,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7196,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7199,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7201,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7203
      start: 7177
    functionDepth: 3
    functionLinenumber: 7177
    functionLinenumberEnd: 7203
    functionName: mvcg_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
    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:7209,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7210,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7212,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7222,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7224,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7226,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7228
      start: 7205
    functionDepth: 3
    functionLinenumber: 7205
    functionLinenumberEnd: 7228
    functionName: vwid_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
    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:7234,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7235,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7238
      start: 7230
    functionDepth: 3
    functionLinenumber: 7230
    functionLinenumberEnd: 7238
    functionName: pcmC_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
    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:7243,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7244,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7246,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7249,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7251,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7255,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7259,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7261,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7263,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7267,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7269
      start: 7240
    functionDepth: 3
    functionLinenumber: 7240
    functionLinenumberEnd: 7269
    functionName: chnl_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
    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:7275,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7276,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7279
      start: 7271
    functionDepth: 3
    functionLinenumber: 7271
    functionLinenumberEnd: 7279
    functionName: srat_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
    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:7285,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7286,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7289
      start: 7281
    functionDepth: 3
    functionLinenumber: 7281
    functionLinenumberEnd: 7289
    functionName: load_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:7295,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7296,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7300,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7302,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:7305,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7307,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7310
      start: 7291
    functionDepth: 3
    functionLinenumber: 7291
    functionLinenumberEnd: 7310
    functionName: emsg_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_attribute
    - gf_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:7317,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7318,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7322,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7324,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:7327,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7328,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_dump.c:7331,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:7332,1
    - Dst: scte35_dump_xml
      Src: /src/gpac/src/isomedia/box_dump.c:7333,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:7334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7338,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7343
      start: 7313
    functionDepth: 3
    functionLinenumber: 7313
    functionLinenumberEnd: 7343
    functionName: emib_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_dump_start
    - strcmp
    - dump_data_attribute
    - gf_fprintf
    - gf_isom_box_dump_done
    - scte35_dump_xml
    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:7347,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7348,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7351
      start: 7345
    functionDepth: 3
    functionLinenumber: 7345
    functionLinenumberEnd: 7351
    functionName: emeb_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
    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:7356,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7357,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7360
      start: 7353
    functionDepth: 3
    functionLinenumber: 7353
    functionLinenumberEnd: 7360
    functionName: evte_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
    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:7365,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7367,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7372,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7373,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7379
      start: 7362
    functionDepth: 3
    functionLinenumber: 7362
    functionLinenumberEnd: 7379
    functionName: silb_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    - gf_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:7388,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7389,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7397,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7402,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7403,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7407,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7410,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7412,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7414,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7416,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7419,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7421
      start: 7381
    functionDepth: 3
    functionLinenumber: 7381
    functionLinenumberEnd: 7421
    functionName: csgp_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:7429,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:7432,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7437,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:7438,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7439,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7442,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7445,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:7446,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7447,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7452,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7454,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7456
      start: 7424
    functionDepth: 3
    functionLinenumber: 7424
    functionLinenumberEnd: 7456
    functionName: ienc_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - dump_data_hex
    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:7462,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7463,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7466
      start: 7458
    functionDepth: 3
    functionLinenumber: 7458
    functionLinenumberEnd: 7466
    functionName: iaux_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
    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:7473,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7475,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7476,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7478,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7480,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/isomedia/box_dump.c:7483,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_dump.c:7484,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/isomedia/box_dump.c:7485,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7489,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7491,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7493,1
    - Dst: dump_data_hex
      Src: /src/gpac/src/isomedia/box_dump.c:7494,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7495,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7497,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7499,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7501
      start: 7470
    functionDepth: 3
    functionLinenumber: 7470
    functionLinenumberEnd: 7501
    functionName: xtra_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_utf8_wcslen
    - gf_utf8_wcstombs
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - gf_list_get
    - gf_fprintf
    - 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:7508,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7509,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7510,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7512
      start: 7504
    functionDepth: 3
    functionLinenumber: 7504
    functionLinenumberEnd: 7512
    functionName: st3d_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
    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:7518,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7519,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7520,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7522
      start: 7514
    functionDepth: 3
    functionLinenumber: 7514
    functionLinenumberEnd: 7522
    functionName: svhd_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
    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:7528,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7529,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7532
      start: 7524
    functionDepth: 3
    functionLinenumber: 7524
    functionLinenumberEnd: 7532
    functionName: prhd_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
    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:7539,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7540,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7541,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7544,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7545,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7546,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7549,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7550,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7550,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7551,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7554
      start: 7534
    functionDepth: 3
    functionLinenumber: 7534
    functionLinenumberEnd: 7554
    functionName: proj_type_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_4cc_to_str
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:7561,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7562,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_dump.c:7565,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7566,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7566,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/isomedia/box_dump.c:7568,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7569,1
    - Dst: dump_data_string
      Src: /src/gpac/src/isomedia/box_dump.c:7570,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7571,1
    - Dst: dump_data_attribute
      Src: /src/gpac/src/isomedia/box_dump.c:7573,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7575,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7578,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7580,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7582
      start: 7556
    functionDepth: 3
    functionLinenumber: 7556
    functionLinenumberEnd: 7582
    functionName: keys_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - dump_data_string
    - gf_list_enum
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    - dump_data_attribute
    - gf_fprintf
    - gf_4cc_to_str
    - gf_utf8_is_legal
    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:7586,1
    - Dst: gf_isom_box_dump_start
      Src: /src/gpac/src/isomedia/box_dump.c:7588,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7589,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_dump.c:7593,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7594,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:7597,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7599,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7602,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7604
      start: 7583
    functionDepth: 3
    functionLinenumber: 7583
    functionLinenumberEnd: 7604
    functionName: sref_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_list_get
    - gf_fprintf
    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:7614,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7615,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7617
      start: 7606
    functionDepth: 3
    functionLinenumber: 7606
    functionLinenumberEnd: 7617
    functionName: empty_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:7623,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7624,1
    - Dst: gf_4cc_to_str
      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_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7626,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7627,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7629
      start: 7619
    functionDepth: 3
    functionLinenumber: 7619
    functionLinenumberEnd: 7629
    functionName: extl_box_dump
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - gf_4cc_to_str
    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:7661,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_dump.c:7665,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7666,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7669,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7670,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7674,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7675,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7676,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7678,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7679,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7680,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_dump.c:7687,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_dump.c:7688,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_dump.c:7689,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_dump.c:7693,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7696,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_dump.c:7697,1
    - Dst: JS_GetOwnPropertyNames
      Src: /src/gpac/src/isomedia/box_dump.c:7700,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/isomedia/box_dump.c:7704,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7705,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7706,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/isomedia/box_dump.c:7708,1
    - Dst: dump_element
      Src: /src/gpac/src/isomedia/box_dump.c:7711,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/isomedia/box_dump.c:7712,1
    - Dst: dump_element
      Src: /src/gpac/src/isomedia/box_dump.c:7715,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_dump.c:7716,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/box_dump.c:7719,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7720,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7722,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7723,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7724,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7728,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7731,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/isomedia/box_dump.c:7738,1
    - Dst: js_free
      Src: /src/gpac/src/isomedia/box_dump.c:7739,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7741,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7745,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/isomedia/box_dump.c:7746,1
    - Dst: strstr
      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: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7749,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7749,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7750,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7752,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7755,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/isomedia/box_dump.c:7758,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7760,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/isomedia/box_dump.c:7764,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7765,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: 7767
      start: 7650
    functionDepth: 2
    functionLinenumber: 7650
    functionLinenumberEnd: 7767
    functionName: dump_element
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 1
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_bs_new
    - gf_bs_del
    - gf_bs_set_cookie
    - JS_IsObject
    - JS_FreeAtom
    - JS_AtomToCString
    - strstr
    - JS_ToCString
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsArray
    - gf_dynstrcat
    - JS_GetOwnPropertyNames
    - JS_GetProperty
    - JS_FreeCString
    - gf_isom_box_array_read
    - strcmp
    - JS_ToInt32
    - gf_free
    - dump_element
    - js_free
    - gf_isom_box_dump_done
    - gf_strdup
    - gf_4cc_to_str
    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:7780,1
    - Dst: JS_NewContext
      Src: /src/gpac/src/isomedia/box_dump.c:7781,1
    - Dst: qjs_module_init_gpaccore
      Src: /src/gpac/src/isomedia/box_dump.c:7782,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7785,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/isomedia/box_dump.c:7786,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7787,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7788,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/box_dump.c:7789,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_dump.c:7790,1
    - Dst: JS_Eval
      Src: /src/gpac/src/isomedia/box_dump.c:7792,1
    - Dst: JS_IsException
      Src: /src/gpac/src/isomedia/box_dump.c:7793,1
    - Dst: js_dump_error
      Src: /src/gpac/src/isomedia/box_dump.c:7795,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7797,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_dump.c:7798,1
    - Dst: JS_GetGlobalObject
      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_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7805,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/isomedia/box_dump.c:7805,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/isomedia/box_dump.c:7807,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7809,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_dump.c:7809,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7811,1
    - Dst: JS_NewString
      Src: /src/gpac/src/isomedia/box_dump.c:7811,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7812,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7812,1
    - Dst: gf_strcat
      Src: /src/gpac/src/isomedia/box_dump.c:7813,1
    - Dst: gf_strcat
      Src: /src/gpac/src/isomedia/box_dump.c:7816,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7819,1
    - Dst: JS_NewString
      Src: /src/gpac/src/isomedia/box_dump.c:7819,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7820,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/isomedia/box_dump.c:7820,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/isomedia/box_dump.c:7822,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/isomedia/box_dump.c:7823,1
    - Dst: JS_Call
      Src: /src/gpac/src/isomedia/box_dump.c:7825,1
    - Dst: JS_IsException
      Src: /src/gpac/src/isomedia/box_dump.c:7826,1
    - Dst: js_dump_error
      Src: /src/gpac/src/isomedia/box_dump.c:7828,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7830,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7832,1
    - Dst: dump_element
      Src: /src/gpac/src/isomedia/box_dump.c:7835,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/isomedia/box_dump.c:7837,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
    - Dst: JS_FreeValue
      Src: /src/gpac/src/isomedia/box_dump.c:7841,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: 7844
      start: 7772
    functionDepth: 3
    functionLinenumber: 7772
    functionLinenumberEnd: 7844
    functionName: dump_js_data
    functionSourceFile: /src/gpac/src/isomedia/box_dump.c
    functionUses: 2
    functionsReached:
    - JS_NewCFunction
    - JS_Call
    - JS_Eval
    - JS_NewRuntime
    - js_dump_error
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsException
    - qjs_module_init_gpaccore
    - gf_dynstrcat
    - JS_NewArrayBuffer
    - JS_NewString
    - JS_NewObject
    - JS_NewInt32
    - strlen
    - JS_SetPropertyStr
    - gf_fprintf
    - JS_NewContext
    - sprintf
    - gf_free
    - JS_GetGlobalObject
    - gf_file_load_data
    - gf_strcat
    - dump_element
    - gf_4cc_to_str
    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:7848,1
    - Dst: JS_FreeRuntime
      Src: /src/gpac/src/isomedia/box_dump.c:7849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7852
      start: 7846
    functionDepth: 1
    functionLinenumber: 7846
    functionLinenumberEnd: 7852
    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_malloc
    - gf_bs_read_u64
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    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_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_u64
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_u8
    - gf_free
    - gf_malloc
    - gf_bs_read_u64
    - gf_strdup
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_list_get
    - gf_bs_read_u32
    - gf_list_insert
    - gf_list_add
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    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_count
    - gf_isom_full_box_write
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    - strlen
    - 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
    - strlen
    - gf_list_get
    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_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    - 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_int
    - gf_isom_full_box_write
    - gf_bs_write_data
    - strlen
    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_free
    - gf_malloc
    - gf_bs_read_data
    - strlen
    - gf_strdup
    - 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_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - ABS
    - gf_bs_read_u32
    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_int
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    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_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    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_free
    - gf_malloc
    - GF_LOG
    - gf_bs_read_data
    - memcpy
    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_isom_full_box_write
    - gf_bs_write_data
    - strlen
    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_u8
    - gf_bs_get_cookie
    - gf_free
    - gf_malloc
    - gf_bs_seek
    - GF_LOG
    - gf_bs_new
    - isalnum
    - gf_bs_read_data
    - gf_bs_del
    - gf_bs_set_cookie
    - gf_isom_box_array_read
    - gf_bs_read_u32
    - gf_4cc_to_str
    - gf_bs_skip_bytes
    - gf_isom_box_array_del
    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_bs_get_position
    - gf_isom_box_write_header
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_bs_seek
    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_isom_box_write_header
    - gf_bs_write_data
    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_LOG
    - gf_bs_get_cookie
    - gf_isom_box_new_parent
    - gf_isom_box_array_read
    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
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_bs_write_u32
    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_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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_u64
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_list_add
    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
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_count
    - gf_isom_full_box_write
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_list_get
    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_odf_desc_del
    - gf_free
    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_odf_desc_del
    - gf_free
    - gf_malloc
    - gf_odf_slc_set_pref
    - GF_LOG
    - gf_bs_read_data
    - gf_odf_desc_new
    - gf_odf_desc_read
    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_odf_desc_write
    - gf_isom_full_box_write
    - gf_free
    - gf_bs_write_data
    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_isom_box_write_header
    - gf_bs_write_u8
    - gf_bs_write_data
    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_bs_read_u32
    - gf_malloc
    - 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_isom_box_write_header
    - gf_bs_write_u32
    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_bs_read_data
    - ISOM_DECREASE_SIZE
    - gf_malloc
    - gf_isom_base_sample_entry_read
    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_u16
    - gf_isom_box_write_header
    - gf_bs_write_data
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_isom_video_sample_entry_init
    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_bs_read_data
    - gf_isom_video_sample_entry_read
    - gf_malloc
    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_isom_box_write_header
    - gf_isom_video_sample_entry_write
    - gf_bs_write_data
    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_isom_audio_sample_entry_read
    - gf_bs_read_data
    - 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_isom_box_write_header
    - gf_bs_write_data
    - gf_isom_audio_sample_entry_write
    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_get_cookie
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_set_cookie
    - gf_bs_read_u32
    - memmove
    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_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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_LOG
    - gf_bs_read_data
    - 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_isom_box_write_header
    - gf_bs_write_data
    - 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_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    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_isom_box_write_header
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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_isom_box_write_header
    - gf_bs_write_u64
    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_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u64
    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_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u64
    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_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u64
    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_isom_box_write_header
    - gf_bs_write_u64
    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_isom_box_write_header
    - gf_bs_write_u64
    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_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u32
    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_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    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_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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_LOG
    - gf_bs_read_data
    - 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_isom_box_write_header
    - gf_bs_write_data
    - 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
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    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_isom_full_box_write
    - gf_bs_write_u32
    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_isom_box_write_header
    - gf_bs_write_u32
    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_odf_desc_del
    - gf_free
    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_free
    - gf_malloc
    - GF_LOG
    - gf_bs_read_data
    - gf_odf_desc_read
    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_odf_desc_write
    - gf_isom_full_box_write
    - gf_free
    - gf_bs_write_data
    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_get_position
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - 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_isom_box_write_header
    - gf_bs_write_u32
    - gf_bs_write_data
    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_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:3250,1
    - Dst: set_quicktime_lang
      Src: /src/gpac/src/isomedia/box_code_base.c:3257,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:3269,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3271
      start: 3225
    functionDepth: 2
    functionLinenumber: 3225
    functionLinenumberEnd: 3271
    functionName: mdhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - set_quicktime_lang
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:3275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3281
      start: 3273
    functionDepth: 1
    functionLinenumber: 3273
    functionLinenumberEnd: 3281
    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:3290,1
    - Dst: gf_bs_write_u64
      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:3294,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3295,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3296,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3298,1
    - Dst: gf_bs_write_u32
      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:3300,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3301,1
    - Dst: gf_bs_write_int
      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:3305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3306,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3307,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:3308,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3310
      start: 3286
    functionDepth: 3
    functionLinenumber: 3286
    functionLinenumberEnd: 3310
    functionName: mdhd_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_u64
    - gf_bs_write_u16
    - 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: 3324
      start: 3312
    functionDepth: 0
    functionLinenumber: 3312
    functionLinenumberEnd: 3324
    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:3333,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3334,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3335,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3336,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3337,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3338,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3339,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3341,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3344,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3345
      start: 3329
    functionDepth: 1
    functionLinenumber: 3329
    functionLinenumberEnd: 3345
    functionName: mdia_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_datamap_del
    - gf_bs_del
    - gf_isom_sample_del
    - gf_free
    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:3353,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3357,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3361,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: 3365
      start: 3348
    functionDepth: 1
    functionLinenumber: 3348
    functionLinenumberEnd: 3365
    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:3371,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:3373,1
    - Dst: gf_isom_box_array_read
      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:3375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3387,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3391
      start: 3368
    functionDepth: 2
    functionLinenumber: 3368
    functionLinenumberEnd: 3391
    functionName: mdia_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_get_cookie
    - 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:3395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3397
      start: 3393
    functionDepth: 1
    functionLinenumber: 3393
    functionLinenumberEnd: 3397
    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:3403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3404
      start: 3401
    functionDepth: 2
    functionLinenumber: 3401
    functionLinenumberEnd: 3404
    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:3411,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3413,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:3417,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3419,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3425
      start: 3406
    functionDepth: 2
    functionLinenumber: 3406
    functionLinenumberEnd: 3425
    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:3433,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3435
      start: 3429
    functionDepth: 1
    functionLinenumber: 3429
    functionLinenumberEnd: 3435
    functionName: mfra_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:3439,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:3440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3442
      start: 3437
    functionDepth: 1
    functionLinenumber: 3437
    functionLinenumberEnd: 3442
    functionName: mfra_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:3449,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3452,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: 3456
      start: 3444
    functionDepth: 1
    functionLinenumber: 3444
    functionLinenumberEnd: 3456
    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:3460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3461
      start: 3458
    functionDepth: 2
    functionLinenumber: 3458
    functionLinenumberEnd: 3461
    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:3467,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3468
      start: 3465
    functionDepth: 2
    functionLinenumber: 3465
    functionLinenumberEnd: 3468
    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:3474,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3477
      start: 3470
    functionDepth: 3
    functionLinenumber: 3470
    functionLinenumberEnd: 3477
    functionName: mfra_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_check_position
    - gf_isom_check_position_list
    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:3486,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3487,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3488
      start: 3482
    functionDepth: 0
    functionLinenumber: 3482
    functionLinenumberEnd: 3488
    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:3492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3494
      start: 3490
    functionDepth: 1
    functionLinenumber: 3490
    functionLinenumberEnd: 3494
    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:3502,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3504,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3505,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:3509,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3510,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3528,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:3531,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:3538,1
    - Dst: gf_bs_read_u64
      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:3542,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3544,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3545,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3547,1
    - Dst: gf_bs_read_int
      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:3549,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3555
      start: 3496
    functionDepth: 1
    functionLinenumber: 3496
    functionLinenumberEnd: 3555
    functionName: tfra_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    - memset
    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:3566,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3569,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3570,1
    - Dst: gf_bs_write_int
      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:3574,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3583,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3590,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:3591,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3593,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3594,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:3596,1
    - Dst: gf_bs_write_int
      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:3598,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3601
      start: 3560
    functionDepth: 3
    functionLinenumber: 3560
    functionLinenumberEnd: 3601
    functionName: tfra_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
    - gf_bs_write_u64
    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: 3616
      start: 3603
    functionDepth: 0
    functionLinenumber: 3603
    functionLinenumberEnd: 3616
    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:3626,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3627
      start: 3622
    functionDepth: 0
    functionLinenumber: 3622
    functionLinenumberEnd: 3627
    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:3631,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3633
      start: 3629
    functionDepth: 1
    functionLinenumber: 3629
    functionLinenumberEnd: 3633
    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:3639,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3642
      start: 3635
    functionDepth: 1
    functionLinenumber: 3635
    functionLinenumberEnd: 3642
    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:3652,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3657
      start: 3647
    functionDepth: 3
    functionLinenumber: 3647
    functionLinenumberEnd: 3657
    functionName: mfro_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 3663
      start: 3659
    functionDepth: 0
    functionLinenumber: 3659
    functionLinenumberEnd: 3663
    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:3672,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3673,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3674
      start: 3668
    functionDepth: 0
    functionLinenumber: 3668
    functionLinenumberEnd: 3674
    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:3684,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:3686,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:3689,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:3691,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3693,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3698
      start: 3676
    functionDepth: 1
    functionLinenumber: 3676
    functionLinenumberEnd: 3698
    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:3702,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3704
      start: 3700
    functionDepth: 1
    functionLinenumber: 3700
    functionLinenumberEnd: 3704
    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:3712,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:3715,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:3715,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3718
      start: 3708
    functionDepth: 3
    functionLinenumber: 3708
    functionLinenumberEnd: 3718
    functionName: elng_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    - strlen
    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:3725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3728
      start: 3720
    functionDepth: 0
    functionLinenumber: 3720
    functionLinenumberEnd: 3728
    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:3738,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3739
      start: 3734
    functionDepth: 0
    functionLinenumber: 3734
    functionLinenumberEnd: 3739
    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:3744,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3747
      start: 3741
    functionDepth: 1
    functionLinenumber: 3741
    functionLinenumberEnd: 3747
    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:3751,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3753
      start: 3749
    functionDepth: 1
    functionLinenumber: 3749
    functionLinenumberEnd: 3753
    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:3765,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:3767,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3769
      start: 3759
    functionDepth: 3
    functionLinenumber: 3759
    functionLinenumberEnd: 3769
    functionName: mfhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 3775
      start: 3771
    functionDepth: 0
    functionLinenumber: 3771
    functionLinenumberEnd: 3775
    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:3791,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3793,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3794
      start: 3784
    functionDepth: 1
    functionLinenumber: 3784
    functionLinenumberEnd: 3794
    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:3806,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3810,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3814,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: 3818
      start: 3796
    functionDepth: 1
    functionLinenumber: 3796
    functionLinenumberEnd: 3818
    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:3826,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:3830,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:3835,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
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3846
      start: 3821
    functionDepth: 5
    functionLinenumber: 3821
    functionLinenumberEnd: 3846
    functionName: minf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_isom_box_new_parent
    - gf_isom_box_array_read
    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:3850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3852
      start: 3848
    functionDepth: 1
    functionLinenumber: 3848
    functionLinenumberEnd: 3852
    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:3859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3860
      start: 3857
    functionDepth: 2
    functionLinenumber: 3857
    functionLinenumberEnd: 3860
    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:3867,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3869,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:3870,1
    - Dst: gf_isom_box_find_child
      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
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3874
      start: 3862
    functionDepth: 2
    functionLinenumber: 3862
    functionLinenumberEnd: 3874
    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:3885,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3886,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3887,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_code_base.c:3891,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3893,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3895,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:3897,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3898,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3899
      start: 3880
    functionDepth: 4
    functionLinenumber: 3880
    functionLinenumberEnd: 3899
    functionName: moof_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_isom_box_del
    - gf_free
    - gf_list_pop_front
    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:3906,1
    - Dst: BOX_FIELD_LIST_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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3916
      start: 3901
    functionDepth: 1
    functionLinenumber: 3901
    functionLinenumberEnd: 3916
    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:3920,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3921
      start: 3918
    functionDepth: 2
    functionLinenumber: 3918
    functionLinenumberEnd: 3921
    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:3925,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:3926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3928
      start: 3923
    functionDepth: 1
    functionLinenumber: 3923
    functionLinenumberEnd: 3928
    functionName: moof_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:3935,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3936
      start: 3933
    functionDepth: 2
    functionLinenumber: 3933
    functionLinenumberEnd: 3936
    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:3944,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:3946,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:3948,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3950
      start: 3938
    functionDepth: 3
    functionLinenumber: 3938
    functionLinenumberEnd: 3950
    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:3961,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:3962,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3963
      start: 3957
    functionDepth: 1
    functionLinenumber: 3957
    functionLinenumberEnd: 3963
    functionName: moov_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:3970,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:3974,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3979,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3983,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3988,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:3995,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:4001,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/box_code_base.c:4010,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4015,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 3
    argNames:
    - s
    - a
    - is_rem
    argTypes:
    - GF_Box*
    - GF_Box*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4026
      start: 3965
    functionDepth: 5
    functionLinenumber: 3965
    functionLinenumberEnd: 4026
    functionName: moov_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - BOX_FIELD_ASSIGN
    - gf_isom_box_del_parent
    - Track_FindRef
    - gf_list_del_item
    - gf_list_add
    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:4031,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4032
      start: 4029
    functionDepth: 2
    functionLinenumber: 4029
    functionLinenumberEnd: 4032
    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:4036,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4037,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4039,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4043
      start: 4034
    functionDepth: 1
    functionLinenumber: 4034
    functionLinenumberEnd: 4043
    functionName: moov_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:4052,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4053
      start: 4050
    functionDepth: 2
    functionLinenumber: 4050
    functionLinenumberEnd: 4053
    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: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4062,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4068,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4071,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4072,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4074,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4080,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4081,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/box_code_base.c:4088,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4093,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4095,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4096,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4099,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4100,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4101,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4102,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4103,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4106,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4111,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4114,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4121,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4124,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4136,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4138,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4139,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4141,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 76
    argCount: 3
    argNames:
    - s
    - childlist
    - pos
    argTypes:
    - GF_MovieBox*
    - GF_List*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4143
      start: 4055
    functionDepth: 3
    functionLinenumber: 4055
    functionLinenumberEnd: 4143
    functionName: moov_check_tracks_position
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_del
    - gf_isom_check_position
    - gf_list_new
    - gf_isom_check_position_list
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void moov_check_tracks_position(GF_MovieBox *s, GF_List *childlist,
      u32 *pos)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4150,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4151,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4152,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4155,1
    - Dst: moov_check_tracks_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4158,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4162,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4166
      start: 4145
    functionDepth: 4
    functionLinenumber: 4145
    functionLinenumberEnd: 4166
    functionName: moov_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - moov_check_tracks_position
    - 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:4174,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4175,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4177
      start: 4170
    functionDepth: 1
    functionLinenumber: 4170
    functionLinenumberEnd: 4177
    functionName: audio_sample_entry_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_free
    - gf_isom_sample_entry_predestroy
    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:4187,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4195,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4202,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4206,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4210,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4214,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4217,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4220,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4223,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4227,1
    - Dst: ERROR_ON_DUPLICATED_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:4238,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4240,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4242,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4243,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:4247,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4250,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:4255,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:4263,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4269,1
    - Dst: ERROR_ON_DUPLICATED_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:4315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4318,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4320,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4321,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:4325,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4327,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:4333,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: 4348
      start: 4179
    functionDepth: 5
    functionLinenumber: 4179
    functionLinenumberEnd: 4348
    functionName: audio_sample_entry_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - BOX_FIELD_ASSIGN
    - gf_isom_box_del_parent
    - ERROR_ON_DUPLICATED_BOX
    - gf_list_get
    - 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:4360,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:4361,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:4368,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4369,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4370,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4371,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:4372,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4374,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4375,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4376,1
    - Dst: isalnum
      Src: /src/gpac/src/isomedia/box_code_base.c:4377,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:4379,1
    - Dst: gf_isom_audio_sample_entry_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4382,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4384,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:4389,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4393,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4396,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:4417,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:4418,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4421,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/box_code_base.c:4423,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4424,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:4425,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:4428,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:4430,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:4431,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:4433,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4437,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/box_code_base.c:4440,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4441,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4444,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:4445,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4447,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4454,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 88
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4456
      start: 4349
    functionDepth: 4
    functionLinenumber: 4349
    functionLinenumberEnd: 4456
    functionName: audio_sample_entry_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_list_count
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_bs_set_cookie
    - gf_isom_box_del
    - gf_bs_seek
    - gf_list_add
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_list_get
    - gf_isom_box_find_child
    - isalnum
    - gf_isom_audio_sample_entry_read
    - gf_isom_box_array_read
    - gf_list_new
    - gf_bs_get_cookie
    - gf_free
    - gf_isom_box_parse
    - GF_4CC
    - gf_list_del_item
    - gf_bs_peek_bits
    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:4460,1
    - Dst: gf_isom_audio_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4463
      start: 4458
    functionDepth: 2
    functionLinenumber: 4458
    functionLinenumberEnd: 4463
    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:4467,1
    - Dst: gf_isom_audio_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4470
      start: 4465
    functionDepth: 2
    functionLinenumber: 4465
    functionLinenumberEnd: 4470
    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:4478,1
    - Dst: gf_isom_audio_sample_entry_write
      Src: /src/gpac/src/isomedia/box_code_base.c:4480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4482
      start: 4475
    functionDepth: 2
    functionLinenumber: 4475
    functionLinenumberEnd: 4482
    functionName: audio_sample_entry_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_isom_audio_sample_entry_write
    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:4488,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4493,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4493,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4494,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4494,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4497,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4498,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4499,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4500,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4501,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4502,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4503,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4504,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4507,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4507,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4508,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4508,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4511
      start: 4484
    functionDepth: 2
    functionLinenumber: 4484
    functionLinenumberEnd: 4511
    functionName: audio_sample_entry_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_find_child
    - gf_isom_audio_sample_entry_size
    - 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:4520,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4521,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4522
      start: 4516
    functionDepth: 1
    functionLinenumber: 4516
    functionLinenumberEnd: 4522
    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:4527,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4529,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4531
      start: 4525
    functionDepth: 2
    functionLinenumber: 4525
    functionLinenumberEnd: 4531
    functionName: gen_sample_entry_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    - gf_isom_base_sample_entry_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:4535,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4538
      start: 4533
    functionDepth: 1
    functionLinenumber: 4533
    functionLinenumberEnd: 4538
    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:4547,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4550,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:4551,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4553
      start: 4543
    functionDepth: 2
    functionLinenumber: 4543
    functionLinenumberEnd: 4553
    functionName: gen_sample_entry_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_data
    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: 4560
      start: 4555
    functionDepth: 0
    functionLinenumber: 4555
    functionLinenumberEnd: 4560
    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:4568,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4569,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4570,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4571
      start: 4564
    functionDepth: 1
    functionLinenumber: 4564
    functionLinenumberEnd: 4571
    functionName: mp4s_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_free
    - gf_isom_sample_entry_predestroy
    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:4578,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: 4582
      start: 4573
    functionDepth: 1
    functionLinenumber: 4573
    functionLinenumberEnd: 4582
    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:4589,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4592,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4593,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4594
      start: 4584
    functionDepth: 2
    functionLinenumber: 4584
    functionLinenumberEnd: 4594
    functionName: mp4s_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    - gf_isom_base_sample_entry_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:4598,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4602
      start: 4596
    functionDepth: 1
    functionLinenumber: 4596
    functionLinenumberEnd: 4602
    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:4606,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4610
      start: 4604
    functionDepth: 1
    functionLinenumber: 4604
    functionLinenumberEnd: 4610
    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:4620,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4622,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:4623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4625
      start: 4615
    functionDepth: 2
    functionLinenumber: 4615
    functionLinenumberEnd: 4625
    functionName: mp4s_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_data
    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:4632,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4634
      start: 4627
    functionDepth: 2
    functionLinenumber: 4627
    functionLinenumberEnd: 4634
    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:4642,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4644,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4646,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4647,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4648
      start: 4638
    functionDepth: 1
    functionLinenumber: 4638
    functionLinenumberEnd: 4648
    functionName: video_sample_entry_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_free
    - gf_isom_sample_entry_predestroy
    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:4655,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4658,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4661,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4664,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4667,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4670,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4673,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4676,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4679,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4682,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4685,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4689,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/box_code_base.c:4692,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4693,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4699,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4706,1
    - Dst: gf_isom_box_check_unique
      Src: /src/gpac/src/isomedia/box_code_base.c:4719,1
    - Dst: ERROR_ON_DUPLICATED_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:4720,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: 4725
      start: 4650
    functionDepth: 2
    functionLinenumber: 4650
    functionLinenumberEnd: 4725
    functionName: video_sample_entry_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ERROR_ON_DUPLICATED_BOX
    - memcmp
    - BOX_FIELD_ASSIGN
    - gf_isom_box_check_unique
    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:4731,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:4733,1
    - Dst: AVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4737,1
    - Dst: HEVC_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4740,1
    - Dst: AV1_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4743,1
    - Dst: VP9_RewriteESDescriptor
      Src: /src/gpac/src/isomedia/box_code_base.c:4746,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4749,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4761
      start: 4727
    functionDepth: 8
    functionLinenumber: 4727
    functionLinenumberEnd: 4761
    functionName: video_sample_entry_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_video_sample_entry_read
    - VP9_RewriteESDescriptor
    - HEVC_RewriteESDescriptor
    - AV1_RewriteESDescriptor
    - gf_isom_box_find_child
    - AVC_RewriteESDescriptor
    - 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:4766,1
    - Dst: gf_isom_video_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:4769,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4771
      start: 4763
    functionDepth: 2
    functionLinenumber: 4763
    functionLinenumberEnd: 4771
    functionName: video_sample_entry_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_isom_video_sample_entry_init
    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:4779,1
    - Dst: gf_isom_video_sample_entry_write
      Src: /src/gpac/src/isomedia/box_code_base.c:4781,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4783
      start: 4776
    functionDepth: 3
    functionLinenumber: 4776
    functionLinenumberEnd: 4783
    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:4790,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4795,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4796,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4798,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4799,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4801,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4801,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4802,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4806,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4807,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4810,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4813,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4816,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4819,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4822,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4824,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4825,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:4827,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:4828,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4830
      start: 4785
    functionDepth: 2
    functionLinenumber: 4785
    functionLinenumberEnd: 4830
    functionName: video_sample_entry_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_video_sample_entry_size
    - gf_isom_box_find_child
    - gf_isom_check_position
    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:4842,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4843,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4844,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4845
      start: 4838
    functionDepth: 1
    functionLinenumber: 4838
    functionLinenumberEnd: 4845
    functionName: mvex_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:4854,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4857,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:4860,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: 4864
      start: 4848
    functionDepth: 1
    functionLinenumber: 4848
    functionLinenumberEnd: 4864
    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:4870,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4871
      start: 4868
    functionDepth: 2
    functionLinenumber: 4868
    functionLinenumberEnd: 4871
    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:4875,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4876,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4878,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:4881,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:4883,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:4884,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4888
      start: 4873
    functionDepth: 1
    functionLinenumber: 4873
    functionLinenumberEnd: 4888
    functionName: mvex_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:4897,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4898
      start: 4895
    functionDepth: 2
    functionLinenumber: 4895
    functionLinenumberEnd: 4898
    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:4904,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4905,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:4906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4908
      start: 4900
    functionDepth: 3
    functionLinenumber: 4900
    functionLinenumberEnd: 4908
    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:4916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4918
      start: 4914
    functionDepth: 1
    functionLinenumber: 4914
    functionLinenumberEnd: 4918
    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:4921,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4922
      start: 4919
    functionDepth: 0
    functionLinenumber: 4919
    functionLinenumberEnd: 4922
    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:4928,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4929,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4931,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4932,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4935
      start: 4923
    functionDepth: 1
    functionLinenumber: 4923
    functionLinenumberEnd: 4935
    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:4940,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4943,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4945,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4948
      start: 4937
    functionDepth: 3
    functionLinenumber: 4937
    functionLinenumberEnd: 4948
    functionName: mehd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_u64
    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: 4955
      start: 4949
    functionDepth: 0
    functionLinenumber: 4949
    functionLinenumberEnd: 4955
    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:4965,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4966
      start: 4961
    functionDepth: 0
    functionLinenumber: 4961
    functionLinenumberEnd: 4966
    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:4974,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4975,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4976,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4977,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:4978,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4980,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4981,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4982,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4983,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:4987,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:4990,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4991,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:4992,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:4993,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4994,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4995,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4996,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4997,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4998,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:4999,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5000,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5001,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5002,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5003,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5004,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5005,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5006,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5007,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5008,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5009,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 42
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5012
      start: 4969
    functionDepth: 1
    functionLinenumber: 4969
    functionLinenumberEnd: 5012
    functionName: mvhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:5016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5028
      start: 5014
    functionDepth: 1
    functionLinenumber: 5014
    functionLinenumberEnd: 5028
    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:5037,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:5040,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:5041,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5042,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:5043,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5045,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5046,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5047,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5048,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5050,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5051,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:5052,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5053,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5054,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5055,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5056,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5057,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5058,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5059,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5060,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5061,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5062,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5063,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5064,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5065,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5066,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5067,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5068,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 35
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5070
      start: 5033
    functionDepth: 3
    functionLinenumber: 5033
    functionLinenumberEnd: 5070
    functionName: mvhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u64
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    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: 5085
      start: 5072
    functionDepth: 0
    functionLinenumber: 5072
    functionLinenumberEnd: 5085
    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:5094,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5095
      start: 5090
    functionDepth: 0
    functionLinenumber: 5090
    functionLinenumberEnd: 5095
    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: 5102
      start: 5099
    functionDepth: 0
    functionLinenumber: 5099
    functionLinenumberEnd: 5102
    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:5106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5108
      start: 5104
    functionDepth: 1
    functionLinenumber: 5104
    functionLinenumberEnd: 5108
    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:5115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5116
      start: 5113
    functionDepth: 3
    functionLinenumber: 5113
    functionLinenumberEnd: 5116
    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: 5121
      start: 5118
    functionDepth: 0
    functionLinenumber: 5118
    functionLinenumberEnd: 5121
    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:5131,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5133
      start: 5127
    functionDepth: 0
    functionLinenumber: 5127
    functionLinenumberEnd: 5133
    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:5141,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5142,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5146,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5150,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5152,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5154,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5156,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5157,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5160
      start: 5136
    functionDepth: 1
    functionLinenumber: 5136
    functionLinenumberEnd: 5160
    functionName: padb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_read_int
    - gf_malloc
    - 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:5164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5166
      start: 5162
    functionDepth: 1
    functionLinenumber: 5162
    functionLinenumberEnd: 5166
    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:5178,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5180,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5183,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5185,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5187,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5189,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5190,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5193
      start: 5172
    functionDepth: 3
    functionLinenumber: 5172
    functionLinenumberEnd: 5193
    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: 5202
      start: 5195
    functionDepth: 0
    functionLinenumber: 5195
    functionLinenumberEnd: 5202
    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:5210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5211
      start: 5207
    functionDepth: 0
    functionLinenumber: 5207
    functionLinenumberEnd: 5211
    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:5216,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5217,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5218,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5221
      start: 5213
    functionDepth: 1
    functionLinenumber: 5213
    functionLinenumberEnd: 5221
    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: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: 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:5236,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5238,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5239,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:5240,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5242
      start: 5231
    functionDepth: 2
    functionLinenumber: 5231
    functionLinenumberEnd: 5242
    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: 5248
      start: 5244
    functionDepth: 0
    functionLinenumber: 5244
    functionLinenumberEnd: 5248
    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:5255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5256
      start: 5252
    functionDepth: 0
    functionLinenumber: 5252
    functionLinenumberEnd: 5256
    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:5261,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5264
      start: 5258
    functionDepth: 1
    functionLinenumber: 5258
    functionLinenumberEnd: 5264
    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:5268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5270
      start: 5266
    functionDepth: 1
    functionLinenumber: 5266
    functionLinenumberEnd: 5270
    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:5280,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5282,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5284
      start: 5272
    functionDepth: 2
    functionLinenumber: 5272
    functionLinenumberEnd: 5284
    functionName: rtpo_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 5290
      start: 5286
    functionDepth: 0
    functionLinenumber: 5286
    functionLinenumberEnd: 5290
    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:5297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5298
      start: 5293
    functionDepth: 0
    functionLinenumber: 5293
    functionLinenumberEnd: 5298
    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:5304,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5305,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5308
      start: 5301
    functionDepth: 1
    functionLinenumber: 5301
    functionLinenumberEnd: 5308
    functionName: smhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:5312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5314
      start: 5310
    functionDepth: 1
    functionLinenumber: 5310
    functionLinenumberEnd: 5314
    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:5323,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5325,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5326,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5328
      start: 5319
    functionDepth: 3
    functionLinenumber: 5319
    functionLinenumberEnd: 5328
    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: 5337
      start: 5330
    functionDepth: 0
    functionLinenumber: 5330
    functionLinenumberEnd: 5337
    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:5346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5347
      start: 5343
    functionDepth: 0
    functionLinenumber: 5343
    functionLinenumberEnd: 5347
    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:5352,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5355
      start: 5349
    functionDepth: 1
    functionLinenumber: 5349
    functionLinenumberEnd: 5355
    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:5359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5361
      start: 5357
    functionDepth: 1
    functionLinenumber: 5357
    functionLinenumberEnd: 5361
    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:5371,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5375
      start: 5365
    functionDepth: 2
    functionLinenumber: 5365
    functionLinenumberEnd: 5375
    functionName: snro_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 5381
      start: 5377
    functionDepth: 0
    functionLinenumber: 5377
    functionLinenumberEnd: 5381
    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:5390,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5391,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5392,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5393,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5394,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5400,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5402,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5404,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5406,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5407
      start: 5385
    functionDepth: 1
    functionLinenumber: 5385
    functionLinenumberEnd: 5407
    functionName: stbl_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:5415,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5418,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5421,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5424,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5427,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5431,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5434,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5437,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5443,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5446,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5449,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5452,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5456,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:5460,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:5462,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:5466,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5474,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5477,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5480,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5483,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:5487,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: 5491
      start: 5409
    functionDepth: 1
    functionLinenumber: 5409
    functionLinenumberEnd: 5491
    functionName: stbl_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 2
    functionsReached:
    - BOX_FIELD_ASSIGN
    - GF_LOG
    - gf_list_get
    - 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:5502,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5508,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5509,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:5511,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5521,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5522,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5523,1
    - Dst: CHECK_BOX
      Src: /src/gpac/src/isomedia/box_code_base.c:5524,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/box_code_base.c:5533,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/box_code_base.c:5535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5554,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5560,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5565
      start: 5496
    functionDepth: 2
    functionLinenumber: 5496
    functionLinenumberEnd: 5565
    functionName: stbl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - stbl_GetSampleInfos
    - gf_list_count
    - gf_bs_get_cookie
    - GF_LOG
    - stbl_GetSampleDTS
    - CHECK_BOX
    - 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: 5520
      start: 5515
    functionDepth: 0
    functionLinenumber: 5515
    functionLinenumberEnd: 5520
    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:5569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5574
      start: 5567
    functionDepth: 1
    functionLinenumber: 5567
    functionLinenumberEnd: 5574
    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:5582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5583
      start: 5580
    functionDepth: 2
    functionLinenumber: 5580
    functionLinenumberEnd: 5583
    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:5590,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5591,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5592,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5593,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5594,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5595,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5596,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5597,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5598,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5599,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5600,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:5601,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5604,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5607,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5610,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5613,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:5616,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5619
      start: 5585
    functionDepth: 3
    functionLinenumber: 5585
    functionLinenumberEnd: 5619
    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:5628,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5629,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5630
      start: 5624
    functionDepth: 0
    functionLinenumber: 5624
    functionLinenumberEnd: 5630
    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:5638,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5641,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5646,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5651,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5655
      start: 5633
    functionDepth: 1
    functionLinenumber: 5633
    functionLinenumberEnd: 5655
    functionName: stco_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - GF_LOG
    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:5659,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5661
      start: 5657
    functionDepth: 1
    functionLinenumber: 5657
    functionLinenumberEnd: 5661
    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:5672,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5674,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5679
      start: 5667
    functionDepth: 3
    functionLinenumber: 5667
    functionLinenumberEnd: 5679
    functionName: stco_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 5688
      start: 5682
    functionDepth: 0
    functionLinenumber: 5682
    functionLinenumberEnd: 5688
    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:5698,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5699,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5700
      start: 5694
    functionDepth: 0
    functionLinenumber: 5694
    functionLinenumberEnd: 5700
    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:5712,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5715,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:5717,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5719
      start: 5703
    functionDepth: 1
    functionLinenumber: 5703
    functionLinenumberEnd: 5719
    functionName: stdp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - 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:5723,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5725
      start: 5721
    functionDepth: 1
    functionLinenumber: 5721
    functionLinenumberEnd: 5725
    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:5735,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:5739,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5742
      start: 5730
    functionDepth: 3
    functionLinenumber: 5730
    functionLinenumberEnd: 5742
    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: 5750
      start: 5744
    functionDepth: 0
    functionLinenumber: 5744
    functionLinenumberEnd: 5750
    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:5759,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5760,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5761
      start: 5755
    functionDepth: 0
    functionLinenumber: 5755
    functionLinenumberEnd: 5761
    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:5769,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5770,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5773,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5780,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5785,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5786,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5787,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5791,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5803
      start: 5764
    functionDepth: 1
    functionLinenumber: 5764
    functionLinenumberEnd: 5803
    functionName: stsc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - GF_LOG
    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:5807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5809
      start: 5805
    functionDepth: 1
    functionLinenumber: 5805
    functionLinenumberEnd: 5809
    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:5820,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5822,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5824,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5825,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5826,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5829
      start: 5814
    functionDepth: 3
    functionLinenumber: 5814
    functionLinenumberEnd: 5829
    functionName: stsc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 5837
      start: 5831
    functionDepth: 0
    functionLinenumber: 5831
    functionLinenumberEnd: 5837
    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:5845,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5846
      start: 5841
    functionDepth: 0
    functionLinenumber: 5841
    functionLinenumberEnd: 5846
    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:5853,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:5863,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:5869,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:5869,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: 5872
      start: 5848
    functionDepth: 5
    functionLinenumber: 5848
    functionLinenumberEnd: 5872
    functionName: stsd_on_child_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_box_valid_in_parent
    - gf_isom_box_del_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:5877,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5878,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:5880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5881
      start: 5875
    functionDepth: 2
    functionLinenumber: 5875
    functionLinenumberEnd: 5881
    functionName: stsd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    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:5885,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:5886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5888
      start: 5883
    functionDepth: 1
    functionLinenumber: 5883
    functionLinenumberEnd: 5888
    functionName: stsd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:5899,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5901,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5902,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5904
      start: 5893
    functionDepth: 3
    functionLinenumber: 5893
    functionLinenumberEnd: 5904
    functionName: stsd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 5911
      start: 5906
    functionDepth: 0
    functionLinenumber: 5906
    functionLinenumberEnd: 5911
    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:5922,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5923,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:5925,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5926,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5927
      start: 5916
    functionDepth: 1
    functionLinenumber: 5916
    functionLinenumberEnd: 5927
    functionName: stsh_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - gf_list_enum
    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:5937,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5938,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:5943,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5945,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5946,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:5947,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5951
      start: 5931
    functionDepth: 1
    functionLinenumber: 5931
    functionLinenumberEnd: 5951
    functionName: stsh_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
    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:5955,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:5957,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:5959,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5963
      start: 5953
    functionDepth: 1
    functionLinenumber: 5953
    functionLinenumberEnd: 5963
    functionName: stsh_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:5975,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5977,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:5977,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:5979,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5980,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:5981,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5984
      start: 5968
    functionDepth: 3
    functionLinenumber: 5968
    functionLinenumberEnd: 5984
    functionName: stsh_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_full_box_write
    - gf_list_enum
    - gf_bs_write_u32
    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:5989,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5991
      start: 5986
    functionDepth: 1
    functionLinenumber: 5986
    functionLinenumberEnd: 5991
    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:6001,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6002,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6003
      start: 5997
    functionDepth: 0
    functionLinenumber: 5997
    functionLinenumberEnd: 6003
    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:6010,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6013,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6018,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6022,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6025
      start: 6005
    functionDepth: 1
    functionLinenumber: 6005
    functionLinenumberEnd: 6025
    functionName: stss_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - GF_LOG
    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:6029,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6031
      start: 6027
    functionDepth: 1
    functionLinenumber: 6027
    functionLinenumberEnd: 6031
    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:6042,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6044,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6046,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6049
      start: 6036
    functionDepth: 3
    functionLinenumber: 6036
    functionLinenumberEnd: 6049
    functionName: stss_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 6056
      start: 6051
    functionDepth: 0
    functionLinenumber: 6051
    functionLinenumberEnd: 6056
    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:6065,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6066,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6067
      start: 6061
    functionDepth: 0
    functionLinenumber: 6061
    functionLinenumberEnd: 6067
    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:6078,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6079,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6080,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6083,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6084,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6085,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6118,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6121,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6140,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6147,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6155,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6161,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6168,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6173,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 104
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6184
      start: 6070
    functionDepth: 1
    functionLinenumber: 6070
    functionLinenumberEnd: 6184
    functionName: stsz_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    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:6188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6192
      start: 6186
    functionDepth: 1
    functionLinenumber: 6186
    functionLinenumberEnd: 6192
    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:6203,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6207,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6209,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6210,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6212,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6217,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6224,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6226,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6229,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:6234,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6241
      start: 6197
    functionDepth: 3
    functionLinenumber: 6197
    functionLinenumberEnd: 6241
    functionName: stsz_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_u24
    - 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:6286,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6308
      start: 6243
    functionDepth: 0
    functionLinenumber: 6243
    functionLinenumberEnd: 6308
    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:6316,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6317,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6318
      start: 6313
    functionDepth: 0
    functionLinenumber: 6313
    functionLinenumberEnd: 6318
    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:6331,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6334,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6339,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6343,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6344,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6361,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6384,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/box_code_base.c:6386,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6412,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 65
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6421
      start: 6321
    functionDepth: 1
    functionLinenumber: 6321
    functionLinenumberEnd: 6421
    functionName: stts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - memmove
    - 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:6425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6427
      start: 6423
    functionDepth: 1
    functionLinenumber: 6423
    functionLinenumberEnd: 6427
    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:6438,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6440,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:6443,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6446
      start: 6432
    functionDepth: 3
    functionLinenumber: 6432
    functionLinenumberEnd: 6446
    functionName: stts_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 6453
      start: 6448
    functionDepth: 0
    functionLinenumber: 6448
    functionLinenumberEnd: 6453
    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:6465,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6466
      start: 6461
    functionDepth: 0
    functionLinenumber: 6461
    functionLinenumberEnd: 6466
    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:6472,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6473,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6477,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6478,1
    - 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
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6485,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6486,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6489,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6490,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6493,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6494,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6497
      start: 6468
    functionDepth: 1
    functionLinenumber: 6468
    functionLinenumberEnd: 6497
    functionName: tfhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_read_u64
    - 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:6501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6504
      start: 6499
    functionDepth: 1
    functionLinenumber: 6499
    functionLinenumberEnd: 6504
    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:6517,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6519,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6523,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6526,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6529,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6532,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6535,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6538
      start: 6511
    functionDepth: 3
    functionLinenumber: 6511
    functionLinenumberEnd: 6538
    functionName: tfhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_u64
    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: 6552
      start: 6540
    functionDepth: 0
    functionLinenumber: 6540
    functionLinenumberEnd: 6552
    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:6562,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6563
      start: 6559
    functionDepth: 0
    functionLinenumber: 6559
    functionLinenumberEnd: 6563
    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:6568,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6571
      start: 6565
    functionDepth: 1
    functionLinenumber: 6565
    functionLinenumberEnd: 6571
    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:6575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6577
      start: 6573
    functionDepth: 1
    functionLinenumber: 6573
    functionLinenumberEnd: 6577
    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:6586,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6588,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6590
      start: 6581
    functionDepth: 2
    functionLinenumber: 6581
    functionLinenumberEnd: 6590
    functionName: tims_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 6596
      start: 6592
    functionDepth: 0
    functionLinenumber: 6592
    functionLinenumberEnd: 6596
    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:6605,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6607
      start: 6601
    functionDepth: 0
    functionLinenumber: 6601
    functionLinenumberEnd: 6607
    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:6615,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6616,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6617,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6618,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6619,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6620,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6622,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6623,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6624,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6625,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6626,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6627,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6631,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6632,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6633,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6634,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6635,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6636,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6637,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6638,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6639,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6640,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6641,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6642,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6643,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6644,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6645,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6646,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6647,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6648,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6650
      start: 6610
    functionDepth: 1
    functionLinenumber: 6610
    functionLinenumberEnd: 6650
    functionName: tkhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - gf_bs_read_u32
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:6654,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6659
      start: 6652
    functionDepth: 1
    functionLinenumber: 6652
    functionLinenumberEnd: 6659
    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:6670,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6673,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6674,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6675,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6676,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6677,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6679,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6680,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6681,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6682,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6683,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6685,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6686,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6687,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6688,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6689,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:6690,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6691,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6692,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6693,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6694,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6695,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6696,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6697,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6698,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6699,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6700,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6701,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 35
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6703
      start: 6665
    functionDepth: 3
    functionLinenumber: 6665
    functionLinenumberEnd: 6703
    functionName: tkhd_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
    - gf_bs_write_u64
    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: 6718
      start: 6705
    functionDepth: 0
    functionLinenumber: 6705
    functionLinenumberEnd: 6718
    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:6730,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6731,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6732,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6733,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6734,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:6735,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6736,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6737
      start: 6726
    functionDepth: 1
    functionLinenumber: 6726
    functionLinenumberEnd: 6737
    functionName: traf_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:6745,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6748,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6751,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6754,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6757,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6760,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6764,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6767,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6770,1
    - Dst: BOX_FIELD_LIST_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6773,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6778,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6783,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6786,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6792,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:6798,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: 6802
      start: 6739
    functionDepth: 1
    functionLinenumber: 6739
    functionLinenumberEnd: 6802
    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:6808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:6812,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6816
      start: 6805
    functionDepth: 2
    functionLinenumber: 6805
    functionLinenumberEnd: 6816
    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:6820,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:6821,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/isomedia/box_code_base.c:6823,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6826
      start: 6818
    functionDepth: 1
    functionLinenumber: 6818
    functionLinenumberEnd: 6826
    functionName: traf_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_sys_old_arch_compat
    - gf_list_new
    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:6833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6834
      start: 6831
    functionDepth: 2
    functionLinenumber: 6831
    functionLinenumberEnd: 6834
    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:6842,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6843,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6845,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6846,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6850,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6851,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6852,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6854,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6855,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6856,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6859,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6860,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6861,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6862,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6863,1
    - Dst: gf_isom_check_position_list
      Src: /src/gpac/src/isomedia/box_code_base.c:6864,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6868,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:6872,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6874
      start: 6836
    functionDepth: 3
    functionLinenumber: 6836
    functionLinenumberEnd: 6874
    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:6881,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6885
      start: 6879
    functionDepth: 1
    functionLinenumber: 6879
    functionLinenumberEnd: 6885
    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:6889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6890
      start: 6887
    functionDepth: 0
    functionLinenumber: 6887
    functionLinenumberEnd: 6890
    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:6896,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6897,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6898,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6901,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6902,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6903,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6905,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6906,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6911
      start: 6893
    functionDepth: 1
    functionLinenumber: 6893
    functionLinenumberEnd: 6911
    functionName: tfxd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - 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:6919,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6922,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6923,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6925,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6926,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6928,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6929,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6932
      start: 6915
    functionDepth: 2
    functionLinenumber: 6915
    functionLinenumberEnd: 6932
    functionName: tfxd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_u24
    - 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: 6939
      start: 6934
    functionDepth: 0
    functionLinenumber: 6934
    functionLinenumberEnd: 6939
    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:6946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6949
      start: 6944
    functionDepth: 1
    functionLinenumber: 6944
    functionLinenumberEnd: 6949
    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:6954,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:6955,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6956
      start: 6951
    functionDepth: 0
    functionLinenumber: 6951
    functionLinenumberEnd: 6956
    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:6963,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6964,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6965,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6966,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:6967,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6972,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6973,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6974,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:6976,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6977,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:6978,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6982
      start: 6959
    functionDepth: 1
    functionLinenumber: 6959
    functionLinenumberEnd: 6982
    functionName: tfrf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - 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:6991,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6994,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:6995,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:6996,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:6999,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:7000,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7002,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7003,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7007
      start: 6986
    functionDepth: 2
    functionLinenumber: 6986
    functionLinenumberEnd: 7007
    functionName: tfrf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_u24
    - 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: 7016
      start: 7009
    functionDepth: 0
    functionLinenumber: 7009
    functionLinenumberEnd: 7016
    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:7027,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7029,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7030
      start: 7022
    functionDepth: 1
    functionLinenumber: 7022
    functionLinenumberEnd: 7030
    functionName: trak_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    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:7034,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/box_code_base.c:7037,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7038,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:7039,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7042,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7045,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7047,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7048,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:7049,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:7050,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7051,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7055,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/box_code_base.c:7056,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7057,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7062,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7064,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:7069,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7070,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/box_code_base.c:7071,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: 7072
      start: 7032
    functionDepth: 4
    functionLinenumber: 7032
    functionLinenumberEnd: 7072
    functionName: stsd_switch_box
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_isom_box_array_read
    - gf_bs_set_cookie
    - gf_isom_box_del
    - gf_list_insert
    - gf_bs_available
    - gf_list_rem
    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:7084,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7088,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:7089,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7094,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:7095,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:7100,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/box_code_base.c:7112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7122,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7122,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7122,1
    - Dst: gf_box_valid_in_parent
      Src: /src/gpac/src/isomedia/box_code_base.c:7248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7251,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7251,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7256,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7261,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7265,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:7265,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7276,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7277,1
    - Dst: gnrv_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7279,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7281,1
    - Dst: gnrv_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7282,1
    - Dst: stsd_switch_box
      Src: /src/gpac/src/isomedia/box_code_base.c:7286,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7291,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7293,1
    - Dst: gnra_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7294,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7296,1
    - Dst: gnra_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7297,1
    - Dst: stsd_switch_box
      Src: /src/gpac/src/isomedia/box_code_base.c:7301,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7307,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7309,1
    - Dst: gnrm_box_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7311,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7313,1
    - Dst: gnrm_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7314,1
    - Dst: stsd_switch_box
      Src: /src/gpac/src/isomedia/box_code_base.c:7318,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 213
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7324
      start: 7075
    functionDepth: 5
    functionLinenumber: 7075
    functionLinenumberEnd: 7324
    functionName: gf_isom_check_sample_desc
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_box_valid_in_parent
    - GF_LOG
    - gnra_box_read
    - gnrv_box_del
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_bs_new
    - gnrm_box_read
    - gnra_box_del
    - gf_isom_box_new
    - gf_bs_del
    - stsd_switch_box
    - gnrv_box_read
    - gnrm_box_del
    - gf_4cc_to_str
    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:7333,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7336,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7339,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7342,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7345,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7348,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7351,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7356,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7359,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7362,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7366,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: 7371
      start: 7327
    functionDepth: 1
    functionLinenumber: 7327
    functionLinenumberEnd: 7371
    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:7379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7382,1
    - Dst: gf_isom_check_sample_desc
      Src: /src/gpac/src/isomedia/box_code_base.c:7387,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7400,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:7405,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7406,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7417
      start: 7374
    functionDepth: 6
    functionLinenumber: 7374
    functionLinenumberEnd: 7417
    functionName: trak_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_isom_check_sample_desc
    - gf_isom_box_array_read
    - gf_list_get
    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:7421,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7423
      start: 7419
    functionDepth: 1
    functionLinenumber: 7419
    functionLinenumberEnd: 7423
    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:7430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7431
      start: 7428
    functionDepth: 2
    functionLinenumber: 7428
    functionLinenumberEnd: 7431
    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:7441,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7444,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7446,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7447,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7448,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7449,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7450,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7451,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7452,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/isomedia/box_code_base.c:7453,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7455
      start: 7433
    functionDepth: 2
    functionLinenumber: 7433
    functionLinenumberEnd: 7455
    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:7463,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7464,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7465
      start: 7459
    functionDepth: 0
    functionLinenumber: 7459
    functionLinenumberEnd: 7465
    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:7471,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7472,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7473,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7477,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:7480,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7483,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7484,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7487
      start: 7467
    functionDepth: 1
    functionLinenumber: 7467
    functionLinenumberEnd: 7487
    functionName: stri_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_SAFE_ALLOC_N
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:7491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7493
      start: 7489
    functionDepth: 1
    functionLinenumber: 7489
    functionLinenumberEnd: 7493
    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:7503,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7506,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7507,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7508,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7510,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7513
      start: 7498
    functionDepth: 3
    functionLinenumber: 7498
    functionLinenumberEnd: 7513
    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: 7521
      start: 7515
    functionDepth: 0
    functionLinenumber: 7515
    functionLinenumberEnd: 7521
    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:7529,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7531
      start: 7525
    functionDepth: 0
    functionLinenumber: 7525
    functionLinenumberEnd: 7531
    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:7537,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7538,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7539,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7540,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:7541,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7547
      start: 7533
    functionDepth: 1
    functionLinenumber: 7533
    functionLinenumberEnd: 7547
    functionName: stsg_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - GF_SAFE_ALLOC_N
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:7551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7553
      start: 7549
    functionDepth: 1
    functionLinenumber: 7549
    functionLinenumberEnd: 7553
    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:7563,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7566,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7567,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7569,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7572
      start: 7558
    functionDepth: 3
    functionLinenumber: 7558
    functionLinenumberEnd: 7572
    functionName: stsg_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 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: 7579
      start: 7574
    functionDepth: 0
    functionLinenumber: 7574
    functionLinenumberEnd: 7579
    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:7586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7587
      start: 7584
    functionDepth: 0
    functionLinenumber: 7584
    functionLinenumberEnd: 7587
    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:7595,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:7598,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: 7602
      start: 7589
    functionDepth: 1
    functionLinenumber: 7589
    functionLinenumberEnd: 7602
    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:7609,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:7613,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7617
      start: 7605
    functionDepth: 2
    functionLinenumber: 7605
    functionLinenumberEnd: 7617
    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:7621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7623
      start: 7619
    functionDepth: 1
    functionLinenumber: 7619
    functionLinenumberEnd: 7623
    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:7630,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7631
      start: 7628
    functionDepth: 2
    functionLinenumber: 7628
    functionLinenumberEnd: 7631
    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: 7636
      start: 7633
    functionDepth: 0
    functionLinenumber: 7633
    functionLinenumberEnd: 7636
    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:7644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7645
      start: 7640
    functionDepth: 0
    functionLinenumber: 7640
    functionLinenumberEnd: 7645
    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:7650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7651
      start: 7648
    functionDepth: 2
    functionLinenumber: 7648
    functionLinenumberEnd: 7651
    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:7655,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7657
      start: 7653
    functionDepth: 1
    functionLinenumber: 7653
    functionLinenumberEnd: 7657
    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:7664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7665
      start: 7661
    functionDepth: 2
    functionLinenumber: 7661
    functionLinenumberEnd: 7665
    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: 7670
      start: 7667
    functionDepth: 0
    functionLinenumber: 7667
    functionLinenumberEnd: 7670
    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:7678,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7679,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7680
      start: 7674
    functionDepth: 0
    functionLinenumber: 7674
    functionLinenumberEnd: 7680
    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:7693,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7697,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7700
      start: 7683
    functionDepth: 1
    functionLinenumber: 7683
    functionLinenumberEnd: 7700
    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:7704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7706
      start: 7702
    functionDepth: 1
    functionLinenumber: 7702
    functionLinenumberEnd: 7706
    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:7723,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - ref
    - trackID
    - outRefIndex
    argTypes:
    - GF_TrackReferenceTypeBox*
    - GF_ISOTrackID
    - u16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7729
      start: 7709
    functionDepth: 0
    functionLinenumber: 7709
    functionLinenumberEnd: 7729
    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:7742,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7746,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7749
      start: 7735
    functionDepth: 2
    functionLinenumber: 7735
    functionLinenumberEnd: 7749
    functionName: reftype_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 7758
      start: 7752
    functionDepth: 0
    functionLinenumber: 7752
    functionLinenumberEnd: 7758
    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:7770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7771
      start: 7766
    functionDepth: 0
    functionLinenumber: 7766
    functionLinenumberEnd: 7771
    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:7778,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7779,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7780,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7781,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7782,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7785
      start: 7774
    functionDepth: 1
    functionLinenumber: 7774
    functionLinenumberEnd: 7785
    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:7789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7791
      start: 7787
    functionDepth: 1
    functionLinenumber: 7787
    functionLinenumberEnd: 7791
    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:7803,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7806,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7808,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7809,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7810,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7811,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7813
      start: 7798
    functionDepth: 3
    functionLinenumber: 7798
    functionLinenumberEnd: 7813
    functionName: trex_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 7820
      start: 7815
    functionDepth: 0
    functionLinenumber: 7815
    functionLinenumberEnd: 7820
    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:7832,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7833
      start: 7828
    functionDepth: 0
    functionLinenumber: 7828
    functionLinenumberEnd: 7833
    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:7840,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7841,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:7843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7844
      start: 7836
    functionDepth: 2
    functionLinenumber: 7836
    functionLinenumberEnd: 7844
    functionName: trep_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    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:7848,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:7849,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7851
      start: 7846
    functionDepth: 1
    functionLinenumber: 7846
    functionLinenumberEnd: 7851
    functionName: trep_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:7863,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7866,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7868
      start: 7858
    functionDepth: 3
    functionLinenumber: 7858
    functionLinenumberEnd: 7868
    functionName: trep_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 7875
      start: 7870
    functionDepth: 0
    functionLinenumber: 7870
    functionLinenumberEnd: 7875
    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:7892,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7893,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7894,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:7896,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:7897,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7898,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7899,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:7901,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:7903,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7904
      start: 7887
    functionDepth: 1
    functionLinenumber: 7887
    functionLinenumberEnd: 7904
    functionName: trun_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    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: 7912
      start: 7908
    functionDepth: 0
    functionLinenumber: 7908
    functionLinenumberEnd: 7912
    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: 7918
      start: 7914
    functionDepth: 0
    functionLinenumber: 7914
    functionLinenumberEnd: 7918
    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:7921,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - nbbits
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7925
      start: 7919
    functionDepth: 1
    functionLinenumber: 7919
    functionLinenumberEnd: 7925
    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:7937,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7938,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7942,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7943,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:7945,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7946,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:7951,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7952,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7956,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:7959,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:7964,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:7966,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:7984,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7987,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7987,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7988,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:7988,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7991,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7991,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7992,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:7992,1
    - Dst: ctrn_read_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:7995,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7995,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:7996,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:7996,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:7999,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:7999,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8000,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8000,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8007,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8008,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8010,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8011,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8015,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8016,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8018,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8019,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8023,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8024,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8026,1
    - Dst: ctrn_read_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:8027,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8031,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8032,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8034,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8035,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 100
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8042
      start: 7927
    functionDepth: 2
    functionLinenumber: 7927
    functionLinenumberEnd: 8042
    functionName: ctrn_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ctrn_field_size
    - ISOM_DECREASE_SIZE
    - ctrn_read_flags
    - GF_SAFEALLOC
    - gf_bs_read_int
    - gf_isom_ctrn_field_size_bits
    - gf_list_get
    - gf_bs_read_u32
    - gf_list_add
    - 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:8054,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8062,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8063,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8067,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8068,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8071,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8072,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8075,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:8078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:8090,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:8094,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8097,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:8101,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8109,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8116,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8121,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8126,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8128,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8132,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:8137,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 78
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8141
      start: 8045
    functionDepth: 3
    functionLinenumber: 8045
    functionLinenumberEnd: 8141
    functionName: trun_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - ctrn_box_read
    - gf_bs_read_u32
    - memset
    - 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:8145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8148
      start: 8143
    functionDepth: 1
    functionLinenumber: 8143
    functionLinenumberEnd: 8148
    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:8159,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - flags
    - field_size
    argTypes:
    - GF_BitStream*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8160
      start: 8153
    functionDepth: 1
    functionLinenumber: 8153
    functionLinenumberEnd: 8160
    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:8168,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8170,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: 8172
      start: 8163
    functionDepth: 1
    functionLinenumber: 8163
    functionLinenumberEnd: 8172
    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:8185,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:8190,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:8193,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8195,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:8199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8202,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8203,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8203,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8204,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8204,1
    - Dst: ctrn_write_sample_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:8205,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8205,1
    - Dst: ctrn_write_ctso
      Src: /src/gpac/src/isomedia/box_code_base.c:8206,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:8208,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8210,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8212,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8213,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8217,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8219,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8220,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8224,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8226,1
    - Dst: ctrn_write_sample_flags
      Src: /src/gpac/src/isomedia/box_code_base.c:8227,1
    - Dst: gf_isom_ctrn_field_size_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:8231,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8233,1
    - Dst: ctrn_write_ctso
      Src: /src/gpac/src/isomedia/box_code_base.c:8234,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8239
      start: 8174
    functionDepth: 3
    functionLinenumber: 8174
    functionLinenumberEnd: 8239
    functionName: ctrn_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_full_box_write
    - gf_bs_write_int
    - ctrn_write_sample_flags
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_isom_ctrn_field_size_bits
    - gf_list_get
    - ctrn_write_ctso
    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:8251,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8254,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8257,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8261,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8264,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8272,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8275,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8279,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8283,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8285,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:8298,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 47
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8302
      start: 8242
    functionDepth: 4
    functionLinenumber: 8242
    functionLinenumberEnd: 8302
    functionName: trun_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - ctrn_box_write
    - gf_bs_write_u32
    - gf_isom_full_box_write
    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: 8313
      start: 8305
    functionDepth: 0
    functionLinenumber: 8305
    functionLinenumberEnd: 8313
    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: 8320
      start: 8314
    functionDepth: 0
    functionLinenumber: 8314
    functionLinenumberEnd: 8320
    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:8324,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:8325,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - val
    argTypes:
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8327
      start: 8321
    functionDepth: 1
    functionLinenumber: 8321
    functionLinenumberEnd: 8327
    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:8336,1
    - Dst: ctrn_s32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8337,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:8339,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8340,1
    - Dst: ctrn_s32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - ctrn
    - ctts
    argTypes:
    - GF_TrackFragmentRunBox*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8342
      start: 8328
    functionDepth: 2
    functionLinenumber: 8328
    functionLinenumberEnd: 8342
    functionName: ctrn_ctts_to_index
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ctrn_s32_to_index
    - ctrn_u32_to_index
    - gf_assert
    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:8357,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:8364,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8389,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8393,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8395,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8401,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8403,1
    - Dst: ctrn_sample_flags_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8409,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8411,1
    - Dst: ctrn_ctts_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8416,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8418,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8425,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8428,1
    - Dst: ctrn_u32_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8433,1
    - Dst: ctrn_sample_flags_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8438,1
    - Dst: ctrn_ctts_to_index
      Src: /src/gpac/src/isomedia/box_code_base.c:8443,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8450,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8454,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8458,1
    - Dst: ctrn_field_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8462,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 104
    argCount: 1
    argNames:
    - ctrn
    argTypes:
    - GF_TrackFragmentRunBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8466
      start: 8344
    functionDepth: 3
    functionLinenumber: 8344
    functionLinenumberEnd: 8466
    functionName: ctrn_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - ctrn_field_size
    - ctrn_sample_flags_to_index
    - ctrn_ctts_to_index
    - ABS
    - gf_list_get
    - ctrn_u32_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:8475,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8503
      start: 8469
    functionDepth: 4
    functionLinenumber: 8469
    functionLinenumberEnd: 8503
    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:8515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8516
      start: 8512
    functionDepth: 0
    functionLinenumber: 8512
    functionLinenumberEnd: 8516
    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:8521,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8524
      start: 8518
    functionDepth: 1
    functionLinenumber: 8518
    functionLinenumberEnd: 8524
    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:8528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8530
      start: 8526
    functionDepth: 1
    functionLinenumber: 8526
    functionLinenumberEnd: 8530
    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:8540,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8542,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8544
      start: 8534
    functionDepth: 2
    functionLinenumber: 8534
    functionLinenumberEnd: 8544
    functionName: tsro_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 8550
      start: 8546
    functionDepth: 0
    functionLinenumber: 8546
    functionLinenumberEnd: 8550
    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:8561,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/box_code_base.c:8562,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8563,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:8565,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8566,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8567
      start: 8554
    functionDepth: 3
    functionLinenumber: 8554
    functionLinenumberEnd: 8567
    functionName: udta_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - 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:8575,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/box_code_base.c:8578,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - ptr
    - box_type
    - uuid
    argTypes:
    - GF_UserDataBox*
    - u32
    - bin128*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8582
      start: 8569
    functionDepth: 1
    functionLinenumber: 8569
    functionLinenumberEnd: 8582
    functionName: udta_getEntry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 11
    functionsReached:
    - memcmp
    - gf_list_enum
    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:8594,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/box_code_base.c:8603,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8607,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:8609,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:8613,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:8614,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8616,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:8619,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/box_code_base.c:8623,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:8628,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:8630,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/box_code_base.c:8635,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/box_code_base.c:8637,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:8638,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:8643,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: 8644
      start: 8584
    functionDepth: 4
    functionLinenumber: 8584
    functionLinenumberEnd: 8644
    functionName: udta_on_child_box_ex
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_get
    - memcmp
    - gf_list_del_item
    - udta_getEntry
    - gf_list_new
    - gf_isom_box_del
    - memset
    - gf_list_add
    - memcpy
    - 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:8647,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: 8648
      start: 8645
    functionDepth: 5
    functionLinenumber: 8645
    functionLinenumberEnd: 8648
    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:8652,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:8658,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8662
      start: 8650
    functionDepth: 2
    functionLinenumber: 8650
    functionLinenumberEnd: 8662
    functionName: udta_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_isom_box_array_read
    - GF_LOG
    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:8666,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:8667,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8673
      start: 8664
    functionDepth: 1
    functionLinenumber: 8664
    functionLinenumberEnd: 8673
    functionName: udta_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:8685,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/box_code_base.c:8688,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/box_code_base.c:8691,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8695
      start: 8678
    functionDepth: 2
    functionLinenumber: 8678
    functionLinenumberEnd: 8695
    functionName: udta_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_isom_box_array_write
    - gf_list_enum
    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:8705,1
    - Dst: gf_isom_box_array_size
      Src: /src/gpac/src/isomedia/box_code_base.c:8708,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8712
      start: 8697
    functionDepth: 2
    functionLinenumber: 8697
    functionLinenumberEnd: 8712
    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:8721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8722
      start: 8717
    functionDepth: 0
    functionLinenumber: 8717
    functionLinenumberEnd: 8722
    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:8729,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:8730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8732
      start: 8725
    functionDepth: 1
    functionLinenumber: 8725
    functionLinenumberEnd: 8732
    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:8736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8739
      start: 8734
    functionDepth: 1
    functionLinenumber: 8734
    functionLinenumberEnd: 8739
    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:8750,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:8752,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8754
      start: 8745
    functionDepth: 3
    functionLinenumber: 8745
    functionLinenumberEnd: 8754
    functionName: vmhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u64
    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: 8761
      start: 8756
    functionDepth: 0
    functionLinenumber: 8756
    functionLinenumberEnd: 8761
    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:8767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8768
      start: 8765
    functionDepth: 0
    functionLinenumber: 8765
    functionLinenumberEnd: 8768
    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: 8775
      start: 8771
    functionDepth: 0
    functionLinenumber: 8771
    functionLinenumberEnd: 8775
    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:8779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8781
      start: 8777
    functionDepth: 1
    functionLinenumber: 8777
    functionLinenumberEnd: 8781
    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:8788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8790
      start: 8786
    functionDepth: 1
    functionLinenumber: 8786
    functionLinenumberEnd: 8790
    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: 8796
      start: 8792
    functionDepth: 0
    functionLinenumber: 8792
    functionLinenumberEnd: 8796
    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:8804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8806
      start: 8802
    functionDepth: 1
    functionLinenumber: 8802
    functionLinenumberEnd: 8806
    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:8813,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8814,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8815,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8816
      start: 8809
    functionDepth: 0
    functionLinenumber: 8809
    functionLinenumberEnd: 8816
    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:8825,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:8827,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8830,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8831,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8834
      start: 8819
    functionDepth: 1
    functionLinenumber: 8819
    functionLinenumberEnd: 8834
    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:8844,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8847,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8848,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8851
      start: 8839
    functionDepth: 3
    functionLinenumber: 8839
    functionLinenumberEnd: 8851
    functionName: pdin_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 8858
      start: 8853
    functionDepth: 0
    functionLinenumber: 8853
    functionLinenumberEnd: 8858
    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:8867,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8869
      start: 8865
    functionDepth: 1
    functionLinenumber: 8865
    functionLinenumberEnd: 8869
    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:8876,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:8877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8878
      start: 8872
    functionDepth: 0
    functionLinenumber: 8872
    functionLinenumberEnd: 8878
    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:8889,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:8892,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:8893,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8895
      start: 8881
    functionDepth: 1
    functionLinenumber: 8881
    functionLinenumberEnd: 8895
    functionName: sdtp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_malloc
    - ISOM_DECREASE_SIZE
    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:8904,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:8906,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8908
      start: 8900
    functionDepth: 3
    functionLinenumber: 8900
    functionLinenumberEnd: 8908
    functionName: sdtp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    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: 8915
      start: 8910
    functionDepth: 0
    functionLinenumber: 8910
    functionLinenumberEnd: 8915
    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:8922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8924
      start: 8920
    functionDepth: 1
    functionLinenumber: 8920
    functionLinenumberEnd: 8924
    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:8931,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8932
      start: 8927
    functionDepth: 0
    functionLinenumber: 8927
    functionLinenumberEnd: 8932
    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:8938,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8939,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8940,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8942
      start: 8935
    functionDepth: 1
    functionLinenumber: 8935
    functionLinenumberEnd: 8942
    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:8950,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8952,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8953,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8955
      start: 8947
    functionDepth: 2
    functionLinenumber: 8947
    functionLinenumberEnd: 8955
    functionName: pasp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 8961
      start: 8957
    functionDepth: 0
    functionLinenumber: 8957
    functionLinenumberEnd: 8961
    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:8969,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8971
      start: 8967
    functionDepth: 1
    functionLinenumber: 8967
    functionLinenumberEnd: 8971
    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:8978,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8979
      start: 8974
    functionDepth: 0
    functionLinenumber: 8974
    functionLinenumberEnd: 8979
    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:8985,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8986,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8987,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8988,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8989,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8990,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8991,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8992,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:8993,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8995
      start: 8982
    functionDepth: 1
    functionLinenumber: 8982
    functionLinenumberEnd: 8995
    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:9003,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9005,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9006,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9007,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9008,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9009,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9010,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9011,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9012,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9014
      start: 9000
    functionDepth: 2
    functionLinenumber: 9000
    functionLinenumberEnd: 9014
    functionName: clap_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 9020
      start: 9016
    functionDepth: 0
    functionLinenumber: 9016
    functionLinenumberEnd: 9020
    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:9030,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:9031,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9033
      start: 9027
    functionDepth: 1
    functionLinenumber: 9027
    functionLinenumberEnd: 9033
    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:9040,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9042,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9043,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9044,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9045,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9046,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9047
      start: 9036
    functionDepth: 1
    functionLinenumber: 9036
    functionLinenumberEnd: 9047
    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:9056,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: 9060
      start: 9050
    functionDepth: 1
    functionLinenumber: 9050
    functionLinenumberEnd: 9060
    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:9069,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9071,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9074,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9079,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9084,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9093,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9094,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9099,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9101,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9116,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9117,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9123,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9125,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9131,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9140,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9141,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9146,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9148,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/box_code_base.c:9154,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9157,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:9158,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 87
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9159
      start: 9062
    functionDepth: 2
    functionLinenumber: 9062
    functionLinenumberEnd: 9159
    functionName: metx_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_free
    - gf_malloc
    - gf_isom_base_sample_entry_read
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    - gf_strdup
    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:9167,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9170,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9171,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9175,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9175,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9176,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9181,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9181,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9183,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9186,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9186,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9187,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9191,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9191,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9193,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9199,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9199,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9201,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9205
      start: 9164
    functionDepth: 2
    functionLinenumber: 9164
    functionLinenumberEnd: 9205
    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
    - strlen
    - gf_bs_write_u8
    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:9214,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9221,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9225,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9230,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9238,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9242
      start: 9207
    functionDepth: 0
    functionLinenumber: 9207
    functionLinenumberEnd: 9242
    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:9250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9252
      start: 9248
    functionDepth: 1
    functionLinenumber: 9248
    functionLinenumberEnd: 9252
    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:9260,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9262
      start: 9255
    functionDepth: 0
    functionLinenumber: 9255
    functionLinenumberEnd: 9262
    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:9268,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9271,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9276
      start: 9264
    functionDepth: 1
    functionLinenumber: 9264
    functionLinenumberEnd: 9276
    functionName: txtc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_data
    - 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:9284,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9288,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:9288,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9289,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9291
      start: 9281
    functionDepth: 3
    functionLinenumber: 9281
    functionLinenumberEnd: 9291
    functionName: txtc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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:9297,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9300
      start: 9293
    functionDepth: 0
    functionLinenumber: 9293
    functionLinenumberEnd: 9300
    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:9306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9308
      start: 9304
    functionDepth: 1
    functionLinenumber: 9304
    functionLinenumberEnd: 9308
    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:9312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9315
      start: 9310
    functionDepth: 1
    functionLinenumber: 9310
    functionLinenumberEnd: 9315
    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:9320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9321
      start: 9317
    functionDepth: 0
    functionLinenumber: 9317
    functionLinenumberEnd: 9321
    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:9330,1
    - Dst: gf_odf_ac3_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:9333,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9334,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9338,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9339,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9340,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:9343,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9346
      start: 9324
    functionDepth: 1
    functionLinenumber: 9324
    functionLinenumberEnd: 9346
    functionName: dac3_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_odf_ac3_cfg_parse_bs
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - 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:9357,1
    - Dst: gf_odf_ac3_cfg_write_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:9361,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9365,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9366,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9367,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9370
      start: 9351
    functionDepth: 2
    functionLinenumber: 9351
    functionLinenumberEnd: 9370
    functionName: dac3_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_odf_ac3_cfg_write_bs
    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: 9391
      start: 9372
    functionDepth: 0
    functionLinenumber: 9372
    functionLinenumberEnd: 9391
    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:9398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9400
      start: 9396
    functionDepth: 1
    functionLinenumber: 9396
    functionLinenumberEnd: 9400
    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:9405,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9407
      start: 9402
    functionDepth: 1
    functionLinenumber: 9402
    functionLinenumberEnd: 9407
    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:9417,1
    - Dst: gf_odf_ac4_cfg_parse_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:9418,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:9421,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9422,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:9425,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9428
      start: 9410
    functionDepth: 1
    functionLinenumber: 9410
    functionLinenumberEnd: 9428
    functionName: dac4_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_skip_bytes
    - gf_odf_ac4_cfg_parse_bs
    - ISOM_DECREASE_SIZE
    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:9438,1
    - Dst: gf_odf_ac4_cfg_write_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:9441,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9445
      start: 9433
    functionDepth: 2
    functionLinenumber: 9433
    functionLinenumberEnd: 9445
    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:9451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9453
      start: 9447
    functionDepth: 1
    functionLinenumber: 9447
    functionLinenumberEnd: 9453
    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:9462,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9463,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9464
      start: 9458
    functionDepth: 0
    functionLinenumber: 9458
    functionLinenumberEnd: 9464
    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:9471,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9473,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9475
      start: 9467
    functionDepth: 1
    functionLinenumber: 9467
    functionLinenumberEnd: 9475
    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:9479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9481
      start: 9477
    functionDepth: 1
    functionLinenumber: 9477
    functionLinenumberEnd: 9481
    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:9490,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:9492,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9494
      start: 9486
    functionDepth: 2
    functionLinenumber: 9486
    functionLinenumberEnd: 9494
    functionName: lsrc_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_data
    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: 9501
      start: 9496
    functionDepth: 0
    functionLinenumber: 9496
    functionLinenumberEnd: 9501
    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:9510,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/box_code_base.c:9511,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9513
      start: 9506
    functionDepth: 1
    functionLinenumber: 9506
    functionLinenumberEnd: 9513
    functionName: lsr1_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_free
    - gf_isom_sample_entry_predestroy
    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:9520,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:9523,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: 9527
      start: 9515
    functionDepth: 1
    functionLinenumber: 9515
    functionLinenumberEnd: 9527
    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:9534,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9537,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:9539,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9540
      start: 9529
    functionDepth: 2
    functionLinenumber: 9529
    functionLinenumberEnd: 9540
    functionName: lsr1_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    - gf_isom_base_sample_entry_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:9544,1
    - Dst: gf_isom_sample_entry_init
      Src: /src/gpac/src/isomedia/box_code_base.c:9545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9547
      start: 9542
    functionDepth: 1
    functionLinenumber: 9542
    functionLinenumberEnd: 9547
    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:9557,1
    - Dst: gf_bs_write_data
      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:9561,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9563
      start: 9553
    functionDepth: 2
    functionLinenumber: 9553
    functionLinenumberEnd: 9563
    functionName: lsr1_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_data
    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:9570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9572
      start: 9565
    functionDepth: 2
    functionLinenumber: 9565
    functionLinenumberEnd: 9572
    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:9581,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9582,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9583
      start: 9577
    functionDepth: 0
    functionLinenumber: 9577
    functionLinenumberEnd: 9583
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9590,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9591,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9592,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9595,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9596,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9597,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9599,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9600,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9601,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9603,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9604,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9608,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9612,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9615,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9616,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9617,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9618,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9619,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9620,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9622,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9625
      start: 9585
    functionDepth: 1
    functionLinenumber: 9585
    functionLinenumberEnd: 9625
    functionName: sidx_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u64
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:9629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9631
      start: 9627
    functionDepth: 1
    functionLinenumber: 9627
    functionLinenumberEnd: 9631
    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:9642,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9645,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9646,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9648,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9649,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9651,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:9652,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9654,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9655,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9657,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9658,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9659,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9660,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9661,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:9662,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9665
      start: 9636
    functionDepth: 3
    functionLinenumber: 9636
    functionLinenumberEnd: 9665
    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_u64
    - gf_bs_write_u16
    - 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: 9679
      start: 9667
    functionDepth: 0
    functionLinenumber: 9667
    functionLinenumberEnd: 9679
    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:9691,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9693,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9695,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9696
      start: 9683
    functionDepth: 0
    functionLinenumber: 9683
    functionLinenumberEnd: 9696
    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:9703,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9704,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:9710,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: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9720,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9723,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9724,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:9725,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9729
      start: 9698
    functionDepth: 1
    functionLinenumber: 9698
    functionLinenumberEnd: 9729
    functionName: ssix_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - GF_SAFE_ALLOC_N
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - gf_bs_read_u24
    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: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: 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:9746,1
    - Dst: gf_bs_write_u32
      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:9753,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/isomedia/box_code_base.c:9754,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9758
      start: 9740
    functionDepth: 3
    functionLinenumber: 9740
    functionLinenumberEnd: 9758
    functionName: ssix_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u24
    - gf_bs_write_u32
    - 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: 9770
      start: 9760
    functionDepth: 0
    functionLinenumber: 9760
    functionLinenumberEnd: 9770
    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:9778,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9779,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9780
      start: 9774
    functionDepth: 0
    functionLinenumber: 9774
    functionLinenumberEnd: 9780
    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:9787,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9788,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:9793,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9800,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9802,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9803,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9807,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9808,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9811,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9812,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9813,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9816,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9817,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9821
      start: 9782
    functionDepth: 1
    functionLinenumber: 9782
    functionLinenumberEnd: 9821
    functionName: leva_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_u32
    - GF_SAFE_ALLOC_N
    - ISOM_DECREASE_SIZE
    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:9825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9827
      start: 9823
    functionDepth: 1
    functionLinenumber: 9823
    functionLinenumberEnd: 9827
    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:9838,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9841,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9843,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:9844,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9846,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9849,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9850,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9853,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9857
      start: 9832
    functionDepth: 3
    functionLinenumber: 9832
    functionLinenumberEnd: 9857
    functionName: leva_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_u8
    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: 9875
      start: 9859
    functionDepth: 0
    functionLinenumber: 9859
    functionLinenumberEnd: 9875
    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:9880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9882
      start: 9878
    functionDepth: 1
    functionLinenumber: 9878
    functionLinenumberEnd: 9882
    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:9888,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9889,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9890
      start: 9884
    functionDepth: 0
    functionLinenumber: 9884
    functionLinenumberEnd: 9890
    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:9897,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9898,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:9901,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:9905,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9908,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9909,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:9910,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9915
      start: 9892
    functionDepth: 1
    functionLinenumber: 9892
    functionLinenumberEnd: 9915
    functionName: pcrb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:9925,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9928,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9934,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:9935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9938
      start: 9919
    functionDepth: 2
    functionLinenumber: 9919
    functionLinenumberEnd: 9938
    functionName: pcrb_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_u32
    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: 9948
      start: 9940
    functionDepth: 0
    functionLinenumber: 9940
    functionLinenumberEnd: 9948
    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:9955,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:9956,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9958
      start: 9953
    functionDepth: 1
    functionLinenumber: 9953
    functionLinenumberEnd: 9958
    functionName: subs_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:9965,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:9967,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9968,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:9970,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9971,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:9972,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:9974,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9975,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:9976,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:9978,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:9979,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9980
      start: 9960
    functionDepth: 1
    functionLinenumber: 9960
    functionLinenumberEnd: 9980
    functionName: subs_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:9994,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:9996,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:9997,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:10000,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:10001,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10002,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10003,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:10006,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10008,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10010,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10012,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10013,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10014,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10018
      start: 9985
    functionDepth: 3
    functionLinenumber: 9985
    functionLinenumberEnd: 10018
    functionName: subs_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_full_box_write
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_list_get
    - 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:10028,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:10030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:10031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10037
      start: 10020
    functionDepth: 1
    functionLinenumber: 10020
    functionLinenumberEnd: 10037
    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:10047,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10048,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_code_base.c:10050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10051,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_code_base.c:10051,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10057,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:10060,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:10061,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10062,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10063,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10067,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:10070,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10072,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10075,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10078,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10079,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10080,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:10083,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:10085,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10086,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10089
      start: 10041
    functionDepth: 1
    functionLinenumber: 10041
    functionLinenumberEnd: 10089
    functionName: subs_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_list_new
    - gf_bs_read_u32
    - memset
    - gf_list_add
    - gf_bs_read_u16
    - gf_bs_available
    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:10096,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10098
      start: 10094
    functionDepth: 1
    functionLinenumber: 10094
    functionLinenumberEnd: 10098
    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:10102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10103
      start: 10100
    functionDepth: 0
    functionLinenumber: 10100
    functionLinenumberEnd: 10103
    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:10111,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:10112,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10114,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10118
      start: 10106
    functionDepth: 1
    functionLinenumber: 10106
    functionLinenumberEnd: 10118
    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:10126,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:10130,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10132,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10135
      start: 10122
    functionDepth: 3
    functionLinenumber: 10122
    functionLinenumberEnd: 10135
    functionName: tfdt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_u64
    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: 10149
      start: 10137
    functionDepth: 0
    functionLinenumber: 10137
    functionLinenumberEnd: 10149
    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:10155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10157
      start: 10153
    functionDepth: 1
    functionLinenumber: 10153
    functionLinenumberEnd: 10157
    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:10161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10162
      start: 10159
    functionDepth: 0
    functionLinenumber: 10159
    functionLinenumberEnd: 10162
    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:10170,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10171,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10174,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10175,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10178
      start: 10165
    functionDepth: 1
    functionLinenumber: 10165
    functionLinenumberEnd: 10178
    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:10186,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10190,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10193,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10196
      start: 10182
    functionDepth: 3
    functionLinenumber: 10182
    functionLinenumberEnd: 10196
    functionName: rsot_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 10211
      start: 10198
    functionDepth: 0
    functionLinenumber: 10198
    functionLinenumberEnd: 10211
    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:10220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10222
      start: 10218
    functionDepth: 1
    functionLinenumber: 10218
    functionLinenumberEnd: 10222
    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:10226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10227
      start: 10224
    functionDepth: 0
    functionLinenumber: 10224
    functionLinenumberEnd: 10227
    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:10232,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10233,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10235,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10239
      start: 10229
    functionDepth: 1
    functionLinenumber: 10229
    functionLinenumberEnd: 10239
    functionName: rvcc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:10248,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10251,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10256
      start: 10243
    functionDepth: 2
    functionLinenumber: 10243
    functionLinenumberEnd: 10256
    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: 10264
      start: 10258
    functionDepth: 0
    functionLinenumber: 10258
    functionLinenumberEnd: 10264
    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:10272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10274
      start: 10270
    functionDepth: 1
    functionLinenumber: 10270
    functionLinenumberEnd: 10274
    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:10278,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10280
      start: 10275
    functionDepth: 0
    functionLinenumber: 10275
    functionLinenumberEnd: 10280
    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:10287,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10288,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10291,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10292,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10294,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10299,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10303,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10304,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10305,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10308
      start: 10282
    functionDepth: 1
    functionLinenumber: 10282
    functionLinenumberEnd: 10308
    functionName: sbgp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_malloc
    - 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:10317,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10319,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10321,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10323,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10325,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10326,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10329
      start: 10311
    functionDepth: 3
    functionLinenumber: 10311
    functionLinenumberEnd: 10329
    functionName: sbgp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 10341
      start: 10331
    functionDepth: 0
    functionLinenumber: 10331
    functionLinenumberEnd: 10341
    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:10355,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10357,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10364,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10367,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10374,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10376,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10377,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10378,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10385,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10387,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10388,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10395,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10397,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10398,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10408,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10410,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10412,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10415,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10416,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10418,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10421,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10422,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10425,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10429,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:10430,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10434,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:10435,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10439,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10443,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10444,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10446,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:10449,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10451,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/isomedia/box_code_base.c:10454,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10455,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10456,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10462,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10463,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10466,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10474,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10475,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10483,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10485,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/box_code_base.c:10492,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10501,1
    - Dst: gf_isom_oinf_new_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10507,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10508,1
    - Dst: gf_isom_oinf_read_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10509,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10512,1
    - Dst: gf_isom_linf_new_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10518,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10519,1
    - Dst: gf_isom_linf_read_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10520,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10523,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:10530,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/box_code_base.c:10537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10541,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:10546,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10549,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10550,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10551,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10552,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/box_code_base.c:10553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10557,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10577,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10579,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10580,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10582,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10584,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10588,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/box_code_base.c:10590,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10591,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10592,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10597,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10598,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10599,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10600,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10602,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10604,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10605,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10615,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10617,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10618,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10620,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10622,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10626,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/box_code_base.c:10628,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10629,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10630,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10639,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10641,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10649,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10651,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10653,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10657,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10659,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10663,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/isomedia/box_code_base.c:10665,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10666,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:10681,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/box_code_base.c:10681,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:10685,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:10689,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10691,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10694,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: 10698
      start: 10345
    functionDepth: 2
    functionLinenumber: 10345
    functionLinenumberEnd: 10698
    functionName: sgpd_parse_entry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_cenc_validate_key_info
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_bs_skip_bytes
    - gf_malloc
    - memcpy
    - gf_bs_is_overflow
    - gf_bs_read_int
    - gf_isom_linf_read_entry
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_free
    - gf_isom_oinf_read_entry
    - GF_LOG
    - gf_bs_peek_bits
    - gf_isom_oinf_new_entry
    - gf_isom_linf_new_entry
    - gf_4cc_to_str
    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:10704,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10705,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10717,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10722,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10723,1
    - Dst: gf_isom_oinf_del_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10727,1
    - Dst: gf_isom_linf_del_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10730,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10735,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10736,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10743,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10744,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10748,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10754,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10755,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10762,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10763,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 56
    argCount: 3
    argNames:
    - grouping_type
    - entry
    - is_opaque
    argTypes:
    - u32
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10766
      start: 10700
    functionDepth: 2
    functionLinenumber: 10700
    functionLinenumberEnd: 10766
    functionName: sgpd_del_entry
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_isom_oinf_del_entry
    - gf_isom_linf_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:10773,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10776,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10777,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10780,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10781,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10782,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10785,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10786,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10789,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10790,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10804,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10806,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10807,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10808,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10809,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10811,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10812,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10813,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10815,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10817,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10819,1
    - Dst: gf_isom_oinf_write_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10824,1
    - Dst: gf_isom_linf_write_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10827,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10834,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10835,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10837,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10840,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10841,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10842,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10843,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10845,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10847,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:10848,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10858,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10859,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:10861,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:10868,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10876,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10878,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:10887,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 93
    argCount: 3
    argNames:
    - grouping_type
    - entry
    - bs
    argTypes:
    - u32
    - void*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10890
      start: 10768
    functionDepth: 2
    functionLinenumber: 10768
    functionLinenumberEnd: 10890
    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_isom_oinf_write_entry
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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:10926,1
    - Dst: gf_isom_linf_size_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10928,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 48
    argCount: 2
    argNames:
    - grouping_type
    - entry
    argTypes:
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10955
      start: 10893
    functionDepth: 2
    functionLinenumber: 10893
    functionLinenumberEnd: 10955
    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:10960,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:10963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10965
      start: 10958
    functionDepth: 1
    functionLinenumber: 10958
    functionLinenumberEnd: 10965
    functionName: sgpd_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:10970,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/box_code_base.c:10971,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:10972,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/isomedia/box_code_base.c:10973,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:10975,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:10976,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10977
      start: 10967
    functionDepth: 3
    functionLinenumber: 10967
    functionLinenumberEnd: 10977
    functionName: sgpd_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    - sgpd_del_entry
    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:10984,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10985,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10988,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10989,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:10992,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10993,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:10995,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11005,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11006,1
    - Dst: sgpd_parse_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:11011,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:11014,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11016,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11020
      start: 10979
    functionDepth: 3
    functionLinenumber: 10979
    functionLinenumberEnd: 11020
    functionName: sgpd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_list_add
    - 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:11028,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11031,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11032,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11033,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:11034,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11035,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:11038,1
    - Dst: sgpd_size_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:11040,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11041,1
    - Dst: sgpd_write_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:11043,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11046
      start: 11023
    functionDepth: 3
    functionLinenumber: 11023
    functionLinenumberEnd: 11046
    functionName: sgpd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_full_box_write
    - sgpd_size_entry
    - sgpd_write_entry
    - gf_bs_write_u32
    - gf_list_get
    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:11065,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:11067,1
    - Dst: sgpd_size_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:11068,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11081
      start: 11048
    functionDepth: 3
    functionLinenumber: 11048
    functionLinenumberEnd: 11081
    functionName: sgpd_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - sgpd_size_entry
    - gf_list_get
    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:11089,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11090,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11091
      start: 11085
    functionDepth: 0
    functionLinenumber: 11085
    functionLinenumberEnd: 11091
    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:11099,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11100,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11101,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11103,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11104,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11105,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11111,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11116,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11117,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11120
      start: 11094
    functionDepth: 1
    functionLinenumber: 11094
    functionLinenumberEnd: 11120
    functionName: saiz_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    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:11124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11126
      start: 11122
    functionDepth: 1
    functionLinenumber: 11122
    functionLinenumberEnd: 11126
    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:11135,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11139,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11140,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11142,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11143,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11146,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11148,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11151
      start: 11130
    functionDepth: 3
    functionLinenumber: 11130
    functionLinenumberEnd: 11151
    functionName: saiz_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_u32
    - 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: 11164
      start: 11153
    functionDepth: 0
    functionLinenumber: 11153
    functionLinenumberEnd: 11164
    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:11171,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11172,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11173,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11174
      start: 11167
    functionDepth: 0
    functionLinenumber: 11167
    functionLinenumberEnd: 11174
    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:11182,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11183,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11184,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11186,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11187,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11193,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11198,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11200,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11202,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11204,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11208
      start: 11177
    functionDepth: 1
    functionLinenumber: 11177
    functionLinenumberEnd: 11208
    functionName: saio_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_read_u64
    - gf_malloc
    - 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:11212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11214
      start: 11210
    functionDepth: 1
    functionLinenumber: 11210
    functionLinenumberEnd: 11214
    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:11223,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11227,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11228,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11232,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11238,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11240,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/box_code_base.c:11248,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11251,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11254,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11258,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11261,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11266
      start: 11218
    functionDepth: 3
    functionLinenumber: 11218
    functionLinenumberEnd: 11266
    functionName: saio_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_u64
    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:11284,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11293
      start: 11268
    functionDepth: 0
    functionLinenumber: 11268
    functionLinenumberEnd: 11293
    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:11299,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11300
      start: 11297
    functionDepth: 0
    functionLinenumber: 11297
    functionLinenumberEnd: 11300
    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:11306,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11307,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11308,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11310,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11311,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11313,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11317
      start: 11302
    functionDepth: 1
    functionLinenumber: 11302
    functionLinenumberEnd: 11317
    functionName: prft_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_read_u64
    - 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:11321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11323
      start: 11319
    functionDepth: 1
    functionLinenumber: 11319
    functionLinenumberEnd: 11323
    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:11331,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11334,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11335,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11337,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:11339,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11343
      start: 11326
    functionDepth: 3
    functionLinenumber: 11326
    functionLinenumberEnd: 11343
    functionName: prft_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_u64
    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: 11351
      start: 11345
    functionDepth: 0
    functionLinenumber: 11345
    functionLinenumberEnd: 11351
    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:11356,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:11357,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11363
      start: 11354
    functionDepth: 1
    functionLinenumber: 11354
    functionLinenumberEnd: 11363
    functionName: trgr_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:11369,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11371
      start: 11365
    functionDepth: 1
    functionLinenumber: 11365
    functionLinenumberEnd: 11371
    functionName: trgr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:11378,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: 11380
      start: 11374
    functionDepth: 1
    functionLinenumber: 11374
    functionLinenumberEnd: 11380
    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:11385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11386
      start: 11383
    functionDepth: 2
    functionLinenumber: 11383
    functionLinenumberEnd: 11386
    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:11394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11395
      start: 11392
    functionDepth: 2
    functionLinenumber: 11392
    functionLinenumberEnd: 11395
    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:11401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11403
      start: 11397
    functionDepth: 3
    functionLinenumber: 11397
    functionLinenumberEnd: 11403
    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:11410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11412
      start: 11408
    functionDepth: 1
    functionLinenumber: 11408
    functionLinenumberEnd: 11412
    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:11418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11419
      start: 11414
    functionDepth: 0
    functionLinenumber: 11414
    functionLinenumberEnd: 11419
    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:11424,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11427
      start: 11421
    functionDepth: 1
    functionLinenumber: 11421
    functionLinenumberEnd: 11427
    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:11439,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11442,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11444
      start: 11432
    functionDepth: 3
    functionLinenumber: 11432
    functionLinenumberEnd: 11444
    functionName: trgt_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 11452
      start: 11446
    functionDepth: 0
    functionLinenumber: 11446
    functionLinenumberEnd: 11452
    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:11460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11462
      start: 11458
    functionDepth: 1
    functionLinenumber: 11458
    functionLinenumberEnd: 11462
    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:11468,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11469,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11470
      start: 11464
    functionDepth: 0
    functionLinenumber: 11464
    functionLinenumberEnd: 11470
    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:11476,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11477,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11478,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11479,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11480,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11481,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11483,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11488
      start: 11472
    functionDepth: 1
    functionLinenumber: 11472
    functionLinenumberEnd: 11488
    functionName: stvi_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_u32
    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:11498,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11501,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11502,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11503,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11504,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11505,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11508
      start: 11493
    functionDepth: 3
    functionLinenumber: 11493
    functionLinenumberEnd: 11508
    functionName: stvi_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
    - gf_bs_write_data
    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: 11516
      start: 11510
    functionDepth: 0
    functionLinenumber: 11510
    functionLinenumberEnd: 11516
    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:11524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11526
      start: 11522
    functionDepth: 1
    functionLinenumber: 11522
    functionLinenumberEnd: 11526
    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:11532,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11533,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11534
      start: 11528
    functionDepth: 1
    functionLinenumber: 11528
    functionLinenumberEnd: 11534
    functionName: fiin_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:11542,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11545,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11548,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: 11552
      start: 11537
    functionDepth: 1
    functionLinenumber: 11537
    functionLinenumberEnd: 11552
    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:11558,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11559,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:11560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11561
      start: 11554
    functionDepth: 2
    functionLinenumber: 11554
    functionLinenumberEnd: 11561
    functionName: fiin_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    - gf_bs_read_u16
    - ISOM_DECREASE_SIZE
    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:11571,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11574,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:11574,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11576
      start: 11566
    functionDepth: 3
    functionLinenumber: 11566
    functionLinenumberEnd: 11576
    functionName: fiin_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_full_box_write
    - gf_list_count
    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:11583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11585
      start: 11578
    functionDepth: 3
    functionLinenumber: 11578
    functionLinenumberEnd: 11585
    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:11592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11594
      start: 11590
    functionDepth: 1
    functionLinenumber: 11590
    functionLinenumberEnd: 11594
    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:11598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11599
      start: 11596
    functionDepth: 0
    functionLinenumber: 11596
    functionLinenumberEnd: 11599
    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:11607,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11610,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:11613,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: 11617
      start: 11602
    functionDepth: 1
    functionLinenumber: 11602
    functionLinenumberEnd: 11617
    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:11621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11622
      start: 11619
    functionDepth: 2
    functionLinenumber: 11619
    functionLinenumberEnd: 11622
    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:11629,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11630
      start: 11626
    functionDepth: 2
    functionLinenumber: 11626
    functionLinenumberEnd: 11630
    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: 11635
      start: 11632
    functionDepth: 0
    functionLinenumber: 11632
    functionLinenumberEnd: 11635
    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:11644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11646
      start: 11642
    functionDepth: 1
    functionLinenumber: 11642
    functionLinenumberEnd: 11646
    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:11652,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11653,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11654,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11655
      start: 11648
    functionDepth: 0
    functionLinenumber: 11648
    functionLinenumberEnd: 11655
    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:11662,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11671,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11672,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:11677,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/box_code_base.c:11679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11680,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11685,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: 11691
      start: 11657
    functionDepth: 1
    functionLinenumber: 11657
    functionLinenumberEnd: 11691
    functionName: gf_isom_read_null_terminated_string
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 3
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_realloc
    - gf_bs_available
    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:11699,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11700,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11701,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11702,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11703,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11704,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11705,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11706,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11707,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:11709,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11712,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11713,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11717,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11718,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11722,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11723,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11726
      start: 11693
    functionDepth: 2
    functionLinenumber: 11693
    functionLinenumberEnd: 11726
    functionName: fpar_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_SAFE_ALLOC_N
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:11737,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11740,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11741,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11742,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11743,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11744,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11745,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11746,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11747,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:11749,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:11749,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11752,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11754,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11757,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11758,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11761
      start: 11731
    functionDepth: 3
    functionLinenumber: 11731
    functionLinenumberEnd: 11761
    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
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - 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:11769,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11773
      start: 11763
    functionDepth: 0
    functionLinenumber: 11763
    functionLinenumberEnd: 11773
    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:11780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11782
      start: 11778
    functionDepth: 1
    functionLinenumber: 11778
    functionLinenumberEnd: 11782
    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:11788,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11790
      start: 11784
    functionDepth: 0
    functionLinenumber: 11784
    functionLinenumberEnd: 11790
    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:11797,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11798,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11801,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11805,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11806,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11810,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11811,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11814
      start: 11792
    functionDepth: 1
    functionLinenumber: 11792
    functionLinenumberEnd: 11814
    functionName: fecr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_SAFE_ALLOC_N
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    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:11825,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11828,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:11830,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11831,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11834
      start: 11819
    functionDepth: 3
    functionLinenumber: 11819
    functionLinenumberEnd: 11834
    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: 11841
      start: 11836
    functionDepth: 0
    functionLinenumber: 11836
    functionLinenumberEnd: 11841
    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:11849,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11851
      start: 11847
    functionDepth: 1
    functionLinenumber: 11847
    functionLinenumberEnd: 11851
    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:11859,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11860,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11862,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11863,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11864
      start: 11853
    functionDepth: 0
    functionLinenumber: 11853
    functionLinenumberEnd: 11864
    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:11871,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11872,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:11874,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11879,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11883,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11884,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11886,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11888,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11892,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11895,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11896,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11898,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11902,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11906
      start: 11866
    functionDepth: 1
    functionLinenumber: 11866
    functionLinenumberEnd: 11906
    functionName: segr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_SAFE_ALLOC_N
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:11918,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11921,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:11923,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11925,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11928,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11930,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11934
      start: 11911
    functionDepth: 2
    functionLinenumber: 11911
    functionLinenumberEnd: 11934
    functionName: segr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_u8
    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: 11948
      start: 11936
    functionDepth: 0
    functionLinenumber: 11936
    functionLinenumberEnd: 11948
    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:11955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11957
      start: 11953
    functionDepth: 1
    functionLinenumber: 11953
    functionLinenumberEnd: 11957
    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:11966,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11968,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:11970,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11971
      start: 11959
    functionDepth: 0
    functionLinenumber: 11959
    functionLinenumberEnd: 11971
    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:11979,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:11980,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:11984,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:11988,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:11989,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:11991,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11995
      start: 11973
    functionDepth: 2
    functionLinenumber: 11973
    functionLinenumberEnd: 11995
    functionName: gitn_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_SAFE_ALLOC_N
    - ISOM_DECREASE_SIZE
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:12006,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12009,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12011,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12012,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:12012,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12013,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12016
      start: 12000
    functionDepth: 3
    functionLinenumber: 12000
    functionLinenumberEnd: 12016
    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_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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:12026,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12029
      start: 12018
    functionDepth: 0
    functionLinenumber: 12018
    functionLinenumberEnd: 12029
    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:12037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12039
      start: 12035
    functionDepth: 1
    functionLinenumber: 12035
    functionLinenumberEnd: 12039
    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:12049,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12051,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12053,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12054
      start: 12041
    functionDepth: 0
    functionLinenumber: 12041
    functionLinenumberEnd: 12054
    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:12061,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12062,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12063,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12064,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12065,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12066,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12067,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12068,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12069,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12071,1
    - Dst: GF_SAFE_ALLOC_N
      Src: /src/gpac/src/isomedia/box_code_base.c:12075,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12079,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12080,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12083,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12084,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12086,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12087,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12092,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12095,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12096,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12101
      start: 12056
    functionDepth: 1
    functionLinenumber: 12056
    functionLinenumberEnd: 12101
    functionName: fdpa_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_SAFE_ALLOC_N
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_u16
    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:12112,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12115,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12116,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12117,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12118,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12119,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12120,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12121,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12123,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12125,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12127,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12129,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12134
      start: 12105
    functionDepth: 2
    functionLinenumber: 12105
    functionLinenumberEnd: 12134
    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: 12152
      start: 12136
    functionDepth: 0
    functionLinenumber: 12136
    functionLinenumberEnd: 12152
    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:12159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12161
      start: 12157
    functionDepth: 1
    functionLinenumber: 12157
    functionLinenumberEnd: 12161
    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:12167,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12168,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12169,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12170
      start: 12163
    functionDepth: 4
    functionLinenumber: 12163
    functionLinenumberEnd: 12170
    functionName: extr_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del
    - gf_free
    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:12177,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12181,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12183,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12186
      start: 12172
    functionDepth: 1
    functionLinenumber: 12172
    functionLinenumberEnd: 12186
    functionName: extr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_isom_box_parse_ex
    - 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:12197,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12201,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12204,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12206
      start: 12191
    functionDepth: 3
    functionLinenumber: 12191
    functionLinenumberEnd: 12206
    functionName: extr_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write
    - gf_isom_box_write_header
    - gf_bs_write_data
    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:12213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12218
      start: 12208
    functionDepth: 3
    functionLinenumber: 12208
    functionLinenumberEnd: 12218
    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:12226,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:12228,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12231
      start: 12224
    functionDepth: 1
    functionLinenumber: 12224
    functionLinenumberEnd: 12231
    functionName: fdsa_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:12236,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12238
      start: 12233
    functionDepth: 1
    functionLinenumber: 12233
    functionLinenumberEnd: 12238
    functionName: fdsa_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:12245,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:12248,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: 12252
      start: 12240
    functionDepth: 1
    functionLinenumber: 12240
    functionLinenumberEnd: 12252
    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:12255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12256
      start: 12253
    functionDepth: 2
    functionLinenumber: 12253
    functionLinenumberEnd: 12256
    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:12267,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12270,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12273,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12277
      start: 12261
    functionDepth: 3
    functionLinenumber: 12261
    functionLinenumberEnd: 12277
    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: 12282
      start: 12279
    functionDepth: 0
    functionLinenumber: 12279
    functionLinenumberEnd: 12282
    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:12293,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12295
      start: 12289
    functionDepth: 0
    functionLinenumber: 12289
    functionLinenumberEnd: 12295
    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:12303,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12306,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12310,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12311,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12314
      start: 12297
    functionDepth: 1
    functionLinenumber: 12297
    functionLinenumberEnd: 12314
    functionName: trik_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_int
    - gf_malloc
    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:12318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12320
      start: 12316
    functionDepth: 1
    functionLinenumber: 12316
    functionLinenumberEnd: 12320
    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:12330,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12334,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12338
      start: 12324
    functionDepth: 3
    functionLinenumber: 12324
    functionLinenumberEnd: 12338
    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: 12345
      start: 12340
    functionDepth: 0
    functionLinenumber: 12340
    functionLinenumberEnd: 12345
    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:12352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12353
      start: 12350
    functionDepth: 0
    functionLinenumber: 12350
    functionLinenumberEnd: 12353
    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:12359,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12360,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12362,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12363,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12364,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:12366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12368
      start: 12355
    functionDepth: 1
    functionLinenumber: 12355
    functionLinenumberEnd: 12368
    functionName: bloc_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_skip_bytes
    - ISOM_DECREASE_SIZE
    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:12372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12374
      start: 12370
    functionDepth: 1
    functionLinenumber: 12370
    functionLinenumberEnd: 12374
    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:12384,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12386,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12387,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:12389,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12392
      start: 12378
    functionDepth: 3
    functionLinenumber: 12378
    functionLinenumberEnd: 12392
    functionName: bloc_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_u64
    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: 12398
      start: 12394
    functionDepth: 0
    functionLinenumber: 12394
    functionLinenumberEnd: 12398
    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:12405,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12407
      start: 12402
    functionDepth: 0
    functionLinenumber: 12402
    functionLinenumberEnd: 12407
    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:12413,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12414,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:12415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12416
      start: 12409
    functionDepth: 2
    functionLinenumber: 12409
    functionLinenumberEnd: 12416
    functionName: ainf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_isom_read_null_terminated_string
    - 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:12420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12422
      start: 12418
    functionDepth: 1
    functionLinenumber: 12418
    functionLinenumberEnd: 12422
    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:12431,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12433,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12435,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:12435,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12436,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12438
      start: 12426
    functionDepth: 3
    functionLinenumber: 12426
    functionLinenumberEnd: 12438
    functionName: ainf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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:12443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12445
      start: 12440
    functionDepth: 0
    functionLinenumber: 12440
    functionLinenumberEnd: 12445
    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:12453,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12455
      start: 12450
    functionDepth: 0
    functionLinenumber: 12450
    functionLinenumberEnd: 12455
    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:12461,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12462,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12463,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12464,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12465,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12467,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12469,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12472,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12475
      start: 12457
    functionDepth: 1
    functionLinenumber: 12457
    functionLinenumberEnd: 12475
    functionName: mhac_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u16
    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:12479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12482
      start: 12477
    functionDepth: 1
    functionLinenumber: 12477
    functionLinenumberEnd: 12482
    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:12491,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12493,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12494,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12495,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12496,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:12498,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12501
      start: 12486
    functionDepth: 2
    functionLinenumber: 12486
    functionLinenumberEnd: 12501
    functionName: mhac_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_data
    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: 12509
      start: 12503
    functionDepth: 0
    functionLinenumber: 12503
    functionLinenumberEnd: 12509
    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:12516,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12518
      start: 12513
    functionDepth: 0
    functionLinenumber: 12513
    functionLinenumberEnd: 12518
    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:12525,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12526,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:12529,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12530,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12533,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12536
      start: 12520
    functionDepth: 1
    functionLinenumber: 12520
    functionLinenumberEnd: 12536
    functionName: mhap_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    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:12540,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12542
      start: 12538
    functionDepth: 1
    functionLinenumber: 12538
    functionLinenumberEnd: 12542
    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:12552,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12554,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12556,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12559
      start: 12546
    functionDepth: 2
    functionLinenumber: 12546
    functionLinenumberEnd: 12559
    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: 12566
      start: 12561
    functionDepth: 0
    functionLinenumber: 12561
    functionLinenumberEnd: 12566
    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:12572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12574
      start: 12570
    functionDepth: 1
    functionLinenumber: 12570
    functionLinenumberEnd: 12574
    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:12578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12579
      start: 12576
    functionDepth: 0
    functionLinenumber: 12576
    functionLinenumberEnd: 12579
    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:12584,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12587
      start: 12581
    functionDepth: 1
    functionLinenumber: 12581
    functionLinenumberEnd: 12587
    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:12594,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12596,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12598
      start: 12591
    functionDepth: 2
    functionLinenumber: 12591
    functionLinenumberEnd: 12598
    functionName: jp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_u32
    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: 12604
      start: 12600
    functionDepth: 0
    functionLinenumber: 12600
    functionLinenumberEnd: 12604
    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:12610,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12611
      start: 12608
    functionDepth: 0
    functionLinenumber: 12608
    functionLinenumberEnd: 12611
    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:12618,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/isomedia/box_code_base.c:12621,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: 12625
      start: 12613
    functionDepth: 1
    functionLinenumber: 12613
    functionLinenumberEnd: 12625
    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:12628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12629
      start: 12626
    functionDepth: 2
    functionLinenumber: 12626
    functionLinenumberEnd: 12629
    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:12633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12635
      start: 12631
    functionDepth: 1
    functionLinenumber: 12631
    functionLinenumberEnd: 12635
    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:12641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12642
      start: 12639
    functionDepth: 2
    functionLinenumber: 12639
    functionLinenumberEnd: 12642
    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: 12647
      start: 12644
    functionDepth: 0
    functionLinenumber: 12644
    functionLinenumberEnd: 12647
    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:12653,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:12654,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12656
      start: 12651
    functionDepth: 1
    functionLinenumber: 12651
    functionLinenumberEnd: 12656
    functionName: jp2p_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:12661,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:12663,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12664,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:12666,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:12667,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12668
      start: 12658
    functionDepth: 1
    functionLinenumber: 12658
    functionLinenumberEnd: 12668
    functionName: jp2p_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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:12674,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:12675,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12677,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:12678,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12682
      start: 12670
    functionDepth: 1
    functionLinenumber: 12670
    functionLinenumberEnd: 12682
    functionName: jp2p_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - ISOM_DECREASE_SIZE_NO_ERR
    - gf_list_add
    - gf_malloc
    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:12690,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:12692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:12696,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12697,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12700
      start: 12686
    functionDepth: 3
    functionLinenumber: 12686
    functionLinenumberEnd: 12700
    functionName: jp2p_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_full_box_write
    - gf_bs_write_u32
    - gf_list_get
    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:12705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12708
      start: 12702
    functionDepth: 1
    functionLinenumber: 12702
    functionLinenumberEnd: 12708
    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:12714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12716
      start: 12712
    functionDepth: 1
    functionLinenumber: 12712
    functionLinenumberEnd: 12716
    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:12720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12721
      start: 12718
    functionDepth: 0
    functionLinenumber: 12718
    functionLinenumberEnd: 12721
    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: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
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12732
      start: 12723
    functionDepth: 1
    functionLinenumber: 12723
    functionLinenumberEnd: 12732
    functionName: jsub_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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:12741,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12744,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12745,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12746,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12750
      start: 12736
    functionDepth: 2
    functionLinenumber: 12736
    functionLinenumberEnd: 12750
    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: 12756
      start: 12752
    functionDepth: 0
    functionLinenumber: 12752
    functionLinenumberEnd: 12756
    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:12762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12764
      start: 12760
    functionDepth: 1
    functionLinenumber: 12760
    functionLinenumberEnd: 12764
    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:12768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12769
      start: 12766
    functionDepth: 0
    functionLinenumber: 12766
    functionLinenumberEnd: 12769
    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:12774,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12775,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12778
      start: 12771
    functionDepth: 1
    functionLinenumber: 12771
    functionLinenumberEnd: 12778
    functionName: orfo_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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:12787,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12790,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12794
      start: 12782
    functionDepth: 2
    functionLinenumber: 12782
    functionLinenumberEnd: 12794
    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: 12800
      start: 12796
    functionDepth: 0
    functionLinenumber: 12796
    functionLinenumberEnd: 12800
    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:12806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12807
      start: 12804
    functionDepth: 0
    functionLinenumber: 12804
    functionLinenumberEnd: 12807
    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:12813,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12815,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12816,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12817,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12818,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12819,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12820,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12821,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12824
      start: 12809
    functionDepth: 1
    functionLinenumber: 12809
    functionLinenumberEnd: 12824
    functionName: ihdr_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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:12828,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12830
      start: 12826
    functionDepth: 1
    functionLinenumber: 12826
    functionLinenumberEnd: 12830
    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:12839,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12842,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12843,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:12844,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12845,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12846,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12847,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12848,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12850
      start: 12834
    functionDepth: 2
    functionLinenumber: 12834
    functionLinenumberEnd: 12850
    functionName: ihdr_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_u32
    - gf_bs_write_u8
    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: 12856
      start: 12852
    functionDepth: 0
    functionLinenumber: 12852
    functionLinenumberEnd: 12856
    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:12865,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:12867,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12870
      start: 12863
    functionDepth: 0
    functionLinenumber: 12863
    functionLinenumberEnd: 12870
    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:12875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12876
      start: 12872
    functionDepth: 0
    functionLinenumber: 12872
    functionLinenumberEnd: 12876
    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:12884,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12885,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12886,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12887,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12888,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12889,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12890,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12891,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12892,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12893,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12894,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12895,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12898,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:12910,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12914
      start: 12878
    functionDepth: 1
    functionLinenumber: 12878
    functionLinenumberEnd: 12914
    functionName: dvcC_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    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:12923,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12927,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:12928,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12929,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12930,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12931,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12932,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12933,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12934,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12935,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:12936,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12937,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12938,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12939,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:12940,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12943
      start: 12917
    functionDepth: 2
    functionLinenumber: 12917
    functionLinenumberEnd: 12943
    functionName: dvcC_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u32
    - gf_bs_write_int
    - gf_isom_box_write_header
    - gf_bs_write_u8
    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: 12951
      start: 12945
    functionDepth: 0
    functionLinenumber: 12945
    functionLinenumberEnd: 12951
    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:12956,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:12958,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12961
      start: 12954
    functionDepth: 0
    functionLinenumber: 12954
    functionLinenumberEnd: 12961
    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:12966,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12967
      start: 12963
    functionDepth: 0
    functionLinenumber: 12963
    functionLinenumberEnd: 12967
    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:12971,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12972
      start: 12969
    functionDepth: 2
    functionLinenumber: 12969
    functionLinenumberEnd: 12972
    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:12977,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12978
      start: 12975
    functionDepth: 3
    functionLinenumber: 12975
    functionLinenumberEnd: 12978
    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:12982,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12983
      start: 12980
    functionDepth: 1
    functionLinenumber: 12980
    functionLinenumberEnd: 12983
    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:12989,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12991
      start: 12987
    functionDepth: 1
    functionLinenumber: 12987
    functionLinenumberEnd: 12991
    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:12996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12997
      start: 12993
    functionDepth: 0
    functionLinenumber: 12993
    functionLinenumberEnd: 12997
    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:13003,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:13005,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13010,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13011,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13012,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13013,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13014,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13015,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13017,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13018,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13019,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13020,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13023
      start: 13000
    functionDepth: 1
    functionLinenumber: 13000
    functionLinenumberEnd: 13023
    functionName: dOps_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:13033,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13036,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13037,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13038,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13039,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13040,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13041,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13043,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13044,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13045,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13048
      start: 13028
    functionDepth: 2
    functionLinenumber: 13028
    functionLinenumberEnd: 13048
    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_u32
    - gf_bs_write_data
    - 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: 13058
      start: 13050
    functionDepth: 0
    functionLinenumber: 13050
    functionLinenumberEnd: 13058
    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: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: 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:13071,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13072,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13073
      start: 13068
    functionDepth: 1
    functionLinenumber: 13068
    functionLinenumberEnd: 13073
    functionName: iacb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_iamf_cfg_del
    - gf_free
    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:13078,1
    - Dst: gf_odf_iamf_cfg_read_bs_size
      Src: /src/gpac/src/isomedia/box_code_base.c:13079,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13081
      start: 13075
    functionDepth: 1
    functionLinenumber: 13075
    functionLinenumberEnd: 13081
    functionName: iacb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_odf_iamf_cfg_del
    - gf_odf_iamf_cfg_read_bs_size
    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:13091,1
    - Dst: gf_odf_iamf_cfg_write_bs
      Src: /src/gpac/src/isomedia/box_code_base.c:13094,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13095
      start: 13084
    functionDepth: 2
    functionLinenumber: 13084
    functionLinenumberEnd: 13095
    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:13104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13106
      start: 13097
    functionDepth: 1
    functionLinenumber: 13097
    functionLinenumberEnd: 13106
    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:13112,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13114
      start: 13109
    functionDepth: 0
    functionLinenumber: 13109
    functionLinenumberEnd: 13114
    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:13121,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13124
      start: 13116
    functionDepth: 1
    functionLinenumber: 13116
    functionLinenumberEnd: 13124
    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:13128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13130
      start: 13126
    functionDepth: 1
    functionLinenumber: 13126
    functionLinenumberEnd: 13130
    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:13138,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13142
      start: 13134
    functionDepth: 3
    functionLinenumber: 13134
    functionLinenumberEnd: 13142
    functionName: dfla_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_data
    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: 13149
      start: 13144
    functionDepth: 0
    functionLinenumber: 13144
    functionLinenumberEnd: 13149
    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:13156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13158
      start: 13154
    functionDepth: 1
    functionLinenumber: 13154
    functionLinenumberEnd: 13158
    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:13163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13164
      start: 13160
    functionDepth: 0
    functionLinenumber: 13160
    functionLinenumberEnd: 13164
    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:13169,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13170,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13171,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13172,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13173,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13174,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13176,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13177,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13178,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13179,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13180,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13181,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13182,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13183,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13186
      start: 13166
    functionDepth: 1
    functionLinenumber: 13166
    functionLinenumberEnd: 13186
    functionName: ddts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:13195,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13198,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13199,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13200,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13201,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13202,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13203,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13204,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13205,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13206,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13207,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13208,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13209,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13210,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
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13214
      start: 13190
    functionDepth: 2
    functionLinenumber: 13190
    functionLinenumberEnd: 13214
    functionName: ddts_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_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: 13221
      start: 13216
    functionDepth: 0
    functionLinenumber: 13216
    functionLinenumberEnd: 13221
    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:13228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13230
      start: 13226
    functionDepth: 1
    functionLinenumber: 13226
    functionLinenumberEnd: 13230
    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:13236,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13237,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13240
      start: 13232
    functionDepth: 0
    functionLinenumber: 13232
    functionLinenumberEnd: 13240
    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:13247,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13248,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13249,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13250,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13251,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13256,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13257,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13258,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13259,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13260,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13264,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:13268,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13270,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13273,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13275,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13277,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13282,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13283,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13285,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13290
      start: 13242
    functionDepth: 1
    functionLinenumber: 13242
    functionLinenumberEnd: 13290
    functionName: udts_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_u32
    - 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:13300,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13303,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13306,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13307,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13308,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13309,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13310,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13311,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13312,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13314,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:13315,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13317,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13319,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13321
      start: 13294
    functionDepth: 2
    functionLinenumber: 13294
    functionLinenumberEnd: 13321
    functionName: udts_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_align
    - gf_bs_write_int
    - gf_bs_write_u32
    - gf_bs_write_data
    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: 13330
      start: 13323
    functionDepth: 0
    functionLinenumber: 13323
    functionLinenumberEnd: 13330
    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:13338,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13340
      start: 13335
    functionDepth: 0
    functionLinenumber: 13335
    functionLinenumberEnd: 13340
    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: 6
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13346,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13347,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13348,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13349,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13350,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:13352,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13354,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13355,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13358,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13359,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13362,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13363,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13364,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13367,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13368,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13369,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13372,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13373,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13374,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13375,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:13379,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13380
      start: 13342
    functionDepth: 2
    functionLinenumber: 13342
    functionLinenumberEnd: 13380
    functionName: mvcg_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_isom_box_array_read
    - gf_bs_read_u32
    - memset
    - gf_bs_read_u16
    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:13384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13386
      start: 13382
    functionDepth: 1
    functionLinenumber: 13382
    functionLinenumberEnd: 13386
    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:13395,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13399,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13400,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13401,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13404,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13407,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13410,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13411,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13414,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13415,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13418,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13419,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13420,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13425
      start: 13390
    functionDepth: 3
    functionLinenumber: 13390
    functionLinenumberEnd: 13425
    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: 13450
      start: 13427
    functionDepth: 0
    functionLinenumber: 13427
    functionLinenumberEnd: 13450
    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:13462,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13464,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13466,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13467
      start: 13455
    functionDepth: 0
    functionLinenumber: 13455
    functionLinenumberEnd: 13467
    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:13473,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13474,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13475,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13476,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13477,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13481,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:13482,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13485,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13487,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13488,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13489,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13490,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13491,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13492,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13493,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13494,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13495,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13496,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13501,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13503,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13504,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13505,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13506,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13510
      start: 13469
    functionDepth: 1
    functionLinenumber: 13469
    functionLinenumberEnd: 13510
    functionName: vwid_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - memset
    - gf_bs_read_u16
    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:13514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13516
      start: 13512
    functionDepth: 1
    functionLinenumber: 13512
    functionLinenumberEnd: 13516
    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:13525,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13528,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13529,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13530,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:13531,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13534,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13535,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13536,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13537,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13539,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13540,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13541,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13542,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13543,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13544,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13547,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13548,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13549,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13553
      start: 13520
    functionDepth: 3
    functionLinenumber: 13520
    functionLinenumberEnd: 13553
    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: 13564
      start: 13555
    functionDepth: 0
    functionLinenumber: 13555
    functionLinenumberEnd: 13564
    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:13571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13572
      start: 13569
    functionDepth: 0
    functionLinenumber: 13569
    functionLinenumberEnd: 13572
    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:13578,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13579,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13582
      start: 13574
    functionDepth: 1
    functionLinenumber: 13574
    functionLinenumberEnd: 13582
    functionName: pcmC_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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:13586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13588
      start: 13584
    functionDepth: 1
    functionLinenumber: 13584
    functionLinenumberEnd: 13588
    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:13597,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13599,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13602
      start: 13592
    functionDepth: 3
    functionLinenumber: 13592
    functionLinenumberEnd: 13602
    functionName: pcmC_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u8
    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: 13608
      start: 13604
    functionDepth: 0
    functionLinenumber: 13604
    functionLinenumberEnd: 13608
    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:13616,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13617
      start: 13614
    functionDepth: 0
    functionLinenumber: 13614
    functionLinenumberEnd: 13617
    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:13623,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13625,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13627,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13628,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13629,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13630,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13633,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13634,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13641,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13642,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13647,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13648,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13651,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13652,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13653,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13664,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13665,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13669,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13670,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13671,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13672,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13674,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13675,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13681,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13682,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13685
      start: 13619
    functionDepth: 1
    functionLinenumber: 13619
    functionLinenumberEnd: 13685
    functionName: chnl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gf_bs_read_int
    - ISOM_DECREASE_SIZE
    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:13689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13691
      start: 13687
    functionDepth: 1
    functionLinenumber: 13687
    functionLinenumberEnd: 13691
    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:13700,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13704,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13706,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13707,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13708,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13711,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13715,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13718,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13720,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13721,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13726,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13727,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13728,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13730,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13732,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13737,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13740
      start: 13695
    functionDepth: 3
    functionLinenumber: 13695
    functionLinenumberEnd: 13740
    functionName: chnl_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_u8
    - gf_bs_write_u64
    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: 13771
      start: 13742
    functionDepth: 0
    functionLinenumber: 13742
    functionLinenumberEnd: 13771
    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:13778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13780
      start: 13776
    functionDepth: 1
    functionLinenumber: 13776
    functionLinenumberEnd: 13780
    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:13786,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13787,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13788,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13789,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13790
      start: 13782
    functionDepth: 0
    functionLinenumber: 13782
    functionLinenumberEnd: 13790
    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:13798,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13800,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13803,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13804,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13805,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13806,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13807,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13809,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13810,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13811,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13812,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13813,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13815,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13817,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:13824,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13828,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13830,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 42
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13834
      start: 13792
    functionDepth: 2
    functionLinenumber: 13792
    functionLinenumberEnd: 13834
    functionName: emsg_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u64
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    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:13844,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13848,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:13849,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13850,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13851,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13854,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13855,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13856,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13858,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13859,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13860,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13863,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13864,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13865,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13866,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13869,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13871
      start: 13838
    functionDepth: 3
    functionLinenumber: 13838
    functionLinenumberEnd: 13871
    functionName: emsg_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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:13883,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13884,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13889
      start: 13873
    functionDepth: 0
    functionLinenumber: 13873
    functionLinenumberEnd: 13889
    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:13895,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13897
      start: 13893
    functionDepth: 1
    functionLinenumber: 13893
    functionLinenumberEnd: 13897
    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:13903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:13904,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13905,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13906,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13907,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/box_code_base.c:13908,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:13910,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13911,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13912
      start: 13899
    functionDepth: 1
    functionLinenumber: 13899
    functionLinenumberEnd: 13912
    functionName: silb_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:13919,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:13920,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:13922,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:13926,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:13928,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13930,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13932,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:13935,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13937,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:13938,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13942,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13943,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:13945,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13949,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13950,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13953
      start: 13914
    functionDepth: 2
    functionLinenumber: 13914
    functionLinenumberEnd: 13953
    functionName: silb_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_isom_read_null_terminated_string
    - gf_bs_read_int
    - gf_list_new
    - gf_bs_read_u32
    - memset
    - gf_list_add
    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:13962,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:13965,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:13967,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13969,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13970,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13971,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13973,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:13974,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:13975,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13977,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13978,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13981,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:13982,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13985
      start: 13957
    functionDepth: 3
    functionLinenumber: 13957
    functionLinenumberEnd: 13985
    functionName: silb_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_list_get
    - gf_bs_write_int
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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:13993,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13996,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:13997,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14003
      start: 13987
    functionDepth: 1
    functionLinenumber: 13987
    functionLinenumberEnd: 14003
    functionName: silb_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - strlen
    - gf_list_get
    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:14009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14011
      start: 14007
    functionDepth: 1
    functionLinenumber: 14007
    functionLinenumberEnd: 14011
    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:14017,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14018,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14019,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14020,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14021
      start: 14013
    functionDepth: 0
    functionLinenumber: 14013
    functionLinenumberEnd: 14021
    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:14028,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14029,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:14030,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14031,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14032,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:14034,1
    - Dst: gf_isom_read_null_terminated_string
      Src: /src/gpac/src/isomedia/box_code_base.c:14036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14041,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14045,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14047,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14051
      start: 14023
    functionDepth: 2
    functionLinenumber: 14023
    functionLinenumberEnd: 14051
    functionName: emib_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_u64
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_isom_read_null_terminated_string
    - gf_bs_read_u32
    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:14061,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14063,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/isomedia/box_code_base.c:14064,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14065,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14066,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14068,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14069,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14070,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14072,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14073,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14074,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14077,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14080
      start: 14055
    functionDepth: 3
    functionLinenumber: 14055
    functionLinenumberEnd: 14080
    functionName: emib_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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:14087,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14088,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14093
      start: 14082
    functionDepth: 0
    functionLinenumber: 14082
    functionLinenumberEnd: 14093
    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:14099,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14101
      start: 14097
    functionDepth: 1
    functionLinenumber: 14097
    functionLinenumberEnd: 14101
    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:14105,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14106
      start: 14103
    functionDepth: 0
    functionLinenumber: 14103
    functionLinenumberEnd: 14106
    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: 14111
      start: 14108
    functionDepth: 0
    functionLinenumber: 14108
    functionLinenumberEnd: 14111
    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:14117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14118
      start: 14115
    functionDepth: 2
    functionLinenumber: 14115
    functionLinenumberEnd: 14118
    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: 14124
      start: 14120
    functionDepth: 0
    functionLinenumber: 14120
    functionLinenumberEnd: 14124
    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:14130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14132
      start: 14128
    functionDepth: 1
    functionLinenumber: 14128
    functionLinenumberEnd: 14132
    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:14136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14137
      start: 14134
    functionDepth: 0
    functionLinenumber: 14134
    functionLinenumberEnd: 14137
    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: 14142
      start: 14139
    functionDepth: 0
    functionLinenumber: 14139
    functionLinenumberEnd: 14142
    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:14148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14149
      start: 14146
    functionDepth: 2
    functionLinenumber: 14146
    functionLinenumberEnd: 14149
    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: 14155
      start: 14151
    functionDepth: 0
    functionLinenumber: 14151
    functionLinenumberEnd: 14155
    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:14162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14164
      start: 14160
    functionDepth: 1
    functionLinenumber: 14160
    functionLinenumberEnd: 14164
    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:14172,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14174,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - a
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14177
      start: 14165
    functionDepth: 0
    functionLinenumber: 14165
    functionLinenumberEnd: 14177
    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: 14185
      start: 14179
    functionDepth: 0
    functionLinenumber: 14179
    functionLinenumberEnd: 14185
    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:14193,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14194,1
    - Dst: gf_bs_read_u24
      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:14200,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14201,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14205,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14209,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14211,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14212,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14214,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14215,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14219,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14223,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/box_code_base.c:14225,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14230,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14231,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14246,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14250,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14258,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14271,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:14277,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 75
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14279
      start: 14186
    functionDepth: 1
    functionLinenumber: 14186
    functionLinenumberEnd: 14279
    functionName: csgp_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_align
    - GF_LOG
    - get_size_by_code
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    - memset
    - 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:14287,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14288,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14289,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14291,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14294,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14295,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14296,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14299,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14301,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14304,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14305,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14314,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14315,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14317,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/isomedia/box_code_base.c:14321,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14323
      start: 14282
    functionDepth: 2
    functionLinenumber: 14282
    functionLinenumberEnd: 14323
    functionName: csgp_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_align
    - gf_bs_write_int
    - get_size_by_code
    - 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:14329,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14330,1
    - Dst: get_size_by_code
      Src: /src/gpac/src/isomedia/box_code_base.c:14331,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14344
      start: 14325
    functionDepth: 1
    functionLinenumber: 14325
    functionLinenumberEnd: 14344
    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:14350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14352
      start: 14348
    functionDepth: 1
    functionLinenumber: 14348
    functionLinenumberEnd: 14352
    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:14356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14357
      start: 14354
    functionDepth: 0
    functionLinenumber: 14354
    functionLinenumberEnd: 14357
    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:14363,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14364,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14365,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14366,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14369
      start: 14360
    functionDepth: 1
    functionLinenumber: 14360
    functionLinenumberEnd: 14369
    functionName: dmlp_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
    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:14379,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14381,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14382,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14383,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14384,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14386
      start: 14374
    functionDepth: 2
    functionLinenumber: 14374
    functionLinenumberEnd: 14386
    functionName: dmlp_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_u32
    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: 14392
      start: 14388
    functionDepth: 0
    functionLinenumber: 14388
    functionLinenumberEnd: 14392
    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:14398,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14399,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14401
      start: 14396
    functionDepth: 1
    functionLinenumber: 14396
    functionLinenumberEnd: 14401
    functionName: xtra_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:14406,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:14407,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14408,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14409,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14410,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:14412,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14413,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14414
      start: 14403
    functionDepth: 1
    functionLinenumber: 14403
    functionLinenumberEnd: 14414
    functionName: xtra_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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:14424,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14425,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14426,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14433,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14435,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14436,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14437,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14441,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14442,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:14447,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14450,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14452,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14454,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14455,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14463,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14469,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14472,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/isomedia/box_code_base.c:14473,1
    - Dst: ISOM_DECREASE_SIZE_NO_ERR
      Src: /src/gpac/src/isomedia/box_code_base.c:14474,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 44
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14478
      start: 14416
    functionDepth: 1
    functionLinenumber: 14416
    functionLinenumberEnd: 14478
    functionName: xtra_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE_NO_ERR
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_list_add
    - gf_bs_read_u16
    - 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:14487,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:14489,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:14493,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14495,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14500,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14501,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14502,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14503,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14504,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/box_code_base.c:14505,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14506,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14509
      start: 14483
    functionDepth: 2
    functionLinenumber: 14483
    functionLinenumberEnd: 14509
    functionName: xtra_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_write_header
    - gf_list_get
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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:14514,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:14516,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14517,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14520
      start: 14511
    functionDepth: 1
    functionLinenumber: 14511
    functionLinenumberEnd: 14520
    functionName: xtra_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strlen
    - gf_list_get
    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:14528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14530
      start: 14526
    functionDepth: 1
    functionLinenumber: 14526
    functionLinenumberEnd: 14530
    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:14534,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14535
      start: 14532
    functionDepth: 0
    functionLinenumber: 14532
    functionLinenumberEnd: 14535
    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:14541,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14544
      start: 14538
    functionDepth: 1
    functionLinenumber: 14538
    functionLinenumberEnd: 14544
    functionName: st3d_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - ISOM_DECREASE_SIZE
    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:14554,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14556,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14558
      start: 14549
    functionDepth: 3
    functionLinenumber: 14549
    functionLinenumberEnd: 14558
    functionName: st3d_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u8
    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: 14564
      start: 14560
    functionDepth: 0
    functionLinenumber: 14560
    functionLinenumberEnd: 14564
    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:14572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14574
      start: 14570
    functionDepth: 1
    functionLinenumber: 14570
    functionLinenumberEnd: 14574
    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:14579,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14580,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14581
      start: 14576
    functionDepth: 0
    functionLinenumber: 14576
    functionLinenumberEnd: 14581
    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:14588,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14591,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14593,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14596
      start: 14584
    functionDepth: 1
    functionLinenumber: 14584
    functionLinenumberEnd: 14596
    functionName: svhd_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_read_data
    - 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:14606,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14609,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/box_code_base.c:14609,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14610,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14612
      start: 14601
    functionDepth: 3
    functionLinenumber: 14601
    functionLinenumberEnd: 14612
    functionName: svhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    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:14618,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14621
      start: 14614
    functionDepth: 0
    functionLinenumber: 14614
    functionLinenumberEnd: 14621
    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:14628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14630
      start: 14626
    functionDepth: 1
    functionLinenumber: 14626
    functionLinenumberEnd: 14630
    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:14634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14635
      start: 14632
    functionDepth: 0
    functionLinenumber: 14632
    functionLinenumberEnd: 14635
    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:14641,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14642,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14643,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14646
      start: 14638
    functionDepth: 1
    functionLinenumber: 14638
    functionLinenumberEnd: 14646
    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:14656,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14658,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14659,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14660,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14662
      start: 14651
    functionDepth: 3
    functionLinenumber: 14651
    functionLinenumberEnd: 14662
    functionName: prhd_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 14668
      start: 14664
    functionDepth: 0
    functionLinenumber: 14664
    functionLinenumberEnd: 14668
    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:14674,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14676
      start: 14672
    functionDepth: 1
    functionLinenumber: 14672
    functionLinenumberEnd: 14676
    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:14680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14681
      start: 14678
    functionDepth: 0
    functionLinenumber: 14678
    functionLinenumberEnd: 14681
    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:14688,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14689,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14690,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14693,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14694,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14695,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14696,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14697,1
    - Dst: ISOM_DECREASE_SIZE
      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: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14701,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/isomedia/box_code_base.c:14703,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14704
      start: 14683
    functionDepth: 2
    functionLinenumber: 14683
    functionLinenumberEnd: 14704
    functionName: proj_type_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_isom_box_array_read
    - ISOM_DECREASE_SIZE
    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:14714,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14717,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14718,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14721,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14722,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14723,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14724,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14726,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14727,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14730
      start: 14709
    functionDepth: 3
    functionLinenumber: 14709
    functionLinenumberEnd: 14730
    functionName: proj_type_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 14743
      start: 14732
    functionDepth: 0
    functionLinenumber: 14732
    functionLinenumberEnd: 14743
    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:14750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14752
      start: 14748
    functionDepth: 1
    functionLinenumber: 14748
    functionLinenumberEnd: 14752
    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:14756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14757
      start: 14754
    functionDepth: 0
    functionLinenumber: 14754
    functionLinenumberEnd: 14757
    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: 14762
      start: 14759
    functionDepth: 0
    functionLinenumber: 14759
    functionLinenumberEnd: 14762
    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:14767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14768
      start: 14765
    functionDepth: 2
    functionLinenumber: 14765
    functionLinenumberEnd: 14768
    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: 14773
      start: 14770
    functionDepth: 0
    functionLinenumber: 14770
    functionLinenumberEnd: 14773
    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:14781,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14784
      start: 14778
    functionDepth: 0
    functionLinenumber: 14778
    functionLinenumberEnd: 14784
    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:14791,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14792,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14793,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14794,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/box_code_base.c:14800,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14803,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/box_code_base.c:14805,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14809
      start: 14787
    functionDepth: 1
    functionLinenumber: 14787
    functionLinenumberEnd: 14809
    functionName: extl_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - ISOM_DECREASE_SIZE
    - gf_bs_read_data
    - gf_bs_read_u32
    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:14813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14815
      start: 14811
    functionDepth: 1
    functionLinenumber: 14811
    functionLinenumberEnd: 14815
    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:14824,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14826,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14827,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:14828,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/isomedia/box_code_base.c:14830,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14832
      start: 14819
    functionDepth: 3
    functionLinenumber: 14819
    functionLinenumberEnd: 14832
    functionName: extl_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_utf8
    - gf_bs_write_u32
    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:14839,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14842
      start: 14834
    functionDepth: 0
    functionLinenumber: 14834
    functionLinenumberEnd: 14842
    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:14863,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14864,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14866
      start: 14861
    functionDepth: 1
    functionLinenumber: 14861
    functionLinenumberEnd: 14866
    functionName: sref_box_new
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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:14871,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:14872,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14873,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14874,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:14876,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:14877,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:14881,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14883
      start: 14868
    functionDepth: 1
    functionLinenumber: 14868
    functionLinenumberEnd: 14883
    functionName: sref_box_del
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_pop_back
    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:14900,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: 14904
      start: 14898
    functionDepth: 1
    functionLinenumber: 14898
    functionLinenumberEnd: 14904
    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: 24
    BranchProfiles: []
    Callsites:
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:14909,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:14910,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14928,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14930,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:14931,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14933,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14934,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14937,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14942,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14943,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14948,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14949,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:14950,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14957,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14959,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14960,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14963,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14967,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14968,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14969,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14970,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:14978,1
    - Dst: ISOM_DECREASE_SIZE_GOTO_EXIT
      Src: /src/gpac/src/isomedia/box_code_base.c:14985,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:14986,1
    - Dst: read_signed_int
      Src: /src/gpac/src/isomedia/box_code_base.c:14991,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14995,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:14997,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15006,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_code_base.c:15007,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:15009,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:15011,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:15012,1
    - Dst: assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15033,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15037,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15043,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/box_code_base.c:15044,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/box_code_base.c:15045,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15046,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:15050,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15052,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:15053,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15054,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15055,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:15057,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 130
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_SampleReferences*
    - GF_BitStream*
    assertStmts:
    - condition: (ref>=0)
      pos:
        line_end: 15032
        line_start: 15032
        source_file: /src/gpac/src/isomedia/box_code_base.c
    constantsTouched: []
    func_position:
      end: 15060
      start: 14906
    functionDepth: 2
    functionLinenumber: 14906
    functionLinenumberEnd: 15060
    functionName: cdrf_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_pop_front
    - gf_list_del
    - read_signed_int
    - gf_list_get
    - ISOM_DECREASE_SIZE
    - gf_list_find
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_list_new
    - assert
    - gf_list_add
    - gf_list_pop_back
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    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:15065,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:15067,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:15073,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:15077,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:15079,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:15080,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15081,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:15084,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15085,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:15089,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15091,1
    - Dst: ISOM_DECREASE_SIZE
      Src: /src/gpac/src/isomedia/box_code_base.c:15092,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15097
      start: 15061
    functionDepth: 3
    functionLinenumber: 15061
    functionLinenumberEnd: 15097
    functionName: sref_box_read
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - cdrf_box_read
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - GF_SAFEALLOC
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_list_add
    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:15104,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ptr
    - sample_id
    argTypes:
    - GF_SampleReferences*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15112
      start: 15102
    functionDepth: 1
    functionLinenumber: 15102
    functionLinenumberEnd: 15112
    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:15120,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/box_code_base.c:15123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15125,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/box_code_base.c:15127,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:15146,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:15152,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/box_code_base.c:15153,1
    - Dst: cdrf_sample_is_leaf
      Src: /src/gpac/src/isomedia/box_code_base.c:15165,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/box_code_base.c:15169,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15180,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: 15188
      start: 15115
    functionDepth: 2
    functionLinenumber: 15115
    functionLinenumberEnd: 15188
    functionName: cdrf_get_refs
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_malloc
    - gf_list_new
    - GF_SAFEALLOC
    - ABS
    - gf_list_get
    - cdrf_sample_is_leaf
    - gf_list_add
    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:15191,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/isomedia/box_code_base.c:15192,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15193,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15194,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/box_code_base.c:15196,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - refs
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15197
      start: 15189
    functionDepth: 1
    functionLinenumber: 15189
    functionLinenumberEnd: 15197
    functionName: cdrf_clean_refs
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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: 15230
      start: 15199
    functionDepth: 0
    functionLinenumber: 15199
    functionLinenumberEnd: 15230
    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:15237,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15243,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15244,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15249,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15250,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: 15254
      start: 15233
    functionDepth: 1
    functionLinenumber: 15233
    functionLinenumberEnd: 15254
    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:15258,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15259,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15260,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15261,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15262,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15263,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15268,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: 15270
      start: 15256
    functionDepth: 1
    functionLinenumber: 15256
    functionLinenumberEnd: 15270
    functionName: cdrf_box_flush_pattern
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_assert
    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:15274,1
    - Dst: gf_isom_box_write_header
      Src: /src/gpac/src/isomedia/box_code_base.c:15283,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/box_code_base.c:15284,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15285,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15293,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/box_code_base.c:15296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15301,1
    - Dst: cdrf_locate_first_ref
      Src: /src/gpac/src/isomedia/box_code_base.c:15302,1
    - Dst: cdrf_box_flush_pattern
      Src: /src/gpac/src/isomedia/box_code_base.c:15306,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15309,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15310,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15312,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15314,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15316,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15317,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15319,1
    - Dst: cdrf_box_flush_pattern
      Src: /src/gpac/src/isomedia/box_code_base.c:15347,1
    - Dst: cdrf_box_flush_pattern
      Src: /src/gpac/src/isomedia/box_code_base.c:15360,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/box_code_base.c:15363,1
    - Dst: cdrf_clean_refs
      Src: /src/gpac/src/isomedia/box_code_base.c:15364,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 75
    argCount: 2
    argNames:
    - ptr
    - bs
    argTypes:
    - GF_SampleReferences*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15366
      start: 15272
    functionDepth: 3
    functionLinenumber: 15272
    functionLinenumberEnd: 15366
    functionName: cdrf_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_write_header
    - gf_free
    - gf_malloc
    - gf_bs_write_int
    - cdrf_get_refs
    - cdrf_box_flush_pattern
    - cdrf_clean_refs
    - gf_list_get
    - cdrf_locate_first_ref
    - 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:15372,1
    - Dst: gf_isom_full_box_write
      Src: /src/gpac/src/isomedia/box_code_base.c:15374,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15381,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:15382,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15384,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15386,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15389,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15390,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/box_code_base.c:15394,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15399
      start: 15368
    functionDepth: 4
    functionLinenumber: 15368
    functionLinenumberEnd: 15399
    functionName: sref_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u32
    - cdrf_box_write
    - gf_list_get
    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:15415,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15420,1
    - Dst: cdrf_locate_first_ref
      Src: /src/gpac/src/isomedia/box_code_base.c:15421,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15442,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15461,1
    - Dst: cdrf_same_entry
      Src: /src/gpac/src/isomedia/box_code_base.c:15463,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/box_code_base.c:15491,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15510,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15511,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15512,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15514,1
    - Dst: fprintf
      Src: /src/gpac/src/isomedia/box_code_base.c:15515,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: 15576
      start: 15404
    functionDepth: 2
    functionLinenumber: 15404
    functionLinenumberEnd: 15576
    functionName: cdrf_get_cost
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_assert
    - gf_fatal_assert
    - cdrf_same_entry
    - gf_list_get
    - cdrf_locate_first_ref
    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:15585,1
    - Dst: cdrf_get_cost
      Src: /src/gpac/src/isomedia/box_code_base.c:15591,1
    - Dst: cdrf_get_cost
      Src: /src/gpac/src/isomedia/box_code_base.c:15594,1
    - Dst: cdrf_get_cost
      Src: /src/gpac/src/isomedia/box_code_base.c:15599,1
    - Dst: cdrf_clean_refs
      Src: /src/gpac/src/isomedia/box_code_base.c:15611,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15615,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_SampleReferences*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15623
      start: 15577
    functionDepth: 3
    functionLinenumber: 15577
    functionLinenumberEnd: 15623
    functionName: cdrf_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - cdrf_get_cost
    - gf_list_count
    - cdrf_get_refs
    - cdrf_clean_refs
    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:15628,1
    - Dst: cdrf_box_size
      Src: /src/gpac/src/isomedia/box_code_base.c:15632,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/box_code_base.c:15635,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/box_code_base.c:15639,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15646,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15647,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15650,1
    - Dst: MAX
      Src: /src/gpac/src/isomedia/box_code_base.c:15651,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 33
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15658
      start: 15625
    functionDepth: 4
    functionLinenumber: 15625
    functionLinenumberEnd: 15658
    functionName: sref_box_size
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - cdrf_box_size
    - MAX
    - gf_list_get
    - 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:15664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15666
      start: 15662
    functionDepth: 1
    functionLinenumber: 15662
    functionLinenumberEnd: 15666
    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:15670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15671
      start: 15668
    functionDepth: 0
    functionLinenumber: 15668
    functionLinenumberEnd: 15671
    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:15676,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:15677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15679
      start: 15673
    functionDepth: 1
    functionLinenumber: 15673
    functionLinenumberEnd: 15679
    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:15688,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/box_code_base.c:15690,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15692
      start: 15684
    functionDepth: 3
    functionLinenumber: 15684
    functionLinenumberEnd: 15692
    functionName: srat_box_write
    functionSourceFile: /src/gpac/src/isomedia/box_code_base.c
    functionUses: 0
    functionsReached:
    - gf_isom_full_box_write
    - gf_bs_write_u32
    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: 15698
      start: 15694
    functionDepth: 0
    functionLinenumber: 15694
    functionLinenumberEnd: 15698
    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_LOG
    - gf_isom_box_new_parent
    - gf_isom_box_del_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: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_from_id
    - gf_isom_set_brand_info
    - gf_bs_truncate
    - gf_bs_seek
    - gf_isom_modify_alternate_brand
    - gf_list_enum
    - gf_isom_get_duration
    - gf_list_del_item
    - WriteToFile
    - GF_SAFEALLOC
    - gf_isom_reset_alt_brands
    - gf_list_new
    - Media_SetDuration
    - gf_list_last
    - gf_list_add
    - memcpy
    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:
    - gf_isom_get_track_from_id
    - GF_ISOM_FORMAT_FRAG_FLAGS
    - GetTrex
    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: 0
    functionsReached:
    - gf_isom_get_track_from_id
    - gf_isom_box_new_parent
    - GetTrex
    - mvex_on_child_box
    - moov_on_child_box
    - gf_isom_change_track_fragment_defaults
    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:
    - gf_isom_get_track_from_id
    - GetTrex
    - gf_list_find
    - 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_get_track_from_id
    - gf_isom_box_new_parent
    - GetTrex
    - gf_isom_box_del_parent
    - gf_isom_box_parse
    - gf_list_del_item
    - mvex_on_child_box
    - gf_bs_new
    - gf_bs_del
    - moov_on_child_box
    - gf_list_add
    - gf_bs_available
    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_list_count
    - gf_isom_box_del_parent
    - gf_list_del_item
    - gf_list_enum
    - gf_list_get
    - 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:
    - gf_list_count
    - get_earliest_cts_following
    - gf_list_enum
    - GF_ISOM_GET_FRAG_SYNC
    - gf_list_get
    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_enum
    - gf_list_get
    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_enum
    - gf_list_get
    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_list_count
    - gf_free
    - gf_list_pop_front
    - GF_ISOFile*::on_last_block_start
    - GF_ISOFile*::on_block_out
    - gf_list_get
    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_bs_get_position
    - gf_list_count
    - gf_bs_prevent_dispatch
    - update_trun_offsets
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u64
    - gf_bs_read_data
    - gf_bs_del
    - gf_bs_new_cbk
    - gf_bs_seek
    - gf_isom_box_del
    - gf_bs_write_u8
    - gf_malloc
    - gf_isom_write_compressed_box
    - gf_list_pop_front
    - gf_isom_box_write
    - gf_bs_grow
    - gf_net_get_ntp_ts
    - gf_list_get
    - gf_sys_is_test_mode
    - flush_ref_samples
    - GF_ISOFile*::on_last_block_start
    - gf_list_enum
    - gf_bs_write_u24
    - gf_bs_write_data
    - gf_isom_box_size
    - gf_free
    - gf_bs_truncate
    - gf_isom_box_del_parent
    - UpdateRuns
    - gf_list_del
    - gf_list_del_item
    - GF_4CC
    - gf_bs_write_u32
    - ComputeFragmentDefaults
    - 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_bs_get_position
    - gf_isom_box_size
    - gf_bs_seek
    - gf_isom_box_write
    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_bs_get_position
    - gf_list_count
    - gf_isom_box_size
    - gf_malloc
    - gf_isom_box_write
    - gf_isom_box_new
    - memset
    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_list_pop_front
    - gf_isom_box_write
    - gf_list_del
    - gf_isom_modify_alternate_brand
    - gf_isom_box_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_get_position
    - gf_list_count
    - gf_bs_get_size
    - gf_bs_read_data
    - gf_bs_del
    - gf_isom_fdm_new_temp
    - gf_isom_box_del
    - gf_bs_seek
    - StoreFragment
    - gf_isom_write_styp
    - gf_list_get
    - gf_isom_datamap_flush
    - gf_bs_transfer
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - gf_isom_datamap_del
    - gf_bs_truncate
    - gf_bs_new_cbk_buffer
    - 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_count
    - get_presentation_time
    - gf_list_enum
    - ABS
    - gf_list_get
    - memmove
    - 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: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_prevent_dispatch
    - gf_bs_get_size
    - estimate_next_moof_earliest_presentation_time
    - gf_assert
    - gf_list_rem_last
    - gf_bs_read_data
    - gf_bs_del
    - GF_SAFEALLOC
    - gf_isom_fdm_new_temp
    - gf_bs_seek
    - sidx_rewrite
    - StoreFragment
    - gf_list_add
    - gf_isom_box_del
    - gf_malloc
    - gf_list_pop_front
    - gf_isom_box_write
    - gf_isom_write_styp
    - gf_isom_box_new
    - GF_ISOFile*::on_block_out
    - gf_list_get
    - gf_list_last
    - gf_realloc
    - gf_isom_get_track_from_id
    - compute_seg_size
    - flush_ref_samples
    - moof_get_duration
    - GF_ISOFile*::on_last_block_start
    - moof_get_sap_info
    - moof_get_first_sap_end
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - gf_list_new
    - gf_isom_datamap_del
    - gf_isom_box_size
    - gf_free
    - gf_bs_truncate
    - get_presentation_time
    - GF_LOG
    - gf_bs_new_cbk_buffer
    - gf_list_del
    - gf_bs_write_u32
    - moof_get_earliest_cts
    - memset
    - 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_isom_box_size
    - gf_bs_prevent_dispatch
    - gf_isom_write_compressed_box
    - GF_LOG
    - gf_bs_new_cbk_buffer
    - gf_isom_box_write
    - GF_4CC
    - gf_assert
    - gf_bs_del
    - gf_bs_get_content_no_truncate
    - gf_isom_box_del
    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: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_assert
    - gf_bs_new
    - gf_isom_datamap_new
    - gf_isom_get_filename
    - gf_isom_datamap_del
    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_isom_box_new_parent
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_get
    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: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_bs_get_position
    - gf_bs_prevent_dispatch
    - gf_list_add
    - gf_isom_box_new
    - gf_bs_write_u32
    - strcmp
    - gf_list_get
    - gf_realloc
    - StoreFragment
    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_isom_get_track_from_id
    - gf_list_count
    - gf_isom_box_parse
    - gf_list_del_item
    - gf_bs_new
    - gf_list_find
    - gf_bs_del
    - gf_list_get
    - gf_isom_box_del
    - gf_list_add
    - gf_bs_available
    - gf_list_rem
    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: 43
    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:2897,1
    - Dst: GF_ISOM_FORMAT_FRAG_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:2902,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:2904,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2921,1
    - Dst: Media_ParseODFrame
      Src: /src/gpac/src/isomedia/movie_fragments.c:2928,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:2949,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:2950,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:2959,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:2961,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/movie_fragments.c:2964,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:2970,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2972,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:2975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:2980,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:2985,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:2993,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 176
    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: 2998
      start: 2774
    functionDepth: 6
    functionLinenumber: 2774
    functionLinenumberEnd: 2998
    functionName: gf_isom_fragment_add_sample_ex
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - GF_SAFEALLOC
    - Media_ParseODFrame
    - gf_list_add
    - gf_isom_box_new_parent
    - GF_ISOM_FORMAT_FRAG_FLAGS
    - gf_malloc
    - gf_list_get
    - gf_realloc
    - memcpy
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    - gf_bs_write_data
    - gf_list_new
    - gf_isom_get_traf
    - gf_free
    - GF_LOG
    - gf_isom_sample_del
    - memset
    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:3004,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: 3006
      start: 3000
    functionDepth: 7
    functionLinenumber: 3000
    functionLinenumberEnd: 3006
    functionName: gf_isom_fragment_add_sample
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    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:3011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/movie_fragments.c:3018,1
    - Dst: gf_isom_create_samp_enc_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:3022,1
    - Dst: gf_isom_create_piff_psec_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:3026,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3031,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3032,1
    - Dst: gf_isom_cenc_set_saiz_saio
      Src: /src/gpac/src/isomedia/movie_fragments.c:3037,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:3041,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3046,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:3048,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/movie_fragments.c:3051,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3056,1
    - Dst: gf_isom_cenc_set_saiz_saio
      Src: /src/gpac/src/isomedia/movie_fragments.c:3062,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: 3064
      start: 3007
    functionDepth: 6
    functionLinenumber: 3007
    functionLinenumberEnd: 3064
    functionName: gf_isom_fragment_set_cenc_sai
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_isom_create_piff_psec_box
    - gf_list_add
    - GF_SAFEALLOC
    - gf_isom_cenc_set_saiz_saio
    - gf_list_new
    - gf_isom_get_traf
    - gf_isom_create_samp_enc_box
    - memcpy
    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:3079,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3083,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3086,1
    - Dst: GF_ISOM_GET_FRAG_SYNC
      Src: /src/gpac/src/isomedia/movie_fragments.c:3092,1
    - Dst: GF_ISOM_GET_FRAG_DEG
      Src: /src/gpac/src/isomedia/movie_fragments.c:3093,1
    - Dst: GF_ISOM_FORMAT_FRAG_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3094,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3100,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/movie_fragments.c:3101,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3110,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/movie_fragments.c:3112,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/movie_fragments.c:3115,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3120,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:3122,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/movie_fragments.c:3125,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: 3130
      start: 3066
    functionDepth: 2
    functionLinenumber: 3066
    functionLinenumberEnd: 3130
    functionName: gf_isom_fragment_append_data_ex
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_ISOM_FORMAT_FRAG_FLAGS
    - gf_malloc
    - gf_free
    - GF_ISOM_GET_FRAG_DEG
    - gf_list_new
    - GF_SAFEALLOC
    - GF_ISOM_GET_FRAG_SYNC
    - gf_bs_write_data
    - gf_list_get
    - gf_isom_get_traf
    - gf_list_add
    - memcpy
    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:3134,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: 3136
      start: 3131
    functionDepth: 3
    functionLinenumber: 3131
    functionLinenumberEnd: 3136
    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:3145,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3150,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3152,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3157,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3159,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3161,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3166,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3170,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/movie_fragments.c:3172,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: 3173
      start: 3138
    functionDepth: 5
    functionLinenumber: 3138
    functionLinenumberEnd: 3173
    functionName: gf_isom_fragment_add_subsample
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_get
    - gf_isom_add_subsample_info
    - gf_list_new
    - gf_isom_get_traf
    - 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:3181,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3185,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: 3191
      start: 3176
    functionDepth: 5
    functionLinenumber: 3176
    functionLinenumberEnd: 3191
    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:3202,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3204,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3212,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3220,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/movie_fragments.c:3221,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/movie_fragments.c:3222,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3223,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3224,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3229,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/movie_fragments.c:3230,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/movie_fragments.c:3231,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3232,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3233,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3238,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/isomedia/movie_fragments.c:3239,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3240,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3241,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/movie_fragments.c:3245,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/movie_fragments.c:3252,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: 3253
      start: 3194
    functionDepth: 1
    functionLinenumber: 3194
    functionLinenumberEnd: 3253
    functionName: gf_isom_copy_sample_group_entry_to_traf
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_set_sample_group_info_ex
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_isom_add_sample_group_entry
    - gf_list_get
    - 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:3266,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/movie_fragments.c:3269,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3277,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3279,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3280,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3283,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/movie_fragments.c:3284,1
    - Dst: GF_ISOM_RESET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3287,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3292,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3300,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3307,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3310,1
    - Dst: gf_isom_get_subsample_types
      Src: /src/gpac/src/isomedia/movie_fragments.c:3316,1
    - Dst: gf_isom_sample_get_subsample_entry
      Src: /src/gpac/src/isomedia/movie_fragments.c:3319,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3328,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3334,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3336,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3338,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3343,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3347,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3350,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3352,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/movie_fragments.c:3353,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3359,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3367,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3376,1
    - Dst: gf_isom_copy_sample_group_entry_to_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3379,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3388,1
    - Dst: gf_isom_copy_sample_group_entry_to_traf
      Src: /src/gpac/src/isomedia/movie_fragments.c:3390,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: 3396
      start: 3255
    functionDepth: 5
    functionLinenumber: 3255
    functionLinenumberEnd: 3396
    functionName: gf_isom_fragment_copy_subsample
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_isom_sample_get_subsample_entry
    - GF_ISOM_RESET_FRAG_DEPEND_FLAGS
    - gf_isom_copy_sample_group_entry_to_traf
    - gf_list_new
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    - gf_list_add
    - gf_isom_box_new
    - gf_isom_add_subsample_info
    - gf_list_get
    - gf_isom_get_traf
    - gf_realloc
    - stbl_GetSampleDepType
    - gf_isom_get_subsample_types
    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:3408,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/movie_fragments.c:3411,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/movie_fragments.c:3413,1
    - Dst: GF_ISOM_RESET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3417,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3422,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/movie_fragments.c:3430,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3435,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/movie_fragments.c:3438,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: 3441
      start: 3400
    functionDepth: 5
    functionLinenumber: 3400
    functionLinenumberEnd: 3441
    functionName: gf_isom_fragment_set_sample_flags
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - GF_ISOM_RESET_FRAG_DEPEND_FLAGS
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    - gf_list_get
    - gf_isom_get_traf
    - 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:3453,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3457,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: 3464
      start: 3447
    functionDepth: 5
    functionLinenumber: 3447
    functionLinenumberEnd: 3464
    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:3470,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3473
      start: 3466
    functionDepth: 4
    functionLinenumber: 3466
    functionLinenumberEnd: 3473
    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: 3484
      start: 3478
    functionDepth: 0
    functionLinenumber: 3478
    functionLinenumberEnd: 3484
    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: 3493
      start: 3486
    functionDepth: 0
    functionLinenumber: 3486
    functionLinenumberEnd: 3493
    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:3501,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/movie_fragments.c:3502,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/movie_fragments.c:3504,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/movie_fragments.c:3507,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/movie_fragments.c:3508,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/movie_fragments.c:3510,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - movie
    - data
    - size
    argTypes:
    - GF_ISOFile*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3513
      start: 3495
    functionDepth: 1
    functionLinenumber: 3495
    functionLinenumberEnd: 3513
    functionName: gf_isom_set_emsg
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_parse
    - gf_bs_new
    - gf_bs_del
    - gf_list_new
    - gf_list_add
    - gf_bs_available
    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:3521,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - movie
    - TrackID
    argTypes:
    - GF_ISOFile*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3525
      start: 3516
    functionDepth: 2
    functionLinenumber: 3516
    functionLinenumberEnd: 3525
    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: 3536
      start: 3527
    functionDepth: 0
    functionLinenumber: 3527
    functionLinenumberEnd: 3536
    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:3548,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/movie_fragments.c:3553,1
    - Dst: isom_sample_refs_push
      Src: /src/gpac/src/isomedia/movie_fragments.c:3556,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: 3557
      start: 3541
    functionDepth: 5
    functionLinenumber: 3541
    functionLinenumberEnd: 3557
    functionName: gf_isom_fragment_add_sample_references
    functionSourceFile: /src/gpac/src/isomedia/movie_fragments.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_traf
    - gf_isom_box_new_parent
    - isom_sample_refs_push
    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: 8
    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:
    - stbl_GetSampleSize
    - GetGhostNum
    - gf_assert
    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_SAFEALLOC
    - gf_isom_sample_entry_init
    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_isom_hint_sample_del
    - gf_isom_sample_entry_predestroy
    - gf_free
    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_isom_base_sample_entry_read
    - ISOM_DECREASE_SIZE
    - gf_isom_box_array_read
    - gf_bs_read_u32
    - gf_bs_read_u16
    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_u16
    - gf_isom_box_write_header
    - gf_bs_write_u32
    - gf_bs_write_data
    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_isom_box_new
    - GF_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_isom_hint_pck_del
    - gf_isom_sample_del
    - gf_isom_box_array_del
    - gf_list_get
    - gf_isom_box_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_isom_hint_pck_new
    - gf_malloc
    - GF_LOG
    - gf_isom_hint_pck_read
    - gf_bs_read_data
    - gf_4cc_to_str
    - gf_bs_read_u32
    - gf_list_add
    - gf_isom_box_read
    - gf_bs_read_u16
    - gf_bs_available
    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_count
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_write_u16
    - gf_isom_hint_pck_write
    - gf_bs_write_data
    - gf_list_get
    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_isom_box_size
    - gf_isom_hint_pck_size
    - gf_list_get
    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_rtcp_new
    - gf_isom_hint_rtp_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_rtcp_read
    - gf_isom_hint_rtp_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_rtp_write
    - gf_isom_hint_rtcp_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_rtcp_length
    - gf_isom_hint_rtp_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_u8
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    - 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_u32
    - gf_bs_write_data
    - memset
    - 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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - DelDTE
    - gf_isom_box_array_del
    - gf_list_get
    - gf_list_rem
    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_u8
    - ReadDTE
    - GF_LOG
    - gf_isom_box_parse
    - gf_bs_read_int
    - DelDTE
    - gf_bs_read_u32
    - NewDTE
    - gf_list_add
    - gf_bs_read_u16
    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
    - OffsetDTE
    - gf_list_get
    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_count
    - gf_isom_box_array_write
    - gf_bs_write_int
    - WriteDTE
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_isom_box_array_size
    - gf_list_get
    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_u8
    - gf_malloc
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_bs_available
    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_int
    - gf_bs_write_u8
    - gf_bs_write_data
    - 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
    - Track_FindRef
    - Media_GetSampleDesc
    - gf_isom_hint_sample_del
    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_isom_hint_sample_new
    - gf_bs_new
    - gf_isom_hint_sample_read
    - gf_bs_del
    - gf_isom_hint_sample_del
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_list_new
    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_count
    - GF_SAFEALLOC
    - gf_isom_sample_new
    - Media_GetSample
    - gf_list_get
    - gf_list_insert
    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_isom_get_track_from_id
    - gf_list_count
    - gf_isom_get_track_box
    - gf_bs_write_int
    - gf_isom_load_next_hint_sample
    - gf_isom_hint_rtp_del
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_isom_get_data_sample
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_isom_hint_sample_del
    - gf_list_get
    - Media_GetSampleDesc
    - 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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_isom_box_del
    - gf_list_rem
    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_bs_read_u8
    - gf_list_count
    - gf_isom_box_del
    - gf_free
    - gf_malloc
    - gf_bs_read_u64
    - gf_strdup
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_isom_box_parse_ex
    - gf_bs_read_u32
    - memset
    - gf_list_add
    - ISOM_DECREASE_SIZE_GOTO_EXIT
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_isom_full_box_write
    - gf_isom_box_write
    - gf_bs_write_int
    - gf_list_get
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_write_u8
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_malloc
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_list_add
    - gf_bs_read_u16
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_isom_full_box_write
    - gf_bs_write_int
    - gf_bs_write_u64
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_list_get
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_u8
    - gf_malloc
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - gf_list_add
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_isom_full_box_write
    - gf_list_get
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - 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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_u8
    - gf_malloc
    - gf_bs_read_u64
    - ISOM_DECREASE_SIZE
    - gf_bs_read_u32
    - gf_list_add
    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:
    - ISOM_DECL_BOX_ALLOC
    - gf_list_new
    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_isom_full_box_write
    - gf_bs_write_u64
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    - strlen
    - 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_bs_get_position
    - gf_isom_box_size
    - GF_LOG
    - gf_isom_box_write
    - gf_bs_write_long_int
    - gf_bs_new_cbk
    - gf_bs_del
    - strcmp
    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:
    - gf_isom_box_new_parent
    - moov_on_child_box
    - gf_odf_desc_new
    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_get_track_id
    - gf_isom_can_access_movie
    - gf_odf_desc_del
    - gf_isom_is_track_in_root_od
    - AddMovieIOD
    - gf_isom_add_desc_to_root_od
    - gf_odf_desc_new
    - gf_isom_insert_moov
    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_can_access_movie
    - gf_isom_box_del_parent
    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_isom_get_track_id
    - gf_isom_can_access_movie
    - gf_odf_desc_del
    - gf_isom_is_track_in_root_od
    - AddMovieIOD
    - 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: 2
    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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - gf_isom_box_find_child
    - gf_lang_find
    - gf_lang_get_3cc
    - strlen
    - gf_strdup
    - memcpy
    - gf_isom_get_mp4time
    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_malloc
    - AddMovieIOD
    - memset
    - gf_isom_insert_moov
    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_isom_can_access_movie
    - gf_odf_desc_del
    - AddMovieIOD
    - gf_odf_desc_copy
    - gf_isom_set_root_iod
    - gf_isom_insert_moov
    - 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: 2
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_list_enum
    - gf_list_get
    - gf_isom_insert_moov
    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_box_new_parent
    - gf_isom_can_access_movie
    - GF_LOG
    - gf_list_enum
    - gf_isom_is_video_handler_type
    - gf_isom_box_find_child
    - gf_isom_insert_moov
    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_isom_can_access_movie
    - gf_free
    - AddMovieIOD
    - gf_strdup
    - gf_isom_insert_moov
    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_can_access_movie
    - gf_isom_box_del_parent
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_parse_ex
    - gf_list_new
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_insert_moov
    - gf_bs_available
    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:
    - gf_isom_can_access_movie
    - gf_assert
    - gf_bs_new
    - RequestTrack
    - gf_bs_del
    - gf_bs_set_cookie
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_box_new_parent
    - gf_isom_box_parse_ex
    - gf_sys_is_test_mode
    - trak_on_child_box
    - NewMedia
    - gf_list_new
    - gf_isom_get_mp4time
    - gf_isom_get_track_by_id
    - gf_list_del_item
    - gf_isom_set_last_error
    - moov_on_child_box
    - gf_isom_insert_moov
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_parse_ex
    - gf_isom_box_del
    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: 0
    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_get_track_box
    - gf_isom_box_del_parent
    - gf_isom_set_last_error
    - gf_list_add
    - gf_isom_box_new
    - gf_strdup
    - gf_isom_new_track_from_template
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_get_mp4time
    - gf_list_get
    - gf_isom_box_del
    - 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: 0
    functionsReached:
    - Media_FindDataRef
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_odf_desc_del
    - Track_SetStreamDescriptor
    - gf_odf_desc_copy
    - 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_isom_datamap_get_offset
    - gf_bs_del
    - 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:
    - gf_bs_new
    - gf_bs_write_data
    - gf_isom_flush_chunk
    - gf_isom_datamap_add_data
    - Media_AddSample
    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: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_datamap_get_offset
    - trak_add_sample
    - FlushCaptureMode
    - gf_isom_sample_del
    - gf_isom_datamap_open
    - gf_list_get
    - Media_ParseODFrame
    - Media_GetSampleDesc
    - gf_isom_get_mp4time
    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:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_get_sample_info
    - gf_isom_last_error
    - gf_isom_datamap_get_offset
    - trak_add_sample
    - SetTrackDuration
    - FlushCaptureMode
    - stbl_findEntryForTime
    - gf_isom_sample_del
    - gf_isom_datamap_open
    - gf_list_get
    - Media_ParseODFrame
    - Media_SetDuration
    - Media_GetSampleDesc
    - gf_isom_get_mp4time
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - stbl_SampleSizeAppend
    - gf_isom_datamap_open
    - gf_bs_write_data
    - gf_list_get
    - gf_isom_datamap_add_data
    - Media_GetSampleDesc
    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:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - unpack_track
    - SetTrackDuration
    - gf_list_get
    - Media_SetDuration
    - Media_AddSample
    - Media_GetSampleDesc
    - gf_isom_get_mp4time
    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:1461,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1471,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 75
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - dur_num
    - dur_den
    - mode
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1385
    functionDepth: 1
    functionLinenumber: 1385
    functionLinenumberEnd: 1478
    functionName: gf_isom_set_last_sample_duration_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_get_mp4time
    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:1483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - duration
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1480
    functionDepth: 2
    functionLinenumber: 1480
    functionLinenumberEnd: 1484
    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:1489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - next_dts
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1490
      start: 1486
    functionDepth: 2
    functionLinenumber: 1486
    functionLinenumberEnd: 1490
    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:1495,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: 1496
      start: 1492
    functionDepth: 2
    functionLinenumber: 1492
    functionLinenumberEnd: 1496
    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:1505,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1508,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1511,1
    - Dst: Media_ParseODFrame
      Src: /src/gpac/src/isomedia/isom_write.c:1520,1
    - Dst: Media_UpdateSample
      Src: /src/gpac/src/isomedia/isom_write.c:1521,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_write.c:1522,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1523,1
    - Dst: Media_UpdateSample
      Src: /src/gpac/src/isomedia/isom_write.c:1525,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1527,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1531,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: 1534
      start: 1499
    functionDepth: 6
    functionLinenumber: 1499
    functionLinenumberEnd: 1534
    functionName: gf_isom_update_sample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - unpack_track
    - gf_isom_disable_inplace_rewrite
    - gf_isom_sample_del
    - Media_ParseODFrame
    - Media_UpdateSample
    - gf_isom_get_mp4time
    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:1544,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1547,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1555,1
    - Dst: Media_UpdateSampleReference
      Src: /src/gpac/src/isomedia/isom_write.c:1563,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1567,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: 1569
      start: 1538
    functionDepth: 3
    functionLinenumber: 1538
    functionLinenumberEnd: 1569
    functionName: gf_isom_update_sample_reference
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - unpack_track
    - Media_UpdateSampleReference
    - 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:1580,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1583,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:1587,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: 1597
      start: 1574
    functionDepth: 1
    functionLinenumber: 1574
    functionLinenumberEnd: 1597
    functionName: gf_isom_meta_track_remove
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_list_get
    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:1608,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1611,1
    - Dst: unpack_track
      Src: /src/gpac/src/isomedia/isom_write.c:1618,1
    - Dst: stbl_RemoveDTS
      Src: /src/gpac/src/isomedia/isom_write.c:1623,1
    - Dst: stbl_RemoveCTS
      Src: /src/gpac/src/isomedia/isom_write.c:1627,1
    - Dst: stbl_RemoveSize
      Src: /src/gpac/src/isomedia/isom_write.c:1631,1
    - Dst: stbl_RemoveChunk
      Src: /src/gpac/src/isomedia/isom_write.c:1634,1
    - Dst: stbl_RemoveRAP
      Src: /src/gpac/src/isomedia/isom_write.c:1638,1
    - Dst: stbl_RemoveRedundant
      Src: /src/gpac/src/isomedia/isom_write.c:1643,1
    - Dst: stbl_RemoveShadow
      Src: /src/gpac/src/isomedia/isom_write.c:1647,1
    - Dst: stbl_RemovePaddingBits
      Src: /src/gpac/src/isomedia/isom_write.c:1651,1
    - Dst: stbl_RemoveSubSample
      Src: /src/gpac/src/isomedia/isom_write.c:1654,1
    - Dst: stbl_RemoveSampleGroup
      Src: /src/gpac/src/isomedia/isom_write.c:1657,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1660,1
    - Dst: gf_isom_meta_track_remove
      Src: /src/gpac/src/isomedia/isom_write.c:1662,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:1664,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 51
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - sampleNumber
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1602
    functionDepth: 6
    functionLinenumber: 1602
    functionLinenumberEnd: 1665
    functionName: gf_isom_remove_sample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - unpack_track
    - stbl_RemoveSubSample
    - stbl_RemoveSize
    - stbl_RemoveRAP
    - stbl_RemoveShadow
    - gf_isom_disable_inplace_rewrite
    - stbl_RemoveRedundant
    - stbl_RemoveCTS
    - stbl_RemoveSampleGroup
    - SetTrackDuration
    - stbl_RemoveChunk
    - gf_isom_meta_track_remove
    - stbl_RemovePaddingBits
    - stbl_RemoveDTS
    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:1675,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:1681,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:1683,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:1684,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:1686,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - movie
    - filename
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1689
      start: 1668
    functionDepth: 1
    functionLinenumber: 1668
    functionLinenumberEnd: 1689
    functionName: gf_isom_set_final_name
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_free
    - gf_isom_disable_inplace_rewrite
    - strcmp
    - gf_strdup
    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:1705,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1708,1
    - Dst: Media_GetESD
      Src: /src/gpac/src/isomedia/isom_write.c:1712,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1715,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/isomedia/isom_write.c:1719,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:1722,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1727,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/isom_write.c:1737,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:1741,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:1744,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1746,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:1748,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:1752,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1759,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:1761,1
    - Dst: Track_FindRef
      Src: /src/gpac/src/isomedia/isom_write.c:1766,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1770,1
    - Dst: reftype_AddRefTrack
      Src: /src/gpac/src/isomedia/isom_write.c:1773,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/isomedia/isom_write.c:1787,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: 1788
      start: 1692
    functionDepth: 5
    functionLinenumber: 1692
    functionLinenumberEnd: 1788
    functionName: gf_isom_add_desc_to_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_odf_desc_del
    - trak_on_child_box
    - reftype_AddRefTrack
    - Media_GetESD
    - Track_FindRef
    - gf_isom_box_find_child
    - gf_isom_get_original_format_type
    - gf_odf_desc_copy
    - gf_list_get
    - gf_list_add
    - gf_odf_desc_add_desc
    - gf_isom_get_mp4time
    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:1802,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1805,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1811,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1814,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1819,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:1821,1
    - Dst: Track_SetStreamDescriptor
      Src: /src/gpac/src/isomedia/isom_write.c:1823,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:1825,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: 1828
      start: 1793
    functionDepth: 7
    functionLinenumber: 1793
    functionLinenumberEnd: 1828
    functionName: gf_isom_change_mpeg4_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_odf_desc_del
    - Track_SetStreamDescriptor
    - gf_odf_desc_copy
    - gf_list_get
    - 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:1837,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1847,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1850,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1854,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: 1870
      start: 1830
    functionDepth: 1
    functionLinenumber: 1830
    functionLinenumberEnd: 1870
    functionName: gf_isom_set_visual_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_list_get
    - 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:1879,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1882,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1898,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1901,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: 1906
      start: 1872
    functionDepth: 1
    functionLinenumber: 1872
    functionLinenumberEnd: 1906
    functionName: gf_isom_set_visual_bit_depth
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_list_get
    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:1915,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1918,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1923,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1926,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1930,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:1937,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1939,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1943,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: 1949
      start: 1908
    functionDepth: 5
    functionLinenumber: 1908
    functionLinenumberEnd: 1949
    functionName: gf_isom_set_pixel_aspect_ratio
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_isom_get_mp4time
    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:1959,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:1962,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:1967,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:1970,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:1974,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:1978,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1980,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:1990,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:1998,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:2004,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:2006,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: 2010
      start: 1951
    functionDepth: 5
    functionLinenumber: 1951
    functionLinenumberEnd: 2010
    functionName: gf_isom_set_visual_color_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_free
    - gf_isom_box_del_parent
    - gf_malloc
    - gf_isom_box_find_child
    - gf_list_get
    - memcpy
    - gf_isom_get_mp4time
    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:2020,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2023,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2028,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2031,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2035,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2039,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2044,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2049,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: 2057
      start: 2012
    functionDepth: 5
    functionLinenumber: 2012
    functionLinenumberEnd: 2057
    functionName: gf_isom_set_ambient_viewing_environment
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_isom_get_mp4time
    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:2070,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2073,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2078,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2081,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2085,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2130,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2134,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2137,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2161,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2183,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:2191,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2194,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: 2197
      start: 2059
    functionDepth: 5
    functionLinenumber: 2059
    functionLinenumberEnd: 2197
    functionName: gf_isom_set_dolby_vision_profile
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_clone_box
    - gf_isom_box_find_child
    - gf_list_get
    - gf_list_add
    - gf_isom_get_mp4time
    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:2207,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2210,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2218,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2222,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2226,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2229,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2234,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2238,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2241,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2246,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: 2249
      start: 2199
    functionDepth: 5
    functionLinenumber: 2199
    functionLinenumberEnd: 2249
    functionName: gf_isom_set_high_dynamic_range_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_isom_get_mp4time
    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:2258,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2261,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2266,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2269,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2273,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2277,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2279,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2283,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: 2296
      start: 2251
    functionDepth: 5
    functionLinenumber: 2251
    functionLinenumberEnd: 2296
    functionName: gf_isom_set_clean_aperture
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_isom_get_mp4time
    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:2310,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2313,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:2318,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2325,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:2329,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:2335,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2343,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2345,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2348,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2350,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2353,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2355,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2358,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2362,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2366,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2376,1
    - Dst: floor
      Src: /src/gpac/src/isomedia/isom_write.c:2390,1
    - Dst: floor
      Src: /src/gpac/src/isomedia/isom_write.c:2401,1
    - Dst: floor
      Src: /src/gpac/src/isomedia/isom_write.c:2404,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 100
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - remove
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2410
      start: 2299
    functionDepth: 5
    functionLinenumber: 2299
    functionLinenumberEnd: 2410
    functionName: gf_isom_update_aperture_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_get
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_isom_box_new
    - gf_list_new
    - gf_isom_box_del
    - floor
    - gf_list_add
    - 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:2419,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2422,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2427,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2430,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2434,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2438,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2440,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2444,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: 2451
      start: 2412
    functionDepth: 5
    functionLinenumber: 2412
    functionLinenumberEnd: 2451
    functionName: gf_isom_set_image_sequence_coding_constraints
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_isom_get_mp4time
    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:2460,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2463,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2468,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2471,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2475,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2479,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2481,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2485,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:2488,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: 2490
      start: 2453
    functionDepth: 5
    functionLinenumber: 2453
    functionLinenumberEnd: 2490
    functionName: gf_isom_set_image_sequence_alpha
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_strdup
    - gf_isom_get_mp4time
    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:2511,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2521,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2524,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2528,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2592,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2593,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2604,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2611,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:2622,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2626,1
    - Dst: gf_isom_audio_sample_get_audio_codec_cfg_box
      Src: /src/gpac/src/isomedia/isom_write.c:2632,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2636,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2639,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2640,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:2660,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2665,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2667,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2669,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2671,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2673,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2674,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2678,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2680,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2683,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:2686,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:2688,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2690,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    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: 2699
      start: 2492
    functionDepth: 5
    functionLinenumber: 2492
    functionLinenumberEnd: 2699
    functionName: gf_isom_set_audio_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_del_item
    - gf_list_new
    - gf_isom_box_new
    - gf_list_get
    - gf_list_add
    - gf_isom_audio_sample_get_audio_codec_cfg_box
    - 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:2710,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2717,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2724,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2727,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:2731,1
    - Dst: gf_isom_set_audio_info
      Src: /src/gpac/src/isomedia/isom_write.c:2741,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:2744,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2746,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:2750,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: 2752
      start: 2701
    functionDepth: 6
    functionLinenumber: 2701
    functionLinenumberEnd: 2752
    functionName: gf_isom_set_audio_layout
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_find_child
    - gf_isom_set_audio_info
    - gf_list_get
    - memcpy
    - gf_isom_get_mp4time
    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:2759,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:2771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - movie
    - storageMode
    argTypes:
    - GF_ISOFile*
    - GF_ISOStorageMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2776
      start: 2755
    functionDepth: 1
    functionLinenumber: 2755
    functionLinenumberEnd: 2776
    functionName: gf_isom_set_storage_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    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: 2786
      start: 2779
    functionDepth: 0
    functionLinenumber: 2779
    functionLinenumberEnd: 2786
    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: 2794
      start: 2788
    functionDepth: 0
    functionLinenumber: 2788
    functionLinenumberEnd: 2794
    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:2810,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:2813,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2818,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2820,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2824,1
    - Dst: edts_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2826,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:2837,1
    - Dst: CreateEditEntry
      Src: /src/gpac/src/isomedia/isom_write.c:2847,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2850,1
    - Dst: CreateEditEntry
      Src: /src/gpac/src/isomedia/isom_write.c:2852,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2854,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2855,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2881,1
    - Dst: CreateEditEntry
      Src: /src/gpac/src/isomedia/isom_write.c:2888,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2891,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:2893,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2894,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:2897,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2898,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: 2900
      start: 2800
    functionDepth: 6
    functionLinenumber: 2800
    functionLinenumberEnd: 2900
    functionName: gf_isom_set_edit_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - edts_on_child_box
    - gf_list_enum
    - SetTrackDuration
    - gf_list_insert
    - gf_list_add
    - CreateEditEntry
    - trak_on_child_box
    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:2905,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: 2906
      start: 2902
    functionDepth: 7
    functionLinenumber: 2902
    functionLinenumberEnd: 2906
    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:2911,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: 2913
      start: 2908
    functionDepth: 7
    functionLinenumber: 2908
    functionLinenumberEnd: 2913
    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:2921,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2930,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2931,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:2932,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:2933,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2937,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2939,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2940
      start: 2916
    functionDepth: 6
    functionLinenumber: 2916
    functionLinenumberEnd: 2940
    functionName: gf_isom_remove_edits
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_list_count
    - gf_isom_box_del_parent
    - SetTrackDuration
    - gf_list_get
    - 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:2950,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2953,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:2957,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/isomedia/isom_write.c:2957,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2959,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:2960,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:2961,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:2963,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:2964,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - seg_index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2944
    functionDepth: 7
    functionLinenumber: 2944
    functionLinenumberEnd: 2965
    functionName: gf_isom_remove_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_free
    - SetTrackDuration
    - gf_isom_remove_edits
    - gf_list_get
    - 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:2974,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:2976,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2980,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2982,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:2983,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:2986,1
    - Dst: edts_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:2988,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:2989,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:2991,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3009,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:3010,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: 3011
      start: 2968
    functionDepth: 6
    functionLinenumber: 2968
    functionLinenumberEnd: 3011
    functionName: gf_isom_append_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_malloc
    - edts_on_child_box
    - gf_assert
    - SetTrackDuration
    - gf_list_add
    - trak_on_child_box
    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:3019,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3021,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3025,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3026,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:3043,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: 3044
      start: 3013
    functionDepth: 6
    functionLinenumber: 3013
    functionLinenumberEnd: 3044
    functionName: gf_isom_modify_edit
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - SetTrackDuration
    - gf_list_get
    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:3052,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3058
      start: 3046
    functionDepth: 1
    functionLinenumber: 3046
    functionLinenumberEnd: 3058
    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:3071,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3074,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3100,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:3102,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3104,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3110,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3114,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/isomedia/isom_write.c:3118,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/isomedia/isom_write.c:3121,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/src/isomedia/isom_write.c:3125,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/isomedia/isom_write.c:3128,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/isomedia/isom_write.c:3132,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3139,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3140,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3143,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3154,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3157,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3167,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3173,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3174,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:3179,1
    - Dst: gf_isom_meta_track_remove
      Src: /src/gpac/src/isomedia/isom_write.c:3181,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3184,1
    - Dst: update_next_track_id
      Src: /src/gpac/src/isomedia/isom_write.c:3187,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3189,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3190,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:3191,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 104
    argCount: 2
    argNames:
    - movie
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3195
      start: 3061
    functionDepth: 7
    functionLinenumber: 3061
    functionLinenumberEnd: 3195
    functionName: gf_isom_remove_track
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 4
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_isom_disable_inplace_rewrite
    - gf_isom_get_sample_count
    - gf_isom_get_sample
    - gf_isom_box_del
    - gf_isom_get_track_box
    - gf_isom_remove_sample
    - gf_malloc
    - update_next_track_id
    - gf_list_enum
    - gf_isom_update_sample
    - gf_odf_desc_del
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_del_item
    - gf_isom_sample_del
    - 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: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:3206,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3211,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3215,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3215,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3222,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3224,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3225,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3226,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3227,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_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3238,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3240,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 3
    argNames:
    - movie
    - threeCharCode
    - notice
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3241
      start: 3198
    functionDepth: 6
    functionLinenumber: 3198
    functionLinenumberEnd: 3241
    functionName: gf_isom_set_copyright
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_free
    - udta_on_child_box_ex
    - udta_getEntry
    - gf_isom_box_new
    - strcmp
    - gf_list_get
    - gf_strdup
    - moov_on_child_box
    - gf_isom_insert_moov
    - memcpy
    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:3252,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3255,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3259,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3262,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3262,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3273,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3275,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3277,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3280,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3281,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3285,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3286,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3287,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3294,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3297,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3298,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3299,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: 3300
      start: 3243
    functionDepth: 5
    functionLinenumber: 3243
    functionLinenumberEnd: 3300
    functionName: gf_isom_add_track_kind
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_free
    - udta_on_child_box_ex
    - udta_getEntry
    - gf_isom_box_new
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_isom_insert_moov
    - trak_on_child_box
    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:3310,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3312,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3316,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3319,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3319,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3328,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3329,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3333,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3334,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3335,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: 3342
      start: 3302
    functionDepth: 5
    functionLinenumber: 3302
    functionLinenumberEnd: 3342
    functionName: gf_isom_remove_track_kind
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - udta_getEntry
    - strcmp
    - gf_list_get
    - gf_isom_insert_moov
    - trak_on_child_box
    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:3354,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3357,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3361,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3364,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3364,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3370,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3370,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3377,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3379,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3380,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3382,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3384,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3390,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3392,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:3395,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:3399,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3404,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3406,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3408,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:3412,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3414,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: 3415
      start: 3344
    functionDepth: 6
    functionLinenumber: 3344
    functionLinenumberEnd: 3415
    functionName: gf_isom_add_chapter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_free
    - gf_list_insert
    - udta_on_child_box_ex
    - udta_getEntry
    - gf_isom_box_new
    - GF_SAFEALLOC
    - gf_list_get
    - gf_strdup
    - moov_on_child_box
    - gf_list_add
    - gf_isom_insert_moov
    - trak_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:3426,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3428,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3432,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3441,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3443,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3447,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3449,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3450,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3451,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3453,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3454,1
    - Dst: gf_free
      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_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3457,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3460,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3461,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:3462,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3463,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3466
      start: 3417
    functionDepth: 3
    functionLinenumber: 3417
    functionLinenumberEnd: 3466
    functionName: gf_isom_remove_chapter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_list_count
    - gf_list_del_item
    - udta_getEntry
    - gf_isom_box_array_del
    - gf_list_get
    - gf_isom_insert_moov
    - 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:3476,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3478,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3484,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3487,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3490,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3492,1
    - Dst: gf_free
      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_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3497,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:3498,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:3499,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3500,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - movie
    - index
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3503
      start: 3469
    functionDepth: 2
    functionLinenumber: 3469
    functionLinenumberEnd: 3503
    functionName: gf_isom_remove_copyright
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - udta_getEntry
    - gf_list_get
    - gf_isom_insert_moov
    - 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:3511,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:3514,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3517,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3517,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:3521,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3523,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3525,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3526,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3528,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3534,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3537,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3538,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3540,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3542,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: 3543
      start: 3505
    functionDepth: 6
    functionLinenumber: 3505
    functionLinenumberEnd: 3543
    functionName: gf_isom_set_watermark
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_free
    - gf_malloc
    - udta_on_child_box_ex
    - udta_getEntry
    - gf_isom_box_new
    - gf_list_get
    - moov_on_child_box
    - gf_isom_insert_moov
    - memcpy
    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:3552,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - movie
    - InterleaveTime
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3558
      start: 3548
    functionDepth: 1
    functionLinenumber: 3548
    functionLinenumberEnd: 3558
    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:3573,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3576,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3603,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3617,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3618,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:3620,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 46
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - CompactionOn
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3626
      start: 3565
    functionDepth: 1
    functionLinenumber: 3565
    functionLinenumberEnd: 3626
    functionName: gf_isom_use_compact_size
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - memset
    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: 3635
      start: 3629
    functionDepth: 0
    functionLinenumber: 3629
    functionLinenumberEnd: 3635
    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:3648,1
    - Dst: CheckNoData
      Src: /src/gpac/src/isomedia/isom_write.c:3651,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3657,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3659,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3666,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3677,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3679,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3682,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 43
    argCount: 3
    argNames:
    - movie
    - MajorBrand
    - MinorVersion
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3685
      start: 3637
    functionDepth: 4
    functionLinenumber: 3637
    functionLinenumberEnd: 3685
    functionName: gf_isom_set_brand_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 5
    functionsReached:
    - gf_isom_can_access_movie
    - gf_free
    - gf_malloc
    - gf_list_add
    - gf_isom_box_new
    - CheckNoData
    - memcpy
    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:3699,1
    - Dst: CheckNoData
      Src: /src/gpac/src/isomedia/isom_write.c:3702,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3708,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3710,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3729,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3732,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3733,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:3744,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3747,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3758,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 66
    argCount: 3
    argNames:
    - movie
    - Brand
    - AddIt
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3761
      start: 3688
    functionDepth: 4
    functionLinenumber: 3688
    functionLinenumberEnd: 3761
    functionName: gf_isom_modify_alternate_brand
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 7
    functionsReached:
    - gf_isom_can_access_movie
    - gf_free
    - gf_malloc
    - gf_assert
    - gf_list_add
    - gf_isom_box_new
    - CheckNoData
    - memcpy
    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:3773,1
    - Dst: CheckNoData
      Src: /src/gpac/src/isomedia/isom_write.c:3776,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3782,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:3784,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3786,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3791,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - movie
    - leave_empty
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3798
      start: 3763
    functionDepth: 4
    functionLinenumber: 3763
    functionLinenumberEnd: 3798
    functionName: gf_isom_reset_alt_brands_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_free
    - gf_malloc
    - gf_list_add
    - gf_isom_box_new
    - CheckNoData
    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:3802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3803
      start: 3799
    functionDepth: 5
    functionLinenumber: 3799
    functionLinenumberEnd: 3803
    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:3811,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3814,1
    - Dst: stbl_SetPaddingBits
      Src: /src/gpac/src/isomedia/isom_write.c:3818,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: 3819
      start: 3806
    functionDepth: 1
    functionLinenumber: 3806
    functionLinenumberEnd: 3819
    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:3833,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:3837,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3840,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3851,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3852,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:3862,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3863,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:3866,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3867,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:3868,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3869,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: 3873
      start: 3822
    functionDepth: 5
    functionLinenumber: 3822
    functionLinenumberEnd: 3873
    functionName: gf_isom_remove_user_data_item
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_free
    - gf_isom_box_del_parent
    - memcmp
    - gf_list_enum
    - gf_isom_box_array_del
    - gf_list_get
    - memset
    - 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:3885,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:3889,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3892,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:3903,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:3904,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:3912,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:3913,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:3914,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: 3918
      start: 3875
    functionDepth: 3
    functionLinenumber: 3875
    functionLinenumberEnd: 3918
    functionName: gf_isom_remove_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - memcmp
    - gf_list_enum
    - gf_isom_box_array_del
    - memset
    - 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:3927,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3933,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3935,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3935,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3939,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3939,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3946,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3950,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3952,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3955,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:3957,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3959,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:3961,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:3963,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:3966,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: 3971
      start: 3920
    functionDepth: 6
    functionLinenumber: 3920
    functionLinenumberEnd: 3971
    functionName: gf_isom_add_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_malloc
    - udta_on_child_box_ex
    - gf_isom_box_new
    - moov_on_child_box
    - memcpy
    - trak_on_child_box
    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:3981,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:3985,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3987,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3987,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:3991,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:3991,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:3996,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/isom_write.c:3997,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:3999,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:4001,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4004,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: 4006
      start: 3973
    functionDepth: 6
    functionLinenumber: 3973
    functionLinenumberEnd: 4006
    functionName: gf_isom_add_user_data_boxes
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_box_parse
    - gf_bs_new
    - udta_on_child_box_ex
    - gf_bs_del
    - moov_on_child_box
    - gf_bs_available
    - trak_on_child_box
    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:4016,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:4017,1
    - Dst: gf_odf_desc_copy
      Src: /src/gpac/src/isomedia/isom_write.c:4018,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4020,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4021,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4022,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:4023,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4025,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4026,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4027,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/isomedia/isom_write.c:4028,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - orig
    - dest
    argTypes:
    - GF_ISOFile*
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4031
      start: 4008
    functionDepth: 7
    functionLinenumber: 4008
    functionLinenumberEnd: 4031
    functionName: gf_isom_clone_pl_indications
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_odf_desc_del
    - gf_list_count
    - AddMovieIOD
    - gf_odf_desc_copy
    - gf_list_get
    - 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:4042,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4045,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4047,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4048,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4049,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4050,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4052,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4055,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4057,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:4060,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4061,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4062,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - src
    - dst
    argTypes:
    - GF_Box*
    - GF_Box**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4064
      start: 4033
    functionDepth: 4
    functionLinenumber: 4033
    functionLinenumberEnd: 4064
    functionName: gf_isom_clone_box
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 3
    functionsReached:
    - gf_isom_box_size
    - gf_free
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_isom_box_parse
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_del
    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:4077,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4081,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4082,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4084,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4085,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4089,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4090,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4093,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4094,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4099,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4104,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:4106,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:4111,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4113,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4117,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4124,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/isomedia/isom_write.c:4127,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4132,1
    - Dst: gf_isom_clone_pl_indications
      Src: /src/gpac/src/isomedia/isom_write.c:4135,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4142,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4145,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4152,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:4175,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4176,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: 4183
      start: 4071
    functionDepth: 8
    functionLinenumber: 4071
    functionLinenumberEnd: 4183
    functionName: gf_isom_clone_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_del
    - gf_list_get
    - gf_isom_clone_track
    - gf_isom_clone_box
    - gf_list_del_item
    - gf_list_new
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_clone_pl_indications
    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:4198,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4201,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4203,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:4208,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4219,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4221,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4225,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4228,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 3
    argNames:
    - file
    - output
    - output_size
    argTypes:
    - GF_ISOFile*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4230
      start: 4187
    functionDepth: 3
    functionLinenumber: 4187
    functionLinenumberEnd: 4230
    functionName: gf_isom_get_raw_user_data
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_list_enum
    - gf_bs_new
    - gf_bs_del
    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:4238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4245,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4246,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: 4251
      start: 4233
    functionDepth: 1
    functionLinenumber: 4233
    functionLinenumberEnd: 4251
    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:4268,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4276,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4280,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4281,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4283,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4286,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4289,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4295,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:4297,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:4299,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4301,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4305,1
    - Dst: gf_isom_get_trex_props
      Src: /src/gpac/src/isomedia/isom_write.c:4314,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:4316,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4319,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4325,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4327,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4330,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4331,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4332,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:4341,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4342,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4346,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4348,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4349,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4350,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4351,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4356,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4359,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4360,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4363,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4368,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4373,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4375,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4376,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4380,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4381,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/isomedia/isom_write.c:4384,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_write.c:4385,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: 4389
      start: 4254
    functionDepth: 5
    functionLinenumber: 4254
    functionLinenumberEnd: 4389
    functionName: gf_isom_get_track_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_box_write
    - gf_isom_get_trex_props
    - gf_isom_box_new
    - gf_list_get
    - gf_isom_box_find_child
    - gf_list_new
    - gf_isom_box_size
    - gf_list_del
    - gf_list_del_item
    - GF_4CC
    - gf_list_transfer
    - 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:4403,1
    - Dst: gf_isom_get_trex_props
      Src: /src/gpac/src/isomedia/isom_write.c:4406,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4409,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4410,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4411,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4414,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4415,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4417,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4418,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: 4425
      start: 4391
    functionDepth: 3
    functionLinenumber: 4391
    functionLinenumberEnd: 4425
    functionName: gf_isom_get_trex_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_bs_new
    - gf_isom_get_trex_props
    - gf_bs_del
    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:4437,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4441,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4447,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4449,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4450,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4451,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4452,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: 4454
      start: 4427
    functionDepth: 3
    functionLinenumber: 4427
    functionLinenumberEnd: 4454
    functionName: gf_isom_get_stsd_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_get_track_box
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_list_get
    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:4470,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:4472,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4476,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4483,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4484,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4487,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4488,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4490,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4494,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4497,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4499,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4500,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4504,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:4508,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4509,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4513,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4515,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4516,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4517,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4518,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4519,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_write.c:4521,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_write.c:4523,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:4525,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4526,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4527,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4531,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4532,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4536,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4538,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4541,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4543,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4544,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:4548,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4550,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4554,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_write.c:4558,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4563,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4565,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4567,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4569,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/isomedia/isom_write.c:4577,1
    - Dst: RequestTrack
      Src: /src/gpac/src/isomedia/isom_write.c:4580,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4586,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4587,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:4588,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/isomedia/isom_write.c:4593,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/isomedia/isom_write.c:4594,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:4594,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4602,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4604,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4621,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:4625,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4626,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4628,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4631,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4635,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4636,1
    - Dst: Media_SetDrefURL
      Src: /src/gpac/src/isomedia/isom_write.c:4639,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4647,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4648,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:4651,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4653,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4657,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/isomedia/isom_write.c:4663,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:4664,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: 4668
      start: 4457
    functionDepth: 6
    functionLinenumber: 4457
    functionLinenumberEnd: 4668
    functionName: gf_isom_clone_track
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_bs_get_content
    - gf_isom_disable_inplace_rewrite
    - gf_assert
    - gf_bs_new
    - RequestTrack
    - gf_bs_del
    - gf_bs_set_cookie
    - gf_isom_box_del
    - gf_isom_get_filename
    - gf_list_add
    - Media_SetDrefURL
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_write
    - gf_crc_32
    - gf_isom_box_new
    - gf_list_get
    - gf_isom_box_array_del
    - gf_list_new
    - strlen
    - gf_isom_get_media_subtype
    - gf_isom_box_size
    - gf_free
    - gf_isom_box_parse
    - gf_list_del_item
    - gf_isom_get_track_by_id
    - gf_isom_modify_alternate_brand
    - moov_on_child_box
    - gf_isom_insert_moov
    - gf_list_rem
    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:4676,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4679,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4681,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:4685,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:4686,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4689,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/src/isomedia/isom_write.c:4691,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: 4695
      start: 4672
    functionDepth: 3
    functionLinenumber: 4672
    functionLinenumberEnd: 4695
    functionName: gf_isom_clone_sample_descriptions
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_clone_sample_description
    - gf_list_new
    - 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:4712,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4716,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4719,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4737,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:4739,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/isomedia/isom_write.c:4740,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4741,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4742,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4743,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/isomedia/isom_write.c:4755,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4756,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:4757,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4763,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4770,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4777,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4785,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4789,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4793,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4796,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:4800,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4803,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4804,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/isomedia/isom_write.c:4807,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/isom_write.c:4808,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/isomedia/isom_write.c:4809,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4814,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: 4816
      start: 4699
    functionDepth: 4
    functionLinenumber: 4699
    functionLinenumberEnd: 4816
    functionName: gf_isom_clone_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_isom_get_media_type
    - gf_bs_get_content
    - gf_isom_is_video_handler_type
    - gf_bs_new
    - gf_bs_del
    - gf_isom_set_visual_info
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_write
    - gf_isom_box_new
    - gf_list_get
    - gf_isom_get_mp4time
    - Media_FindDataRef
    - gf_isom_box_size
    - gf_free
    - gf_isom_box_parse
    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:4827,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4830,1
    - Dst: Media_FindDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4834,1
    - Dst: Media_CreateDataRef
      Src: /src/gpac/src/isomedia/isom_write.c:4837,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_write.c:4841,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/isomedia/isom_write.c:4843,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4846,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:4851,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4856,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/isomedia/isom_write.c:4868,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/isomedia/isom_write.c:4869,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4877,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4882,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:4887,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4892,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4908,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4909,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/isomedia/isom_write.c:4910,1
    - Dst: gf_bs_write_u32
      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_del
      Src: /src/gpac/src/isomedia/isom_write.c:4917,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:4926,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:4930,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4936,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:4941,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:4946,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:4951,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:4957,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:4959,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:4962,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4964,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/isomedia/isom_write.c:4965,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:4967,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:4968,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:4969,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: 4972
      start: 4818
    functionDepth: 5
    functionLinenumber: 4818
    functionLinenumberEnd: 4972
    functionName: gf_isom_new_generic_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - GF_ARRAY_LENGTH
    - gf_bs_get_content
    - gf_isom_is_video_handler_type
    - gf_bs_new
    - gf_bs_write_double
    - gf_bs_del
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_isom_box_new
    - memcpy
    - gf_strcpy
    - gf_bs_write_data
    - gf_isom_get_mp4time
    - Media_FindDataRef
    - gf_bs_write_u32
    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:4984,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:4987,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:4990,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:5000,1
    - Dst: gf_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: 80
    argCount: 4
    argNames:
    - movie
    - trackNumber
    - StreamDescriptionIndex
    - udesc
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    - GF_GenericSampleDescription*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5061
      start: 4978
    functionDepth: 4
    functionLinenumber: 4978
    functionLinenumberEnd: 5061
    functionName: gf_isom_change_generic_sample_description
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - gf_list_get
    - gf_isom_box_del
    - memset
    - memcpy
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_get
    - gf_isom_box_del
    - 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:
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - Track_FindRef
    - reftype_AddRefTrack
    - trak_on_child_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_list_count
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - gf_isom_get_track_by_id
    - gf_list_enum
    - memmove
    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_get_track_box
    - gf_isom_box_del_parent
    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_list_count
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_isom_box_del_parent
    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_from_id
    - gf_isom_get_track_box
    - update_next_track_id
    - gf_list_enum
    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_from_id
    - gf_isom_get_track_box
    - gf_list_enum
    - gf_isom_get_track_from_original_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_get_track_box
    - gf_isom_box_del_parent
    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:
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - stbl_unpackCTS
    - 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_isom_get_track_box
    - gf_free
    - gf_malloc
    - gf_list_enum
    - SetTrackDuration
    - RESCALE_TSVAL
    - memset
    - gf_realloc
    - stbl_GetSampleCTS
    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_isom_box_size
    - gf_free
    - gf_isom_box_write
    - gf_bs_get_content
    - memcmp
    - gf_bs_new
    - 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_count
    - gf_isom_get_track_box
    - Media_GetESD
    - memcmp
    - strcmp
    - gf_list_get
    - gf_isom_box_equal
    - gf_isom_registry_disable
    - base_sample_entry_type
    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_isom_box_size
    - gf_list_enum
    - gf_isom_get_media_data_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_get_track_box
    - gf_isom_box_del_parent
    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_box_new_parent
    - gf_isom_get_track_box
    - stbl_SetSyncShadow
    - stbl_GetSampleRAP
    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_del
    - gf_isom_get_track_box
    - gf_odf_desc_copy
    - Media_GetSampleDesc
    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
    - gf_odf_desc_copy
    - Media_GetSampleDesc
    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_set_storage_mode
    - gf_isom_get_timescale
    - gf_isom_get_mode
    - gf_isom_set_interleave_time
    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: gf_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_strcpy
    - gf_isom_get_track_box
    - gf_free
    - gf_fclose
    - gf_malloc
    - gf_fopen
    - gf_fseek
    - strnicmp
    - gf_fsize
    - gf_fread
    - strlen
    - gf_strdup
    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
    - AddMovieIOD
    - gf_list_enum
    - gf_odf_desc_copy
    - gf_isom_insert_moov
    - 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_count
    - gf_isom_get_track_box
    - memcmp
    - gf_list_get
    - gf_isom_box_del
    - gf_list_rem
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_remove_uuid(GF_ISOFile *movie, u32 trackNumber, bin128
      UUID)
  - BBCount: 16
    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_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:6396,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:6399,1
    - Dst: gf_isom_solve_uuid_box
      Src: /src/gpac/src/isomedia/isom_write.c:6402,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6404,1
    - Dst: gf_isom_solve_uuid_box
      Src: /src/gpac/src/isomedia/isom_write.c:6407,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:6409,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:6412,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:6414,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6416,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 44
    argCount: 5
    argNames:
    - movie
    - trackNumber
    - UUID
    - data
    - data_size
    argTypes:
    - GF_ISOFile*
    - u32
    - bin128
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6418
      start: 6376
    functionDepth: 4
    functionLinenumber: 6376
    functionLinenumberEnd: 6418
    functionName: gf_isom_add_uuid
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_malloc
    - gf_isom_box_new
    - gf_isom_insert_moov
    - gf_list_new
    - gf_list_add
    - gf_isom_solve_uuid_box
    - memcpy
    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:6436,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:6438,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/isomedia/isom_write.c:6441,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/isomedia/isom_write.c:6445,1
    - Dst: gf_isom_create_meta_extensions
      Src: /src/gpac/src/isomedia/isom_write.c:6447,1
    - Dst: GF_4CC_CSTR
      Src: /src/gpac/src/isomedia/isom_write.c:6449,1
    - Dst: gf_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_write.c:6452,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6454,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6458,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6460,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6460,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6461,1
    - Dst: gf_id3_get_genre_tag
      Src: /src/gpac/src/isomedia/isom_write.c:6469,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:6478,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6481,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6483,1
    - Dst: strchr
      Src: /src/gpac/src/isomedia/isom_write.c:6486,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6490,1
    - Dst: strchr
      Src: /src/gpac/src/isomedia/isom_write.c:6494,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6498,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:6514,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6517,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6521,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:6530,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6537,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6545,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6546,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6547,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6548,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6554,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6557,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6560,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6561,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6565,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:6567,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6568,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6569,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6578,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6582,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_write.c:6591,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_write.c:6593,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:6601,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6616,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6616,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6616,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:6627,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:6635,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:6644,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/isom_write.c:6655,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:6693,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:6695,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6697,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6698,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:6701,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6703,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: 6704
      start: 6421
    functionDepth: 6
    functionLinenumber: 6421
    functionLinenumberEnd: 6704
    functionName: gf_isom_apple_set_tag_ex
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_itags_find_by_itag
    - gf_isom_box_del
    - gf_list_add
    - gf_isom_create_meta_extensions
    - gf_isom_box_new_parent
    - strchr
    - gf_malloc
    - gf_id3_get_genre_tag
    - gf_isom_box_new
    - gf_itags_get_type
    - memcpy
    - atoi
    - gf_list_enum
    - strcmp
    - gf_list_new
    - sscanf
    - gf_free
    - gf_isom_box_del_parent
    - GF_4CC
    - GF_4CC_CSTR
    - gf_strdup
    - memset
    - gf_isom_locate_box
    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:6709,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: 6710
      start: 6706
    functionDepth: 7
    functionLinenumber: 6706
    functionLinenumberEnd: 6710
    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:6722,1
    - Dst: gf_isom_create_meta_extensions
      Src: /src/gpac/src/isomedia/isom_write.c:6725,1
    - Dst: gf_isom_create_meta_extensions
      Src: /src/gpac/src/isomedia/isom_write.c:6727,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6732,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6733,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:6741,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6742,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6743,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6744,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6747,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:6754,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6755,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6758,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:6761,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:6762,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:6763,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/isomedia/isom_write.c:6765,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 3
    argNames:
    - mov
    - name
    - value
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6774
      start: 6714
    functionDepth: 6
    functionLinenumber: 6714
    functionLinenumberEnd: 6774
    functionName: gf_isom_wma_set_tag
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_free
    - gf_malloc
    - strlen
    - GF_SAFEALLOC
    - gf_utf8_mbstowcs
    - strcmp
    - gf_list_get
    - gf_strdup
    - memset
    - gf_list_add
    - gf_list_rem
    - gf_isom_create_meta_extensions
    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:6786,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_write.c:6788,1
    - Dst: gf_isom_insert_moov
      Src: /src/gpac/src/isomedia/isom_write.c:6791,1
    - Dst: gf_isom_create_meta_extensions
      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_isom_locate_box
      Src: /src/gpac/src/isomedia/isom_write.c:6802,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6804,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6808,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6810,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6811,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6812,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:6818,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6819,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6821,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6821,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6822,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:6830,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6832,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:6833,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:6839,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:6841,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6843,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:6845,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6847,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6848,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:6854,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6855,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6856,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:6857,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:6858,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6861,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:6872,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:6874,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:6875,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:6878,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:6880,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:6882,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:6891,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:6897,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:6897,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/isom_write.c:6901,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/isom_write.c:6902,1
    - Dst: ABS
      Src: /src/gpac/src/isomedia/isom_write.c:6903,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6905,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6912,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6915,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/isomedia/isom_write.c:6918,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6921,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6924,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6927,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/isom_write.c:6930,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:6938,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6939,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6940,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6941,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6945,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6948,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/isomedia/isom_write.c:6951,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/isomedia/isom_write.c:6954,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/isomedia/isom_write.c:6958,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/isom_write.c:6970,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/isomedia/isom_write.c:6974,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:6975,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/isomedia/isom_write.c:6977,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:6980,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 194
    argCount: 2
    argNames:
    - movie
    - key
    argTypes:
    - GF_ISOFile*
    - GF_QT_UDTAKey*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6982
      start: 6776
    functionDepth: 6
    functionLinenumber: 6776
    functionLinenumberEnd: 6982
    functionName: gf_isom_set_qt_key
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_write_double
    - gf_bs_del
    - gf_isom_box_del
    - gf_list_add
    - gf_bs_write_u8
    - gf_isom_create_meta_extensions
    - gf_isom_box_new_parent
    - gf_list_find
    - gf_isom_box_new
    - gf_list_get
    - gf_bs_write_long_int
    - gf_isom_box_find_child
    - gf_bs_write_data
    - strcmp
    - strlen
    - gf_list_new
    - ABS
    - gf_free
    - gf_isom_box_del_parent
    - gf_list_del_item
    - gf_isom_set_last_error
    - gf_strdup
    - gf_isom_locate_box
    - gf_isom_insert_moov
    - gf_bs_write_float
    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:6988,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - groupId
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6992
      start: 6985
    functionDepth: 0
    functionLinenumber: 6985
    functionLinenumberEnd: 6992
    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:7005,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7010,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:7013,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:7024,1
    - Dst: gf_isom_get_next_alternate_group_id
      Src: /src/gpac/src/isomedia/isom_write.c:7027,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_write.c:7032,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7034,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:7038,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7040,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7042,1
    - Dst: trak_on_child_box
      Src: /src/gpac/src/isomedia/isom_write.c:7067,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7067,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/isom_write.c:7071,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7075,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7077,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:7083,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/isom_write.c:7085,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7091,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7092,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7094,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: 7097
      start: 6995
    functionDepth: 5
    functionLinenumber: 6995
    functionLinenumberEnd: 7097
    functionName: gf_isom_set_track_switch_parameter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_count
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - GF_LOG
    - udta_on_child_box_ex
    - udta_getEntry
    - gf_isom_box_new
    - gf_isom_get_next_alternate_group_id
    - gf_list_get
    - memcpy
    - trak_on_child_box
    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:7103,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:7105,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_write.c:7106,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - trak
    argTypes:
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7110
      start: 7099
    functionDepth: 3
    functionLinenumber: 7099
    functionLinenumberEnd: 7110
    functionName: reset_tsel_box
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - udta_getEntry
    - gf_free
    - gf_list_del_item
    - gf_isom_box_array_del
    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:7118,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/isomedia/isom_write.c:7125,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7127,1
    - Dst: reset_tsel_box
      Src: /src/gpac/src/isomedia/isom_write.c:7128,1
    - Dst: reset_tsel_box
      Src: /src/gpac/src/isomedia/isom_write.c:7132,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: 7135
      start: 7112
    functionDepth: 4
    functionLinenumber: 7112
    functionLinenumberEnd: 7135
    functionName: gf_isom_reset_track_switch_parameter
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_count
    - gf_isom_get_track_box
    - reset_tsel_box
    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:7142,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7144,1
    - Dst: reset_tsel_box
      Src: /src/gpac/src/isomedia/isom_write.c:7145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7149
      start: 7138
    functionDepth: 4
    functionLinenumber: 7138
    functionLinenumberEnd: 7149
    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:7159,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7162,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7167,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7171,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7173,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7178,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7180,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/isom_write.c:7184,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: 7185
      start: 7152
    functionDepth: 5
    functionLinenumber: 7152
    functionLinenumberEnd: 7185
    functionName: gf_isom_add_subsample
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_list_new
    - gf_isom_add_subsample_info
    - gf_list_get
    - gf_list_add
    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:7195,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7198,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7202,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:7206,1
    - Dst: gf_isom_remove_meta_item
      Src: /src/gpac/src/isomedia/isom_write.c:7208,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7213,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/src/isomedia/isom_write.c:7219,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:7221,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/isomedia/isom_write.c:7222,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/isomedia/isom_write.c:7224,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: 7227
      start: 7188
    functionDepth: 8
    functionLinenumber: 7188
    functionLinenumberEnd: 7227
    functionName: gf_isom_set_rvc_config
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_set_meta_type
    - gf_isom_add_meta_item_memory
    - gf_isom_modify_alternate_brand
    - gf_isom_box_find_child
    - gf_isom_remove_meta_item
    - gf_isom_get_meta_item_count
    - gf_list_get
    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:7236,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7240,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:7245,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:7251,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/isom_write.c:7252,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7253,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7273,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:7315,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:7323,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:7330,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: 7339
      start: 7231
    functionDepth: 4
    functionLinenumber: 7231
    functionLinenumberEnd: 7339
    functionName: gf_isom_add_sample_group_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_malloc
    - gf_assert
    - gf_isom_box_new
    - gf_list_get
    - gf_realloc
    - gf_list_insert
    - gf_list_add
    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:7467,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:7477,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7483,1
    - Dst: gf_isom_get_track_box
      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:7491,1
    - Dst: gf_isom_set_sample_group_info_ex
      Src: /src/gpac/src/isomedia/isom_write.c:7493,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: 7496
      start: 7459
    functionDepth: 2
    functionLinenumber: 7459
    functionLinenumberEnd: 7496
    functionName: gf_isom_set_sample_group_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_traf
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_set_sample_group_info_ex
    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:7517,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:7527,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7533,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7537,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7542,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7545,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:7552,1
    - Dst: sgpd_parse_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7554,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:7555,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7564,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/isom_write.c:7565,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7567,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7578,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7583,1
    - Dst: sgpd_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7585,1
    - Dst: gf_isom_oinf_new_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7591,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:7592,1
    - Dst: gf_isom_oinf_read_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7593,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:7594,1
    - Dst: gf_isom_oinf_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7596,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7601,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7604,1
    - Dst: gf_isom_linf_new_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7608,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:7609,1
    - Dst: gf_isom_linf_read_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7610,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:7611,1
    - Dst: gf_isom_linf_del_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7613,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7618,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7622,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7626,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7628,1
    - Dst: memcmp
      Src: /src/gpac/src/isomedia/isom_write.c:7629,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:7636,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7638,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7640,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7644,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7647,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:7651,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7653,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7654,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:7663,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:7669,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: 7677
      start: 7500
    functionDepth: 4
    functionLinenumber: 7500
    functionLinenumberEnd: 7677
    functionName: gf_isom_add_sample_group_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - gf_bs_new
    - gf_bs_del
    - sgpd_parse_entry
    - GF_SAFEALLOC
    - gf_list_add
    - gf_isom_get_track_box
    - gf_malloc
    - gf_isom_oinf_del_entry
    - gf_list_find
    - gf_list_get
    - memcpy
    - memcmp
    - gf_isom_linf_read_entry
    - gf_isom_get_traf
    - sgpd_del_entry
    - get_sgdp
    - gf_isom_oinf_read_entry
    - gf_free
    - gf_isom_is_identical_sgpd
    - gf_isom_linf_del_entry
    - gf_isom_oinf_new_entry
    - gf_isom_linf_new_entry
    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:7681,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: 7682
      start: 7678
    functionDepth: 5
    functionLinenumber: 7678
    functionLinenumberEnd: 7682
    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:7692,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7702,1
    - Dst: gf_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:7712,1
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:7719,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7723,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7731,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7741,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7746,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: 7748
      start: 7684
    functionDepth: 5
    functionLinenumber: 7684
    functionLinenumberEnd: 7748
    functionName: gf_isom_set_sample_group_description_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_add_sample_group_info_internal
    - gf_isom_add_sample_group_entry
    - gf_list_new
    - gf_isom_get_traf
    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:7752,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: 7753
      start: 7750
    functionDepth: 6
    functionLinenumber: 7750
    functionLinenumberEnd: 7753
    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:7762,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7765,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7769,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7771,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7773,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:7774,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:7781,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:7783,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7785,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:7786,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 3
    argNames:
    - movie
    - track
    - grouping_type
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7793
      start: 7755
    functionDepth: 5
    functionLinenumber: 7755
    functionLinenumberEnd: 7793
    functionName: gf_isom_remove_sample_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_get
    - 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:7801,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7804,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:7808,1
    - Dst: get_sgdp
      Src: /src/gpac/src/isomedia/isom_write.c:7811,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/isom_write.c:7815,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: 7816
      start: 7795
    functionDepth: 5
    functionLinenumber: 7795
    functionLinenumberEnd: 7816
    functionName: gf_isom_add_sample_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - get_sgdp
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_add_sample_group_entry
    - gf_list_new
    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:7823,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:7824,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7829
      start: 7819
    functionDepth: 1
    functionLinenumber: 7819
    functionLinenumberEnd: 7829
    functionName: sg_rap_create_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_assert
    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: 7836
      start: 7831
    functionDepth: 0
    functionLinenumber: 7831
    functionLinenumberEnd: 7836
    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:7841,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: 7842
      start: 7838
    functionDepth: 3
    functionLinenumber: 7838
    functionLinenumberEnd: 7842
    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:7846,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: 7847
      start: 7844
    functionDepth: 3
    functionLinenumber: 7844
    functionLinenumberEnd: 7847
    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:7853,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7856
      start: 7850
    functionDepth: 1
    functionLinenumber: 7850
    functionLinenumberEnd: 7856
    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: 7861
      start: 7858
    functionDepth: 0
    functionLinenumber: 7858
    functionLinenumberEnd: 7861
    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:7866,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: 7867
      start: 7863
    functionDepth: 3
    functionLinenumber: 7863
    functionLinenumberEnd: 7867
    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:7871,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: 7872
      start: 7869
    functionDepth: 3
    functionLinenumber: 7869
    functionLinenumberEnd: 7872
    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:7880,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7884
      start: 7876
    functionDepth: 1
    functionLinenumber: 7876
    functionLinenumberEnd: 7884
    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: 7891
      start: 7886
    functionDepth: 0
    functionLinenumber: 7886
    functionLinenumberEnd: 7891
    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:7900,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: 7901
      start: 7893
    functionDepth: 3
    functionLinenumber: 7893
    functionLinenumberEnd: 7901
    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:7910,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: 7911
      start: 7903
    functionDepth: 3
    functionLinenumber: 7903
    functionLinenumberEnd: 7911
    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:7917,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7920,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7921,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:7923,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:7926,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - udta
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7928
      start: 7914
    functionDepth: 1
    functionLinenumber: 7914
    functionLinenumberEnd: 7928
    functionName: sg_encryption_create_entry
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - memcpy
    - gf_malloc
    - gf_free
    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:7940,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - udta
    - _entry
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7943
      start: 7930
    functionDepth: 0
    functionLinenumber: 7930
    functionLinenumberEnd: 7943
    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:7954,1
    - Dst: gf_isom_set_sample_group_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:7961,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: 7962
      start: 7947
    functionDepth: 3
    functionLinenumber: 7947
    functionLinenumberEnd: 7962
    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:7969,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - movie
    - track
    - sample_number
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7970
      start: 7966
    functionDepth: 3
    functionLinenumber: 7966
    functionLinenumberEnd: 7970
    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:7975,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:7977,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:7981,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:7984,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7988
      start: 7972
    functionDepth: 5
    functionLinenumber: 7972
    functionLinenumberEnd: 7988
    functionName: gf_isom_force_ctts
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_malloc
    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:7999,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8002,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8026,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8027,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8033,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8034,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8039,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8044,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/isomedia/isom_write.c:8056,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:8060,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 56
    argCount: 3
    argNames:
    - file
    - track
    - ctts_shift
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8062
      start: 7990
    functionDepth: 6
    functionLinenumber: 7990
    functionLinenumberEnd: 8062
    functionName: gf_isom_set_ctts_v1
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_get_media_duration
    - gf_isom_box_del_parent
    - gf_isom_modify_alternate_brand
    - SetTrackDuration
    - gf_list_get
    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:8098,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/isomedia/isom_write.c:8107,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:8107,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8110,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8111,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8116,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/isomedia/isom_write.c:8120,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - file
    - trak
    argTypes:
    - GF_ISOFile*
    - GF_TrackBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8122
      start: 8064
    functionDepth: 8
    functionLinenumber: 8064
    functionLinenumberEnd: 8122
    functionName: gf_isom_set_ctts_v0
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_isom_set_edit
    - gf_isom_modify_alternate_brand
    - gf_list_find
    - SetTrackDuration
    - gf_list_get
    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:8131,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8134,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8140,1
    - Dst: gf_isom_set_ctts_v1
      Src: /src/gpac/src/isomedia/isom_write.c:8147,1
    - Dst: gf_isom_set_ctts_v0
      Src: /src/gpac/src/isomedia/isom_write.c:8150,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: 8152
      start: 8124
    functionDepth: 9
    functionLinenumber: 8124
    functionLinenumberEnd: 8152
    functionName: gf_isom_set_composition_offset_mode
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_set_ctts_v1
    - gf_isom_box_del_parent
    - gf_isom_set_ctts_v0
    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:8160,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8163,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8167,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8173
      start: 8155
    functionDepth: 5
    functionLinenumber: 8155
    functionLinenumberEnd: 8173
    functionName: gf_isom_set_sync_table
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    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:8181,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8184,1
    - Dst: stbl_SetDependencyType
      Src: /src/gpac/src/isomedia/isom_write.c:8186,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: 8187
      start: 8176
    functionDepth: 1
    functionLinenumber: 8176
    functionLinenumberEnd: 8187
    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:8194,1
    - Dst: stbl_AddDependencyType
      Src: /src/gpac/src/isomedia/isom_write.c:8197,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: 8198
      start: 8190
    functionDepth: 1
    functionLinenumber: 8190
    functionLinenumberEnd: 8198
    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:8209,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8212,1
    - Dst: stbl_GetSampleDepType
      Src: /src/gpac/src/isomedia/isom_write.c:8223,1
    - Dst: stbl_AppendDependencyType
      Src: /src/gpac/src/isomedia/isom_write.c:8226,1
    - Dst: gf_isom_get_subsample_types
      Src: /src/gpac/src/isomedia/isom_write.c:8232,1
    - Dst: gf_isom_sample_get_subsample_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8236,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8241,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8243,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8245,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8250,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8257,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8259,1
    - Dst: gf_isom_add_subsample_info
      Src: /src/gpac/src/isomedia/isom_write.c:8260,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8268,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8276,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8286,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8296,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8301,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8304,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8305,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:8310,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8312,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8313,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8317,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8318,1
    - Dst: gf_isom_is_identical_sgpd
      Src: /src/gpac/src/isomedia/isom_write.c:8319,1
    - Dst: gf_isom_clone_box
      Src: /src/gpac/src/isomedia/isom_write.c:8326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8328,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:8329,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8330,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8331,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8332,1
    - Dst: gf_isom_get_sample_group_info_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8335,1
    - Dst: gf_isom_add_sample_group_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8340,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8347,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8351,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8370,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:8395,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:8397,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_write.c:8400,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_write.c:8401,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_write.c:8403,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_write.c:8404,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:8405,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:8406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8410,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/isomedia/isom_write.c:8410,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: 8414
      start: 8201
    functionDepth: 5
    functionLinenumber: 8201
    functionLinenumberEnd: 8414
    functionName: gf_isom_copy_sample_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_read_data
    - gf_isom_box_del
    - gf_bs_seek
    - gf_list_add
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_malloc
    - gf_isom_sample_get_subsample_entry
    - gf_isom_add_sample_aux_info_internal
    - gf_isom_get_sample_group_info_entry
    - gf_list_get
    - stbl_AppendDependencyType
    - gf_isom_clone_box
    - gf_isom_add_subsample_info
    - gf_isom_add_sample_group_entry
    - gf_list_new
    - stbl_GetSampleDepType
    - gf_isom_get_subsample_types
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - gf_isom_is_identical_sgpd
    - 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:8423,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8426,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8433,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: 8450
      start: 8416
    functionDepth: 1
    functionLinenumber: 8416
    functionLinenumberEnd: 8450
    functionName: gf_isom_text_set_display_flags
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_list_get
    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:8467,1
    - Dst: SetTrackDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8468,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8475
      start: 8453
    functionDepth: 6
    functionLinenumber: 8453
    functionLinenumberEnd: 8475
    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:8486,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8489,1
    - Dst: Media_SetDuration
      Src: /src/gpac/src/isomedia/isom_write.c:8494,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_write.c:8507,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 40
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8540
      start: 8477
    functionDepth: 4
    functionLinenumber: 8477
    functionLinenumberEnd: 8540
    functionName: gf_isom_update_edit_list_duration
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - Media_SetDuration
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_enum
    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:8549,1
    - Dst: gf_isom_box_new_parent
      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:8562,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_write.c:8564,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:8570,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_write.c:8572,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: 8577
      start: 8543
    functionDepth: 5
    functionLinenumber: 8543
    functionLinenumberEnd: 8577
    functionName: gf_isom_clone_pssh
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - memmove
    - gf_list_enum
    - gf_malloc
    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:8587,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8590,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8592,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8595,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8596,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8599,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8600,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8604,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8604,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_write.c:8609,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8610,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8618,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8622,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: 8623
      start: 8579
    functionDepth: 5
    functionLinenumber: 8579
    functionLinenumberEnd: 8623
    functionName: gf_isom_set_track_group
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - gf_isom_box_del_parent
    - GF_LOG
    - gf_list_get
    - gf_list_add
    - gf_4cc_to_str
    - 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:8634,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8637,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8641,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8645,1
    - Dst: gf_isom_is_nalu_based_entry
      Src: /src/gpac/src/isomedia/isom_write.c:8647,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: 8658
      start: 8625
    functionDepth: 3
    functionLinenumber: 8625
    functionLinenumberEnd: 8658
    functionName: gf_isom_set_nalu_length_field
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_isom_is_nalu_based_entry
    - gf_list_count
    - gf_list_get
    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:8664,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8669
      start: 8660
    functionDepth: 1
    functionLinenumber: 8660
    functionLinenumberEnd: 8669
    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: 8679
      start: 8671
    functionDepth: 0
    functionLinenumber: 8671
    functionLinenumberEnd: 8679
    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: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8702,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:8716,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/isomedia/isom_write.c:8717,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    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: 8722
      start: 8681
    functionDepth: 1
    functionLinenumber: 8681
    functionLinenumberEnd: 8722
    functionName: gf_isom_update_video_sample_entry_fields
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - memset
    - 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:8732,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8738,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:8741,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/isom_write.c:8743,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:8744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8747,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/isomedia/isom_write.c:8750,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8761,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8765,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8766,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8767,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8774,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8776,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_write.c:8779,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:8782,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_write.c:8784,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8785,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: 8788
      start: 8724
    functionDepth: 4
    functionLinenumber: 8724
    functionLinenumberEnd: 8788
    functionName: gf_isom_update_sample_description_from_template
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_pop_front
    - gf_list_del_item
    - gf_isom_box_find_child
    - gf_bs_new
    - gf_list_new
    - gf_bs_del
    - gf_isom_box_parse_ex
    - gf_list_get
    - gf_isom_box_del
    - gf_list_add
    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:8805,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/isom_write.c:8806,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/isomedia/isom_write.c:8807,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/isomedia/isom_write.c:8809,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/isomedia/isom_write.c:8813,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8822,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:8833,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/isomedia/isom_write.c:8835,1
    - Dst: gf_isom_box_freeze_order
      Src: /src/gpac/src/isomedia/isom_write.c:8836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8841,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8850,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8851,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8854,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8855,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8856,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8857,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8857,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8857,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8861,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:8862,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:8863,1
    - Dst: atoi
      Src: /src/gpac/src/isomedia/isom_write.c:8864,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/isom_write.c:8868,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/isom_write.c:8870,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/isomedia/isom_write.c:8875,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8877,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_write.c:8885,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:8893,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:8897,1
    - Dst: gf_isom_get_track_by_id
      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_isom_get_traf
      Src: /src/gpac/src/isomedia/isom_write.c:8906,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:8908,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:8909,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8915,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8915,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:8920,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8922,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8922,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/isomedia/isom_write.c:8922,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:8935,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:8941,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8943,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:8958,1
    - Dst: gf_isom_box_remove_from_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8978,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:8980,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/isom_write.c:8984,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/isomedia/isom_write.c:8985,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_write.c:8987,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/isom_write.c:8989,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:8990,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/isom_write.c:8991,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:8993,1
    - Dst: gf_list_find
      Src: /src/gpac/src/isomedia/isom_write.c:8994,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:8996,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9000,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:9002,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9006,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9009,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_write.c:9016,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:9018,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:9021,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_write.c:9030,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/isom_write.c:9031,1
    - Dst: gf_isom_box_parse_ex
      Src: /src/gpac/src/isomedia/isom_write.c:9033,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_write.c:9035,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:9036,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9040,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_write.c:9042,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/isomedia/isom_write.c:9047,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9050,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/isomedia/isom_write.c:9058,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9059,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: 9061
      start: 8792
    functionDepth: 5
    functionLinenumber: 8792
    functionLinenumberEnd: 9061
    functionName: gf_isom_apply_box_patch
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_parse_string
    - gf_list_count
    - gf_xml_dom_del
    - gf_bs_available
    - gf_bs_new
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_4cc_to_str
    - gf_isom_box_freeze_order
    - gf_bs_seek
    - gf_isom_box_remove_from_parent
    - gf_list_add
    - strstr
    - gf_isom_get_track_box
    - gf_xml_dom_parse
    - gf_malloc
    - gf_list_find
    - gf_isom_box_new
    - gf_isom_box_parse_ex
    - gf_xml_parse_bit_sequence
    - gf_list_get
    - gf_list_insert
    - gf_realloc
    - atoi
    - gf_isom_box_find_child
    - gf_xml_dom_new
    - strcmp
    - strlen
    - gf_isom_get_traf
    - gf_list_new
    - gf_bs_read_u32
    - gf_xml_dom_get_root
    - gf_isom_box_size
    - gf_free
    - gf_isom_box_del_parent
    - GF_LOG
    - gf_isom_get_track_by_id
    - GF_4CC
    - strncmp
    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:9066,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - magic
    argTypes:
    - GF_ISOFile*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9070
      start: 9063
    functionDepth: 0
    functionLinenumber: 9063
    functionLinenumberEnd: 9070
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9075,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - movie
    - trackNumber
    - index
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9083
      start: 9072
    functionDepth: 0
    functionLinenumber: 9072
    functionLinenumberEnd: 9083
    functionName: gf_isom_set_track_index
    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_index(GF_ISOFile *movie, u32 trackNumber,
      u32 index)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_can_access_movie
      Src: /src/gpac/src/isomedia/isom_write.c:9092,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9094,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9096,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9114,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:9117,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:9119,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_write.c:9121,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9123
      start: 9085
    functionDepth: 5
    functionLinenumber: 9085
    functionLinenumberEnd: 9123
    functionName: gf_isom_set_ipod_compatible
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_malloc
    - gf_list_get
    - memset
    - memcpy
    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:9131,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:9134,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_write.c:9137,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 16
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9146
      start: 9125
    functionDepth: 1
    functionLinenumber: 9125
    functionLinenumberEnd: 9146
    functionName: gf_isom_is_inplace_rewrite
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_size
    - strcmp
    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: 9153
      start: 9148
    functionDepth: 0
    functionLinenumber: 9148
    functionLinenumberEnd: 9153
    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:9163,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9166,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9169,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9174,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9179,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9182,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9188,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9190,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9198,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9203,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9205,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9207,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_write.c:9210,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9213,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9215,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9219,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9222,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9231,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9233,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9247,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9248,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9250,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9251,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9253,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9254,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: 9258
      start: 9155
    functionDepth: 5
    functionLinenumber: 9155
    functionLinenumberEnd: 9258
    functionName: gf_isom_set_y3d_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    - gf_strdup
    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:9288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9290,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9299,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:9305,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:9307,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9314,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9319,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:9321,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9322,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_write.c:9339,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9355,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9357,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9362,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_write.c:9364,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9365,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: 9374
      start: 9264
    functionDepth: 5
    functionLinenumber: 9264
    functionLinenumberEnd: 9374
    functionName: gf_isom_add_sample_aux_info_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_list_new
    - gf_list_add
    - gf_list_get
    - gf_realloc
    - memcpy
    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:9386,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:9388,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: 9389
      start: 9381
    functionDepth: 6
    functionLinenumber: 9381
    functionLinenumberEnd: 9389
    functionName: gf_isom_fragment_set_sample_aux_info
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_traf
    - gf_isom_add_sample_aux_info_internal
    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:9397,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9400,1
    - Dst: gf_isom_add_sample_aux_info_internal
      Src: /src/gpac/src/isomedia/isom_write.c:9403,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: 9404
      start: 9392
    functionDepth: 6
    functionLinenumber: 9392
    functionLinenumberEnd: 9404
    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_get_track_box
    - gf_isom_add_sample_aux_info_internal
    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:9411,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9416,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9418,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9423
      start: 9407
    functionDepth: 1
    functionLinenumber: 9407
    functionLinenumberEnd: 9423
    functionName: gf_isom_set_meta_qt
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_can_access_movie
    - gf_list_count
    - 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:9434,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9436,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9451,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9454,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9456,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_write.c:9459,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:9460,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: 9467
      start: 9426
    functionDepth: 5
    functionLinenumber: 9426
    functionLinenumberEnd: 9467
    functionName: gf_isom_set_mpegh_compatible_profiles
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    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:9475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9477,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_write.c:9543,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9544,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9546,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9550,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9559,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: 9565
      start: 9469
    functionDepth: 5
    functionLinenumber: 9469
    functionLinenumberEnd: 9565
    functionName: gf_isom_set_sample_description_restricted
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_get_track_box
    - gf_isom_box_del_parent
    - gf_isom_box_find_child
    - gf_list_get
    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:9570,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_write.c:9577,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_write.c:9579,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/isom_write.c:9590,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/isom_write.c:9591,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_write.c:9598,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: 9599
      start: 9567
    functionDepth: 1
    functionLinenumber: 9567
    functionLinenumberEnd: 9599
    functionName: isom_sample_refs_push
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_malloc
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - memcpy
    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:9607,1
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/isom_write.c:9610,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_write.c:9617,1
    - Dst: isom_sample_refs_push
      Src: /src/gpac/src/isomedia/isom_write.c:9620,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: 9621
      start: 9601
    functionDepth: 5
    functionLinenumber: 9601
    functionLinenumberEnd: 9621
    functionName: gf_isom_set_sample_references
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - isom_sample_refs_push
    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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - enabled
    argTypes:
    - GF_ISOFile*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9629
      start: 9623
    functionDepth: 0
    functionLinenumber: 9623
    functionLinenumberEnd: 9629
    functionName: gf_isom_enable_auto_track_reorder
    functionSourceFile: /src/gpac/src/isomedia/isom_write.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_enable_auto_track_reorder(GF_ISOFile *file, Bool
      enabled)
  - 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
    - gf_malloc
    - memset
    - ALLOC_INC
    - CHECK_PACK
    - 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:
    - gf_realloc
    - memset
    - 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
    - GF_SAFE_ALLOC_N
    - GF_LOG
    - ALLOC_INC
    - AddCompositionOffset
    - ABS
    - memset
    - 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_realloc
    - memset
    - ALLOC_INC
    - gf_free
    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
    - gf_malloc
    - GF_LOG
    - memset
    - gf_realloc
    - CHECK_PACK
    - ALLOC_INC
    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
    - gf_malloc
    - ALLOC_INC
    - memset
    - 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:
    - gf_isom_box_new_parent
    - memmove
    - stbl_GetSampleRAP
    - memset
    - 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_isom_box_new_parent
    - gf_realloc
    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:
    - gf_isom_box_new_parent
    - memmove
    - stbl_GetSampleRAP
    - memset
    - 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_isom_box_new_parent
    - gf_realloc
    - ALLOC_INC
    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_count
    - gf_malloc
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    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_isom_box_new_parent
    - gf_free
    - Media_IsSelfContained
    - gf_malloc
    - gf_isom_box_del_parent
    - memset
    - ALLOC_INC
    - memmove
    - CHECK_PACK
    - 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_new_parent
    - Media_IsSelfContained
    - gf_isom_box_del_parent
    - gf_malloc
    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:
    - AddCompositionOffset
    - gf_assert
    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:
    - gf_realloc
    - memmove
    - ALLOC_INC
    - memset
    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_count
    - gf_malloc
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err stbl_SetSyncShadow(GF_ShadowSyncBox *stsh, u32 sampleNumber,
      u32 syncSample)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1133,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1135,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1164,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1206,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1212,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1217,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1218,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1220,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 112
    argCount: 4
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    - LastAUDefDuration
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1101
    functionDepth: 1
    functionLinenumber: 1101
    functionLinenumberEnd: 1229
    functionName: stbl_RemoveDTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_assert
    - memset
    - 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:1238,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1244,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1255,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1256,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1259,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1263,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1233
    functionDepth: 5
    functionLinenumber: 1233
    functionLinenumberEnd: 1266
    functionName: stbl_RemoveCTS
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_del_parent
    - memmove
    - gf_assert
    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:1275,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1287,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1290,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1268
    functionDepth: 0
    functionLinenumber: 1268
    functionLinenumberEnd: 1294
    functionName: stbl_RemoveSize
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - memmove
    - gf_free
    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:1326,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1332,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1337,1
    - Dst: gf_assert
      Src: /src/gpac/src/isomedia/stbl_write.c:1340,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1345,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1354,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1366,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1375,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1377,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1383,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1393,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1395,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 82
    argCount: 3
    argNames:
    - stbl
    - sampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1297
    functionDepth: 1
    functionLinenumber: 1297
    functionLinenumberEnd: 1400
    functionName: stbl_RemoveChunk
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_assert
    - memset
    - memmove
    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:1420,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1430,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - stbl
    - sampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1403
    functionDepth: 0
    functionLinenumber: 1403
    functionLinenumberEnd: 1441
    functionName: stbl_RemoveRAP
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memmove
    - gf_free
    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:1452,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1462,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - stbl
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1470
      start: 1443
    functionDepth: 0
    functionLinenumber: 1443
    functionLinenumberEnd: 1470
    functionName: stbl_RemoveRAPs
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - memmove
    - gf_free
    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:1482,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1483,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1488,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - stbl
    - SampleNumber
    - nb_samples
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1472
    functionDepth: 0
    functionLinenumber: 1472
    functionLinenumberEnd: 1492
    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:1505,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1508,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - stbl
    - sampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1517
      start: 1494
    functionDepth: 1
    functionLinenumber: 1494
    functionLinenumberEnd: 1517
    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:1530,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1537,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1539,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1543,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1546,1
    - Dst: memcpy
      Src: /src/gpac/src/isomedia/stbl_write.c:1548,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1549,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - stbl
    - SampleNumber
    - bits
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1555
      start: 1522
    functionDepth: 5
    functionLinenumber: 1522
    functionLinenumberEnd: 1555
    functionName: stbl_SetPaddingBits
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_free
    - gf_malloc
    - memset
    - memcpy
    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:1569,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1575,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1587,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - stbl
    - SampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1559
    functionDepth: 5
    functionLinenumber: 1559
    functionLinenumberEnd: 1590
    functionName: stbl_RemovePaddingBits
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_isom_box_del_parent
    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:1597,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1599,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1604,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1606,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1612,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1615,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/stbl_write.c:1616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1617,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1618,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1619,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/stbl_write.c:1621,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1622,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1632,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1635,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 2
    argNames:
    - stbl
    - SampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1641
      start: 1592
    functionDepth: 1
    functionLinenumber: 1592
    functionLinenumberEnd: 1641
    functionName: stbl_RemoveSubSample
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:1650,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/stbl_write.c:1653,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/stbl_write.c:1658,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/stbl_write.c:1665,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1668,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - stbl
    - SampleNumber
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1644
    functionDepth: 5
    functionLinenumber: 1644
    functionLinenumberEnd: 1672
    functionName: stbl_RemoveSampleGroup
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_box_del_parent
    - gf_list_get
    - memmove
    - 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:1683,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1704,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - stsz
    - data_size
    argTypes:
    - GF_SampleSizeBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1676
    functionDepth: 0
    functionLinenumber: 1676
    functionLinenumberEnd: 1710
    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:1720,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1729,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1730,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1732,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - stbl
    - duration
    - nb_pack
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1716
    functionDepth: 1
    functionLinenumber: 1716
    functionLinenumberEnd: 1739
    functionName: stbl_AppendTime
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - CHECK_PACK
    - ALLOC_INC
    - memset
    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:1744,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1757,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1762,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1764,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 3
    argNames:
    - stbl
    - size
    - nb_pack
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1781
      start: 1741
    functionDepth: 1
    functionLinenumber: 1741
    functionLinenumberEnd: 1781
    functionName: stbl_AppendSize
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - CHECK_PACK
    - ALLOC_INC
    - memset
    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:1796,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1801,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:1805,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1812,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1823,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - stbl
    - offset
    argTypes:
    - GF_SampleTableBox*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1785
    functionDepth: 5
    functionLinenumber: 1785
    functionLinenumberEnd: 1829
    functionName: stbl_AppendChunk
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_realloc
    - gf_malloc
    - gf_isom_box_del_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:1849,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1850,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1852,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1856,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - stbl
    - DescIndex
    - samplesInChunk
    argTypes:
    - GF_SampleTableBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1863
      start: 1831
    functionDepth: 1
    functionLinenumber: 1831
    functionLinenumberEnd: 1863
    functionName: stbl_AppendSampleToChunk
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - memset
    - 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:1876,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1880,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:1893,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1894,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1896,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - stbl
    - isRap
    argTypes:
    - GF_SampleTableBox*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1901
      start: 1866
    functionDepth: 5
    functionLinenumber: 1866
    functionLinenumberEnd: 1901
    functionName: stbl_AppendRAP
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_malloc
    - ALLOC_INC
    - memset
    - 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:1909,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:1917,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1919,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1925,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:1931,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: 1946
      start: 1903
    functionDepth: 1
    functionLinenumber: 1903
    functionLinenumberEnd: 1946
    functionName: stbl_AppendTrafMap
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_realloc
    - memset
    - GF_SAFEALLOC
    - gf_free
    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:1951,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:1954,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - stbl
    - padding
    argTypes:
    - GF_SampleTableBox*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1959
      start: 1948
    functionDepth: 5
    functionLinenumber: 1948
    functionLinenumberEnd: 1959
    functionName: stbl_AppendPadding
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_realloc
    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:2010,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2014,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - stbl
    - DegradationPriority
    argTypes:
    - GF_SampleTableBox*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2019
      start: 2007
    functionDepth: 5
    functionLinenumber: 2007
    functionLinenumberEnd: 2019
    functionName: stbl_AppendDegradation
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_realloc
    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:2025,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2028,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - stbl
    - DepType
    argTypes:
    - GF_SampleTableBox*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2034
      start: 2022
    functionDepth: 5
    functionLinenumber: 2022
    functionLinenumberEnd: 2034
    functionName: stbl_AppendDepType
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_new_parent
    - gf_realloc
    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:2070,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2073,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2075,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/stbl_write.c:2081,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2084,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2086,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/stbl_write.c:2095,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2099,1
    - Dst: stbl_GetSampleInfos
      Src: /src/gpac/src/isomedia/stbl_write.c:2109,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/stbl_write.c:2129,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/stbl_write.c:2130,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2131,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2132,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/stbl_write.c:2140,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/stbl_write.c:2141,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2149,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2150,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2151,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 93
    argCount: 1
    argNames:
    - stbl
    argTypes:
    - GF_SampleTableBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2153
      start: 2042
    functionDepth: 4
    functionLinenumber: 2042
    functionLinenumberEnd: 2153
    functionName: stbl_UnpackOffsets
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 2
    functionsReached:
    - stbl_GetSampleInfos
    - gf_malloc
    - gf_list_del_item
    - gf_isom_box_new
    - gf_isom_box_del
    - gf_list_add
    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:2167,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/stbl_write.c:2168,1
    - Dst: gf_malloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2172,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/stbl_write.c:2174,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/stbl_write.c:2182,1
    - Dst: assert
      Src: /src/gpac/src/isomedia/stbl_write.c:2185,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/stbl_write.c:2188,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:2193,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2194,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:2196,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:2205,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2206,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:2208,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: 2184
        line_start: 2184
        source_file: /src/gpac/src/isomedia/stbl_write.c
    constantsTouched: []
    func_position:
      end: 2214
      start: 2157
    functionDepth: 5
    functionLinenumber: 2157
    functionLinenumberEnd: 2214
    functionName: stbl_AddOffset
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_isom_box_del_parent
    - gf_list_insert
    - memset
    - gf_list_find
    - gf_realloc
    - gf_isom_box_new
    - gf_isom_box_del
    - assert
    - ALLOC_INC
    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:2271,1
    - Dst: ALLOC_INC
      Src: /src/gpac/src/isomedia/stbl_write.c:2275,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/stbl_write.c:2276,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/stbl_write.c:2278,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: 2298
      start: 2220
    functionDepth: 6
    functionLinenumber: 2220
    functionLinenumberEnd: 2298
    functionName: stbl_SetChunkAndOffset
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 3
    functionsReached:
    - stbl_AddOffset
    - gf_realloc
    - ALLOC_INC
    - memset
    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:2306,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/stbl_write.c:2320,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2325
      start: 2300
    functionDepth: 0
    functionLinenumber: 2300
    functionLinenumberEnd: 2325
    functionName: gf_isom_refresh_size_info
    functionSourceFile: /src/gpac/src/isomedia/stbl_write.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_box
    - gf_free
    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_isom_get_track_box
    - gf_malloc
    - rgb_48_to_32
    - gf_odf_desc_new
    - gf_list_get
    - gf_strdup
    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_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_free
    - gf_malloc
    - gf_isom_box_del_parent
    - gf_list_get
    - gf_strdup
    - gf_isom_get_mp4time
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_isom_box_new
    - gf_strdup
    - gf_list_add
    - gf_isom_get_mp4time
    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:
    - gf_realloc
    - memcpy
    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_realloc
    - gf_isom_box_new
    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_isom_box_new
    - gf_list_add
    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_isom_box_new
    - gf_list_add
    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_isom_box_new
    - gf_list_add
    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_isom_box_new
    - gf_list_add
    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_write
    - gf_isom_box_size
    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_list_enum
    - gpp_write_modifier
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    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_isom_text_sample_write_bs
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_isom_sample_new
    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_isom_box_size
    - gf_list_enum
    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_isom_can_access_movie
    - gf_isom_get_track_box
    - gf_list_count
    - memcmp
    - strcmp
    - gf_list_get
    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_SAFEALLOC
    - gf_list_new
    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_isom_box_del
    - gf_list_count
    - gf_list_rem
    - gf_list_get
    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_isom_text_reset_styles
    - gf_free
    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_list_del
    - gf_isom_text_reset
    - gf_free
    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_malloc
    - gf_isom_box_parse
    - gf_list_add
    - gf_bs_read_data
    - gf_isom_new_text_sample
    - gf_isom_box_del
    - gf_realloc
    - memcpy
    - gf_bs_read_u16
    - gf_bs_available
    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_isom_parse_text_sample
    - gf_bs_new
    - gf_bs_del
    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:
    - gpp_write_style
    - rgb_48_to_32
    - gpp_write_rgba
    - gpp_write_box
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - memset
    - gf_bs_write_u8
    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_count
    - gf_isom_write_tx3g
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_list_enum
    - gf_odf_desc_esd_new
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u24
    - gf_list_get
    - 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_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u24
    - gf_bs_write_u8
    - gf_bs_write_data
    - gf_bs_read_u16
    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_isom_get_track_box
    - gf_isom_write_tx3g
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_list_get
    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:
    - gf_realloc
    - memcpy
    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_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_isom_sample_new
    - gf_bs_write_data
    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_malloc
    - gf_isom_new_xml_subtitle_sample
    - gf_bs_read_data
    - gf_bs_read_u16
    - gf_bs_available
    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_new_xml_subtitle_sample
    - gf_bs_del
    - gf_bs_new
    - gf_isom_parse_xml_subtitle_sample
    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:
    - GetHintFormat
    - IsHintTrack
    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_count
    - gf_isom_hint_sample_size
    - gf_isom_hint_pck_offset
    - gf_isom_hint_pck_length
    - gf_list_get
    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:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - trak_on_child_box
    - gf_isom_last_error
    - Track_FindRef
    - udta_on_child_box_ex
    - gf_isom_box_new
    - IsHintTrack
    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:
    - gf_isom_box_new_parent
    - gf_isom_can_access_movie
    - gf_isom_get_track_box
    - Media_CreateDataRef
    - gf_list_count
    - gf_isom_rtp_set_timescale
    - CheckHintFormat
    - GetHintFormat
    - IsHintTrack
    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_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - CheckHintFormat
    - gf_list_get
    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_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - CheckHintFormat
    - gf_list_get
    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_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - CheckHintFormat
    - gf_list_get
    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
    - Media_GetSampleDesc
    - IsHintTrack
    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_isom_get_track_box
    - gf_isom_hint_sample_write
    - gf_isom_add_sample
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_isom_sample_del
    - gf_isom_hint_sample_del
    - AdjustHintInfo
    - gf_isom_sample_new
    - Media_GetSampleDesc
    - IsHintTrack
    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_count
    - gf_isom_get_track_box
    - gf_list_get
    - NewDTE
    - Media_GetSampleDesc
    - gf_isom_hint_pck_add_dte
    - IsHintTrack
    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_count
    - gf_isom_get_track_box
    - gf_list_get
    - NewDTE
    - memcpy
    - Media_GetSampleDesc
    - gf_isom_hint_pck_add_dte
    - IsHintTrack
    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_count
    - gf_isom_get_track_box
    - Track_FindRef
    - gf_isom_hint_pck_offset
    - DelDTE
    - memmove
    - gf_list_get
    - gf_realloc
    - NewDTE
    - reftype_AddRefTrack
    - memcpy
    - Media_GetSampleDesc
    - gf_isom_hint_pck_add_dte
    - IsHintTrack
    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_count
    - gf_isom_get_track_box
    - Track_FindRef
    - gf_list_get
    - NewDTE
    - reftype_AddRefTrack
    - Media_GetSampleDesc
    - gf_isom_hint_pck_add_dte
    - IsHintTrack
    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_count
    - gf_isom_get_track_box
    - CheckHintFormat
    - gf_list_get
    - 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:
    - gf_isom_get_track_box
    - gf_isom_hint_pck_new
    - CheckHintFormat
    - gf_list_add
    - Media_GetSampleDesc
    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_count
    - gf_isom_get_track_box
    - CheckHintFormat
    - gf_list_enum
    - gf_isom_box_new
    - gf_list_get
    - gf_list_add
    - 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_count
    - strchr
    - gf_list_get
    - strlen
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void AddSDPLine(GF_List *list, char *sdp_text, Bool is_movie_sdp)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:711,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hint_track.c:712,1
    - Dst: strstr
      Src: /src/gpac/src/isomedia/hint_track.c:716,1
    - Dst: AddSDPLine
      Src: /src/gpac/src/isomedia/hint_track.c:720,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:720,1
    - Dst: AddSDPLine
      Src: /src/gpac/src/isomedia/hint_track.c:725,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:725,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/isomedia/hint_track.c:729,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:731,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hint_track.c:732,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/isomedia/hint_track.c:733,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:734,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/hint_track.c:736,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - sdp_text
    - is_movie_sdp
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 708
    functionDepth: 2
    functionLinenumber: 708
    functionLinenumberEnd: 737
    functionName: ReorderSDP
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - AddSDPLine
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_new
    - gf_strdup
    - strlen
    - gf_strlcat
    - strstr
    - gf_strlcpy
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void ReorderSDP(char *sdp_text, Bool is_movie_sdp)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_track_box
      Src: /src/gpac/src/isomedia/hint_track.c:750,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:754,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:756,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:760,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:762,1
    - Dst: hnti_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:764,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:764,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:770,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/hint_track.c:771,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:774,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/hint_track.c:775,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/hint_track.c:776,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:777,1
    - Dst: ReorderSDP
      Src: /src/gpac/src/isomedia/hint_track.c:778,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - the_file
    - trackNumber
    - text
    argTypes:
    - GF_ISOFile*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 740
    functionDepth: 5
    functionLinenumber: 740
    functionLinenumberEnd: 781
    functionName: gf_isom_sdp_add_track_line
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_isom_get_track_box
    - gf_free
    - CheckHintFormat
    - gf_dynstrcat
    - udta_getEntry
    - hnti_on_child_box
    - gf_list_get
    - gf_strdup
    - ReorderSDP
    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:791,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:795,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:797,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:801,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:803,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:806,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 784
    functionDepth: 3
    functionLinenumber: 784
    functionLinenumberEnd: 809
    functionName: gf_isom_sdp_clean_track
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_free
    - CheckHintFormat
    - udta_getEntry
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_isom_sdp_clean_track(GF_ISOFile *the_file, u32 trackNumber)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:827,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/hint_track.c:827,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:831,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/hint_track.c:833,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/hint_track.c:833,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:835,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:839,1
    - Dst: udta_on_child_box_ex
      Src: /src/gpac/src/isomedia/hint_track.c:840,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/hint_track.c:840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:843,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:845,1
    - Dst: gf_isom_box_new_ex
      Src: /src/gpac/src/isomedia/hint_track.c:848,1
    - Dst: hnti_on_child_box
      Src: /src/gpac/src/isomedia/hint_track.c:850,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/hint_track.c:851,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/hint_track.c:852,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:857,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/hint_track.c:858,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/hint_track.c:861,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/hint_track.c:862,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/hint_track.c:863,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/hint_track.c:864,1
    - Dst: ReorderSDP
      Src: /src/gpac/src/isomedia/hint_track.c:865,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 2
    argNames:
    - movie
    - text
    argTypes:
    - GF_ISOFile*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 814
    functionDepth: 6
    functionLinenumber: 814
    functionLinenumberEnd: 868
    functionName: gf_isom_sdp_add_line
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_new_parent
    - gf_list_count
    - gf_free
    - gf_list_new
    - gf_isom_box_new_ex
    - udta_on_child_box_ex
    - udta_getEntry
    - gf_isom_box_new
    - gf_dynstrcat
    - hnti_on_child_box
    - gf_list_get
    - gf_strdup
    - moov_on_child_box
    - gf_list_add
    - ReorderSDP
    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:882,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:886,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:887,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/hint_track.c:890,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/hint_track.c:891,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - movie
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 872
    functionDepth: 4
    functionLinenumber: 872
    functionLinenumberEnd: 893
    functionName: gf_isom_sdp_clean
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - udta_getEntry
    - gf_list_get
    - gf_isom_box_del
    - 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:910,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:914,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:915,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:920,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - movie
    - sdp
    - length
    argTypes:
    - GF_ISOFile*
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 897
    functionDepth: 2
    functionLinenumber: 897
    functionLinenumberEnd: 923
    functionName: gf_isom_sdp_get
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - udta_getEntry
    - strlen
    - gf_list_get
    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:936,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:940,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:944,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:946,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/hint_track.c:950,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: 953
      start: 925
    functionDepth: 2
    functionLinenumber: 925
    functionLinenumberEnd: 953
    functionName: gf_isom_sdp_track_get
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - gf_list_get
    - udta_getEntry
    - 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:965,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:968,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:969,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:971,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:973,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/hint_track.c:976,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - the_file
    - trackNumber
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 956
    functionDepth: 3
    functionLinenumber: 956
    functionLinenumberEnd: 980
    functionName: gf_isom_get_payt_count
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - CheckHintFormat
    - gf_list_enum
    - udta_getEntry
    - gf_list_get
    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:991,1
    - Dst: CheckHintFormat
      Src: /src/gpac/src/isomedia/hint_track.c:994,1
    - Dst: udta_getEntry
      Src: /src/gpac/src/isomedia/hint_track.c:995,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/hint_track.c:997,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/hint_track.c:999,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/hint_track.c:1002,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: 1012
      start: 982
    functionDepth: 3
    functionLinenumber: 982
    functionLinenumberEnd: 1012
    functionName: gf_isom_get_payt_info
    functionSourceFile: /src/gpac/src/isomedia/hint_track.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_isom_get_track_box
    - CheckHintFormat
    - gf_list_enum
    - udta_getEntry
    - gf_list_get
    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_bs_del
    - gf_free
    - gf_isom_fdm_del
    - gf_isom_fmo_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_fopen
    - gf_fclose
    - 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_isom_fmo_new
    - gf_free
    - IsLargeFile
    - gf_url_concatenate
    - gf_url_is_local
    - gf_isom_fdm_new_temp
    - strcmp
    - gf_isom_fdm_new
    - strncmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_isom_datamap_new(const char *location, const char *parentPath,
      u8 mode, GF_DataMap **outDataMap)
  - BBCount: 19
    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:274,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 57
    argCount: 3
    argNames:
    - mdia
    - dataRefIndex
    - Edit
    argTypes:
    - GF_MediaBox*
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 202
    functionDepth: 3
    functionLinenumber: 202
    functionLinenumberEnd: 280
    functionName: gf_isom_datamap_open
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_isom_datamap_new
    - gf_isom_datamap_close
    - gf_list_get
    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:290,1
    - Dst: gf_isom_fmo_get_data
      Src: /src/gpac/src/isomedia/data_map.c:294,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: 300
      start: 283
    functionDepth: 1
    functionLinenumber: 283
    functionLinenumberEnd: 300
    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:309,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_DataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 311
    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:324,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_DataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 330
    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:340,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - ptr
    - data
    - dataSize
    argTypes:
    - GF_DataMap*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 333
    functionDepth: 1
    functionLinenumber: 333
    functionLinenumberEnd: 344
    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:349,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/isomedia/data_map.c:359,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/data_map.c:362,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/data_map.c:362,1
    - Dst: strlen
      Src: /src/gpac/src/isomedia/data_map.c:362,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/data_map.c:363,1
    - Dst: sprintf
      Src: /src/gpac/src/isomedia/data_map.c:365,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:367,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/data_map.c:368,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:371,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:372,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/data_map.c:375,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/data_map.c:377,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:378,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 1
    argNames:
    - sPath
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 382
    functionName: gf_isom_fdm_new_temp
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 3
    functionsReached:
    - sprintf
    - gf_free
    - gf_fclose
    - gf_fopen
    - gf_bs_from_file
    - GF_SAFEALLOC
    - gf_file_temp
    - strlen
    - gf_strdup
    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:392,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:402,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:404,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:413,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/isomedia/data_map.c:415,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:419,1
    - Dst: sscanf
      Src: /src/gpac/src/isomedia/data_map.c:420,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/isomedia/data_map.c:422,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:423,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:426,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:436,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/data_map.c:436,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/isomedia/data_map.c:437,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/isomedia/data_map.c:439,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:442,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:448,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:450,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:452,1
    - Dst: strncmp
      Src: /src/gpac/src/isomedia/data_map.c:457,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/data_map.c:457,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:459,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/isomedia/data_map.c:460,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/isomedia/data_map.c:462,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:466,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:467,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:474,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:476,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/data_map.c:478,1
    - Dst: gf_fopen
      Src: /src/gpac/src/isomedia/data_map.c:483,1
    - Dst: gf_fseek
      Src: /src/gpac/src/isomedia/data_map.c:484,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:489,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:493,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/isomedia/data_map.c:497,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/data_map.c:500,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:501,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 100
    argCount: 2
    argNames:
    - sPath
    - mode
    argTypes:
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 505
    functionName: gf_isom_fdm_new
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_fopen
    - gf_bs_new
    - gf_bs_from_fd
    - gf_fseek
    - gf_fd_open
    - GF_SAFEALLOC
    - gf_bs_from_file
    - gf_file_temp
    - gf_mx_p
    - strcmp
    - gf_mx_v
    - gf_opts_get_bool
    - sscanf
    - strncmp
    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:510,1
    - Dst: gf_fclose
      Src: /src/gpac/src/isomedia/data_map.c:512,1
    - Dst: close
      Src: /src/gpac/src/isomedia/data_map.c:516,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/isomedia/data_map.c:521,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:522,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:525,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 507
    functionDepth: 1
    functionLinenumber: 507
    functionLinenumberEnd: 526
    functionName: gf_isom_fdm_del
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_free
    - gf_bs_del
    - gf_file_delete
    - close
    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:533,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/isomedia/data_map.c:540,1
    - Dst: gf_blob_query_range
      Src: /src/gpac/src/isomedia/data_map.c:541,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:544,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/data_map.c:547,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:548,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:549,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:552,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:554,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/data_map.c:559,1
    - Dst: gf_bs_get_refreshed_size
      Src: /src/gpac/src/isomedia/data_map.c:564,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:565,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/isomedia/data_map.c:566,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:571,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:578,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: 581
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 581
    functionName: gf_isom_fdm_get_data
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_blob_query_range
    - gf_bs_get_position
    - gf_bs_get_size
    - gf_bs_get_refreshed_size
    - gf_bs_read_data
    - gf_mx_p
    - gf_mx_v
    - gf_bs_seek
    - gf_bs_reassign_buffer
    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:586,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/isomedia/data_map.c:590,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:591,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/isomedia/data_map.c:592,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:594,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:597,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/data_map.c:598,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/isomedia/data_map.c:599,1
    - Dst: gf_blob_query_range
      Src: /src/gpac/src/isomedia/data_map.c:608,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/data_map.c:609,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 613
    functionName: gf_isom_fdm_check_top_level
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_blob_query_range
    - gf_bs_peek_bits
    - gf_mx_p
    - gf_mx_v
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_bs_available
    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:622,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/isomedia/data_map.c:626,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_DataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 633
      start: 615
    functionDepth: 2
    functionLinenumber: 615
    functionLinenumberEnd: 633
    functionName: gf_isom_datamap_top_level_box_avail
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 0
    functionsReached:
    - gf_isom_fdm_check_top_level
    - gf_bs_available
    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:644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 638
    functionDepth: 1
    functionLinenumber: 638
    functionLinenumberEnd: 645
    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:653,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:657,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/isomedia/data_map.c:662,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/data_map.c:665,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/data_map.c:668,1
    - Dst: gf_bs_flush
      Src: /src/gpac/src/isomedia/data_map.c:671,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ptr
    - data
    - dataSize
    argTypes:
    - GF_FileDataMap*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 647
    functionDepth: 1
    functionLinenumber: 647
    functionLinenumberEnd: 674
    functionName: FDM_AddData
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_bs_flush
    - gf_bs_get_size
    - gf_bs_write_data
    - gf_bs_seek
    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:697,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/data_map.c:702,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/isomedia/data_map.c:709,1
    - Dst: CreateFileForMapping
      Src: /src/gpac/src/isomedia/data_map.c:711,1
    - Dst: CreateFile
      Src: /src/gpac/src/isomedia/data_map.c:714,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:720,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:721,1
    - Dst: GetFileSize
      Src: /src/gpac/src/isomedia/data_map.c:725,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:727,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:728,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:729,1
    - Dst: CreateFileMapping
      Src: /src/gpac/src/isomedia/data_map.c:736,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:738,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:739,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:740,1
    - Dst: MapViewOfFile
      Src: /src/gpac/src/isomedia/data_map.c:744,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:746,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:747,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:748,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:749,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:753,1
    - Dst: CloseHandle
      Src: /src/gpac/src/isomedia/data_map.c:754,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/isomedia/data_map.c:757,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 43
    argCount: 2
    argNames:
    - sPath
    - mode
    argTypes:
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 686
    functionDepth: 1
    functionLinenumber: 686
    functionLinenumberEnd: 759
    functionName: gf_isom_fmo_new
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - CreateFileForMapping
    - gf_free
    - CreateFile
    - CE_CharToWide
    - CreateFileMapping
    - CloseHandle
    - gf_bs_new
    - GetFileSize
    - GF_SAFEALLOC
    - MapViewOfFile
    - gf_strdup
    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:765,1
    - Dst: UnmapViewOfFile
      Src: /src/gpac/src/isomedia/data_map.c:766,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:767,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/data_map.c:768,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileMappingDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 761
    functionDepth: 1
    functionLinenumber: 761
    functionLinenumberEnd: 769
    functionName: gf_isom_fmo_del
    functionSourceFile: /src/gpac/src/isomedia/data_map.c
    functionUses: 1
    functionsReached:
    - gf_bs_del
    - UnmapViewOfFile
    - gf_free
    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:778,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: 780
      start: 772
    functionDepth: 0
    functionLinenumber: 772
    functionLinenumberEnd: 780
    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:786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sPath
    - mode
    argTypes:
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 784
    functionDepth: 2
    functionLinenumber: 784
    functionLinenumberEnd: 787
    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:791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_FileMappingDataMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 792
      start: 789
    functionDepth: 2
    functionLinenumber: 789
    functionLinenumberEnd: 792
    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:796,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: 797
      start: 794
    functionDepth: 2
    functionLinenumber: 794
    functionLinenumberEnd: 797
    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: 22
    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:173,1
    - Dst: memmove
      Src: /src/gpac/src/isomedia/isom_intern.c:175,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 108
    argCount: 2
    argNames:
    - moof
    - mov
    argTypes:
    - GF_MovieFragmentBox*
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 37
    functionDepth: 6
    functionLinenumber: 37
    functionLinenumberEnd: 189
    functionName: MergeFragment
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_get_content
    - MergeTrack
    - gf_bs_new
    - gf_isom_set_sample_group_description_internal
    - gf_bs_del
    - gf_isom_box_new_parent
    - gf_malloc
    - gf_isom_box_write
    - gf_list_find
    - gf_fatal_assert
    - gf_list_get
    - gf_isom_box_array_del
    - gf_isom_get_track_from_id
    - gf_list_enum
    - SetTrackDuration
    - gf_bs_write_data
    - gf_free
    - GF_LOG
    - GF_4CC
    - gf_bs_write_u32
    - memmove
    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:195,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:201,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 208
    functionName: FixTrackID
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - 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:216,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:217,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:222,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:223,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:226,1
    - Dst: GF_ISOM_GET_FRAG_DEPEND_FLAGS
      Src: /src/gpac/src/isomedia/isom_intern.c:240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:246,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_intern.c:248,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 1
    argNames:
    - moof
    argTypes:
    - GF_MovieFragmentBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 210
    functionDepth: 5
    functionLinenumber: 210
    functionLinenumberEnd: 252
    functionName: FixSDTPInTRAF
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_del_parent
    - GF_LOG
    - gf_list_enum
    - GF_ISOM_GET_FRAG_DEPEND_FLAGS
    - gf_list_get
    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:260,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:264,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: 283
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 283
    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:293,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/isomedia/isom_intern.c:297,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_intern.c:299,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/isomedia/isom_intern.c:300,1
    - Dst: GetTrex
      Src: /src/gpac/src/isomedia/isom_intern.c:301,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 288
    functionDepth: 3
    functionLinenumber: 288
    functionLinenumberEnd: 305
    functionName: gf_isom_setup_traf_inheritance
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_id
    - gf_list_count
    - gf_isom_get_reference
    - GetTrex
    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:315,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:318,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:323,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:324,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/isomedia/isom_intern.c:331,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:332,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:334,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_intern.c:335,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:349,1
    - Dst: gf_realloc
      Src: /src/gpac/src/isomedia/isom_intern.c:365,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:378,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: 380
      start: 312
    functionDepth: 4
    functionLinenumber: 312
    functionLinenumberEnd: 380
    functionName: convert_compact_sample_groups
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_del
    - GF_LOG
    - gf_list_del_item
    - gf_isom_box_new
    - gf_list_get
    - gf_realloc
    - gf_list_insert
    - gf_list_add
    - gf_list_rem
    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:397,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/isomedia/isom_intern.c:400,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/isom_intern.c:402,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_intern.c:403,1
    - Dst: gf_bs_get_cookie
      Src: /src/gpac/src/isomedia/isom_intern.c:403,1
    - Dst: gf_isom_datamap_top_level_box_avail
      Src: /src/gpac/src/isomedia/isom_intern.c:409,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:413,1
    - Dst: gf_isom_parse_root_box
      Src: /src/gpac/src/isomedia/isom_intern.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:425,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/isomedia/isom_intern.c:436,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:437,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:441,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:453,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:454,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_intern.c:459,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_intern.c:460,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:462,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:465,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:466,1
    - Dst: gf_isom_setup_traf_inheritance
      Src: /src/gpac/src/isomedia/isom_intern.c:478,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:483,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:488,1
    - Dst: gf_isom_meta_restore_items_ref
      Src: /src/gpac/src/isomedia/isom_intern.c:494,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:500,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:501,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/isom_intern.c:504,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:510,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:511,1
    - Dst: convert_compact_sample_groups
      Src: /src/gpac/src/isomedia/isom_intern.c:514,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:520,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:528,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:529,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:534,1
    - Dst: gf_isom_meta_restore_items_ref
      Src: /src/gpac/src/isomedia/isom_intern.c:538,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:550,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:558,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:564,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:570,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:572,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:579,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:586,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:587,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:589,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:594,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:600,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:601,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:606,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:613,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:614,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:620,1
    - Dst: gf_isom_box_find_child
      Src: /src/gpac/src/isomedia/isom_intern.c:623,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:626,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:627,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:628,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/isomedia/isom_intern.c:631,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:633,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:641,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:646,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:674,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:679,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:682,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:691,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:694,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:697,1
    - Dst: gf_isom_push_mdat_end
      Src: /src/gpac/src/isomedia/isom_intern.c:699,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:701,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:705,1
    - Dst: gf_isom_disable_inplace_rewrite
      Src: /src/gpac/src/isomedia/isom_intern.c:712,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:715,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:720,1
    - Dst: FixTrackID
      Src: /src/gpac/src/isomedia/isom_intern.c:729,1
    - Dst: FixSDTPInTRAF
      Src: /src/gpac/src/isomedia/isom_intern.c:731,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:734,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:735,1
    - Dst: convert_compact_sample_groups
      Src: /src/gpac/src/isomedia/isom_intern.c:737,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:745,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:748,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:749,1
    - Dst: gf_isom_get_track_from_id
      Src: /src/gpac/src/isomedia/isom_intern.c:751,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/isomedia/isom_intern.c:753,1
    - Dst: GetTrackbyID
      Src: /src/gpac/src/isomedia/isom_intern.c:763,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/isom_intern.c:766,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:773,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:774,1
    - Dst: senc_Parse
      Src: /src/gpac/src/isomedia/isom_intern.c:776,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:785,1
    - Dst: MergeFragment
      Src: /src/gpac/src/isomedia/isom_intern.c:788,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:789,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_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:803,1
    - Dst: GF_4CC
      Src: /src/gpac/src/isomedia/isom_intern.c:816,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:818,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:823,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:827,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:837,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:841,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_intern.c:850,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:851,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:853,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:863,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:865,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:871,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/isomedia/isom_intern.c:878,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/isomedia/isom_intern.c:893,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/isomedia/isom_intern.c:901,1
    - Dst: gf_isom_box_del_parent
      Src: /src/gpac/src/isomedia/isom_intern.c:916,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:925,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:927,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: 933
      start: 382
    functionDepth: 7
    functionLinenumber: 382
    functionLinenumberEnd: 933
    functionName: gf_isom_parse_movie_boxes_internal
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_get_size
    - gf_isom_disable_inplace_rewrite
    - gf_assert
    - gf_bs_set_cookie
    - gf_isom_box_del
    - gf_bs_seek
    - gf_list_add
    - gf_isom_setup_traf_inheritance
    - gf_isom_push_mdat_end
    - senc_Parse
    - FixTrackID
    - GetTrackbyID
    - gf_isom_meta_restore_items_ref
    - gf_isom_box_new
    - gf_list_get
    - gf_list_insert
    - gf_isom_box_array_del
    - gf_isom_get_track_from_id
    - gf_isom_parse_root_box
    - convert_compact_sample_groups
    - gf_list_enum
    - gf_isom_box_find_child
    - gf_isom_datamap_top_level_box_avail
    - gf_list_new
    - MergeFragment
    - gf_bs_get_cookie
    - gf_isom_box_del_parent
    - GF_LOG
    - FixSDTPInTRAF
    - gf_list_del_item
    - GF_4CC
    - gf_opts_get_bool
    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:948,1
    - Dst: gf_isom_parse_movie_boxes_internal
      Src: /src/gpac/src/isomedia/isom_intern.c:951,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/isomedia/isom_intern.c:954,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: 957
      start: 937
    functionDepth: 8
    functionLinenumber: 937
    functionLinenumberEnd: 957
    functionName: gf_isom_parse_movie_boxes
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 4
    functionsReached:
    - gf_isom_parse_movie_boxes_internal
    - gf_mx_p
    - gf_mx_v
    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:961,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:963,1
    - Dst: memset
      Src: /src/gpac/src/isomedia/isom_intern.c:966,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_intern.c:969,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:971,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:972,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 959
    functionDepth: 1
    functionLinenumber: 959
    functionLinenumberEnd: 982
    functionName: gf_isom_new_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_isom_set_last_error
    - gf_list_new
    - memset
    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:989,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_intern.c:992,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1010,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1015,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1016,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1029,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1031,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1032,1
    - Dst: gf_bs_set_cookie
      Src: /src/gpac/src/isomedia/isom_intern.c:1037,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1047,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1048,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_intern.c:1054,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/isomedia/isom_intern.c:1055,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1058,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1059,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1064,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1067,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1068,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1072,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1074,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1075,1
    - Dst: gf_isom_parse_movie_boxes
      Src: /src/gpac/src/isomedia/isom_intern.c:1085,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1091,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1093,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1098,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1099,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1103,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 73
    argCount: 3
    argNames:
    - fileName
    - OpenMode
    - tmp_dir
    argTypes:
    - char*
    - GF_ISOOpenMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 985
    functionDepth: 9
    functionLinenumber: 985
    functionLinenumberEnd: 1105
    functionName: gf_isom_open_file
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_isom_new_movie
    - gf_list_count
    - gf_isom_delete_movie
    - gf_isom_parse_movie_boxes
    - gf_isom_set_last_error
    - gf_dynstrcat
    - gf_bs_set_cookie
    - gf_isom_datamap_new
    - gf_strdup
    - gf_isom_datamap_del
    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:1116,1
    - Dst: strcmp
      Src: /src/gpac/src/isomedia/isom_intern.c:1117,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: 1129
      start: 1107
    functionDepth: 0
    functionLinenumber: 1107
    functionLinenumberEnd: 1129
    functionName: gf_isom_set_write_callback
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 0
    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:1136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1132
    functionDepth: 0
    functionLinenumber: 1132
    functionLinenumberEnd: 1140
    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: 18
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1150,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1151,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1164,1
    - Dst: gf_isom_datamap_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1168,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1170,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1173,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1175,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1177,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1179,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1181,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1184,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1187,1
    - Dst: gf_isom_box_array_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1190,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1193,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1194,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1195,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1196,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 41
    argCount: 1
    argNames:
    - mov
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1142
    functionDepth: 4
    functionLinenumber: 1142
    functionLinenumberEnd: 1197
    functionName: gf_isom_delete_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_isom_box_del
    - 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:1204,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1206,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - moov
    - trackID
    argTypes:
    - GF_MovieBox*
    - GF_ISOTrackID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1199
    functionDepth: 1
    functionLinenumber: 1199
    functionLinenumberEnd: 1210
    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:1217,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1219,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 3
    argNames:
    - moov
    - originalID
    - originalFile
    argTypes:
    - GF_MovieBox*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1223
      start: 1212
    functionDepth: 1
    functionLinenumber: 1212
    functionLinenumberEnd: 1223
    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:1230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1233
      start: 1225
    functionDepth: 2
    functionLinenumber: 1225
    functionLinenumberEnd: 1233
    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:1289,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1291,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/isom_intern.c:1303,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1307,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_intern.c:1365,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_intern.c:1377,1
    - Dst: stbl_GetSampleCTS
      Src: /src/gpac/src/isomedia/isom_intern.c:1379,1
    - Dst: stbl_findEntryForTime
      Src: /src/gpac/src/isomedia/isom_intern.c:1382,1
    - Dst: stbl_GetSampleDTS
      Src: /src/gpac/src/isomedia/isom_intern.c:1392,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 109
    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: 1400
      start: 1237
    functionDepth: 2
    functionLinenumber: 1237
    functionLinenumberEnd: 1400
    functionName: GetMediaTime
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - stbl_GetSampleDTS
    - stbl_findEntryForTime
    - gf_list_get
    - gf_list_last
    - stbl_GetSampleCTS
    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:1414,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/isomedia/isom_intern.c:1415,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - trak
    - movieTime
    - OutMovieTime
    argTypes:
    - GF_TrackBox*
    - u64
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1402
    functionDepth: 1
    functionLinenumber: 1402
    functionLinenumberEnd: 1428
    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:1442,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/isomedia/isom_intern.c:1444,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/isomedia/isom_intern.c:1445,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/isomedia/isom_intern.c:1452,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - trak
    - movieTime
    - OutMovieTime
    argTypes:
    - GF_TrackBox*
    - u64
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1459
      start: 1430
    functionDepth: 1
    functionLinenumber: 1430
    functionLinenumberEnd: 1459
    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:1469,1
    - Dst: gf_isom_box_new_parent
      Src: /src/gpac/src/isomedia/isom_intern.c:1473,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/isomedia/isom_intern.c:1476,1
    - Dst: gf_isom_get_mp4time
      Src: /src/gpac/src/isomedia/isom_intern.c:1479,1
    - Dst: moov_on_child_box
      Src: /src/gpac/src/isomedia/isom_intern.c:1490,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1491,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1463
    functionDepth: 6
    functionLinenumber: 1463
    functionLinenumberEnd: 1493
    functionName: gf_isom_insert_moov
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 21
    functionsReached:
    - gf_isom_box_new_parent
    - gf_isom_box_new
    - gf_sys_is_test_mode
    - moov_on_child_box
    - gf_list_add
    - 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:1500,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_intern.c:1513,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1514,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/isomedia/isom_intern.c:1518,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/isom_intern.c:1519,1
    - Dst: strnicmp
      Src: /src/gpac/src/isomedia/isom_intern.c:1519,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/isom_intern.c:1520,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/isom_intern.c:1522,1
    - Dst: gf_strdup
      Src: /src/gpac/src/isomedia/isom_intern.c:1526,1
    - Dst: gf_isom_datamap_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1527,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1529,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1530,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/isomedia/isom_intern.c:1534,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1538,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1540,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1541,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1544,1
    - Dst: gf_isom_set_last_error
      Src: /src/gpac/src/isomedia/isom_intern.c:1551,1
    - Dst: gf_isom_delete_movie
      Src: /src/gpac/src/isomedia/isom_intern.c:1552,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 42
    argCount: 3
    argNames:
    - fileName
    - OpenMode
    - tmp_dir
    argTypes:
    - char*
    - GF_ISOOpenMode
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1554
      start: 1496
    functionDepth: 5
    functionLinenumber: 1496
    functionLinenumberEnd: 1554
    functionName: gf_isom_create_movie
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 1
    functionsReached:
    - gf_isom_set_brand_info
    - gf_isom_new_movie
    - gf_file_ext_start
    - gf_isom_delete_movie
    - strnicmp
    - gf_isom_set_last_error
    - gf_isom_box_new
    - gf_isom_datamap_new
    - gf_strdup
    - gf_list_add
    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:1560,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - EditDuration
    - MediaTime
    - MediaRate
    - EditMode
    argTypes:
    - u64
    - u64
    - u32
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1580
      start: 1556
    functionDepth: 0
    functionLinenumber: 1556
    functionLinenumberEnd: 1580
    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:1590,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1592,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_intern.c:1601,1
    - Dst: gf_list_new
      Src: /src/gpac/src/isomedia/isom_intern.c:1603,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1605,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1609,1
    - Dst: gf_list_last
      Src: /src/gpac/src/isomedia/isom_intern.c:1617,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/isomedia/isom_intern.c:1618,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1619,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1620,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/isomedia/isom_intern.c:1621,1
    - Dst: gf_list_del
      Src: /src/gpac/src/isomedia/isom_intern.c:1622,1
    - Dst: gf_free
      Src: /src/gpac/src/isomedia/isom_intern.c:1623,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/isomedia/isom_intern.c:1628,1
    - Dst: gf_list_add
      Src: /src/gpac/src/isomedia/isom_intern.c:1634,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: 1635
      start: 1582
    functionDepth: 1
    functionLinenumber: 1582
    functionLinenumberEnd: 1635
    functionName: gf_isom_add_subsample_info
    functionSourceFile: /src/gpac/src/isomedia/isom_intern.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_del_item
    - gf_list_rem_last
    - GF_SAFEALLOC
    - gf_list_new
    - gf_list_last
    - gf_list_add
    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:1642,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1645,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - movie
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1646
      start: 1640
    functionDepth: 1
    functionLinenumber: 1640
    functionLinenumberEnd: 1646
    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:1652,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1656,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: 1660
      start: 1649
    functionDepth: 1
    functionLinenumber: 1649
    functionLinenumberEnd: 1660
    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:1666,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1670,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1672,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1679,1
    - Dst: gf_list_get
      Src: /src/gpac/src/isomedia/isom_intern.c:1681,1
    - Dst: gf_list_count
      Src: /src/gpac/src/isomedia/isom_intern.c:1684,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: 1689
      start: 1662
    functionDepth: 1
    functionLinenumber: 1662
    functionLinenumberEnd: 1689
    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_get_field_index
    - gf_node_get_field
    - gf_sg_command_new
    - gf_sg_command_field_new
    - gf_bifs_dec_node
    - gf_sg_vrml_field_pointer_new
    - gf_sg_command_del
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_node_register
    - gf_list_add
    - gf_bifs_dec_sf_field
    - gf_sg_find_node
    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_get_field_index
    - gf_node_get_field
    - gf_sg_command_new
    - gf_sg_command_field_new
    - gf_sg_vrml_field_pointer_new
    - gf_sg_command_del
    - gf_bifs_dec_field
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_list_add
    - gf_sg_find_node
    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_sg_command_field_new
    - gf_node_get_tag
    - gf_sg_command_new
    - gf_node_register
    - gf_list_add
    - gf_node_unregister
    - gf_bifs_dec_node
    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_realloc
    - gf_bs_read_int
    - gf_sg_command_new
    - gf_list_add
    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_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_sg_command_new
    - gf_sg_command_field_new
    - gf_node_get_tag
    - gf_node_get_proto
    - gf_sg_vrml_field_pointer_new
    - BM_SetCommandNode
    - gf_bifs_dec_sf_field
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_node_list_get_child
    - gf_list_add
    - gf_sg_proto_get_id
    - gf_sg_find_node
    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:
    - gf_sg_command_del
    - BM_XReplace
    - gf_sg_command_new
    - gf_bifs_dec_proto_list
    - BM_ParseProtoDelete
    - BM_SetCommandNode
    - BM_ParseMultipleReplace
    - BM_ParseGlobalQuantizer
    - gf_bs_read_int
    - gf_list_add
    - gf_sg_find_node
    - BM_ParseMultipleIndexedReplace
    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
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:448,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:449,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 407
    functionDepth: 2
    functionLinenumber: 407
    functionLinenumberEnd: 452
    functionName: BM_ParseNodeInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_field_new
    - gf_sg_command_new
    - gf_sg_find_node
    - gf_bifs_get_child_table
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_node_register
    - gf_list_add
    - gf_node_unregister
    - gf_bifs_dec_node
    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:467,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:468,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:471,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:471,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:472,1
    - Dst: gf_bifs_get_field_index
      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_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:480,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:492,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:494,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/memory_decoder.c:496,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:497,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:501,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:503,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:504,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:505,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:511,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:513,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:516,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:517,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:520,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:521,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:522,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:526,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:527,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:528,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 60
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 455
    functionDepth: 2
    functionLinenumber: 455
    functionLinenumberEnd: 531
    functionName: BM_ParseIndexInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bifs_dec_node
    - gf_sg_command_new
    - gf_sg_command_field_new
    - gf_sg_vrml_field_pointer_new
    - BM_SetCommandNode
    - gf_node_unregister
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_node_register
    - gf_list_add
    - memcpy
    - gf_bifs_dec_sf_field
    - gf_sg_find_node
    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:545,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:548,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/memory_decoder.c:549,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:552,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:553,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:556,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:557,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:558,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:559,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:563,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:564,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:567,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:568,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:569,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:570,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:573,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/memory_decoder.c:575,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:576,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:578,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:580,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: 582
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 582
    functionName: BM_ParseRouteInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_sg_command_new
    - gf_node_get_id
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_bifs_dec_name
    - gf_strdup
    - gf_list_add
    - gf_sg_find_node
    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:589,1
    - Dst: BM_ParseNodeInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:592,1
    - Dst: BM_ParseExtendedUpdates
      Src: /src/gpac/src/bifs/memory_decoder.c:594,1
    - Dst: BM_ParseIndexInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:596,1
    - Dst: BM_ParseRouteInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:598,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: 602
      start: 585
    functionDepth: 4
    functionLinenumber: 585
    functionLinenumberEnd: 602
    functionName: BM_ParseInsert
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - BM_ParseRouteInsert
    - BM_ParseNodeInsert
    - BM_ParseIndexInsert
    - 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:616,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:617,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:620,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:620,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:621,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:623,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:626,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:637,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:639,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:641,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:642,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:643,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:644,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:647,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:648,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: 650
      start: 605
    functionDepth: 2
    functionLinenumber: 605
    functionLinenumberEnd: 650
    functionName: BM_ParseIndexDelete
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_sg_command_new
    - gf_sg_command_field_new
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_list_add
    - gf_sg_find_node
    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:661,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:664,1
    - Dst: gf_sg_find_node
      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: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:668,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:669,1
    - Dst: BM_ParseIndexDelete
      Src: /src/gpac/src/bifs/memory_decoder.c:672,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:674,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:675,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:676,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: 682
      start: 654
    functionDepth: 3
    functionLinenumber: 654
    functionLinenumberEnd: 682
    functionName: BM_ParseDelete
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_new
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_list_add
    - gf_sg_find_node
    - BM_ParseIndexDelete
    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:692,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:694,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:697,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:698,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:699,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:700,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:703,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:704,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: 706
      start: 685
    functionDepth: 2
    functionLinenumber: 685
    functionLinenumberEnd: 706
    functionName: BM_ParseNodeReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_field_new
    - gf_bifs_dec_node
    - gf_sg_command_new
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_node_register
    - gf_list_add
    - gf_sg_find_node
    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:717,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:718,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:720,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:720,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:721,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:722,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:725,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:728,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:729,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:730,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:738,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/memory_decoder.c:741,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:743,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: 745
      start: 708
    functionDepth: 2
    functionLinenumber: 708
    functionLinenumberEnd: 745
    functionName: BM_ParseFieldReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_sg_command_new
    - gf_sg_command_field_new
    - gf_sg_vrml_field_pointer_new
    - gf_bifs_dec_field
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_list_add
    - gf_sg_find_node
    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:758,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:760,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:762,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:762,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:763,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:764,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/memory_decoder.c:767,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:769,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:771,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:774,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:787,1
    - Dst: BM_SetCommandNode
      Src: /src/gpac/src/bifs/memory_decoder.c:788,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/bifs/memory_decoder.c:789,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/memory_decoder.c:795,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/memory_decoder.c:797,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/memory_decoder.c:799,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/memory_decoder.c:800,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/memory_decoder.c:802,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/memory_decoder.c:803,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:805,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: 807
      start: 747
    functionDepth: 2
    functionLinenumber: 747
    functionLinenumberEnd: 807
    functionName: BM_ParseIndexValueReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_sg_command_new
    - gf_sg_command_field_new
    - gf_bifs_dec_node
    - gf_sg_vrml_field_pointer_new
    - BM_SetCommandNode
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_node_register
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_get_sf_type
    - gf_list_add
    - memcpy
    - gf_bifs_dec_sf_field
    - gf_sg_find_node
    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:816,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:819,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:820,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:822,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:822,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:823,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:824,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:828,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/memory_decoder.c:829,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/memory_decoder.c:831,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/memory_decoder.c:831,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:832,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/memory_decoder.c:833,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:836,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:838,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:840,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:842,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: 844
      start: 809
    functionDepth: 1
    functionLinenumber: 809
    functionLinenumberEnd: 844
    functionName: BM_ParseRouteReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_sg_command_new
    - gf_node_get_id
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_list_add
    - gf_sg_find_node
    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:850,1
    - Dst: BM_ParseNodeReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:853,1
    - Dst: BM_ParseFieldReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:855,1
    - Dst: BM_ParseIndexValueReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:857,1
    - Dst: BM_ParseRouteReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:859,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: 862
      start: 847
    functionDepth: 3
    functionLinenumber: 847
    functionLinenumberEnd: 862
    functionName: BM_ParseReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - BM_ParseNodeReplace
    - BM_ParseIndexValueReplace
    - BM_ParseFieldReplace
    - gf_bs_read_int
    - BM_ParseRouteReplace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BM_ParseReplace(GF_BifsDecoder *codec, GF_BitStream *bs, GF_List
      *com_list)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:870,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/memory_decoder.c:873,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/memory_decoder.c:874,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:875,1
    - Dst: gf_node_register
      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: BD_DecSceneReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:883,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/bifs/memory_decoder.c:884,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:885,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:886,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/bifs/memory_decoder.c:888,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/memory_decoder.c:890,1
    - Dst: gf_list_find
      Src: /src/gpac/src/bifs/memory_decoder.c:891,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:893,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/bifs/memory_decoder.c:894,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:898,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:908,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/bifs/memory_decoder.c:911,1
    - Dst: gf_list_find
      Src: /src/gpac/src/bifs/memory_decoder.c:912,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:916,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/bifs/memory_decoder.c:917,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:919,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/bifs/memory_decoder.c:921,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/memory_decoder.c:923,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:924,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/bifs/memory_decoder.c:925,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/memory_decoder.c:929,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:930,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 54
    argCount: 3
    argNames:
    - codec
    - bs
    - com_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 932
      start: 864
    functionDepth: 1
    functionLinenumber: 864
    functionLinenumberEnd: 932
    functionName: BM_SceneReplace
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sg_command_del
    - gf_sg_command_new
    - BD_DecSceneReplace
    - gf_free
    - gf_node_get_id
    - gf_list_del
    - gf_sg_route_del
    - gf_list_enum
    - gf_node_unregister
    - gf_list_find
    - gf_node_register
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - gf_list_pop_back
    - gf_list_rem
    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:944,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:948,1
    - Dst: BM_ParseInsert
      Src: /src/gpac/src/bifs/memory_decoder.c:951,1
    - Dst: BM_ParseDelete
      Src: /src/gpac/src/bifs/memory_decoder.c:954,1
    - Dst: BM_ParseReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:957,1
    - Dst: BM_SceneReplace
      Src: /src/gpac/src/bifs/memory_decoder.c:960,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/memory_decoder.c:964,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:966,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/memory_decoder.c:967,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:971,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/bifs/memory_decoder.c:973,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:974,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:975,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: 982
      start: 935
    functionDepth: 5
    functionLinenumber: 935
    functionLinenumberEnd: 982
    functionName: BM_ParseCommand
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bifs_dec_qp_remove
    - gf_free
    - BM_ParseDelete
    - BM_ParseInsert
    - BM_SceneReplace
    - gf_node_unregister
    - BM_ParseReplace
    - gf_bs_read_int
    - gf_list_pop_back
    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: 987
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 987
    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:999,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1000,1
    - Dst: gf_list_new
      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_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1007,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1008,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/bifs/memory_decoder.c:1010,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/memory_decoder.c:1013,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/bifs/memory_decoder.c:1014,1
    - Dst: BM_ParseCommand
      Src: /src/gpac/src/bifs/memory_decoder.c:1015,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/memory_decoder.c:1016,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:1019,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:1020,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1024,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1027,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1028,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1029,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1031,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1032,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:1034,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:1035,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1036,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/bifs/memory_decoder.c:1041,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:1043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1045,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1047,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1048,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1049,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/memory_decoder.c:1050,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1053,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1053,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1056,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1057,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/memory_decoder.c:1062,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 56
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 992
    functionDepth: 6
    functionLinenumber: 992
    functionLinenumberEnd: 1066
    functionName: gf_bifs_flush_command_list
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sg_command_del
    - gf_free
    - gf_list_del
    - gf_list_new
    - gf_bs_new
    - gf_bs_set_eos_callback
    - gf_list_add
    - gf_bs_del
    - gf_node_get_graph
    - gf_list_get
    - BM_ParseCommand
    - gf_node_unregister
    - 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:1076,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/memory_decoder.c:1087,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/bifs/memory_decoder.c:1088,1
    - Dst: BM_ParseCommand
      Src: /src/gpac/src/bifs/memory_decoder.c:1090,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/memory_decoder.c:1091,1
    - Dst: gf_bifs_flush_command_list
      Src: /src/gpac/src/bifs/memory_decoder.c:1095,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/memory_decoder.c:1098,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/memory_decoder.c:1099,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/memory_decoder.c:1100,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/memory_decoder.c:1101,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/memory_decoder.c:1102,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: 1113
      start: 1068
    functionDepth: 7
    functionLinenumber: 1068
    functionLinenumberEnd: 1113
    functionName: gf_bifs_decode_command_list
    functionSourceFile: /src/gpac/src/bifs/memory_decoder.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_bifs_flush_command_list
    - gf_bifs_dec_get_stream
    - gf_bs_new
    - gf_bs_set_eos_callback
    - gf_bs_del
    - gf_list_get
    - BM_ParseCommand
    - 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_count
    - gf_node_get_field
    - gf_bifs_enc_field
    - gf_node_get_id
    - gf_bs_write_int
    - GF_BIFS_WRITE_INT
    - gf_sg_proto_create_instance
    - gf_bifs_field_index_by_mode
    - gf_node_new
    - gf_get_bit_size
    - gf_bifs_enc_find_node
    - gf_sg_vrml_is_sf_field
    - gf_list_get
    - gf_node_register
    - gf_node_unregister
    - gf_sg_find_proto
    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_count
    - gf_node_get_field
    - gf_bifs_enc_field
    - gf_node_get_id
    - gf_bs_write_int
    - GF_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_get_bit_size
    - gf_list_get
    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_count
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bifs_enc_field
    - gf_node_get_id
    - gf_bs_write_int
    - GF_BIFS_WRITE_INT
    - gf_get_bit_size
    - gf_list_get
    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_count
    - gf_node_unregister
    - gf_node_register
    - gf_list_get
    - gf_bifs_enc_node
    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_GlobalQuantizer
    - gf_node_get_id
    - BE_MultipleReplace
    - GF_BIFS_WRITE_INT
    - BE_MultipleIndexedReplace
    - BE_EncProtoList
    - BE_EncProtoDelete
    - BE_XReplace
    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_count
    - gf_node_get_id
    - gf_bifs_get_child_table
    - GF_BIFS_WRITE_INT
    - gf_list_get
    - gf_bifs_enc_node
    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_count
    - gf_node_get_field
    - gf_bifs_enc_node
    - gf_node_get_id
    - gf_bifs_enc_sf_field
    - GF_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_list_get
    - memcpy
    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_count
    - gf_node_get_id
    - GF_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_get_bit_size
    - gf_list_get
    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_count
    - gf_node_get_id
    - GF_BIFS_WRITE_INT
    - gf_list_get
    - gf_bifs_enc_node
    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_count
    - gf_node_get_field
    - gf_bifs_enc_field
    - gf_node_get_id
    - GF_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_list_get
    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_count
    - gf_node_get_field
    - gf_node_get_id
    - gf_bifs_enc_sf_field
    - GF_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_list_get
    - gf_bifs_enc_node
    - memcpy
    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_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_bifs_enc_name
    - gf_bifs_enc_find_node
    - gf_get_bit_size
    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_count
    - gf_sg_proto_get_field_count
    - gf_sg_proto_field_find
    - gf_bifs_enc_mf_field
    - gf_bifs_enc_sf_field
    - GF_BIFS_WRITE_INT
    - BE_EncProtoList
    - gf_bifs_enc_name
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_list_get
    - memset
    - gf_bifs_enc_node
    - gf_sg_proto_field_get_field
    - gf_bifs_enc_route
    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_node_get_id
    - GF_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_bifs_enc_name
    - gf_get_bit_size
    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_count
    - GF_BIFS_WRITE_INT
    - BE_EncProtoList
    - gf_get_bit_size
    - gf_list_get
    - gf_bifs_enc_node
    - 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_count
    - GF_BIFS_WRITE_INT
    - BE_EncProtoList
    - gf_get_bit_size
    - gf_list_get
    - gf_bifs_enc_node
    - 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_list_count
    - gf_bifs_enc_qp_remove
    - BE_NodeInsert
    - GF_SAFEALLOC
    - gf_list_add
    - GF_BIFS_WRITE_INT
    - gf_list_get
    - BE_NodeReplace
    - gf_node_get_id
    - BE_IndexDelete
    - gf_list_new
    - BE_IndexInsert
    - BE_SceneReplaceEx
    - gf_free
    - GF_LOG
    - gf_list_del
    - BE_FieldReplace
    - BE_RouteReplace
    - BE_IndexFieldReplace
    - BE_ExtendedUpdate
    - gf_sg_find_node
    - 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_del
    - gf_bs_get_content
    - GF_BIFS_WRITE_INT
    - gf_bs_new
    - gf_list_new
    - gf_bs_del
    - gf_list_get
    - BE_SceneReplace
    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_node_get_private
    - gf_free
    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_private
    - gf_node_get_tag
    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_node_get_scene_time
    - gf_free
    - gf_node_event_out
    - gf_node_get_private
    - gf_bifs_dec_command
    - gf_bs_new
    - gf_bs_del
    - gf_node_get_graph
    - gf_node_register
    - gf_node_unregister
    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_malloc
    - gf_node_set_private
    - gf_list_get
    - gf_node_set_callback_function
    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_list_insert
    - gf_node_get_tag
    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_rem
    - gf_list_get
    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:
    - FIX2FLT
    - FLT2FIX
    - gf_floor
    - FIX2INT
    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:
    - gf_divfix
    - gf_bs_write_int
    - INT2FIX
    - Q_Quantize
    - ABS
    - gf_mulfix
    - gf_atan2
    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_enc_qp14_get_bits
    - Q_EncNormal
    - Q_EncInt
    - Q_IsTypeOn
    - gf_bifs_get_aq_info
    - Q_EncRotation
    - Q_EncFloat
    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:74,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/script_dec.c:75,1
    - Dst: gf_realloc
      Src: /src/gpac/src/bifs/script_dec.c:78,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/bifs/script_dec.c:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - parser
    - str
    argTypes:
    - ScriptParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 81
    functionName: SFS_AddString
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - gf_strlcat
    - strlen
    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:86,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - parser
    - val
    argTypes:
    - ScriptParser*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 83
    functionDepth: 2
    functionLinenumber: 83
    functionLinenumberEnd: 88
    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:92,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - parser
    - c
    argTypes:
    - ScriptParser*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 89
    functionDepth: 2
    functionLinenumber: 89
    functionLinenumberEnd: 94
    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:105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:106,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/script_dec.c:107,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/bifs/script_dec.c:108,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_dec.c:112,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_dec.c:112,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:115,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/script_dec.c:117,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_dec.c:118,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:119,1
    - Dst: gf_sg_script_field_get_info
      Src: /src/gpac/src/bifs/script_dec.c:120,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/bifs/script_dec.c:122,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:128,1
    - Dst: gf_sg_script_field_get_info
      Src: /src/gpac/src/bifs/script_dec.c:129,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/script_dec.c:131,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 136
    functionName: ParseScriptField
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_field_set_ised
    - gf_sg_script_field_get_info
    - gf_sg_proto_get_field_count
    - gf_bifs_dec_field
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_script_field_new
    - gf_bifs_dec_name
    - gf_strdup
    - gf_list_add
    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: 140
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 140
    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: 143
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 143
    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:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - pars
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 2
    functionLinenumber: 144
    functionLinenumberEnd: 146
    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:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - pars
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 153
    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:157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 154
    functionDepth: 2
    functionLinenumber: 154
    functionLinenumberEnd: 159
    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:169,1
    - Dst: memset
      Src: /src/gpac/src/bifs/script_dec.c:171,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/script_dec.c:176,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/script_dec.c:178,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:184,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:186,1
    - Dst: ParseScriptField
      Src: /src/gpac/src/bifs/script_dec.c:187,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:191,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:192,1
    - Dst: ParseScriptField
      Src: /src/gpac/src/bifs/script_dec.c:194,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:199,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:201,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:202,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:205,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:206,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:207,1
    - Dst: SFS_Arguments
      Src: /src/gpac/src/bifs/script_dec.c:208,1
    - Dst: SFS_Space
      Src: /src/gpac/src/bifs/script_dec.c:209,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:210,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:211,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:218,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_dec.c:220,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_dec.c:221,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/script_dec.c:225,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_dec.c:226,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_dec.c:227,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/script_dec.c:228,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/script_dec.c:230,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/script_dec.c:231,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: 233
      start: 162
    functionDepth: 3
    functionLinenumber: 162
    functionLinenumberEnd: 233
    functionName: SFScript_Parse
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - SFS_Arguments
    - gf_malloc
    - ParseScriptField
    - SFS_Space
    - SFS_AddString
    - SFS_StatementBlock
    - SFS_Line
    - gf_free
    - gf_list_get
    - gf_list_del
    - gf_bs_read_int
    - SFS_Identifier
    - gf_list_new
    - gf_strdup
    - memset
    - gf_list_rem
    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:245,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:246,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/script_dec.c:246,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/script_dec.c:246,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:247,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/script_dec.c:247,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/script_dec.c:251,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/script_dec.c:252,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/script_dec.c:252,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 255
    functionName: SFS_Identifier
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - SFS_AddString
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_bifs_dec_name
    - gf_list_get
    - gf_strdup
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void SFS_Identifier(ScriptParser *parser)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:261,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:263,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:265,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:266,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:267,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:269,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - parser
    - is_var
    argTypes:
    - ScriptParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 257
    functionDepth: 3
    functionLinenumber: 257
    functionLinenumberEnd: 270
    functionName: SFS_Arguments
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int
    - SFS_Identifier
    - 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:276,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:277,1
    - Dst: SFS_IncIndent
      Src: /src/gpac/src/bifs/script_dec.c:278,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:280,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:281,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:282,1
    - Dst: SFS_Statement
      Src: /src/gpac/src/bifs/script_dec.c:283,1
    - Dst: SFS_DecIndent
      Src: /src/gpac/src/bifs/script_dec.c:285,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:286,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:287,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:288,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:290,1
    - Dst: SFS_Statement
      Src: /src/gpac/src/bifs/script_dec.c:291,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:294,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - parser
    - funcBody
    argTypes:
    - ScriptParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 296
    functionName: SFS_StatementBlock
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Indent
    - SFS_Line
    - SFS_AddString
    - SFS_DecIndent
    - SFS_Statement
    - gf_bs_read_int
    - 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:304,1
    - Dst: SFS_IfStatement
      Src: /src/gpac/src/bifs/script_dec.c:307,1
    - Dst: SFS_ForStatement
      Src: /src/gpac/src/bifs/script_dec.c:310,1
    - Dst: SFS_WhileStatement
      Src: /src/gpac/src/bifs/script_dec.c:313,1
    - Dst: SFS_ReturnStatement
      Src: /src/gpac/src/bifs/script_dec.c:316,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:319,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:322,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:325,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:326,1
    - Dst: SFS_SwitchStatement
      Src: /src/gpac/src/bifs/script_dec.c:329,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 299
    functionDepth: 2
    functionLinenumber: 299
    functionLinenumberEnd: 332
    functionName: SFS_Statement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_AddString
    - SFS_CompoundExpression
    - gf_bs_read_int
    - SFS_ForStatement
    - SFS_ReturnStatement
    - SFS_SwitchStatement
    - SFS_IfStatement
    - SFS_WhileStatement
    linkageType: ''
    returnType: void
    signature: void SFS_Statement(ScriptParser *parser)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:337,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:338,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:339,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:340,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:342,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:343,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:344,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:345,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 334
    functionDepth: 4
    functionLinenumber: 334
    functionLinenumberEnd: 348
    functionName: SFS_IfStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Indent
    - SFS_Line
    - SFS_StatementBlock
    - SFS_AddString
    - SFS_CompoundExpression
    - gf_bs_read_int
    linkageType: ''
    returnType: void
    signature: void SFS_IfStatement(ScriptParser *parser)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/script_dec.c:355,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:359,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:360,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:361,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:362,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:363,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:365,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:367,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:368,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:369,1
    - Dst: SFS_AddInt
      Src: /src/gpac/src/bifs/script_dec.c:370,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:371,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:372,1
    - Dst: SFS_Indent
      Src: /src/gpac/src/bifs/script_dec.c:373,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:374,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:375,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:377,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:380,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:381,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:382,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:383,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:385,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 350
    functionDepth: 4
    functionLinenumber: 350
    functionLinenumberEnd: 386
    functionName: SFS_SwitchStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Indent
    - SFS_Line
    - SFS_StatementBlock
    - SFS_AddString
    - SFS_CompoundExpression
    - gf_bs_read_int
    - SFS_AddInt
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void SFS_SwitchStatement(ScriptParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - 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_OptionalExpression
      Src: /src/gpac/src/bifs/script_dec.c:396,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:397,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:399,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 388
    functionDepth: 4
    functionLinenumber: 388
    functionLinenumberEnd: 400
    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:405,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:406,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:407,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 402
    functionDepth: 4
    functionLinenumber: 402
    functionLinenumberEnd: 410
    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:415,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:416,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:417,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:418,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:420,1
    - Dst: SFS_Line
      Src: /src/gpac/src/bifs/script_dec.c:421,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 412
    functionDepth: 3
    functionLinenumber: 412
    functionLinenumberEnd: 422
    functionName: SFS_ReturnStatement
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_CompoundExpression
    - gf_bs_read_int
    - SFS_Line
    - 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:427,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:428,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:430,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:431,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 424
    functionDepth: 2
    functionLinenumber: 424
    functionLinenumberEnd: 432
    functionName: SFS_CompoundExpression
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 6
    functionsReached:
    - SFS_CompoundExpression
    - gf_bs_read_int
    - SFS_Expression
    - 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:437,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:438,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 434
    functionDepth: 3
    functionLinenumber: 434
    functionLinenumberEnd: 440
    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: 56
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/script_dec.c:445,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:449,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/script_dec.c:455,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:462,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:463,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:464,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:467,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:468,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:471,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:472,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:475,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:476,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:479,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:480,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:483,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:484,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:487,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:488,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:495,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:496,1
    - Dst: SFS_Expression
      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_Expression
      Src: /src/gpac/src/bifs/script_dec.c:499,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:502,1
    - Dst: SFS_GetString
      Src: /src/gpac/src/bifs/script_dec.c:503,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:504,1
    - Dst: SFS_GetNumber
      Src: /src/gpac/src/bifs/script_dec.c:507,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:510,1
    - Dst: SFS_FunctionCall
      Src: /src/gpac/src/bifs/script_dec.c:513,1
    - Dst: SFS_NewObject
      Src: /src/gpac/src/bifs/script_dec.c:516,1
    - Dst: SFS_ObjectMemberAccess
      Src: /src/gpac/src/bifs/script_dec.c:519,1
    - Dst: SFS_ObjectMethodCall
      Src: /src/gpac/src/bifs/script_dec.c:522,1
    - Dst: SFS_ArrayDeref
      Src: /src/gpac/src/bifs/script_dec.c:525,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:529,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:530,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:531,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:534,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:535,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:536,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:539,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:540,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:541,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:544,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:545,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:546,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:549,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:550,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:551,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:554,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:555,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:556,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:559,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:560,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:561,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:564,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:565,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:566,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:569,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:570,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:571,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:574,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:575,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:576,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:579,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:580,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:581,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:584,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:585,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:586,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:589,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:590,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:591,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:594,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:595,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:596,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:599,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:600,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:601,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:604,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:605,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:606,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:609,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:610,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:611,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:614,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:615,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:616,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:619,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:620,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:621,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:624,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:625,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:626,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:629,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:630,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:631,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:634,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:635,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:636,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:639,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:640,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:641,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:644,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:645,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:646,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:649,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:650,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:651,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:654,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:655,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:656,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:659,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:660,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:661,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:664,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:665,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:666,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:669,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:670,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:671,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:674,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:675,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:676,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:679,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:680,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:681,1
    - Dst: SFS_GetBoolean
      Src: /src/gpac/src/bifs/script_dec.c:684,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:687,1
    - Dst: SFS_Arguments
      Src: /src/gpac/src/bifs/script_dec.c:688,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:691,1
    - Dst: SFS_Arguments
      Src: /src/gpac/src/bifs/script_dec.c:692,1
    - Dst: SFS_StatementBlock
      Src: /src/gpac/src/bifs/script_dec.c:693,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 251
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 443
    functionDepth: 4
    functionLinenumber: 443
    functionLinenumberEnd: 700
    functionName: SFS_Expression
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 2
    functionsReached:
    - SFS_NewObject
    - SFS_ObjectMethodCall
    - SFS_Arguments
    - SFS_StatementBlock
    - SFS_AddString
    - GF_LOG
    - SFS_GetNumber
    - SFS_CompoundExpression
    - SFS_ObjectMemberAccess
    - gf_bs_read_int
    - SFS_GetString
    - SFS_Identifier
    - SFS_FunctionCall
    - SFS_ArrayDeref
    - SFS_GetBoolean
    - gf_bs_available
    - SFS_Expression
    linkageType: ''
    returnType: void
    signature: void SFS_Expression(ScriptParser *parser)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:705,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:706,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:707,1
    - Dst: SFS_Params
      Src: /src/gpac/src/bifs/script_dec.c:708,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:709,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 702
    functionDepth: 3
    functionLinenumber: 702
    functionLinenumberEnd: 710
    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:715,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:717,1
    - Dst: SFS_CompoundExpression
      Src: /src/gpac/src/bifs/script_dec.c:718,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:719,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 712
    functionDepth: 5
    functionLinenumber: 712
    functionLinenumberEnd: 720
    functionName: SFS_ArrayDeref
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_CompoundExpression
    - SFS_Expression
    - 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:725,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:726,1
    - Dst: SFS_Params
      Src: /src/gpac/src/bifs/script_dec.c:727,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:728,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 722
    functionDepth: 3
    functionLinenumber: 722
    functionLinenumberEnd: 729
    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:734,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:736,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:737,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 731
    functionDepth: 5
    functionLinenumber: 731
    functionLinenumberEnd: 738
    functionName: SFS_ObjectMemberAccess
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Identifier
    - SFS_Expression
    - 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:744,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:746,1
    - Dst: SFS_Identifier
      Src: /src/gpac/src/bifs/script_dec.c:747,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:748,1
    - Dst: SFS_Params
      Src: /src/gpac/src/bifs/script_dec.c:749,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:750,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 741
    functionDepth: 5
    functionLinenumber: 741
    functionLinenumberEnd: 751
    functionName: SFS_ObjectMethodCall
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_Identifier
    - SFS_Expression
    - 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:757,1
    - Dst: SFS_Expression
      Src: /src/gpac/src/bifs/script_dec.c:759,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:761,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:762,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 753
    functionDepth: 5
    functionLinenumber: 753
    functionLinenumberEnd: 764
    functionName: SFS_Params
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 3
    functionsReached:
    - gf_bs_read_int
    - SFS_Expression
    - SFS_AddString
    linkageType: ''
    returnType: void
    signature: void SFS_Params(ScriptParser *parser)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/script_dec.c:771,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:776,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:777,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:778,1
    - Dst: SFS_AddInt
      Src: /src/gpac/src/bifs/script_dec.c:779,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:783,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:786,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:788,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:790,1
    - Dst: SFS_AddChar
      Src: /src/gpac/src/bifs/script_dec.c:792,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/script_dec.c:794,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/script_dec.c:798,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 766
    functionDepth: 3
    functionLinenumber: 766
    functionLinenumberEnd: 800
    functionName: SFS_GetNumber
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_AddChar
    - gf_bs_read_int
    - SFS_AddInt
    - gf_bs_available
    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:806,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:807,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 802
    functionDepth: 2
    functionLinenumber: 802
    functionLinenumberEnd: 808
    functionName: SFS_GetString
    functionSourceFile: /src/gpac/src/bifs/script_dec.c
    functionUses: 1
    functionsReached:
    - SFS_AddString
    - gf_bifs_dec_name
    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:813,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:814,1
    - Dst: SFS_AddString
      Src: /src/gpac/src/bifs/script_dec.c:816,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - ScriptParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 810
    functionDepth: 2
    functionLinenumber: 810
    functionLinenumberEnd: 818
    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: 57
    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:170,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:171,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:175,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/bifs/com_dec.c:185,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:188,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:190,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/bifs/com_dec.c:194,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:197,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:200,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:203,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:217,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:223,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:225,1
    - Dst: gf_malloc
      Src: /src/gpac/src/bifs/com_dec.c:239,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:247,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/com_dec.c:252,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/bifs/com_dec.c:255,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/bifs/com_dec.c:260,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:265,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/com_dec.c:266,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/bifs/com_dec.c:272,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/com_dec.c:274,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:278,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 199
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 280
    functionName: BD_XReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bifs_get_field_index
    - gf_sg_vrml_mf_alloc
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_field_clone
    - gf_node_unregister
    - FIX2FLT
    - gf_malloc
    - gf_bifs_dec_field
    - gf_sg_vrml_mf_get_item
    - gf_bifs_check_field_change
    - gf_node_replace_child
    - memcpy
    - gf_sg_vrml_field_copy
    - gf_node_get_field
    - gf_bs_read_int
    - gf_get_bit_size
    - floor
    - gf_node_get_num_fields_in_mode
    - gf_sg_find_node
    - gf_node_register
    - gf_sg_vrml_get_sf_type
    - gf_node_list_get_child
    - gf_sg_vrml_mf_reset
    - gf_node_unregister_children
    - gf_bifs_dec_sf_field
    - gf_bifs_dec_node
    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:287,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:289,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:291,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/com_dec.c:292,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/bifs/com_dec.c:293,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:294,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:297,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:298,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:300,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/com_dec.c:301,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/bifs/com_dec.c:302,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 307
    functionName: BD_DecProtoDelete
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_sg_find_proto
    - gf_sg_proto_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecProtoDelete(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:317,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:318,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:320,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:320,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:321,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:322,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:324,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:325,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:327,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:328,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:329,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:336,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:338,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:340,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/bifs/com_dec.c:343,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:345,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:349,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:353,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:354,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:357,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:363,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:365,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:369,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 53
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 371
    functionName: BD_DecMultipleIndexReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bifs_dec_node
    - gf_sg_vrml_mf_get_item
    - gf_node_unregister
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_node_register
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_get_sf_type
    - gf_bifs_check_field_change
    - gf_node_replace_child
    - gf_bifs_dec_sf_field
    - memcpy
    - gf_sg_find_node
    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:379,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:380,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:383,1
    - Dst: gf_bifs_dec_node_mask
      Src: /src/gpac/src/bifs/com_dec.c:385,1
    - Dst: gf_bifs_dec_node_list
      Src: /src/gpac/src/bifs/com_dec.c:387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 390
    functionName: BD_DecMultipleReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_node_list
    - gf_bs_read_int
    - gf_sg_find_node
    - gf_bifs_dec_node_mask
    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:396,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:400,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/com_dec.c:405,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:407,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:408,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:415,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 419
    functionName: BD_DecGlobalQuantizer
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_unregister
    - gf_node_register
    - gf_bifs_dec_node
    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:425,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:426,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/bifs/com_dec.c:428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 429
    functionName: BD_DecNodeDeleteEx
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_replace
    - gf_bs_read_int
    - gf_sg_find_node
    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:442,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:443,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:445,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:445,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:446,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:447,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:449,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:455,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:456,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:463,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:481,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:482,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:487,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:488,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:490,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:490,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:491,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:492,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:494,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:500,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:501,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:508,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:526,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:527,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/bifs/com_dec.c:532,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 89
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 432
    functionDepth: 1
    functionLinenumber: 432
    functionLinenumberEnd: 534
    functionName: BD_DecOperandReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_sg_vrml_field_copy
    - gf_sg_vrml_mf_get_item
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_sg_find_node
    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:541,1
    - Dst: gf_bifs_dec_proto_list
      Src: /src/gpac/src/bifs/com_dec.c:544,1
    - Dst: BD_DecProtoDelete
      Src: /src/gpac/src/bifs/com_dec.c:546,1
    - Dst: gf_sg_delete_all_protos
      Src: /src/gpac/src/bifs/com_dec.c:548,1
    - Dst: BD_DecMultipleIndexReplace
      Src: /src/gpac/src/bifs/com_dec.c:550,1
    - Dst: BD_DecMultipleReplace
      Src: /src/gpac/src/bifs/com_dec.c:552,1
    - Dst: BD_DecGlobalQuantizer
      Src: /src/gpac/src/bifs/com_dec.c:554,1
    - Dst: BD_DecNodeDeleteEx
      Src: /src/gpac/src/bifs/com_dec.c:556,1
    - Dst: BD_XReplace
      Src: /src/gpac/src/bifs/com_dec.c:558,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 537
    functionDepth: 2
    functionLinenumber: 537
    functionLinenumberEnd: 562
    functionName: BD_DecExtendedUpdate
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - BD_DecProtoDelete
    - BD_XReplace
    - BD_DecMultipleIndexReplace
    - gf_bifs_dec_proto_list
    - BD_DecMultipleReplace
    - gf_sg_delete_all_protos
    - BD_DecNodeDeleteEx
    - BD_DecGlobalQuantizer
    - gf_bs_read_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecExtendedUpdate(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:572,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:573,1
    - Dst: gf_bifs_get_child_table
      Src: /src/gpac/src/bifs/com_dec.c:576,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:579,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:582,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:595,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/bifs/com_dec.c:599,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:601,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:602,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:607,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/bifs/com_dec.c:609,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/bifs/com_dec.c:613,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/bifs/com_dec.c:615,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:616,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:619,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:621,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 624
    functionName: BD_DecNodeInsert
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_sg_find_node
    - gf_bifs_get_child_table
    - gf_node_insert_child
    - gf_node_list_del_child
    - gf_bs_read_int
    - gf_node_register
    - gf_bifs_check_field_change
    - gf_node_get_field_by_name
    - gf_node_unregister
    - gf_bifs_dec_node
    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:637,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:638,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:641,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:641,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:642,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:644,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:647,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:650,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:662,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:664,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:666,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:667,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:671,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:674,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/bifs/com_dec.c:678,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/bifs/com_dec.c:680,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:683,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/bifs/com_dec.c:686,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/bifs/com_dec.c:689,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:692,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:693,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 57
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 627
    functionDepth: 1
    functionLinenumber: 627
    functionLinenumberEnd: 696
    functionName: BD_DecIndexInsert
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bifs_dec_node
    - gf_node_list_insert_child
    - gf_bs_read_int
    - gf_sg_vrml_mf_append
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_node_register
    - gf_node_list_add_child
    - gf_bifs_check_field_change
    - gf_sg_vrml_mf_insert
    - memcpy
    - gf_bifs_dec_sf_field
    - gf_sg_find_node
    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:703,1
    - Dst: BD_DecNodeInsert
      Src: /src/gpac/src/bifs/com_dec.c:706,1
    - Dst: BD_DecExtendedUpdate
      Src: /src/gpac/src/bifs/com_dec.c:709,1
    - Dst: BD_DecIndexInsert
      Src: /src/gpac/src/bifs/com_dec.c:711,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:713,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 699
    functionDepth: 3
    functionLinenumber: 699
    functionLinenumberEnd: 717
    functionName: BD_DecInsert
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - BD_DecNodeInsert
    - gf_bifs_dec_route
    - BD_DecExtendedUpdate
    - gf_bs_read_int
    - 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:729,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:730,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:733,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:733,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:734,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:736,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:739,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:750,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:752,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:754,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:756,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/bifs/com_dec.c:762,1
    - Dst: gf_sg_vrml_mf_remove
      Src: /src/gpac/src/bifs/com_dec.c:765,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:768,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 720
    functionDepth: 1
    functionLinenumber: 720
    functionLinenumberEnd: 771
    functionName: BD_DecIndexDelete
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_sg_vrml_mf_remove
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_bifs_check_field_change
    - gf_node_replace_child
    - gf_sg_find_node
    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:779,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:782,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:783,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/bifs/com_dec.c:790,1
    - Dst: BD_DecIndexDelete
      Src: /src/gpac/src/bifs/com_dec.c:792,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:794,1
    - Dst: gf_sg_route_del_by_id
      Src: /src/gpac/src/bifs/com_dec.c:796,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 773
    functionDepth: 2
    functionLinenumber: 773
    functionLinenumberEnd: 802
    functionName: BD_DecDelete
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_replace
    - BD_DecIndexDelete
    - gf_sg_route_del_by_id
    - gf_bs_read_int
    - gf_sg_find_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecDelete(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:811,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:813,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:817,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/bifs/com_dec.c:821,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 805
    functionDepth: 1
    functionLinenumber: 805
    functionLinenumberEnd: 825
    functionName: BD_DecNodeReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_replace
    - gf_bs_read_int
    - gf_bifs_dec_node
    - gf_sg_find_node
    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:835,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:836,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:838,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:838,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:839,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:840,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:843,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:853,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/com_dec.c:854,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/com_dec.c:860,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/bifs/com_dec.c:864,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:866,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 827
    functionDepth: 1
    functionLinenumber: 827
    functionLinenumberEnd: 868
    functionName: BD_DecFieldReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bifs_dec_field
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_sg_vrml_is_sf_field
    - gf_bifs_check_field_change
    - gf_sg_vrml_mf_reset
    - gf_node_unregister_children
    - gf_sg_find_node
    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:880,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:882,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:884,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:884,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:885,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:886,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/com_dec.c:889,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:891,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:893,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:896,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:911,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:917,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/bifs/com_dec.c:921,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:922,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:923,1
    - Dst: memcpy
      Src: /src/gpac/src/bifs/com_dec.c:927,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:928,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/com_dec.c:935,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:937,1
    - Dst: gf_bifs_check_field_change
      Src: /src/gpac/src/bifs/com_dec.c:938,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 63
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 870
    functionDepth: 1
    functionLinenumber: 870
    functionLinenumberEnd: 943
    functionName: BD_DecIndexValueReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_bifs_dec_node
    - gf_sg_vrml_mf_get_item
    - gf_node_unregister
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_node_register
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_get_sf_type
    - gf_bifs_check_field_change
    - gf_node_replace_child
    - gf_bifs_dec_sf_field
    - memcpy
    - gf_sg_find_node
    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:953,1
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/bifs/com_dec.c:955,1
    - Dst: gf_sg_route_get_name
      Src: /src/gpac/src/bifs/com_dec.c:958,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/bifs/com_dec.c:959,1
    - Dst: gf_sg_route_get_name
      Src: /src/gpac/src/bifs/com_dec.c:963,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/bifs/com_dec.c:968,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:971,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:972,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:974,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:974,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:975,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:976,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:980,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:981,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:983,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:983,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:984,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:985,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/bifs/com_dec.c:990,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/com_dec.c:1001,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/com_dec.c:1005,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/com_dec.c:1008,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/bifs/com_dec.c:1010,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/bifs/com_dec.c:1012,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/bifs/com_dec.c:1013,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 60
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 945
    functionDepth: 1
    functionLinenumber: 945
    functionLinenumberEnd: 1016
    functionName: BD_DecRouteReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_sg_route_set_name
    - gf_sg_route_find
    - gf_sg_route_new
    - gf_sg_route_del
    - gf_list_del_item
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_get_bit_size
    - gf_list_new
    - gf_list_add
    - gf_sg_route_set_id
    - gf_sg_route_get_name
    - gf_sg_find_node
    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:1022,1
    - Dst: BD_DecNodeReplace
      Src: /src/gpac/src/bifs/com_dec.c:1025,1
    - Dst: BD_DecFieldReplace
      Src: /src/gpac/src/bifs/com_dec.c:1027,1
    - Dst: BD_DecIndexValueReplace
      Src: /src/gpac/src/bifs/com_dec.c:1029,1
    - Dst: BD_DecRouteReplace
      Src: /src/gpac/src/bifs/com_dec.c:1031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1034
      start: 1019
    functionDepth: 2
    functionLinenumber: 1019
    functionLinenumberEnd: 1034
    functionName: BD_DecReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 0
    functionsReached:
    - BD_DecIndexValueReplace
    - BD_DecRouteReplace
    - gf_bs_read_int
    - BD_DecNodeReplace
    - BD_DecFieldReplace
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_DecReplace(GF_BifsDecoder * codec, GF_BitStream *bs)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1062,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1068,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/com_dec.c:1071,1
    - Dst: sprintf
      Src: /src/gpac/src/bifs/com_dec.c:1073,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1073,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/bifs/com_dec.c:1076,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/com_dec.c:1081,1
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/bifs/com_dec.c:1085,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1089,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1091,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1092,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/com_dec.c:1095,1
    - Dst: sprintf
      Src: /src/gpac/src/bifs/com_dec.c:1097,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/bifs/com_dec.c:1101,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/bifs/com_dec.c:1104,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1110,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1111,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/com_dec.c:1117,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1123,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1125,1
    - Dst: BD_DecMFFieldList
      Src: /src/gpac/src/bifs/com_dec.c:1126,1
    - Dst: BD_DecMFFieldVec
      Src: /src/gpac/src/bifs/com_dec.c:1128,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1137,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1142,1
    - Dst: memset
      Src: /src/gpac/src/bifs/com_dec.c:1146,1
    - Dst: gf_sg_proto_get_extern_url
      Src: /src/gpac/src/bifs/com_dec.c:1147,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/com_dec.c:1154,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1160,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1163,1
    - Dst: BD_DecMFFieldList
      Src: /src/gpac/src/bifs/com_dec.c:1165,1
    - Dst: BD_DecMFFieldVec
      Src: /src/gpac/src/bifs/com_dec.c:1167,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/com_dec.c:1177,1
    - Dst: gf_bifs_dec_proto_list
      Src: /src/gpac/src/bifs/com_dec.c:1180,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1182,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:1191,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1195,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1199,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:1203,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1205,1
    - Dst: gf_bifs_flush_command_list
      Src: /src/gpac/src/bifs/com_dec.c:1210,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/bifs/com_dec.c:1212,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1213,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/com_dec.c:1216,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1220,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1222,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1226,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1228,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1232,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1233,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1235,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1246,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1247,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/com_dec.c:1249,1
    - Dst: gf_sg_proto_field_find
      Src: /src/gpac/src/bifs/com_dec.c:1251,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/bifs/com_dec.c:1252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1256,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1259,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1261,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/com_dec.c:1265,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/com_dec.c:1277,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1280,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/bifs/com_dec.c:1282,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/com_dec.c:1285,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/bifs/com_dec.c:1290,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/bifs/com_dec.c:1292,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/bifs/com_dec.c:1293,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1298,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1300,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1308,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/bifs/com_dec.c:1314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1317,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/bifs/com_dec.c:1320,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:1321,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/com_dec.c:1322,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/bifs/com_dec.c:1326,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 226
    argCount: 3
    argNames:
    - codec
    - bs
    - proto_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1333
      start: 1039
    functionDepth: 7
    functionLinenumber: 1039
    functionLinenumberEnd: 1333
    functionName: gf_bifs_dec_proto_list
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 3
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - gf_list_count
    - gf_bifs_dec_route
    - gf_sg_vrml_field_pointer_del
    - gf_sg_proto_field_find
    - BD_DecMFFieldList
    - gf_sg_vrml_is_sf_field
    - gf_sg_proto_new
    - gf_list_add
    - gf_node_unregister
    - gf_sg_proto_field_get_field
    - gf_sg_proto_get_field_count
    - gf_sg_proto_get_graph
    - gf_sg_proto_get_extern_url
    - gf_bifs_flush_command_list
    - gf_bifs_dec_proto_list
    - gf_sg_proto_field_new
    - BD_DecMFFieldVec
    - gf_bs_read_int
    - gf_list_new
    - gf_bifs_dec_name
    - gf_list_pop_back
    - gf_sg_proto_add_node_code
    - sprintf
    - gf_bifs_proto_field_set_aq_info
    - gf_free
    - GF_LOG
    - gf_list_del_item
    - command_buffers_del
    - gf_node_register
    - gf_sg_vrml_get_sf_type
    - memset
    - gf_bifs_dec_sf_field
    - gf_bifs_dec_node
    - gf_sg_proto_del
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_proto_list(GF_BifsDecoder * codec, GF_BitStream
      *bs, GF_List *proto_list)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/com_dec.c:1345,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1352,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1355,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/com_dec.c:1356,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1359,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:1360,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:1363,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:1364,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1365,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:1366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1370,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/com_dec.c:1371,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/com_dec.c:1374,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/com_dec.c:1375,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1376,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/com_dec.c:1377,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/bifs/com_dec.c:1380,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/bifs/com_dec.c:1383,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/bifs/com_dec.c:1384,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - codec
    - bs
    - is_insert
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1337
    functionDepth: 2
    functionLinenumber: 1337
    functionLinenumberEnd: 1387
    functionName: gf_bifs_dec_route
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 2
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_sg_route_set_name
    - gf_sg_route_new
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_bifs_dec_name
    - gf_sg_route_set_id
    - gf_bs_available
    - gf_sg_find_node
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bifs_dec_route(GF_BifsDecoder * codec, GF_BitStream *bs,
      Bool is_insert)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1399,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/com_dec.c:1400,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:1401,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/com_dec.c:1402,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/com_dec.c:1403,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/bifs/com_dec.c:1405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1411,1
    - Dst: gf_bifs_dec_proto_list
      Src: /src/gpac/src/bifs/com_dec.c:1413,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/com_dec.c:1419,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/com_dec.c:1426,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/com_dec.c:1431,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/bifs/com_dec.c:1433,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1436,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1440,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1444,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1446,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1450,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1451,1
    - Dst: gf_bifs_dec_route
      Src: /src/gpac/src/bifs/com_dec.c:1453,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 58
    argCount: 3
    argNames:
    - codec
    - bs
    - proto_list
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1390
    functionDepth: 8
    functionLinenumber: 1390
    functionLinenumberEnd: 1461
    functionName: BD_DecSceneReplace
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_bifs_dec_route
    - gf_free
    - gf_bifs_dec_proto_list
    - gf_sg_set_root_node
    - gf_sg_reset
    - gf_bs_read_int
    - gf_node_register
    - gf_list_get
    - gf_node_unregister
    - gf_bifs_dec_node
    - gf_list_rem
    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:1471,1
    - Dst: BD_DecInsert
      Src: /src/gpac/src/bifs/com_dec.c:1474,1
    - Dst: BD_DecDelete
      Src: /src/gpac/src/bifs/com_dec.c:1477,1
    - Dst: BD_DecReplace
      Src: /src/gpac/src/bifs/com_dec.c:1480,1
    - Dst: BD_DecSceneReplace
      Src: /src/gpac/src/bifs/com_dec.c:1483,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/com_dec.c:1487,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/com_dec.c:1490,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/com_dec.c:1491,1
    - Dst: gf_bifs_flush_command_list
      Src: /src/gpac/src/bifs/com_dec.c:1493,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - codec
    - bs
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1496
      start: 1463
    functionDepth: 9
    functionLinenumber: 1463
    functionLinenumberEnd: 1496
    functionName: gf_bifs_dec_command
    functionSourceFile: /src/gpac/src/bifs/com_dec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_bifs_dec_qp_remove
    - BD_DecSceneReplace
    - BD_DecDelete
    - gf_bs_read_int
    - BD_DecReplace
    - gf_bifs_flush_command_list
    - BD_DecInsert
    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_bs_get_position
    - gf_bs_align
    - gf_list_del
    - gf_bs_get_size
    - gf_bs_read_int
    - gf_list_new
    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_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:85,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:86,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - info
    argTypes:
    - BIFSStreamInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 87
    functionName: bifs_info_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_last
    - gf_free
    - 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:93,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:97,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:102,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 109
    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_SAFEALLOC
    - gf_list_new
    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:120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 112
    functionDepth: 1
    functionLinenumber: 112
    functionLinenumberEnd: 124
    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:138,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:143,1
    - Dst: gf_bifs_dec_get_stream
      Src: /src/gpac/src/bifs/bifs_codec.c:146,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:149,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:153,1
    - Dst: ParseConfig
      Src: /src/gpac/src/bifs/bifs_codec.c:158,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/bifs/bifs_codec.c:162,1
    - Dst: ParseConfig
      Src: /src/gpac/src/bifs/bifs_codec.c:164,1
    - Dst: bifs_info_del
      Src: /src/gpac/src/bifs/bifs_codec.c:169,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:170,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:173,1
    - Dst: gf_assert
      Src: /src/gpac/src/bifs/bifs_codec.c:175,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:177,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/bifs/bifs_codec.c:178,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:182,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: 184
      start: 126
    functionDepth: 2
    functionLinenumber: 126
    functionLinenumberEnd: 184
    functionName: gf_bifs_decoder_configure_stream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_bs_new
    - gf_bifs_dec_get_stream
    - bifs_info_del
    - GF_SAFEALLOC
    - gf_bs_del
    - ParseConfig
    - gf_bs_seek
    - gf_list_add
    - gf_sg_set_scene_size_info
    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: 193
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 193
    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:202,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:204,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:205,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsDecoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 210
    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:216,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:217,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/bifs_codec.c:218,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:219,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:220,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - command_buffers
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 214
    functionDepth: 1
    functionLinenumber: 214
    functionLinenumberEnd: 223
    functionName: command_buffers_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_node_unregister
    - 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:228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:228,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:233,1
    - Dst: bifs_info_del
      Src: /src/gpac/src/bifs/bifs_codec.c:234,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:235,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:237,1
    - Dst: command_buffers_del
      Src: /src/gpac/src/bifs/bifs_codec.c:239,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 242
    functionName: gf_bifs_decoder_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_assert
    - bifs_info_del
    - command_buffers_del
    - gf_list_get
    - gf_list_rem
    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: 248
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 248
    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: 256
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 256
    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:267,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:275,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/bifs/bifs_codec.c:277,1
    - Dst: gf_bifs_dec_command
      Src: /src/gpac/src/bifs/bifs_codec.c:282,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:284,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: 289
      start: 258
    functionDepth: 10
    functionLinenumber: 258
    functionLinenumberEnd: 289
    functionName: gf_bifs_decode_au
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_bifs_dec_command
    - gf_bifs_dec_get_stream
    - gf_bs_new
    - gf_bs_set_eos_callback
    - gf_bs_del
    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:297,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/bifs_codec.c:299,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - nodeID
    argTypes:
    - GF_BifsEncoder*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 301
    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:308,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:311,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 316
    functionName: GF_BifsEncoder *gf_bifs_encoder_new(GF_SceneGraph *graph)
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsEncoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 328
    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:333,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:333,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:334,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:336,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:337,1
    - Dst: bifs_info_del
      Src: /src/gpac/src/bifs/bifs_codec.c:338,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/bifs/bifs_codec.c:339,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:341,1
    - Dst: gf_list_del
      Src: /src/gpac/src/bifs/bifs_codec.c:342,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:343,1
    - Dst: gf_free
      Src: /src/gpac/src/bifs/bifs_codec.c:345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_BifsEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 330
    functionDepth: 2
    functionLinenumber: 330
    functionLinenumberEnd: 346
    functionName: gf_bifs_encoder_del
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_assert
    - bifs_info_del
    - gf_list_get
    - gf_list_rem
    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:355,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:360,1
    - Dst: gf_list_new
      Src: /src/gpac/src/bifs/bifs_codec.c:374,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/bifs/bifs_codec.c:378,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/bifs/bifs_codec.c:379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/bifs_codec.c:381,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/bifs_codec.c:384,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/bifs/bifs_codec.c:385,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:387,1
    - Dst: gf_list_add
      Src: /src/gpac/src/bifs/bifs_codec.c:391,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: 394
      start: 348
    functionDepth: 2
    functionLinenumber: 348
    functionLinenumberEnd: 394
    functionName: gf_bifs_encoder_new_stream
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_sg_find_node_by_name
    - GF_LOG
    - gf_list_new
    - GF_SAFEALLOC
    - BE_GetStream
    - gf_list_get
    - gf_list_add
    - gf_sg_find_node
    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:405,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:411,1
    - Dst: gf_bifs_enc_commands
      Src: /src/gpac/src/bifs/bifs_codec.c:416,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/bifs/bifs_codec.c:418,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/bifs/bifs_codec.c:419,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:420,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: 423
      start: 396
    functionDepth: 5
    functionLinenumber: 396
    functionLinenumberEnd: 423
    functionName: gf_bifs_encode_au
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_bs_align
    - gf_bifs_enc_commands
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - BE_GetStream
    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:433,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/bifs/bifs_codec.c:439,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:443,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:446,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:448,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:452,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/bifs/bifs_codec.c:454,1
    - Dst: gf_list_get
      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_node_get_id
      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:459,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:463,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:467,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/bifs/bifs_codec.c:469,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/bifs/bifs_codec.c:473,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/bifs/bifs_codec.c:474,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/bifs/bifs_codec.c:475,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: 478
      start: 425
    functionDepth: 2
    functionLinenumber: 425
    functionLinenumberEnd: 478
    functionName: gf_bifs_encoder_get_config
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_bs_align
    - gf_node_get_id
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - BE_GetStream
    - gf_list_get
    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:485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_BifsEncoder*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 480
    functionDepth: 2
    functionLinenumber: 480
    functionLinenumberEnd: 489
    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:495,1
    - Dst: gf_strdup
      Src: /src/gpac/src/bifs/bifs_codec.c:496,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - codec
    - src_url
    argTypes:
    - GF_BifsEncoder*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 491
    functionDepth: 0
    functionLinenumber: 491
    functionLinenumberEnd: 498
    functionName: gf_bifs_encoder_set_source_url
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_free
    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:507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - Node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 503
    functionDepth: 1
    functionLinenumber: 503
    functionLinenumberEnd: 508
    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:516,1
    - Dst: gf_sg_script_get_field_index
      Src: /src/gpac/src/bifs/bifs_codec.c:521,1
    - Dst: gf_sg_mpeg4_node_get_field_count
      Src: /src/gpac/src/bifs/bifs_codec.c:523,1
    - Dst: gf_sg_mpeg4_node_get_field_index
      Src: /src/gpac/src/bifs/bifs_codec.c:525,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: 527
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 527
    functionName: gf_bifs_get_field_index
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 19
    functionsReached:
    - gf_sg_mpeg4_node_get_field_count
    - gf_sg_mpeg4_node_get_field_index
    - gf_sg_script_get_field_index
    - 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:539,1
    - Dst: gf_sg_mpeg4_node_get_aq_info
      Src: /src/gpac/src/bifs/bifs_codec.c:541,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: 543
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 543
    functionName: gf_bifs_get_aq_info
    functionSourceFile: /src/gpac/src/bifs/bifs_codec.c
    functionUses: 2
    functionsReached:
    - gf_sg_mpeg4_node_get_aq_info
    - gf_sg_proto_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:
    - gf_tan
    - gf_divfix
    - gf_sqrt
    - gf_sg_vrml_mf_get_item
    - gf_mulfix
    - PMF_UnquantizeFloat
    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:
    - gf_tan
    - gf_divfix
    - gf_sqrt
    - gf_sg_vrml_mf_get_item
    - gf_acos
    - gf_sin
    - gf_mulfix
    - PMF_UnquantizeFloat
    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:
    - PMF_UnquantizeFloat
    - PMF_UnquantizeRotation
    - gf_sg_vrml_mf_get_item
    - PMF_UnquantizeNormal
    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:
    - PMF_Unquantize
    - abs
    - gp_bifs_aa_decode
    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:
    - PMF_Unquantize
    - gp_bifs_aa_dec_reset
    - gf_bs_read_int
    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:
    - gp_bifs_aa_dec_resync
    - gp_bifs_aa_dec_resync_bit
    - gp_bifs_aa_model_del
    - PMF_ResetModels
    - PMF_ParsePValue
    - Q_IsTypeOn
    - gf_bifs_dec_qp14_get_bits
    - gp_bifs_aa_dec_del
    - gf_bs_read_int
    - gf_sg_vrml_mf_alloc
    - PMF_UpdateArrayQP
    - gp_bifs_aa_model_new
    - gp_bifs_aa_dec_get_bit
    - memset
    - gp_bifs_aa_dec_new
    - gf_bifs_get_aq_info
    - gp_bifs_aa_dec_flush
    - PMF_ParseIValue
    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_node_get_field
    - gf_bifs_enc_field
    - gf_sg_proto_get_field_count
    - gf_bifs_enc_is_field_ised
    - GF_BIFS_WRITE_INT
    - gf_bifs_enc_name
    - gf_get_bit_size
    - gf_strdup
    - gf_list_add
    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:
    - isdigit
    - toupper
    - GF_LOG
    - tolower
    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:
    - strchr
    - SFE_NextToken
    - GF_LOG
    - isalpha
    - stricmp
    - SFE_GetNumber
    - isalnum
    - strcmp
    - isdigit
    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_list_count
    - GF_BIFS_WRITE_INT
    - gf_list_enum
    - gf_bifs_enc_name
    - strcmp
    - gf_strdup
    - gf_list_add
    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:
    - GF_LOG
    - GF_BIFS_WRITE_INT
    - strtoul
    - gf_get_bit_size
    - isdigit
    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:
    - gf_strdup
    - gf_list_add
    - SFE_NextToken
    - GF_LOG
    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_ScanExpression
    - SFE_Expression
    - SFE_WRITE_INT
    - 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_CompoundExpression
    - SFE_WRITE_INT
    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_NextToken
    - SFE_WRITE_INT
    - SFE_StatementBlock
    - SFE_CheckToken
    - SFE_CompoundExpression
    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_StatementBlock
    - SFE_CheckToken
    - SFE_NextToken
    - SFE_OptionalExpression
    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_StatementBlock
    - SFE_CompoundExpression
    - SFE_CheckToken
    - SFE_NextToken
    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_WRITE_INT
    - SFE_CompoundExpression
    - SFE_NextToken
    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_Statement
    - SFE_NextToken
    - SFE_WRITE_INT
    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:
    - GF_LOG
    - GF_BIFS_WRITE_INT
    - strtoul
    - gf_get_bit_size
    - isdigit
    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_CaseBlock
    - SFE_WRITE_INT
    - 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_NextToken
    - SFE_WRITE_INT
    - SFE_ForStatement
    - SFE_SwitchStatement
    - SFE_ReturnStatement
    - SFE_CompoundExpression
    - SFE_WhileStatement
    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_WRITE_INT
    - SFE_Statement
    - SFE_NextToken
    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_WRITE_INT
    - SFE_Statements
    - SFE_NextToken
    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: gf_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:
    - gf_strcpy
    - SFE_NextToken
    - GF_LOG
    - SFE_StatementBlock
    - SFE_Arguments
    - SFE_PutIdentifier
    - SFE_CheckToken
    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_list_count
    - gf_node_get_tag
    - strchr
    - gf_free
    - EncScriptFields
    - gf_list_del
    - gf_list_get
    - SFE_Function
    - GF_BIFS_WRITE_INT
    - strnicmp
    - gf_list_new
    - memset
    - 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:
    - SFE_PutReal
    - strpbrk
    - SFE_WRITE_INT
    - SFE_PutInteger
    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:
    - SFE_WRITE_INT
    - stricmp
    - strcmp
    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:
    - SFE_ConditionTest
    - SFE_PutBoolean
    - GF_ARRAY_LENGTH
    - SFE_WRITE_INT
    - SFE_StatementBlock
    - gf_bifs_enc_name
    - SFE_Arguments
    - SFE_ObjectConstruct
    - MoveToToken
    - SFE_ObjectMemberAccess
    - SFE_PutNumber
    - TOK_To_ET
    - CHECK_TOK
    - GF_BIFS_WRITE_INT
    - SFE_ObjectMethodCall
    - SFE_PutIdentifier
    - gf_list_get
    - SFE_CheckToken
    - SFE_CompoundExpression
    - SFE_NextToken
    - SFE_ArrayDereference
    - SFE_FunctionCall
    - gf_free
    - GF_LOG
    - SFE_Expression
    - 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
    - SFE_Params
    - gf_list_get
    - CHECK_TOK
    - SFE_PutIdentifier
    - 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
    - SFE_Expression
    - CHECK_TOK
    - SFE_PutIdentifier
    - 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
    - SFE_Params
    - gf_list_get
    - SFE_Expression
    - CHECK_TOK
    - SFE_PutIdentifier
    - 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_CompoundExpression
    - SFE_Expression
    - CHECK_TOK
    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
    - SFE_Params
    - gf_list_get
    - CHECK_TOK
    - SFE_PutIdentifier
    - 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_CompoundExpression
    - SFE_WRITE_INT
    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_LOG
    - FIX2FLT
    - gf_bifs_enc_mantissa_float
    - 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_list_count
    - SFScript_Encode
    - BE_WriteSFFloat
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_url_concatenate
    - gf_bs_new
    - gf_bs_write_double
    - gf_bs_del
    - gf_bifs_enc_node
    - gf_fopen
    - gf_bifs_enc_quant_field
    - GF_BIFS_WRITE_INT
    - gf_bifs_field_index_by_mode
    - gf_fsize
    - gf_node_get_id
    - gf_get_bit_size
    - gf_bs_write_data
    - strlen
    - gf_node_get_num_fields_in_mode
    - gf_free
    - gf_fclose
    - GF_LOG
    - gf_bifs_enc_commands
    - gf_fread
    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_bifs_enc_qp_remove
    - gf_sg_vrml_mf_get_item
    - gf_bifs_enc_sf_field
    - GF_BIFS_WRITE_INT
    - gf_bifs_enc_qp_set
    - gf_get_bit_size
    - gf_sg_vrml_get_sf_type
    - memset
    - gf_bifs_enc_qp14_set_length
    - gf_bifs_enc_node
    - gf_node_list_get_count
    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_enc_sf_field
    - GF_BIFS_WRITE_INT
    - 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_node_get_num_fields_in_mode
    - gf_bifs_get_field_index
    - gf_node_get_field
    - gf_list_count
    - gf_malloc
    - gf_bifs_enc_field
    - gf_sg_proto_get_field_count
    - gf_free
    - gf_bifs_enc_is_field_ised
    - GF_BIFS_WRITE_INT
    - gf_sg_vrml_field_equal
    - gf_sg_proto_create_instance
    - gf_node_new
    - gf_bifs_field_index_by_mode
    - gf_get_bit_size
    - gf_node_register
    - gf_node_unregister
    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_list_count
    - gf_list_add
    - gf_node_get_id
    - gf_list_get
    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_bifs_get_ndt_bits
    - gf_node_get_tag
    - gf_node_get_id
    - gf_bifs_enc_qp14_enter
    - gf_bifs_get_node_type
    - GF_LOG
    - gf_bs_write_int
    - gf_node_get_name_and_id
    - gf_bifs_enc_qp14_reset
    - GF_BIFS_WRITE_INT
    - gf_node_get_class_name
    - EncNodeFields
    - gf_bifs_enc_name
    - gf_bifs_enc_find_node
    - gf_bifs_enc_qp14_set_length
    - BE_NodeIsUSE
    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_V6_GetNodeTag
    - NDT_V1_GetNodeTag
    - NDT_V8_GetNodeTag
    - NDT_V4_GetNodeTag
    - NDT_V10_GetNodeTag
    - NDT_V5_GetNodeTag
    - NDT_V3_GetNodeTag
    - NDT_V2_GetNodeTag
    - NDT_V7_GetNodeTag
    - NDT_V9_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_V6_GetNumBits
    - NDT_V8_GetNumBits
    - NDT_V2_GetNumBits
    - NDT_V5_GetNumBits
    - NDT_V9_GetNumBits
    - NDT_V4_GetNumBits
    - NDT_V1_GetNumBits
    - NDT_V3_GetNumBits
    - NDT_V7_GetNumBits
    - NDT_V10_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_V6_GetNodeType
    - NDT_V5_GetNodeType
    - NDT_V8_GetNodeType
    - NDT_V7_GetNodeType
    - NDT_V1_GetNodeType
    - NDT_V9_GetNodeType
    - NDT_V2_GetNodeType
    - NDT_V10_GetNodeType
    - NDT_V3_GetNodeType
    - NDT_V4_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: 3
    BranchProfiles: []
    Callsites:
    - 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: 3
    EdgeCount: 3
    ICount: 7
    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_list_insert
    - gf_node_get_tag
    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_list_count
    - gf_node_unregister
    - gf_list_rem
    - gf_list_get
    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:
    - gf_bs_read_int
    - FLT2FIX
    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:
    - MIN
    - MAX
    linkageType: ''
    returnType: Bool
    signature: Bool Q_IsTypeOn(M_QuantizationParameter *qp, u32 q_type, u32 *NbBits,
      SFVec3f *b_min, SFVec3f *b_max)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_muldiv
      Src: /src/gpac/src/bifs/unquantize.c:231,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/unquantize.c:231,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/unquantize.c:231,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 4
    argNames:
    - Min
    - Max
    - NbBits
    - value
    argTypes:
    - Fixed
    - Fixed
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 226
    functionDepth: 1
    functionLinenumber: 226
    functionLinenumberEnd: 232
    functionName: Q_InverseQuantize
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_muldiv
    - INT2FIX
    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:241,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:241,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:245,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:245,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:250,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:250,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
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:255,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:255,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: 263
      start: 235
    functionDepth: 2
    functionLinenumber: 235
    functionLinenumberEnd: 263
    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:273,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: 278
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 278
    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:293,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:295,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/unquantize.c:299,1
    - Dst: Q_InverseQuantize
      Src: /src/gpac/src/bifs/unquantize.c:301,1
    - Dst: gf_tan
      Src: /src/gpac/src/bifs/unquantize.c:305,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/unquantize.c:305,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/unquantize.c:306,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/unquantize.c:308,1
    - Dst: INT2FIX
      Src: /src/gpac/src/bifs/unquantize.c:308,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/bifs/unquantize.c:308,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/bifs/unquantize.c:312,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: 315
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 315
    functionName: Q_DecCoordOnUnitSphere
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_tan
    - gf_divfix
    - Q_InverseQuantize
    - gf_sqrt
    - INT2FIX
    - gf_bs_read_int
    - gf_mulfix
    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:324,1
    - Dst: gf_acos
      Src: /src/gpac/src/bifs/unquantize.c:327,1
    - Dst: gf_sin
      Src: /src/gpac/src/bifs/unquantize.c:328,1
    - Dst: ABS
      Src: /src/gpac/src/bifs/unquantize.c:330,1
    - Dst: gf_divfix
      Src: /src/gpac/src/bifs/unquantize.c:334,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: 341
      start: 318
    functionDepth: 3
    functionLinenumber: 318
    functionLinenumberEnd: 341
    functionName: Q_DecRotation
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - gf_acos
    - gf_sin
    - Q_DecCoordOnUnitSphere
    - ABS
    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:349,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/bifs/unquantize.c:354,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: 357
      start: 344
    functionDepth: 3
    functionLinenumber: 344
    functionLinenumberEnd: 357
    functionName: Q_DecNormal
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - Q_DecCoordOnUnitSphere
    - gf_vec_norm
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err Q_DecNormal(GF_BifsDecoder *codec, GF_BitStream *bs, u32 NbBits,
      void *field_ptr)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: gf_bifs_get_aq_info
      Src: /src/gpac/src/bifs/unquantize.c:385,1
    - Dst: gf_bifs_dec_qp14_get_bits
      Src: /src/gpac/src/bifs/unquantize.c:390,1
    - Dst: Q_IsTypeOn
      Src: /src/gpac/src/bifs/unquantize.c:399,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/unquantize.c:401,1
    - Dst: Q_DecFloat
      Src: /src/gpac/src/bifs/unquantize.c:417,1
    - Dst: Q_DecInt
      Src: /src/gpac/src/bifs/unquantize.c:422,1
    - Dst: Q_DecNormal
      Src: /src/gpac/src/bifs/unquantize.c:428,1
    - Dst: Q_DecRotation
      Src: /src/gpac/src/bifs/unquantize.c:433,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 62
    argCount: 4
    argNames:
    - codec
    - bs
    - node
    - field
    argTypes:
    - GF_BifsDecoder*
    - GF_BitStream*
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 359
    functionDepth: 4
    functionLinenumber: 359
    functionLinenumberEnd: 441
    functionName: gf_bifs_dec_unquant_field
    functionSourceFile: /src/gpac/src/bifs/unquantize.c
    functionUses: 0
    functionsReached:
    - Q_DecNormal
    - Q_DecRotation
    - Q_IsTypeOn
    - Q_DecFloat
    - gf_bifs_dec_qp14_get_bits
    - gf_bifs_get_aq_info
    - Q_DecInt
    - gf_bs_available
    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:
    - BD_OffsetSFTime
    - gf_node_get_tag
    - stricmp
    - gf_sg_proto_field_is_sftime_offset
    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_bifs_get_field_index
    - gf_list_count
    - SFCommandBufferChanged
    - gf_bs_read_data
    - gf_list_add
    - gf_node_unregister
    - BD_CheckSFTimeOffset
    - gf_malloc
    - gf_list_get
    - gf_bifs_dec_unquant_field
    - SFScript_Parse
    - BD_ReadSFFloat
    - gf_bs_read_double
    - gf_bs_read_int
    - gf_get_bit_size
    - strlen
    - gf_node_get_num_fields_in_mode
    - gf_sg_command_del
    - gf_free
    - gf_sg_find_node
    - gf_node_register
    - memset
    - gf_bs_available
    - gf_bifs_dec_node
    - 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_available
      Src: /src/gpac/src/bifs/field_decode.c:322,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:362,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:371,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:371,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:380,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:391,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:395,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 81
    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: 397
      start: 302
    functionDepth: 6
    functionLinenumber: 302
    functionLinenumberEnd: 397
    functionName: BD_DecMFFieldList
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 1
    functionsReached:
    - gf_bifs_dec_qp_set
    - gf_bifs_dec_qp_remove
    - gf_node_get_tag
    - gf_bifs_dec_qp14_set_length
    - gf_bs_read_int
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_get_sf_type
    - gf_node_register
    - gf_node_list_add_child_last
    - memset
    - gf_node_unregister
    - gf_bifs_dec_sf_field
    - gf_bs_available
    - gf_bifs_dec_node
    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:408,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/bifs/field_decode.c:410,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:418,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:423,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/bifs/field_decode.c:427,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/bifs/field_decode.c:431,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/field_decode.c:433,1
    - Dst: gf_bifs_dec_node
      Src: /src/gpac/src/bifs/field_decode.c:442,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:444,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:449,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:454,1
    - Dst: gf_bifs_dec_qp_set
      Src: /src/gpac/src/bifs/field_decode.c:456,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:461,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:464,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_decode.c:465,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:468,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/bifs/field_decode.c:475,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:493,1
    - Dst: gf_bifs_dec_qp_remove
      Src: /src/gpac/src/bifs/field_decode.c:499,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: 501
      start: 399
    functionDepth: 6
    functionLinenumber: 399
    functionLinenumberEnd: 501
    functionName: BD_DecMFFieldVec
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 1
    functionsReached:
    - gf_bifs_dec_qp_set
    - gf_bifs_dec_qp_remove
    - gf_node_get_tag
    - gf_sg_vrml_mf_get_item
    - gf_bifs_dec_qp14_set_length
    - gf_bs_read_int
    - gf_sg_vrml_mf_alloc
    - gf_sg_vrml_get_sf_type
    - gf_node_register
    - gf_node_list_add_child_last
    - memset
    - gf_node_unregister
    - gf_bifs_dec_sf_field
    - gf_bifs_dec_node
    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:508,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/bifs/field_decode.c:510,1
    - Dst: GF_FieldInfo*::on_event_in
      Src: /src/gpac/src/bifs/field_decode.c:513,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:514,1
    - Dst: gf_sg_script_event_in
      Src: /src/gpac/src/bifs/field_decode.c:515,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 504
    functionDepth: 1
    functionLinenumber: 504
    functionLinenumberEnd: 518
    functionName: gf_bifs_check_field_change
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 7
    functionsReached:
    - gf_node_get_tag
    - GF_FieldInfo*::on_event_in
    - gf_node_event_out
    - gf_sg_script_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:530,1
    - Dst: gf_bifs_dec_sf_field
      Src: /src/gpac/src/bifs/field_decode.c:531,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/bifs/field_decode.c:537,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/field_decode.c:541,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:548,1
    - Dst: gf_bifs_dec_pred_mf_field
      Src: /src/gpac/src/bifs/field_decode.c:551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_decode.c:553,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:560,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/bifs/field_decode.c:564,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:568,1
    - Dst: BD_DecMFFieldList
      Src: /src/gpac/src/bifs/field_decode.c:570,1
    - Dst: BD_DecMFFieldVec
      Src: /src/gpac/src/bifs/field_decode.c:572,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: 578
      start: 520
    functionDepth: 7
    functionLinenumber: 520
    functionLinenumberEnd: 578
    functionName: gf_bifs_dec_field
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 5
    functionsReached:
    - GF_LOG
    - BD_DecMFFieldVec
    - gf_bifs_dec_pred_mf_field
    - gf_bs_read_int
    - BD_DecMFFieldList
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_mf_reset
    - gf_node_unregister_children
    - gf_bifs_dec_sf_field
    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:585,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/bifs/field_decode.c:589,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: 591
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 591
    functionName: BD_SetProtoISed
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_field_set_ised
    - gf_sg_proto_instance_set_ised
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err BD_SetProtoISed(GF_BifsDecoder * codec, u32 protofield, GF_Node
      *n, u32 nodefield)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:602,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/field_decode.c:602,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:603,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:603,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:605,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:605,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:606,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:608,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:608,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:612,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:612,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:615,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:617,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:618,1
    - Dst: BD_SetProtoISed
      Src: /src/gpac/src/bifs/field_decode.c:620,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:622,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:622,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:627,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:630,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/field_decode.c:631,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:633,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/field_decode.c:635,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:637,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/bifs/field_decode.c:639,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: 642
      start: 593
    functionDepth: 8
    functionLinenumber: 593
    functionLinenumberEnd: 642
    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_get_field_index
    - gf_node_get_field
    - gf_sg_proto_mark_field_loaded
    - gf_sg_proto_get_field_count
    - gf_bifs_dec_field
    - BD_SetProtoISed
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_bs_available
    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:652,1
    - Dst: gf_sg_proto_get_field_count
      Src: /src/gpac/src/bifs/field_decode.c:653,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/bifs/field_decode.c:654,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:657,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:659,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:663,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:664,1
    - Dst: BD_SetProtoISed
      Src: /src/gpac/src/bifs/field_decode.c:666,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:671,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/field_decode.c:673,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:680,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:682,1
    - Dst: gf_bifs_get_field_index
      Src: /src/gpac/src/bifs/field_decode.c:684,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:685,1
    - Dst: gf_bifs_dec_field
      Src: /src/gpac/src/bifs/field_decode.c:687,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/bifs/field_decode.c:690,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: 694
      start: 644
    functionDepth: 8
    functionLinenumber: 644
    functionLinenumberEnd: 694
    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_get_field_index
    - gf_node_get_field
    - gf_sg_proto_mark_field_loaded
    - gf_sg_proto_get_field_count
    - gf_bifs_dec_field
    - BD_SetProtoISed
    - gf_bs_read_int
    - gf_get_bit_size
    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:699,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: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:721,1
    - Dst: BD_OffsetSFTime
      Src: /src/gpac/src/bifs/field_decode.c:722,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/bifs/field_decode.c:728,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/bifs/field_decode.c:730,1
    - Dst: BD_CheckSFTimeOffset
      Src: /src/gpac/src/bifs/field_decode.c:732,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 2
    argNames:
    - codec
    - node
    argTypes:
    - GF_BifsDecoder*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 697
    functionDepth: 2
    functionLinenumber: 697
    functionLinenumberEnd: 737
    functionName: UpdateTimeNode
    functionSourceFile: /src/gpac/src/bifs/field_decode.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_node_get_tag
    - gf_node_get_field
    - BD_OffsetSFTime
    - BD_CheckSFTimeOffset
    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:763,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:764,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/field_decode.c:769,1
    - Dst: gf_node_in_table
      Src: /src/gpac/src/bifs/field_decode.c:772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_decode.c:773,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/bifs/field_decode.c:773,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:782,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:786,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:787,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:788,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:794,1
    - Dst: gf_bifs_dec_qp14_set_length
      Src: /src/gpac/src/bifs/field_decode.c:795,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:796,1
    - Dst: gf_bifs_get_ndt_bits
      Src: /src/gpac/src/bifs/field_decode.c:812,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/bifs/field_decode.c:814,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:819,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:831,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/field_decode.c:833,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/bifs/field_decode.c:836,1
    - Dst: gf_bifs_ndt_get_node_type
      Src: /src/gpac/src/bifs/field_decode.c:843,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:848,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:849,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/field_decode.c:850,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:863,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:868,1
    - Dst: gf_bifs_dec_name
      Src: /src/gpac/src/bifs/field_decode.c:869,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/bifs/field_decode.c:882,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:885,1
    - Dst: gf_node_get_proto
      Src: /src/gpac/src/bifs/field_decode.c:885,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/bifs/field_decode.c:891,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/bifs/field_decode.c:905,1
    - Dst: gf_node_new
      Src: /src/gpac/src/bifs/field_decode.c:909,1
    - Dst: UpdateTimeNode
      Src: /src/gpac/src/bifs/field_decode.c:918,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:931,1
    - Dst: GF_LOG
      Src: /src/gpac/src/bifs/field_decode.c:938,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/bifs/field_decode.c:941,1
    - Dst: gf_bifs_dec_node_mask
      Src: /src/gpac/src/bifs/field_decode.c:942,1
    - Dst: gf_bifs_dec_node_list
      Src: /src/gpac/src/bifs/field_decode.c:944,1
    - Dst: gf_bifs_dec_qp14_reset
      Src: /src/gpac/src/bifs/field_decode.c:950,1
    - Dst: gf_node_register
      Src: /src/gpac/src/bifs/field_decode.c:955,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/bifs/field_decode.c:957,1
    - Dst: strlen
      Src: /src/gpac/src/bifs/field_decode.c:966,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/bifs/field_decode.c:967,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/bifs/field_decode.c:969,1
    - Dst: gf_node_init
      Src: /src/gpac/src/bifs/field_decode.c:974,1
    - Dst: gf_bifs_dec_qp14_enter
      Src: /src/gpac/src/bifs/field_decode.c:979,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/bifs/field_decode.c:984,1
    - Dst: SetupConditional
      Src: /src/gpac/src/bifs/field_decode.c:989,1
    - Dst: gf_sg_proto_load_code
      Src: /src/gpac/src/bifs/field_decode.c:997,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: 1002
      start: 739
    functionDepth: 9
    functionLinenumber: 739
    functionLinenumberEnd: 1002
    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_bifs_ndt_get_node_type
    - gf_node_get_class_name
    - gf_node_new
    - gf_bifs_dec_node_mask
    - UpdateTimeNode
    - gf_node_unregister
    - gf_node_get_proto
    - gf_sg_script_load
    - SetupConditional
    - gf_sg_proto_create_instance
    - gf_bs_read_int
    - gf_bifs_dec_name
    - strlen
    - gf_bifs_dec_node_list
    - gf_node_in_table
    - gf_sg_proto_load_code
    - gf_bifs_get_ndt_bits
    - gf_node_set_id
    - GF_LOG
    - gf_node_init
    - gf_bifs_dec_qp14_set_length
    - gf_node_register
    - gf_bifs_dec_qp14_enter
    - gf_sg_find_proto
    - gf_bs_available
    - gf_sg_find_node
    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_read_int
    - gf_bs_bits_available
    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: 2
    functionsReached:
    - gf_free
    - gf_sg_route_exists
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_new
    - gf_list_add
    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_Route*::ToField::on_event_in
    - gf_list_count
    - gf_list_del
    - gf_list_del_item
    - gf_list_add
    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_del
    - gf_sg_route_find
    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_list_count
    - gf_free
    - gf_sg_route_unqueue
    - gf_list_get
    - gf_list_rem
    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_count
    - gf_sg_route_activate
    - gf_sg_destroy_routes
    - gf_list_get
    - 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_strdup
    - gf_sg_route_find_by_name
    - gf_free
    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_sg_route_queue
    - gf_list_enum
    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_sg_vrml_field_copy
    - GF_Route*::ToField::on_event_in
    - gf_node_event_out
    - GF_LOG
    - VRML_FieldCopyCast
    - gf_assert
    - gf_sg_vrml_field_equal
    - gf_sg_route_setup
    - gf_node_event_out_proto
    - gf_log_tool_level_on
    - gf_node_unregister_children
    - gf_sg_proto_propagate_event
    - gf_node_get_name
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_sg_script_event_in
    - gf_node_unregister
    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_queue
    - gf_sg_route_activate
    - gf_node_changed
    - gf_list_enum
    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:
    - stricmp
    - gf_list_enum
    - gf_sg_route_setup
    - gf_sg_route_queue
    - gf_sg_route_activate
    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_node_get_field
    - gf_free
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_new
    - 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_sfstring_del
    - gf_sg_mfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_free
    - gf_node_unregister
    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_SAFEALLOC
    - gf_node_setup
    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_free
    - gf_node_unregister
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:397,1
    - Dst: FLT2FIX
      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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 402
    functionName: ArcClose2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:412,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:413,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:414,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 416
    functionName: AudioClip_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 422
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 422
    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: 509
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 509
    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:514,1
    - 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
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 528
    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:534,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:539,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 545
    functionName: AudioClip_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:555,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:556,1
    - Dst: gf_sg_mfurl_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_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:563,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:564,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:565,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 567
    functionName: Background_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister
    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: 573
      start: 570
    functionDepth: 0
    functionLinenumber: 570
    functionLinenumberEnd: 573
    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: 667
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 667
    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:672,1
    - 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
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 687
    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:693,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:695,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:698,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:700,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 690
    functionDepth: 1
    functionLinenumber: 690
    functionLinenumberEnd: 704
    functionName: Background_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:714,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:715,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 717
    functionName: Billboard_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 723
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 723
    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: 767
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 767
    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:772,1
    - 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
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 778
    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:784,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:786,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:790,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 781
    functionDepth: 1
    functionLinenumber: 781
    functionLinenumberEnd: 794
    functionName: Billboard_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:804,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:805,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 801
    functionDepth: 1
    functionLinenumber: 801
    functionLinenumberEnd: 806
    functionName: BooleanFilter_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 812
      start: 809
    functionDepth: 0
    functionLinenumber: 809
    functionLinenumberEnd: 812
    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: 852
      start: 814
    functionDepth: 0
    functionLinenumber: 814
    functionLinenumberEnd: 852
    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:857,1
    - 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
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 855
    functionDepth: 0
    functionLinenumber: 855
    functionLinenumberEnd: 863
    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:869,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:871,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 866
    functionDepth: 1
    functionLinenumber: 866
    functionLinenumberEnd: 875
    functionName: BooleanFilter_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:885,1
    - Dst: gf_sg_mfbool_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:886,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:887,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:888,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 882
    functionDepth: 1
    functionLinenumber: 882
    functionLinenumberEnd: 889
    functionName: BooleanSequencer_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 895
      start: 892
    functionDepth: 0
    functionLinenumber: 892
    functionLinenumberEnd: 895
    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: 949
      start: 897
    functionDepth: 0
    functionLinenumber: 897
    functionLinenumberEnd: 949
    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:954,1
    - 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
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 952
    functionDepth: 0
    functionLinenumber: 952
    functionLinenumberEnd: 962
    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:968,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:970,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 965
    functionDepth: 1
    functionLinenumber: 965
    functionLinenumberEnd: 974
    functionName: BooleanSequencer_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:984,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:985,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 981
    functionDepth: 1
    functionLinenumber: 981
    functionLinenumberEnd: 986
    functionName: BooleanToggle_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 992
      start: 989
    functionDepth: 0
    functionLinenumber: 989
    functionLinenumberEnd: 992
    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: 1020
      start: 994
    functionDepth: 0
    functionLinenumber: 994
    functionLinenumberEnd: 1020
    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:1025,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1026,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1027,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 1023
    functionDepth: 0
    functionLinenumber: 1023
    functionLinenumberEnd: 1029
    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:1035,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1037,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1041
      start: 1032
    functionDepth: 1
    functionLinenumber: 1032
    functionLinenumberEnd: 1041
    functionName: BooleanToggle_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1051,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1052,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1053
      start: 1048
    functionDepth: 1
    functionLinenumber: 1048
    functionLinenumberEnd: 1053
    functionName: BooleanTrigger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 1059
      start: 1056
    functionDepth: 0
    functionLinenumber: 1056
    functionLinenumberEnd: 1059
    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: 1087
      start: 1061
    functionDepth: 0
    functionLinenumber: 1061
    functionLinenumberEnd: 1087
    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:1092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1094,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1090
    functionDepth: 0
    functionLinenumber: 1090
    functionLinenumberEnd: 1096
    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:1102,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1108
      start: 1099
    functionDepth: 1
    functionLinenumber: 1099
    functionLinenumberEnd: 1108
    functionName: BooleanTrigger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1118,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1115
    functionDepth: 1
    functionLinenumber: 1115
    functionLinenumberEnd: 1120
    functionName: Box_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 1126
      start: 1123
    functionDepth: 0
    functionLinenumber: 1123
    functionLinenumberEnd: 1126
    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: 1147
      start: 1128
    functionDepth: 0
    functionLinenumber: 1128
    functionLinenumberEnd: 1147
    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:1152,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1150
    functionDepth: 0
    functionLinenumber: 1150
    functionLinenumberEnd: 1155
    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:1161,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1166,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1158
    functionDepth: 1
    functionLinenumber: 1158
    functionLinenumberEnd: 1170
    functionName: Box_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:1180,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1177
    functionDepth: 1
    functionLinenumber: 1177
    functionLinenumberEnd: 1182
    functionName: Circle2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 1188
      start: 1185
    functionDepth: 0
    functionLinenumber: 1185
    functionLinenumberEnd: 1188
    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: 1209
      start: 1190
    functionDepth: 0
    functionLinenumber: 1190
    functionLinenumberEnd: 1209
    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:1214,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1217
      start: 1212
    functionDepth: 0
    functionLinenumber: 1212
    functionLinenumberEnd: 1217
    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:1223,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1225,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1228,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1220
    functionDepth: 1
    functionLinenumber: 1220
    functionLinenumberEnd: 1230
    functionName: Circle2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:1240,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1241,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1242,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1237
    functionDepth: 1
    functionLinenumber: 1237
    functionLinenumberEnd: 1244
    functionName: Collision_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 1250
      start: 1247
    functionDepth: 0
    functionLinenumber: 1247
    functionLinenumberEnd: 1250
    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: 1313
      start: 1252
    functionDepth: 0
    functionLinenumber: 1252
    functionLinenumberEnd: 1313
    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:1318,1
    - 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
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1327
      start: 1316
    functionDepth: 0
    functionLinenumber: 1316
    functionLinenumberEnd: 1327
    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:1333,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1335,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1336,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1330
    functionDepth: 1
    functionLinenumber: 1330
    functionLinenumberEnd: 1341
    functionName: Collision_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:1351,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1352,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1354
      start: 1348
    functionDepth: 1
    functionLinenumber: 1348
    functionLinenumberEnd: 1354
    functionName: Color_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_node_unregister
    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: 1360
      start: 1357
    functionDepth: 0
    functionLinenumber: 1357
    functionLinenumberEnd: 1360
    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: 1381
      start: 1362
    functionDepth: 0
    functionLinenumber: 1362
    functionLinenumberEnd: 1381
    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:1386,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1389
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1389
    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:1395,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1397,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1401
      start: 1392
    functionDepth: 1
    functionLinenumber: 1392
    functionLinenumberEnd: 1401
    functionName: Color_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1411,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1412,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1413,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1415
      start: 1408
    functionDepth: 1
    functionLinenumber: 1408
    functionLinenumberEnd: 1415
    functionName: ColorInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_node_unregister
    - 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: 1421
      start: 1418
    functionDepth: 0
    functionLinenumber: 1418
    functionLinenumberEnd: 1421
    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: 1461
      start: 1423
    functionDepth: 0
    functionLinenumber: 1423
    functionLinenumberEnd: 1461
    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:1466,1
    - 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
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1472
      start: 1464
    functionDepth: 0
    functionLinenumber: 1464
    functionLinenumberEnd: 1472
    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:1478,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1475
    functionDepth: 1
    functionLinenumber: 1475
    functionLinenumberEnd: 1484
    functionName: ColorInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1494,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1495,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1496,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1497
      start: 1491
    functionDepth: 1
    functionLinenumber: 1491
    functionLinenumberEnd: 1497
    functionName: ColorRGBA_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolorrgba_del
    - gf_node_unregister
    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: 1503
      start: 1500
    functionDepth: 0
    functionLinenumber: 1500
    functionLinenumberEnd: 1503
    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: 1524
      start: 1505
    functionDepth: 0
    functionLinenumber: 1505
    functionLinenumberEnd: 1524
    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:1529,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1532
      start: 1527
    functionDepth: 0
    functionLinenumber: 1527
    functionLinenumberEnd: 1532
    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:1538,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1540,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1535
    functionDepth: 1
    functionLinenumber: 1535
    functionLinenumberEnd: 1544
    functionName: ColorRGBA_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1554,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1555,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1556
      start: 1551
    functionDepth: 1
    functionLinenumber: 1551
    functionLinenumberEnd: 1556
    functionName: Cone_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 1562
      start: 1559
    functionDepth: 0
    functionLinenumber: 1559
    functionLinenumberEnd: 1562
    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: 1601
      start: 1564
    functionDepth: 0
    functionLinenumber: 1564
    functionLinenumberEnd: 1601
    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:1606,1
    - 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
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1612
      start: 1604
    functionDepth: 0
    functionLinenumber: 1604
    functionLinenumberEnd: 1612
    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:1618,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1620,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1623,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1624,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1628
      start: 1615
    functionDepth: 1
    functionLinenumber: 1615
    functionLinenumberEnd: 1628
    functionName: Cone_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:1638,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1639,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1641
      start: 1635
    functionDepth: 1
    functionLinenumber: 1635
    functionLinenumberEnd: 1641
    functionName: Contour2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 1647
      start: 1644
    functionDepth: 0
    functionLinenumber: 1644
    functionLinenumberEnd: 1647
    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: 1685
      start: 1649
    functionDepth: 0
    functionLinenumber: 1649
    functionLinenumberEnd: 1685
    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:1690,1
    - 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
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1695
      start: 1688
    functionDepth: 0
    functionLinenumber: 1688
    functionLinenumberEnd: 1695
    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:1701,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1703,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1704,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1698
    functionDepth: 1
    functionLinenumber: 1698
    functionLinenumberEnd: 1708
    functionName: Contour2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:1718,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1719,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1721
      start: 1715
    functionDepth: 1
    functionLinenumber: 1715
    functionLinenumberEnd: 1721
    functionName: ContourPolyline2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    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: 1727
      start: 1724
    functionDepth: 0
    functionLinenumber: 1724
    functionLinenumberEnd: 1727
    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: 1748
      start: 1729
    functionDepth: 0
    functionLinenumber: 1729
    functionLinenumberEnd: 1748
    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:1753,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1754,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1756
      start: 1751
    functionDepth: 0
    functionLinenumber: 1751
    functionLinenumberEnd: 1756
    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:1762,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1764,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1759
    functionDepth: 1
    functionLinenumber: 1759
    functionLinenumberEnd: 1768
    functionName: ContourPolyline2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1778,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1779,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1781
      start: 1775
    functionDepth: 1
    functionLinenumber: 1775
    functionLinenumberEnd: 1781
    functionName: Coordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfvec3f_del
    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: 1787
      start: 1784
    functionDepth: 0
    functionLinenumber: 1784
    functionLinenumberEnd: 1787
    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: 1808
      start: 1789
    functionDepth: 0
    functionLinenumber: 1789
    functionLinenumberEnd: 1808
    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:1813,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1814,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1811
    functionDepth: 0
    functionLinenumber: 1811
    functionLinenumberEnd: 1816
    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:1822,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1824,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1828
      start: 1819
    functionDepth: 1
    functionLinenumber: 1819
    functionLinenumberEnd: 1828
    functionName: Coordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1838,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1839,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1841
      start: 1835
    functionDepth: 1
    functionLinenumber: 1835
    functionLinenumberEnd: 1841
    functionName: CoordinateDouble_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 1847
      start: 1844
    functionDepth: 0
    functionLinenumber: 1844
    functionLinenumberEnd: 1847
    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: 1868
      start: 1849
    functionDepth: 0
    functionLinenumber: 1849
    functionLinenumberEnd: 1868
    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:1873,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1874,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1876
      start: 1871
    functionDepth: 0
    functionLinenumber: 1871
    functionLinenumberEnd: 1876
    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:1882,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1884,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1879
    functionDepth: 1
    functionLinenumber: 1879
    functionLinenumberEnd: 1888
    functionName: CoordinateDouble_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1898,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1899,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1901
      start: 1895
    functionDepth: 1
    functionLinenumber: 1895
    functionLinenumberEnd: 1901
    functionName: Coordinate2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    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: 1907
      start: 1904
    functionDepth: 0
    functionLinenumber: 1904
    functionLinenumberEnd: 1907
    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: 1928
      start: 1909
    functionDepth: 0
    functionLinenumber: 1909
    functionLinenumberEnd: 1928
    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:1933,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1934,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1936
      start: 1931
    functionDepth: 0
    functionLinenumber: 1931
    functionLinenumberEnd: 1936
    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:1942,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1944,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1939
    functionDepth: 1
    functionLinenumber: 1939
    functionLinenumberEnd: 1948
    functionName: Coordinate2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:1958,1
    - Dst: gf_sg_mfvec3f_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_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1961,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:1962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1963
      start: 1955
    functionDepth: 1
    functionLinenumber: 1955
    functionLinenumberEnd: 1963
    functionName: CoordinateInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfvec3f_del
    - 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: 1969
      start: 1966
    functionDepth: 0
    functionLinenumber: 1966
    functionLinenumberEnd: 1969
    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: 2009
      start: 1971
    functionDepth: 0
    functionLinenumber: 1971
    functionLinenumberEnd: 2009
    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:2014,1
    - 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
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2020
      start: 2012
    functionDepth: 0
    functionLinenumber: 2012
    functionLinenumberEnd: 2020
    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:2026,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2028,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2032
      start: 2023
    functionDepth: 1
    functionLinenumber: 2023
    functionLinenumberEnd: 2032
    functionName: CoordinateInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:2042,1
    - Dst: gf_sg_mfvec2f_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_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2045,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2047
      start: 2039
    functionDepth: 1
    functionLinenumber: 2039
    functionLinenumberEnd: 2047
    functionName: CoordinateInterpolator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    - 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: 2053
      start: 2050
    functionDepth: 0
    functionLinenumber: 2050
    functionLinenumberEnd: 2053
    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: 2093
      start: 2055
    functionDepth: 0
    functionLinenumber: 2055
    functionLinenumberEnd: 2093
    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:2098,1
    - 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
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2104
      start: 2096
    functionDepth: 0
    functionLinenumber: 2096
    functionLinenumberEnd: 2104
    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:2110,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2116
      start: 2107
    functionDepth: 1
    functionLinenumber: 2107
    functionLinenumberEnd: 2116
    functionName: CoordinateInterpolator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:2126,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2128
      start: 2123
    functionDepth: 1
    functionLinenumber: 2123
    functionLinenumberEnd: 2128
    functionName: Cylinder_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 2134
      start: 2131
    functionDepth: 0
    functionLinenumber: 2131
    functionLinenumberEnd: 2134
    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: 2179
      start: 2136
    functionDepth: 0
    functionLinenumber: 2136
    functionLinenumberEnd: 2179
    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:2184,1
    - 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
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2182
    functionDepth: 0
    functionLinenumber: 2182
    functionLinenumberEnd: 2191
    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:2197,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2199,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2203,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2194
    functionDepth: 1
    functionLinenumber: 2194
    functionLinenumberEnd: 2208
    functionName: Cylinder_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:2218,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2219,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2221
      start: 2215
    functionDepth: 1
    functionLinenumber: 2215
    functionLinenumberEnd: 2221
    functionName: CylinderSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 2227
      start: 2224
    functionDepth: 0
    functionLinenumber: 2224
    functionLinenumberEnd: 2227
    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: 2308
      start: 2229
    functionDepth: 0
    functionLinenumber: 2229
    functionLinenumberEnd: 2308
    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:2313,1
    - 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
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2326
      start: 2311
    functionDepth: 0
    functionLinenumber: 2311
    functionLinenumberEnd: 2326
    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:2332,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2334,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2338,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2340,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2344
      start: 2329
    functionDepth: 1
    functionLinenumber: 2329
    functionLinenumberEnd: 2344
    functionName: CylinderSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:2354,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2355,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2356
      start: 2351
    functionDepth: 1
    functionLinenumber: 2351
    functionLinenumberEnd: 2356
    functionName: DirectionalLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 2362
      start: 2359
    functionDepth: 0
    functionLinenumber: 2359
    functionLinenumberEnd: 2362
    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: 2407
      start: 2364
    functionDepth: 0
    functionLinenumber: 2364
    functionLinenumberEnd: 2407
    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:2412,1
    - 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
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2419
      start: 2410
    functionDepth: 0
    functionLinenumber: 2410
    functionLinenumberEnd: 2419
    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:2425,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2427,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2430,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2422
    functionDepth: 1
    functionLinenumber: 2422
    functionLinenumberEnd: 2440
    functionName: DirectionalLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:2450,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2452
      start: 2447
    functionDepth: 1
    functionLinenumber: 2447
    functionLinenumberEnd: 2452
    functionName: Disk2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 2458
      start: 2455
    functionDepth: 0
    functionLinenumber: 2455
    functionLinenumberEnd: 2458
    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: 2485
      start: 2460
    functionDepth: 0
    functionLinenumber: 2460
    functionLinenumberEnd: 2485
    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:2490,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2491,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2492,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2494
      start: 2488
    functionDepth: 0
    functionLinenumber: 2488
    functionLinenumberEnd: 2494
    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:2500,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2502,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2505,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2506,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2508
      start: 2497
    functionDepth: 1
    functionLinenumber: 2497
    functionLinenumberEnd: 2508
    functionName: Disk2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:2518,1
    - Dst: gf_node_unregister
      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_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2522,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2523,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2525
      start: 2515
    functionDepth: 1
    functionLinenumber: 2515
    functionLinenumberEnd: 2525
    functionName: ElevationGrid_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 2531
      start: 2528
    functionDepth: 0
    functionLinenumber: 2528
    functionLinenumberEnd: 2531
    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: 2634
      start: 2533
    functionDepth: 0
    functionLinenumber: 2533
    functionLinenumberEnd: 2634
    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:2639,1
    - 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
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2655
      start: 2637
    functionDepth: 0
    functionLinenumber: 2637
    functionLinenumberEnd: 2655
    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:2661,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2663,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2668,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2672,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2674,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2676
      start: 2658
    functionDepth: 1
    functionLinenumber: 2658
    functionLinenumberEnd: 2676
    functionName: ElevationGrid_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:2686,1
    - Dst: gf_sg_mfint32_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_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2691,1
    - Dst: gf_sg_sfstring_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_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2695,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2696,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:2697,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2698
      start: 2683
    functionDepth: 1
    functionLinenumber: 2683
    functionLinenumberEnd: 2698
    functionName: EspduTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_node_free
    - 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: 2704
      start: 2701
    functionDepth: 0
    functionLinenumber: 2701
    functionLinenumberEnd: 2704
    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: 3242
      start: 2706
    functionDepth: 0
    functionLinenumber: 2706
    functionLinenumberEnd: 3242
    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:3247,1
    - 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
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 174
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3334
      start: 3245
    functionDepth: 0
    functionLinenumber: 3245
    functionLinenumberEnd: 3334
    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:3340,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3342,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3343,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3346,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3349,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3350,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3351,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3354,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3355,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:3374,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3378,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3379,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:3386,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3387,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3388,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3392,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3393,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3394,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3395,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3398,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3399,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3400,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:3410,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3411,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3412,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 76
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3337
    functionDepth: 1
    functionLinenumber: 3337
    functionLinenumberEnd: 3416
    functionName: EspduTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:3426,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3427,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3428,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3429,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3430,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3431,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3432,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3433,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3434,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3436
      start: 3423
    functionDepth: 1
    functionLinenumber: 3423
    functionLinenumberEnd: 3436
    functionName: Extrusion_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfrotation_del
    - gf_sg_mfvec2f_del
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_node_unregister
    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: 3442
      start: 3439
    functionDepth: 0
    functionLinenumber: 3439
    functionLinenumberEnd: 3442
    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: 3545
      start: 3444
    functionDepth: 0
    functionLinenumber: 3444
    functionLinenumberEnd: 3545
    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:3550,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3551,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3552,1
    - 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
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3566
      start: 3548
    functionDepth: 0
    functionLinenumber: 3548
    functionLinenumberEnd: 3566
    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:3572,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3574,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3580,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3581,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3583,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3584,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3585,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: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3594,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3596,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3597,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3599,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3602,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3603,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3605,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3607,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3608,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3609,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3614
      start: 3569
    functionDepth: 1
    functionLinenumber: 3569
    functionLinenumberEnd: 3614
    functionName: Extrusion_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:3624,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3625
      start: 3621
    functionDepth: 1
    functionLinenumber: 3621
    functionLinenumberEnd: 3625
    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: 3631
      start: 3628
    functionDepth: 0
    functionLinenumber: 3628
    functionLinenumberEnd: 3631
    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: 3663
      start: 3633
    functionDepth: 0
    functionLinenumber: 3633
    functionLinenumberEnd: 3663
    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:3668,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3670,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3671,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3673
      start: 3666
    functionDepth: 0
    functionLinenumber: 3666
    functionLinenumberEnd: 3673
    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:3679,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3681,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3685,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3686,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3687,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3691
      start: 3676
    functionDepth: 1
    functionLinenumber: 3676
    functionLinenumberEnd: 3691
    functionName: FillProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:3701,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3702,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3704
      start: 3698
    functionDepth: 1
    functionLinenumber: 3698
    functionLinenumberEnd: 3704
    functionName: Fog_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 3710
      start: 3707
    functionDepth: 0
    functionLinenumber: 3707
    functionLinenumberEnd: 3710
    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: 3762
      start: 3712
    functionDepth: 0
    functionLinenumber: 3712
    functionLinenumberEnd: 3762
    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:3767,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3768,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3769,1
    - 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
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3775
      start: 3765
    functionDepth: 0
    functionLinenumber: 3765
    functionLinenumberEnd: 3775
    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:3781,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3783,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3786,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3788,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3789,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3790,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3792
      start: 3778
    functionDepth: 1
    functionLinenumber: 3778
    functionLinenumberEnd: 3792
    functionName: Fog_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:3802,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3803,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3804,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3805,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3806,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3808
      start: 3799
    functionDepth: 1
    functionLinenumber: 3799
    functionLinenumberEnd: 3808
    functionName: FontStyle_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_unregister
    - gf_node_free
    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: 3814
      start: 3811
    functionDepth: 0
    functionLinenumber: 3811
    functionLinenumberEnd: 3814
    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: 3883
      start: 3816
    functionDepth: 0
    functionLinenumber: 3816
    functionLinenumberEnd: 3883
    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:3888,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3889,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3890,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3891,1
    - 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
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3899
      start: 3886
    functionDepth: 0
    functionLinenumber: 3886
    functionLinenumberEnd: 3899
    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:3905,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3907,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3910,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3912,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3914,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3916,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3918,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3919,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3920,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3923
      start: 3902
    functionDepth: 1
    functionLinenumber: 3902
    functionLinenumberEnd: 3923
    functionName: FontStyle_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:3933,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3934,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3935,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3936,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3937,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3938
      start: 3930
    functionDepth: 1
    functionLinenumber: 3930
    functionLinenumberEnd: 3938
    functionName: GeoCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister
    - 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: 3944
      start: 3941
    functionDepth: 0
    functionLinenumber: 3941
    functionLinenumberEnd: 3944
    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: 3978
      start: 3946
    functionDepth: 0
    functionLinenumber: 3946
    functionLinenumberEnd: 3978
    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:3983,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3984,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3985,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3986,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3988
      start: 3981
    functionDepth: 0
    functionLinenumber: 3981
    functionLinenumberEnd: 3988
    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:3994,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3996,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:3999,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4001,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4002,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4004
      start: 3991
    functionDepth: 1
    functionLinenumber: 3991
    functionLinenumberEnd: 4004
    functionName: GeoCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_malloc
    - gf_node_setup
    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:4014,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4015,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4016,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4017,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4018,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4019,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4020,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4021,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4022,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4023,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4024
      start: 4011
    functionDepth: 1
    functionLinenumber: 4011
    functionLinenumberEnd: 4024
    functionName: GeoElevationGrid_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfdouble_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: 4030
      start: 4027
    functionDepth: 0
    functionLinenumber: 4027
    functionLinenumberEnd: 4030
    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: 4158
      start: 4032
    functionDepth: 0
    functionLinenumber: 4032
    functionLinenumberEnd: 4158
    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:4163,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4164,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4165,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4166,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4167,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4168,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4169,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4170,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4171,1
    - 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
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4183
      start: 4161
    functionDepth: 0
    functionLinenumber: 4161
    functionLinenumberEnd: 4183
    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:4189,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4194,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4197,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4198,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4199,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4201,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4210
      start: 4186
    functionDepth: 1
    functionLinenumber: 4186
    functionLinenumberEnd: 4210
    functionName: GeoElevationGrid_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:4220,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4221,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4222,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4223,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4225
      start: 4217
    functionDepth: 1
    functionLinenumber: 4217
    functionLinenumberEnd: 4225
    functionName: GeoLocation_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister
    - 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: 4231
      start: 4228
    functionDepth: 0
    functionLinenumber: 4228
    functionLinenumberEnd: 4231
    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: 4288
      start: 4233
    functionDepth: 0
    functionLinenumber: 4233
    functionLinenumberEnd: 4288
    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:4293,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4294,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4295,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4296,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4297,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4298,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4299,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4301
      start: 4291
    functionDepth: 0
    functionLinenumber: 4291
    functionLinenumberEnd: 4301
    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:4307,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4309,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4310,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4316,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4318,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4319,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4321
      start: 4304
    functionDepth: 1
    functionLinenumber: 4304
    functionLinenumberEnd: 4321
    functionName: GeoLocation_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:4331,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4332,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4333,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4334,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4335,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4336,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4337,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4338,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4339,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4340,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4342
      start: 4328
    functionDepth: 1
    functionLinenumber: 4328
    functionLinenumberEnd: 4342
    functionName: GeoLOD_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfstring_del
    - gf_sg_mfurl_del
    - gf_node_unregister_children
    - gf_node_free
    - gf_node_unregister
    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: 4348
      start: 4345
    functionDepth: 0
    functionLinenumber: 4345
    functionLinenumberEnd: 4348
    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: 4432
      start: 4350
    functionDepth: 0
    functionLinenumber: 4350
    functionLinenumberEnd: 4432
    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:4437,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4438,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4439,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4441,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4442,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4443,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4444,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4445,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4446,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4447,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4448,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4450
      start: 4435
    functionDepth: 0
    functionLinenumber: 4435
    functionLinenumberEnd: 4450
    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:4456,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4458,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4464,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4466,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4467,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4468,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4470
      start: 4453
    functionDepth: 1
    functionLinenumber: 4453
    functionLinenumberEnd: 4470
    functionName: GeoLOD_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:4480,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4481,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4482,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4483,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4485
      start: 4477
    functionDepth: 1
    functionLinenumber: 4477
    functionLinenumberEnd: 4485
    functionName: GeoMetadata_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfstring_del
    - gf_node_unregister
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister_children
    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: 4491
      start: 4488
    functionDepth: 0
    functionLinenumber: 4488
    functionLinenumberEnd: 4491
    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: 4525
      start: 4493
    functionDepth: 0
    functionLinenumber: 4493
    functionLinenumberEnd: 4525
    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:4530,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4532,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4533,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4535
      start: 4528
    functionDepth: 0
    functionLinenumber: 4528
    functionLinenumberEnd: 4535
    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:4541,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4543,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4547
      start: 4538
    functionDepth: 1
    functionLinenumber: 4538
    functionLinenumberEnd: 4547
    functionName: GeoMetadata_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:4557,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4558,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4560
      start: 4554
    functionDepth: 1
    functionLinenumber: 4554
    functionLinenumberEnd: 4560
    functionName: GeoOrigin_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister
    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: 4566
      start: 4563
    functionDepth: 0
    functionLinenumber: 4563
    functionLinenumberEnd: 4566
    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: 4599
      start: 4568
    functionDepth: 0
    functionLinenumber: 4568
    functionLinenumberEnd: 4599
    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:4604,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4605,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4606,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4607,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4609
      start: 4602
    functionDepth: 0
    functionLinenumber: 4602
    functionLinenumberEnd: 4609
    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:4615,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4617,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4623,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4625,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4626,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4628
      start: 4612
    functionDepth: 1
    functionLinenumber: 4612
    functionLinenumberEnd: 4628
    functionName: GeoOrigin_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_malloc
    - gf_node_setup
    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:4638,1
    - Dst: gf_sg_mfvec3d_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4639,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4640,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4641,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4642,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4644
      start: 4635
    functionDepth: 1
    functionLinenumber: 4635
    functionLinenumberEnd: 4644
    functionName: GeoPositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3d_del
    - gf_sg_mfstring_del
    - gf_sg_mffloat_del
    - gf_node_free
    - gf_node_unregister
    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: 4650
      start: 4647
    functionDepth: 0
    functionLinenumber: 4647
    functionLinenumberEnd: 4650
    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: 4709
      start: 4652
    functionDepth: 0
    functionLinenumber: 4652
    functionLinenumberEnd: 4709
    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:4714,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4715,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4716,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4717,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4718,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4719,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4720,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4721,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4723
      start: 4712
    functionDepth: 0
    functionLinenumber: 4712
    functionLinenumberEnd: 4723
    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:4729,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4731,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4734,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4736,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4737,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4739
      start: 4726
    functionDepth: 1
    functionLinenumber: 4726
    functionLinenumberEnd: 4739
    functionName: GeoPositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_malloc
    - gf_node_setup
    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:4749,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4750,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4751,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4753
      start: 4746
    functionDepth: 1
    functionLinenumber: 4746
    functionLinenumberEnd: 4753
    functionName: GeoTouchSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister
    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: 4759
      start: 4756
    functionDepth: 0
    functionLinenumber: 4756
    functionLinenumberEnd: 4759
    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: 4835
      start: 4761
    functionDepth: 0
    functionLinenumber: 4761
    functionLinenumberEnd: 4835
    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:4840,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4841,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4842,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4843,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4844,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4845,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4846,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4848,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4849,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4850,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4852
      start: 4838
    functionDepth: 0
    functionLinenumber: 4838
    functionLinenumberEnd: 4852
    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:4858,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4860,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4864,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4866,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4867,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4869
      start: 4855
    functionDepth: 1
    functionLinenumber: 4855
    functionLinenumberEnd: 4869
    functionName: GeoTouchSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_malloc
    - gf_node_setup
    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:4879,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4880,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4881,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4882,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4883,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4884,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4885,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:4886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4887
      start: 4876
    functionDepth: 1
    functionLinenumber: 4876
    functionLinenumberEnd: 4887
    functionName: GeoViewpoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_unregister
    - 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: 4893
      start: 4890
    functionDepth: 0
    functionLinenumber: 4890
    functionLinenumberEnd: 4893
    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: 5002
      start: 4895
    functionDepth: 0
    functionLinenumber: 4895
    functionLinenumberEnd: 5002
    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:5007,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5008,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5009,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5010,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5011,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5012,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5013,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5014,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5015,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5016,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5017,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5018,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5019,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5020,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5021,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5022,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5024
      start: 5005
    functionDepth: 0
    functionLinenumber: 5005
    functionLinenumberEnd: 5024
    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:5030,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5032,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5035,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5038,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5040,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5041,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5042,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5044,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5045,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5046,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5047,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5048,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5049,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5053,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5055
      start: 5027
    functionDepth: 1
    functionLinenumber: 5027
    functionLinenumberEnd: 5055
    functionName: GeoViewpoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:5065,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5066,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5067,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5068
      start: 5062
    functionDepth: 1
    functionLinenumber: 5062
    functionLinenumberEnd: 5068
    functionName: Group_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 5074
      start: 5071
    functionDepth: 0
    functionLinenumber: 5071
    functionLinenumberEnd: 5074
    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: 5112
      start: 5076
    functionDepth: 0
    functionLinenumber: 5076
    functionLinenumberEnd: 5112
    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:5117,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5118,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5119,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5122
      start: 5115
    functionDepth: 0
    functionLinenumber: 5115
    functionLinenumberEnd: 5122
    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:5128,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5130,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5135
      start: 5125
    functionDepth: 1
    functionLinenumber: 5125
    functionLinenumberEnd: 5135
    functionName: Group_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:5145,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5146,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5147,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5148,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5150
      start: 5142
    functionDepth: 1
    functionLinenumber: 5142
    functionLinenumberEnd: 5150
    functionName: HAnimDisplacer_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_node_unregister
    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: 5156
      start: 5153
    functionDepth: 0
    functionLinenumber: 5153
    functionLinenumberEnd: 5156
    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: 5195
      start: 5158
    functionDepth: 0
    functionLinenumber: 5158
    functionLinenumberEnd: 5195
    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:5200,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5201,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5202,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5203,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5204,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5206
      start: 5198
    functionDepth: 0
    functionLinenumber: 5198
    functionLinenumberEnd: 5206
    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:5212,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5214,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5219
      start: 5209
    functionDepth: 1
    functionLinenumber: 5209
    functionLinenumberEnd: 5219
    functionName: HAnimDisplacer_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:5229,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5230,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5231,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5232,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5233,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5234,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5235,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5236,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5237,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5238,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5239,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5240,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5242
      start: 5226
    functionDepth: 1
    functionLinenumber: 5226
    functionLinenumberEnd: 5242
    functionName: HAnimHumanoid_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_unregister
    - gf_node_free
    - gf_node_unregister_children
    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: 5248
      start: 5245
    functionDepth: 0
    functionLinenumber: 5245
    functionLinenumberEnd: 5248
    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: 5367
      start: 5250
    functionDepth: 0
    functionLinenumber: 5250
    functionLinenumberEnd: 5367
    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:5372,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5373,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5374,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5375,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5376,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5377,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5378,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5379,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5380,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5381,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5382,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5383,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5384,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5385,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5386,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5387,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5388,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 36
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5390
      start: 5370
    functionDepth: 0
    functionLinenumber: 5370
    functionLinenumberEnd: 5390
    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:5396,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5398,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5401,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5402,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5403,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5404,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5405,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5406,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5407,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5408,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5409,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5410,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5411,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5412,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5413,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5414,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5415,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5416,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5419
      start: 5393
    functionDepth: 1
    functionLinenumber: 5393
    functionLinenumberEnd: 5419
    functionName: HAnimHumanoid_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:5429,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5430,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5431,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5432,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5433,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5434,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5435,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5436,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5437,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5439
      start: 5426
    functionDepth: 1
    functionLinenumber: 5426
    functionLinenumberEnd: 5439
    functionName: HAnimJoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_node_unregister_children
    - gf_node_free
    - 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: 5445
      start: 5442
    functionDepth: 0
    functionLinenumber: 5442
    functionLinenumberEnd: 5445
    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: 5562
      start: 5447
    functionDepth: 0
    functionLinenumber: 5447
    functionLinenumberEnd: 5562
    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:5567,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5568,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5569,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5570,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5571,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5572,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5573,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5574,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5575,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5576,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5577,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5578,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5579,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5580,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5581,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5582,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5583,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 36
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5585
      start: 5565
    functionDepth: 0
    functionLinenumber: 5565
    functionLinenumberEnd: 5585
    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:5591,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5593,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5594,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5597,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5599,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5601,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5602,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5603,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5604,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5605,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5606,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5607,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5608,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5609,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5610,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5611,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5612,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5613,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5614,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5615,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5617,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5618,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5619,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5620,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5621,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5624
      start: 5588
    functionDepth: 1
    functionLinenumber: 5588
    functionLinenumberEnd: 5624
    functionName: HAnimJoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    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:5634,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5635,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5636,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5637,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5638,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5639,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5641
      start: 5631
    functionDepth: 1
    functionLinenumber: 5631
    functionLinenumberEnd: 5641
    functionName: HAnimSegment_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    - gf_sg_mffloat_del
    - gf_node_free
    - gf_node_unregister_children
    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: 5647
      start: 5644
    functionDepth: 0
    functionLinenumber: 5644
    functionLinenumberEnd: 5647
    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: 5723
      start: 5649
    functionDepth: 0
    functionLinenumber: 5649
    functionLinenumberEnd: 5723
    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:5728,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5729,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5730,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5731,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5732,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5733,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5734,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5735,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5736,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5737,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5739
      start: 5726
    functionDepth: 0
    functionLinenumber: 5726
    functionLinenumberEnd: 5739
    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:5745,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5747,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5748,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5751,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5752,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5753,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5754,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5755,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5757,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5758,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5759,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5760,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5761,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5762,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5763,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5764,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5767
      start: 5742
    functionDepth: 1
    functionLinenumber: 5742
    functionLinenumberEnd: 5767
    functionName: HAnimSegment_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    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:5777,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5778,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5779,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5781
      start: 5774
    functionDepth: 1
    functionLinenumber: 5774
    functionLinenumberEnd: 5781
    functionName: HAnimSite_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    - gf_node_free
    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: 5787
      start: 5784
    functionDepth: 0
    functionLinenumber: 5784
    functionLinenumberEnd: 5787
    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: 5861
      start: 5789
    functionDepth: 0
    functionLinenumber: 5789
    functionLinenumberEnd: 5861
    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:5866,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5867,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5868,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5869,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5870,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5871,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5872,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5873,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5874,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5875,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5877
      start: 5864
    functionDepth: 0
    functionLinenumber: 5864
    functionLinenumberEnd: 5877
    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:5883,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5885,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5886,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5889,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5890,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5891,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5892,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5893,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5894,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5895,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5896,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5897,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5898,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5899,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5900,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5901,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5902,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5903,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5904,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5907
      start: 5880
    functionDepth: 1
    functionLinenumber: 5880
    functionLinenumberEnd: 5907
    functionName: HAnimSite_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:5917,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5918,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5919,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5920
      start: 5914
    functionDepth: 1
    functionLinenumber: 5914
    functionLinenumberEnd: 5920
    functionName: ImageTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister
    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: 5926
      start: 5923
    functionDepth: 0
    functionLinenumber: 5923
    functionLinenumberEnd: 5926
    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: 5959
      start: 5928
    functionDepth: 0
    functionLinenumber: 5928
    functionLinenumberEnd: 5959
    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:5964,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5965,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5966,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5967,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5969
      start: 5962
    functionDepth: 0
    functionLinenumber: 5962
    functionLinenumberEnd: 5969
    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:5975,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5977,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5983
      start: 5972
    functionDepth: 1
    functionLinenumber: 5972
    functionLinenumberEnd: 5983
    functionName: ImageTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:5993,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5994,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5995,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5996,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5997,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5998,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:5999,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6000,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6001,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6002,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6003,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6004,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6005,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6006,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6007
      start: 5990
    functionDepth: 1
    functionLinenumber: 5990
    functionLinenumberEnd: 6007
    functionName: IndexedFaceSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 6013
      start: 6010
    functionDepth: 0
    functionLinenumber: 6010
    functionLinenumberEnd: 6013
    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: 6144
      start: 6015
    functionDepth: 0
    functionLinenumber: 6015
    functionLinenumberEnd: 6144
    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:6149,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6150,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6151,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6152,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6154,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6155,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6156,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6157,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6158,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6159,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6160,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6161,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6162,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6163,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6164,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6165,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6166,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6167,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6169
      start: 6147
    functionDepth: 0
    functionLinenumber: 6147
    functionLinenumberEnd: 6169
    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:6175,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6187
      start: 6172
    functionDepth: 1
    functionLinenumber: 6172
    functionLinenumberEnd: 6187
    functionName: IndexedFaceSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:6197,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6198,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6199,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6200,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6201,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6202,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6203,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6205
      start: 6194
    functionDepth: 1
    functionLinenumber: 6194
    functionLinenumberEnd: 6205
    functionName: IndexedLineSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 6211
      start: 6208
    functionDepth: 0
    functionLinenumber: 6208
    functionLinenumberEnd: 6211
    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: 6272
      start: 6213
    functionDepth: 0
    functionLinenumber: 6213
    functionLinenumberEnd: 6272
    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:6277,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6278,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6280,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6281,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6282,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6283,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6284,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6286
      start: 6275
    functionDepth: 0
    functionLinenumber: 6275
    functionLinenumberEnd: 6286
    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:6292,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6294,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6299
      start: 6289
    functionDepth: 1
    functionLinenumber: 6289
    functionLinenumberEnd: 6299
    functionName: IndexedLineSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:6309,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6310,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6311,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6312,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6313,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6314,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6315,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6317
      start: 6306
    functionDepth: 1
    functionLinenumber: 6306
    functionLinenumberEnd: 6317
    functionName: IndexedTriangleFanSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 6323
      start: 6320
    functionDepth: 0
    functionLinenumber: 6320
    functionLinenumberEnd: 6323
    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: 6403
      start: 6325
    functionDepth: 0
    functionLinenumber: 6325
    functionLinenumberEnd: 6403
    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:6408,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6409,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6410,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6411,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6412,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6413,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6414,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6415,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6416,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6417,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6418,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6420
      start: 6406
    functionDepth: 0
    functionLinenumber: 6406
    functionLinenumberEnd: 6420
    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:6426,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6436
      start: 6423
    functionDepth: 1
    functionLinenumber: 6423
    functionLinenumberEnd: 6436
    functionName: IndexedTriangleFanSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:6446,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6447,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6448,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6449,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6450,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6451,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6452,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6454
      start: 6443
    functionDepth: 1
    functionLinenumber: 6443
    functionLinenumberEnd: 6454
    functionName: IndexedTriangleSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 6460
      start: 6457
    functionDepth: 0
    functionLinenumber: 6457
    functionLinenumberEnd: 6460
    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: 6540
      start: 6462
    functionDepth: 0
    functionLinenumber: 6462
    functionLinenumberEnd: 6540
    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:6545,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6546,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6547,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6548,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6549,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6550,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6551,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6552,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6553,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6554,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6555,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6557
      start: 6543
    functionDepth: 0
    functionLinenumber: 6543
    functionLinenumberEnd: 6557
    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:6563,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6565,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6573
      start: 6560
    functionDepth: 1
    functionLinenumber: 6560
    functionLinenumberEnd: 6573
    functionName: IndexedTriangleSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:6583,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6584,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6585,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6586,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6587,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6588,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6589,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6591
      start: 6580
    functionDepth: 1
    functionLinenumber: 6580
    functionLinenumberEnd: 6591
    functionName: IndexedTriangleStripSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 6597
      start: 6594
    functionDepth: 0
    functionLinenumber: 6594
    functionLinenumberEnd: 6597
    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: 6677
      start: 6599
    functionDepth: 0
    functionLinenumber: 6599
    functionLinenumberEnd: 6677
    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:6682,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6683,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6684,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6685,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6686,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6687,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6688,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6689,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6690,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6691,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6692,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6694
      start: 6680
    functionDepth: 0
    functionLinenumber: 6680
    functionLinenumberEnd: 6694
    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:6700,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6702,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6705,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6710
      start: 6697
    functionDepth: 1
    functionLinenumber: 6697
    functionLinenumberEnd: 6710
    functionName: IndexedTriangleStripSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:6720,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6721,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6723
      start: 6717
    functionDepth: 1
    functionLinenumber: 6717
    functionLinenumberEnd: 6723
    functionName: Inline_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister
    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: 6729
      start: 6726
    functionDepth: 0
    functionLinenumber: 6726
    functionLinenumberEnd: 6729
    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: 6756
      start: 6731
    functionDepth: 0
    functionLinenumber: 6731
    functionLinenumberEnd: 6756
    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:6761,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6762,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6763,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6765
      start: 6759
    functionDepth: 0
    functionLinenumber: 6759
    functionLinenumberEnd: 6765
    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:6771,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6778
      start: 6768
    functionDepth: 1
    functionLinenumber: 6768
    functionLinenumberEnd: 6778
    functionName: Inline_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:6788,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6789,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6790,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6792
      start: 6785
    functionDepth: 1
    functionLinenumber: 6785
    functionLinenumberEnd: 6792
    functionName: IntegerSequencer_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 6798
      start: 6795
    functionDepth: 0
    functionLinenumber: 6795
    functionLinenumberEnd: 6798
    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: 6852
      start: 6800
    functionDepth: 0
    functionLinenumber: 6800
    functionLinenumberEnd: 6852
    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:6857,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6858,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6859,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6860,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6861,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6862,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6863,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6865
      start: 6855
    functionDepth: 0
    functionLinenumber: 6855
    functionLinenumberEnd: 6865
    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:6871,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6877
      start: 6868
    functionDepth: 1
    functionLinenumber: 6868
    functionLinenumberEnd: 6877
    functionName: IntegerSequencer_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:6887,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6888,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6889
      start: 6884
    functionDepth: 1
    functionLinenumber: 6884
    functionLinenumberEnd: 6889
    functionName: IntegerTrigger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 6895
      start: 6892
    functionDepth: 0
    functionLinenumber: 6892
    functionLinenumberEnd: 6895
    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: 6929
      start: 6897
    functionDepth: 0
    functionLinenumber: 6897
    functionLinenumberEnd: 6929
    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:6934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6935,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6936,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6937,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6939
      start: 6932
    functionDepth: 0
    functionLinenumber: 6932
    functionLinenumberEnd: 6939
    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:6945,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6947,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6952
      start: 6942
    functionDepth: 1
    functionLinenumber: 6942
    functionLinenumberEnd: 6952
    functionName: IntegerTrigger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:6962,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6963,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6964,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:6965,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6966
      start: 6959
    functionDepth: 1
    functionLinenumber: 6959
    functionLinenumberEnd: 6966
    functionName: KeySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 6972
      start: 6969
    functionDepth: 0
    functionLinenumber: 6969
    functionLinenumberEnd: 6972
    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: 7041
      start: 6974
    functionDepth: 0
    functionLinenumber: 6974
    functionLinenumberEnd: 7041
    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:7046,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7047,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7048,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7049,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7050,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7051,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7052,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7053,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7054,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7055,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7057
      start: 7044
    functionDepth: 0
    functionLinenumber: 7044
    functionLinenumberEnd: 7057
    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:7063,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7065,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7070
      start: 7060
    functionDepth: 1
    functionLinenumber: 7060
    functionLinenumberEnd: 7070
    functionName: KeySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7080,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7081,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7082
      start: 7077
    functionDepth: 1
    functionLinenumber: 7077
    functionLinenumberEnd: 7082
    functionName: LineProperties_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 7088
      start: 7085
    functionDepth: 0
    functionLinenumber: 7085
    functionLinenumberEnd: 7088
    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: 7121
      start: 7090
    functionDepth: 0
    functionLinenumber: 7090
    functionLinenumberEnd: 7121
    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:7126,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7127,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7128,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7129,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7131
      start: 7124
    functionDepth: 0
    functionLinenumber: 7124
    functionLinenumberEnd: 7131
    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:7137,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7139,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7146
      start: 7134
    functionDepth: 1
    functionLinenumber: 7134
    functionLinenumberEnd: 7146
    functionName: LineProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:7156,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7157,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7158,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7159,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7161
      start: 7153
    functionDepth: 1
    functionLinenumber: 7153
    functionLinenumberEnd: 7161
    functionName: LineSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 7167
      start: 7164
    functionDepth: 0
    functionLinenumber: 7164
    functionLinenumberEnd: 7167
    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: 7202
      start: 7169
    functionDepth: 0
    functionLinenumber: 7169
    functionLinenumberEnd: 7202
    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:7207,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7208,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7209,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7210,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7212
      start: 7205
    functionDepth: 0
    functionLinenumber: 7205
    functionLinenumberEnd: 7212
    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:7218,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7224
      start: 7215
    functionDepth: 1
    functionLinenumber: 7215
    functionLinenumberEnd: 7224
    functionName: LineSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7234,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7235,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7237
      start: 7231
    functionDepth: 1
    functionLinenumber: 7231
    functionLinenumberEnd: 7237
    functionName: LoadSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    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: 7243
      start: 7240
    functionDepth: 0
    functionLinenumber: 7240
    functionLinenumberEnd: 7243
    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: 7301
      start: 7245
    functionDepth: 0
    functionLinenumber: 7245
    functionLinenumberEnd: 7301
    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:7306,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7307,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7308,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7309,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7310,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7311,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7312,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7313,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7315
      start: 7304
    functionDepth: 0
    functionLinenumber: 7304
    functionLinenumberEnd: 7315
    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:7321,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7329
      start: 7318
    functionDepth: 1
    functionLinenumber: 7318
    functionLinenumberEnd: 7329
    functionName: LoadSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7339,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7340,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7341,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7343
      start: 7336
    functionDepth: 1
    functionLinenumber: 7336
    functionLinenumberEnd: 7343
    functionName: LOD_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    - 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: 7349
      start: 7346
    functionDepth: 0
    functionLinenumber: 7346
    functionLinenumberEnd: 7349
    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: 7399
      start: 7351
    functionDepth: 0
    functionLinenumber: 7351
    functionLinenumberEnd: 7399
    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:7404,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7405,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7406,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7407,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7408,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7409,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7411
      start: 7402
    functionDepth: 0
    functionLinenumber: 7402
    functionLinenumberEnd: 7411
    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:7417,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7419,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7420,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7423,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7424,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7425,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7427
      start: 7414
    functionDepth: 1
    functionLinenumber: 7414
    functionLinenumberEnd: 7427
    functionName: LOD_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:7437,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7439
      start: 7434
    functionDepth: 1
    functionLinenumber: 7434
    functionLinenumberEnd: 7439
    functionName: Material_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 7445
      start: 7442
    functionDepth: 0
    functionLinenumber: 7442
    functionLinenumberEnd: 7445
    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: 7496
      start: 7447
    functionDepth: 0
    functionLinenumber: 7447
    functionLinenumberEnd: 7496
    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:7501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7503,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7504,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7505,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7506,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7507,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7509
      start: 7499
    functionDepth: 0
    functionLinenumber: 7499
    functionLinenumberEnd: 7509
    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:7515,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7517,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7520,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7521,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7522,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7523,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7524,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7525,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7526,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7527,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7528,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7530,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7533
      start: 7512
    functionDepth: 1
    functionLinenumber: 7512
    functionLinenumberEnd: 7533
    functionName: Material_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:7543,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7544,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7545,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7546,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7548
      start: 7540
    functionDepth: 1
    functionLinenumber: 7540
    functionLinenumberEnd: 7548
    functionName: MetadataDouble_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    - 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: 7554
      start: 7551
    functionDepth: 0
    functionLinenumber: 7551
    functionLinenumberEnd: 7554
    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: 7587
      start: 7556
    functionDepth: 0
    functionLinenumber: 7556
    functionLinenumberEnd: 7587
    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:7592,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7593,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7594,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7595,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7597
      start: 7590
    functionDepth: 0
    functionLinenumber: 7590
    functionLinenumberEnd: 7597
    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:7603,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7605,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7609
      start: 7600
    functionDepth: 1
    functionLinenumber: 7600
    functionLinenumberEnd: 7609
    functionName: MetadataDouble_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7619,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7620,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7621,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7622,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7623,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7624
      start: 7616
    functionDepth: 1
    functionLinenumber: 7616
    functionLinenumberEnd: 7624
    functionName: MetadataFloat_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    - 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: 7630
      start: 7627
    functionDepth: 0
    functionLinenumber: 7627
    functionLinenumberEnd: 7630
    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: 7663
      start: 7632
    functionDepth: 0
    functionLinenumber: 7632
    functionLinenumberEnd: 7663
    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:7668,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7670,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7671,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7673
      start: 7666
    functionDepth: 0
    functionLinenumber: 7666
    functionLinenumberEnd: 7673
    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:7679,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7685
      start: 7676
    functionDepth: 1
    functionLinenumber: 7676
    functionLinenumberEnd: 7685
    functionName: MetadataFloat_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7695,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7696,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7697,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7698,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7699,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7700
      start: 7692
    functionDepth: 1
    functionLinenumber: 7692
    functionLinenumberEnd: 7700
    functionName: MetadataInteger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfint32_del
    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: 7706
      start: 7703
    functionDepth: 0
    functionLinenumber: 7703
    functionLinenumberEnd: 7706
    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: 7739
      start: 7708
    functionDepth: 0
    functionLinenumber: 7708
    functionLinenumberEnd: 7739
    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:7744,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7746,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7747,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7749
      start: 7742
    functionDepth: 0
    functionLinenumber: 7742
    functionLinenumberEnd: 7749
    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:7755,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7761
      start: 7752
    functionDepth: 1
    functionLinenumber: 7752
    functionLinenumberEnd: 7761
    functionName: MetadataInteger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7771,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7772,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7773,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7774,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7775,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7776
      start: 7768
    functionDepth: 1
    functionLinenumber: 7768
    functionLinenumberEnd: 7776
    functionName: MetadataSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    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: 7782
      start: 7779
    functionDepth: 0
    functionLinenumber: 7779
    functionLinenumberEnd: 7782
    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: 7816
      start: 7784
    functionDepth: 0
    functionLinenumber: 7784
    functionLinenumberEnd: 7816
    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:7821,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7822,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7823,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7824,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7826
      start: 7819
    functionDepth: 0
    functionLinenumber: 7819
    functionLinenumberEnd: 7826
    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:7832,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7834,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7838
      start: 7829
    functionDepth: 1
    functionLinenumber: 7829
    functionLinenumberEnd: 7838
    functionName: MetadataSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7848,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7849,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7850,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7851,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7852,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7853
      start: 7845
    functionDepth: 1
    functionLinenumber: 7845
    functionLinenumberEnd: 7853
    functionName: MetadataString_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_unregister
    - 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: 7859
      start: 7856
    functionDepth: 0
    functionLinenumber: 7856
    functionLinenumberEnd: 7859
    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: 7892
      start: 7861
    functionDepth: 0
    functionLinenumber: 7861
    functionLinenumberEnd: 7892
    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:7897,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7898,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7899,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7900,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7902
      start: 7895
    functionDepth: 0
    functionLinenumber: 7895
    functionLinenumberEnd: 7902
    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:7908,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7910,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7914
      start: 7905
    functionDepth: 1
    functionLinenumber: 7905
    functionLinenumberEnd: 7914
    functionName: MetadataString_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7924,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7925,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:7926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7927
      start: 7921
    functionDepth: 1
    functionLinenumber: 7921
    functionLinenumberEnd: 7927
    functionName: MovieTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister
    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: 7933
      start: 7930
    functionDepth: 0
    functionLinenumber: 7930
    functionLinenumberEnd: 7933
    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: 8026
      start: 7935
    functionDepth: 0
    functionLinenumber: 7935
    functionLinenumberEnd: 8026
    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:8031,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8032,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8033,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8034,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8035,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8036,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8037,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8038,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8039,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8040,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8041,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8042,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8043,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8044,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8046
      start: 8029
    functionDepth: 0
    functionLinenumber: 8029
    functionLinenumberEnd: 8046
    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:8052,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8054,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8057,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8065
      start: 8049
    functionDepth: 1
    functionLinenumber: 8049
    functionLinenumberEnd: 8065
    functionName: MovieTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:8075,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8076,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8077,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8078,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8079,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8081
      start: 8072
    functionDepth: 1
    functionLinenumber: 8072
    functionLinenumberEnd: 8081
    functionName: MultiTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister_children
    - gf_node_unregister
    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: 8087
      start: 8084
    functionDepth: 0
    functionLinenumber: 8084
    functionLinenumberEnd: 8087
    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: 8139
      start: 8089
    functionDepth: 0
    functionLinenumber: 8089
    functionLinenumberEnd: 8139
    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:8144,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8146,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8147,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8148,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8149,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8150,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8152
      start: 8142
    functionDepth: 0
    functionLinenumber: 8142
    functionLinenumberEnd: 8152
    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:8158,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8160,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8165,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8168
      start: 8155
    functionDepth: 1
    functionLinenumber: 8155
    functionLinenumberEnd: 8168
    functionName: MultiTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:8178,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8179,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8181
      start: 8175
    functionDepth: 1
    functionLinenumber: 8175
    functionLinenumberEnd: 8181
    functionName: MultiTextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    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: 8187
      start: 8184
    functionDepth: 0
    functionLinenumber: 8184
    functionLinenumberEnd: 8187
    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: 8209
      start: 8189
    functionDepth: 0
    functionLinenumber: 8189
    functionLinenumberEnd: 8209
    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:8214,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8217
      start: 8212
    functionDepth: 0
    functionLinenumber: 8212
    functionLinenumberEnd: 8217
    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:8223,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8229
      start: 8220
    functionDepth: 1
    functionLinenumber: 8220
    functionLinenumberEnd: 8229
    functionName: MultiTextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8239,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8240,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8242
      start: 8236
    functionDepth: 1
    functionLinenumber: 8236
    functionLinenumberEnd: 8242
    functionName: MultiTextureTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    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: 8248
      start: 8245
    functionDepth: 0
    functionLinenumber: 8245
    functionLinenumberEnd: 8248
    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: 8270
      start: 8250
    functionDepth: 0
    functionLinenumber: 8250
    functionLinenumberEnd: 8270
    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:8275,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8276,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8278
      start: 8273
    functionDepth: 0
    functionLinenumber: 8273
    functionLinenumberEnd: 8278
    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:8284,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8290
      start: 8281
    functionDepth: 1
    functionLinenumber: 8281
    functionLinenumberEnd: 8290
    functionName: MultiTextureTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8300,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8301,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8302,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8303,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8305
      start: 8297
    functionDepth: 1
    functionLinenumber: 8297
    functionLinenumberEnd: 8305
    functionName: NavigationInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister
    - 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: 8311
      start: 8308
    functionDepth: 0
    functionLinenumber: 8308
    functionLinenumberEnd: 8311
    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: 8381
      start: 8313
    functionDepth: 0
    functionLinenumber: 8313
    functionLinenumberEnd: 8381
    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:8386,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8387,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8388,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8389,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8390,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8391,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8392,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8393,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8394,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8395,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8397
      start: 8384
    functionDepth: 0
    functionLinenumber: 8384
    functionLinenumberEnd: 8397
    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:8403,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8405,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8408,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8410,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8411,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8412,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8414,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8415,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8417,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8418,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8419,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8420,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8422,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8425
      start: 8400
    functionDepth: 1
    functionLinenumber: 8400
    functionLinenumberEnd: 8425
    functionName: NavigationInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:8435,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8436,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8437,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8438
      start: 8432
    functionDepth: 1
    functionLinenumber: 8432
    functionLinenumberEnd: 8438
    functionName: Normal_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfvec3f_del
    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: 8444
      start: 8441
    functionDepth: 0
    functionLinenumber: 8441
    functionLinenumberEnd: 8444
    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: 8465
      start: 8446
    functionDepth: 0
    functionLinenumber: 8446
    functionLinenumberEnd: 8465
    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:8470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8471,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8473
      start: 8468
    functionDepth: 0
    functionLinenumber: 8468
    functionLinenumberEnd: 8473
    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:8479,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8485
      start: 8476
    functionDepth: 1
    functionLinenumber: 8476
    functionLinenumberEnd: 8485
    functionName: Normal_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8495,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8496,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8497,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8498,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8500
      start: 8492
    functionDepth: 1
    functionLinenumber: 8492
    functionLinenumberEnd: 8500
    functionName: NormalInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfvec3f_del
    - 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: 8506
      start: 8503
    functionDepth: 0
    functionLinenumber: 8503
    functionLinenumberEnd: 8506
    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: 8546
      start: 8508
    functionDepth: 0
    functionLinenumber: 8508
    functionLinenumberEnd: 8546
    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:8551,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8552,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8553,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8554,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8555,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8557
      start: 8549
    functionDepth: 0
    functionLinenumber: 8549
    functionLinenumberEnd: 8557
    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:8563,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8565,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8569
      start: 8560
    functionDepth: 1
    functionLinenumber: 8560
    functionLinenumberEnd: 8569
    functionName: NormalInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8579,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8580,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8581,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8582,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8584
      start: 8576
    functionDepth: 1
    functionLinenumber: 8576
    functionLinenumberEnd: 8584
    functionName: NurbsCurve_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec3f_del
    - gf_sg_mffloat_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfdouble_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: 8590
      start: 8587
    functionDepth: 0
    functionLinenumber: 8587
    functionLinenumberEnd: 8590
    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: 8641
      start: 8592
    functionDepth: 0
    functionLinenumber: 8592
    functionLinenumberEnd: 8641
    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:8646,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8647,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8648,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8649,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8650,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8651,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8652,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8654
      start: 8644
    functionDepth: 0
    functionLinenumber: 8644
    functionLinenumberEnd: 8654
    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:8660,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8662,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8668
      start: 8657
    functionDepth: 1
    functionLinenumber: 8657
    functionLinenumberEnd: 8668
    functionName: NurbsCurve_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8678,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8679,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8680,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8681,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8683
      start: 8675
    functionDepth: 1
    functionLinenumber: 8675
    functionLinenumberEnd: 8683
    functionName: NurbsCurve2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    - 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: 8689
      start: 8686
    functionDepth: 0
    functionLinenumber: 8686
    functionLinenumberEnd: 8689
    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: 8740
      start: 8691
    functionDepth: 0
    functionLinenumber: 8691
    functionLinenumberEnd: 8740
    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:8745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8746,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8747,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8748,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8749,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8750,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8751,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8753
      start: 8743
    functionDepth: 0
    functionLinenumber: 8743
    functionLinenumberEnd: 8753
    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:8759,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8767
      start: 8756
    functionDepth: 1
    functionLinenumber: 8756
    functionLinenumberEnd: 8767
    functionName: NurbsCurve2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8777,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8778,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8779,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8780,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8782
      start: 8774
    functionDepth: 1
    functionLinenumber: 8774
    functionLinenumberEnd: 8782
    functionName: NurbsOrientationInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfdouble_del
    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: 8788
      start: 8785
    functionDepth: 0
    functionLinenumber: 8785
    functionLinenumberEnd: 8788
    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: 8841
      start: 8790
    functionDepth: 0
    functionLinenumber: 8790
    functionLinenumberEnd: 8841
    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:8846,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8847,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8848,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8849,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8850,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8851,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8852,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8854
      start: 8844
    functionDepth: 0
    functionLinenumber: 8844
    functionLinenumberEnd: 8854
    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:8860,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8862,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8867
      start: 8857
    functionDepth: 1
    functionLinenumber: 8857
    functionLinenumberEnd: 8867
    functionName: NurbsOrientationInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8877,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8878,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8879,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8880,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8881,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8882,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8884
      start: 8874
    functionDepth: 1
    functionLinenumber: 8874
    functionLinenumberEnd: 8884
    functionName: NurbsPatchSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfdouble_del
    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: 8890
      start: 8887
    functionDepth: 0
    functionLinenumber: 8887
    functionLinenumberEnd: 8890
    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: 8991
      start: 8892
    functionDepth: 0
    functionLinenumber: 8892
    functionLinenumberEnd: 8991
    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:8996,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8997,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8998,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:8999,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9000,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9001,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9002,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9003,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9004,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9005,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9006,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9007,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9008,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9009,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9010,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9012
      start: 8994
    functionDepth: 0
    functionLinenumber: 8994
    functionLinenumberEnd: 9012
    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:9018,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9020,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9031
      start: 9015
    functionDepth: 1
    functionLinenumber: 9015
    functionLinenumberEnd: 9031
    functionName: NurbsPatchSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9041,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9042,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9043,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9044,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9045,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9046
      start: 9038
    functionDepth: 1
    functionLinenumber: 9038
    functionLinenumberEnd: 9046
    functionName: NurbsPositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfdouble_del
    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: 9052
      start: 9049
    functionDepth: 0
    functionLinenumber: 9049
    functionLinenumberEnd: 9052
    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: 9105
      start: 9054
    functionDepth: 0
    functionLinenumber: 9054
    functionLinenumberEnd: 9105
    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:9110,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9111,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9112,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9113,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9114,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9115,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9116,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9118
      start: 9108
    functionDepth: 0
    functionLinenumber: 9108
    functionLinenumberEnd: 9118
    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:9124,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9131
      start: 9121
    functionDepth: 1
    functionLinenumber: 9121
    functionLinenumberEnd: 9131
    functionName: NurbsPositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9141,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9142,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9143,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9144,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9146
      start: 9138
    functionDepth: 1
    functionLinenumber: 9138
    functionLinenumberEnd: 9146
    functionName: NurbsSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    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: 9152
      start: 9149
    functionDepth: 0
    functionLinenumber: 9149
    functionLinenumberEnd: 9152
    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: 9196
      start: 9154
    functionDepth: 0
    functionLinenumber: 9154
    functionLinenumberEnd: 9196
    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:9201,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9202,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9203,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9204,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9205,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9207
      start: 9199
    functionDepth: 0
    functionLinenumber: 9199
    functionLinenumberEnd: 9207
    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:9213,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9215,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9218,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9220
      start: 9210
    functionDepth: 1
    functionLinenumber: 9210
    functionLinenumberEnd: 9220
    functionName: NurbsSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:9230,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9231,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9232,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9233,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9234,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9236
      start: 9227
    functionDepth: 1
    functionLinenumber: 9227
    functionLinenumberEnd: 9236
    functionName: NurbsSurfaceInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfdouble_del
    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: 9242
      start: 9239
    functionDepth: 0
    functionLinenumber: 9239
    functionLinenumberEnd: 9242
    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: 9325
      start: 9244
    functionDepth: 0
    functionLinenumber: 9244
    functionLinenumberEnd: 9325
    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:9330,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9331,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9332,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9333,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9334,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9335,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9336,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9337,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9338,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9339,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9340,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9341,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9343
      start: 9328
    functionDepth: 0
    functionLinenumber: 9328
    functionLinenumberEnd: 9343
    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:9349,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9351,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9359
      start: 9346
    functionDepth: 1
    functionLinenumber: 9346
    functionLinenumberEnd: 9359
    functionName: NurbsSurfaceInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9369,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9370,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9371,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9373
      start: 9366
    functionDepth: 1
    functionLinenumber: 9366
    functionLinenumberEnd: 9373
    functionName: NurbsSweptSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 9379
      start: 9376
    functionDepth: 0
    functionLinenumber: 9376
    functionLinenumberEnd: 9379
    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: 9420
      start: 9381
    functionDepth: 0
    functionLinenumber: 9381
    functionLinenumberEnd: 9420
    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:9425,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9426,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9427,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9428,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9429,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9431
      start: 9423
    functionDepth: 0
    functionLinenumber: 9423
    functionLinenumberEnd: 9431
    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:9437,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9445
      start: 9434
    functionDepth: 1
    functionLinenumber: 9434
    functionLinenumberEnd: 9445
    functionName: NurbsSweptSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9455,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9456,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9457,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9459
      start: 9452
    functionDepth: 1
    functionLinenumber: 9452
    functionLinenumberEnd: 9459
    functionName: NurbsSwungSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 9465
      start: 9462
    functionDepth: 0
    functionLinenumber: 9462
    functionLinenumberEnd: 9465
    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: 9506
      start: 9467
    functionDepth: 0
    functionLinenumber: 9467
    functionLinenumberEnd: 9506
    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:9511,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9512,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9513,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9514,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9515,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9517
      start: 9509
    functionDepth: 0
    functionLinenumber: 9509
    functionLinenumberEnd: 9517
    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:9523,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9525,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9531
      start: 9520
    functionDepth: 1
    functionLinenumber: 9520
    functionLinenumberEnd: 9531
    functionName: NurbsSwungSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9541,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9542,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9543,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9544,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9545,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9546,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9547
      start: 9538
    functionDepth: 1
    functionLinenumber: 9538
    functionLinenumberEnd: 9547
    functionName: NurbsTextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_sg_mffloat_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfdouble_del
    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: 9553
      start: 9550
    functionDepth: 0
    functionLinenumber: 9550
    functionLinenumberEnd: 9553
    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: 9616
      start: 9555
    functionDepth: 0
    functionLinenumber: 9555
    functionLinenumberEnd: 9616
    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:9621,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9622,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9623,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9624,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9625,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9626,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9627,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9628,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9629,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9631
      start: 9619
    functionDepth: 0
    functionLinenumber: 9619
    functionLinenumberEnd: 9631
    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:9637,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9639,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9647
      start: 9634
    functionDepth: 1
    functionLinenumber: 9634
    functionLinenumberEnd: 9647
    functionName: NurbsTextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9657,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9658,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9659,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9660,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9661,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9662,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9663,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9664,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9665,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9666,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9667
      start: 9654
    functionDepth: 1
    functionLinenumber: 9654
    functionLinenumberEnd: 9667
    functionName: NurbsTrimmedSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    - gf_sg_mfdouble_del
    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: 9673
      start: 9670
    functionDepth: 0
    functionLinenumber: 9670
    functionLinenumberEnd: 9673
    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: 9797
      start: 9675
    functionDepth: 0
    functionLinenumber: 9675
    functionLinenumberEnd: 9797
    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:9802,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9803,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9804,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9805,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9806,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9807,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9808,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9809,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9810,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9811,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9812,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9813,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9814,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9815,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9816,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9817,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9818,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9819,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9821
      start: 9800
    functionDepth: 0
    functionLinenumber: 9800
    functionLinenumberEnd: 9821
    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:9827,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9829,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9840
      start: 9824
    functionDepth: 1
    functionLinenumber: 9824
    functionLinenumberEnd: 9840
    functionName: NurbsTrimmedSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9850,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9851,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9852,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9854
      start: 9847
    functionDepth: 1
    functionLinenumber: 9847
    functionLinenumberEnd: 9854
    functionName: OrientationInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfrotation_del
    - gf_node_free
    - gf_node_unregister
    - 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: 9860
      start: 9857
    functionDepth: 0
    functionLinenumber: 9857
    functionLinenumberEnd: 9860
    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: 9900
      start: 9862
    functionDepth: 0
    functionLinenumber: 9862
    functionLinenumberEnd: 9900
    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:9905,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9906,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9907,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9908,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9909,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9911
      start: 9903
    functionDepth: 0
    functionLinenumber: 9903
    functionLinenumberEnd: 9911
    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:9917,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9919,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9923
      start: 9914
    functionDepth: 1
    functionLinenumber: 9914
    functionLinenumberEnd: 9923
    functionName: OrientationInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:9933,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9934,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9935,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9936
      start: 9930
    functionDepth: 1
    functionLinenumber: 9930
    functionLinenumberEnd: 9936
    functionName: PixelTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_sfimage_del
    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: 9942
      start: 9939
    functionDepth: 0
    functionLinenumber: 9939
    functionLinenumberEnd: 9942
    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: 9975
      start: 9944
    functionDepth: 0
    functionLinenumber: 9944
    functionLinenumberEnd: 9975
    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:9980,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9981,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9982,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9983,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9985
      start: 9978
    functionDepth: 0
    functionLinenumber: 9978
    functionLinenumberEnd: 9985
    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:9991,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:9993,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9999
      start: 9988
    functionDepth: 1
    functionLinenumber: 9988
    functionLinenumberEnd: 9999
    functionName: PixelTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10009,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10010,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10011,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10012
      start: 10006
    functionDepth: 1
    functionLinenumber: 10006
    functionLinenumberEnd: 10012
    functionName: PlaneSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 10018
      start: 10015
    functionDepth: 0
    functionLinenumber: 10015
    functionLinenumberEnd: 10018
    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: 10093
      start: 10020
    functionDepth: 0
    functionLinenumber: 10020
    functionLinenumberEnd: 10093
    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:10098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10104,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10105,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10106,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10107,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10108,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10110
      start: 10096
    functionDepth: 0
    functionLinenumber: 10096
    functionLinenumberEnd: 10110
    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:10116,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10118,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10123,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10124,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10125,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10126,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10127,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10128,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10131
      start: 10113
    functionDepth: 1
    functionLinenumber: 10113
    functionLinenumberEnd: 10131
    functionName: PlaneSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:10141,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10143
      start: 10138
    functionDepth: 1
    functionLinenumber: 10138
    functionLinenumberEnd: 10143
    functionName: PointLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 10149
      start: 10146
    functionDepth: 0
    functionLinenumber: 10146
    functionLinenumberEnd: 10149
    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: 10206
      start: 10151
    functionDepth: 0
    functionLinenumber: 10151
    functionLinenumberEnd: 10206
    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:10211,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10212,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10213,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10214,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10215,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10216,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10217,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10218,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10220
      start: 10209
    functionDepth: 0
    functionLinenumber: 10209
    functionLinenumberEnd: 10220
    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:10226,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10228,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10231,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10232,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10233,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10234,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10235,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10236,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10237,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10238,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10239,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10240,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10241,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10245
      start: 10223
    functionDepth: 1
    functionLinenumber: 10223
    functionLinenumberEnd: 10245
    functionName: PointLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:10255,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10256,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10257,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10259
      start: 10252
    functionDepth: 1
    functionLinenumber: 10252
    functionLinenumberEnd: 10259
    functionName: PointSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 10265
      start: 10262
    functionDepth: 0
    functionLinenumber: 10262
    functionLinenumberEnd: 10265
    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: 10294
      start: 10267
    functionDepth: 0
    functionLinenumber: 10267
    functionLinenumberEnd: 10294
    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:10299,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10300,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10301,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10303
      start: 10297
    functionDepth: 0
    functionLinenumber: 10297
    functionLinenumberEnd: 10303
    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:10309,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10315
      start: 10306
    functionDepth: 1
    functionLinenumber: 10306
    functionLinenumberEnd: 10315
    functionName: PointSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10325,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10326,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10328
      start: 10322
    functionDepth: 1
    functionLinenumber: 10322
    functionLinenumberEnd: 10328
    functionName: Polyline2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    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: 10334
      start: 10331
    functionDepth: 0
    functionLinenumber: 10331
    functionLinenumberEnd: 10334
    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: 10355
      start: 10336
    functionDepth: 0
    functionLinenumber: 10336
    functionLinenumberEnd: 10355
    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:10360,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10361,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10363
      start: 10358
    functionDepth: 0
    functionLinenumber: 10358
    functionLinenumberEnd: 10363
    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:10369,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10375
      start: 10366
    functionDepth: 1
    functionLinenumber: 10366
    functionLinenumberEnd: 10375
    functionName: Polyline2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10385,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10386,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10388
      start: 10382
    functionDepth: 1
    functionLinenumber: 10382
    functionLinenumberEnd: 10388
    functionName: Polypoint2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    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: 10394
      start: 10391
    functionDepth: 0
    functionLinenumber: 10391
    functionLinenumberEnd: 10394
    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: 10415
      start: 10396
    functionDepth: 0
    functionLinenumber: 10396
    functionLinenumberEnd: 10415
    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:10420,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10421,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10423
      start: 10418
    functionDepth: 0
    functionLinenumber: 10418
    functionLinenumberEnd: 10423
    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:10429,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10431,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10435
      start: 10426
    functionDepth: 1
    functionLinenumber: 10426
    functionLinenumberEnd: 10435
    functionName: Polypoint2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10445,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10446,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10447,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10449
      start: 10442
    functionDepth: 1
    functionLinenumber: 10442
    functionLinenumberEnd: 10449
    functionName: PositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfvec3f_del
    - 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: 10455
      start: 10452
    functionDepth: 0
    functionLinenumber: 10452
    functionLinenumberEnd: 10455
    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: 10495
      start: 10457
    functionDepth: 0
    functionLinenumber: 10457
    functionLinenumberEnd: 10495
    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:10500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10503,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10504,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10506
      start: 10498
    functionDepth: 0
    functionLinenumber: 10498
    functionLinenumberEnd: 10506
    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:10512,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10514,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10518
      start: 10509
    functionDepth: 1
    functionLinenumber: 10509
    functionLinenumberEnd: 10518
    functionName: PositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10528,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10529,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10530,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10531,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10532
      start: 10525
    functionDepth: 1
    functionLinenumber: 10525
    functionLinenumberEnd: 10532
    functionName: PositionInterpolator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    - 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: 10538
      start: 10535
    functionDepth: 0
    functionLinenumber: 10535
    functionLinenumberEnd: 10538
    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: 10578
      start: 10540
    functionDepth: 0
    functionLinenumber: 10540
    functionLinenumberEnd: 10578
    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:10583,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10584,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10585,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10586,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10587,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10589
      start: 10581
    functionDepth: 0
    functionLinenumber: 10581
    functionLinenumberEnd: 10589
    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:10595,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10597,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10601
      start: 10592
    functionDepth: 1
    functionLinenumber: 10592
    functionLinenumberEnd: 10601
    functionName: PositionInterpolator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10611,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10613
      start: 10608
    functionDepth: 1
    functionLinenumber: 10608
    functionLinenumberEnd: 10613
    functionName: ProximitySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 10619
      start: 10616
    functionDepth: 0
    functionLinenumber: 10616
    functionLinenumberEnd: 10619
    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: 10688
      start: 10621
    functionDepth: 0
    functionLinenumber: 10621
    functionLinenumberEnd: 10688
    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:10693,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10694,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10695,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10696,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10697,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10698,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10699,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10700,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10701,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10702,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10704
      start: 10691
    functionDepth: 0
    functionLinenumber: 10691
    functionLinenumberEnd: 10704
    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:10710,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10712,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10715,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10716,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10717,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10718,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10719,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10720,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10723
      start: 10707
    functionDepth: 1
    functionLinenumber: 10707
    functionLinenumberEnd: 10723
    functionName: ProximitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:10733,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10734,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10735,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10736,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10738
      start: 10730
    functionDepth: 1
    functionLinenumber: 10730
    functionLinenumberEnd: 10738
    functionName: ReceiverPdu_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 10744
      start: 10741
    functionDepth: 0
    functionLinenumber: 10741
    functionLinenumberEnd: 10744
    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: 10909
      start: 10746
    functionDepth: 0
    functionLinenumber: 10746
    functionLinenumberEnd: 10909
    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:10914,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10915,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10916,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10917,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10918,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10925,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10926,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10927,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10928,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10929,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10930,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10931,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10932,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10933,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10935,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10936,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10937,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10938,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10939,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 54
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10941
      start: 10912
    functionDepth: 0
    functionLinenumber: 10912
    functionLinenumberEnd: 10941
    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:10947,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10949,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10952,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10956,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10959,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10960,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10968,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10970
      start: 10944
    functionDepth: 1
    functionLinenumber: 10944
    functionLinenumberEnd: 10970
    functionName: ReceiverPdu_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:10980,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:10981,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10982
      start: 10977
    functionDepth: 1
    functionLinenumber: 10977
    functionLinenumberEnd: 10982
    functionName: Rectangle2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 10988
      start: 10985
    functionDepth: 0
    functionLinenumber: 10985
    functionLinenumberEnd: 10988
    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: 11009
      start: 10990
    functionDepth: 0
    functionLinenumber: 10990
    functionLinenumberEnd: 11009
    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:11014,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11015,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11017
      start: 11012
    functionDepth: 0
    functionLinenumber: 11012
    functionLinenumberEnd: 11017
    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:11023,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11025,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11028,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11029,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11031
      start: 11020
    functionDepth: 1
    functionLinenumber: 11020
    functionLinenumberEnd: 11031
    functionName: Rectangle2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11041,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11042,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11043,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11044,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11045
      start: 11038
    functionDepth: 1
    functionLinenumber: 11038
    functionLinenumberEnd: 11045
    functionName: ScalarInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 11051
      start: 11048
    functionDepth: 0
    functionLinenumber: 11048
    functionLinenumberEnd: 11051
    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: 11091
      start: 11053
    functionDepth: 0
    functionLinenumber: 11053
    functionLinenumberEnd: 11091
    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:11096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11097,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11100,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11102
      start: 11094
    functionDepth: 0
    functionLinenumber: 11094
    functionLinenumberEnd: 11102
    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:11108,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11114
      start: 11105
    functionDepth: 1
    functionLinenumber: 11105
    functionLinenumberEnd: 11114
    functionName: ScalarInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:11124,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11125,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11126,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11127
      start: 11121
    functionDepth: 1
    functionLinenumber: 11121
    functionLinenumberEnd: 11127
    functionName: Script_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 11135
      start: 11132
    functionDepth: 0
    functionLinenumber: 11132
    functionLinenumberEnd: 11135
    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: 11169
      start: 11138
    functionDepth: 0
    functionLinenumber: 11138
    functionLinenumberEnd: 11169
    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:11176,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11177,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11178,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11179,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11181
      start: 11174
    functionDepth: 0
    functionLinenumber: 11174
    functionLinenumberEnd: 11181
    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:11187,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11189,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11193
      start: 11184
    functionDepth: 1
    functionLinenumber: 11184
    functionLinenumberEnd: 11193
    functionName: Script_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:11203,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11204,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11205,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11207
      start: 11200
    functionDepth: 1
    functionLinenumber: 11200
    functionLinenumberEnd: 11207
    functionName: Shape_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 11213
      start: 11210
    functionDepth: 0
    functionLinenumber: 11210
    functionLinenumberEnd: 11213
    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: 11242
      start: 11215
    functionDepth: 0
    functionLinenumber: 11215
    functionLinenumberEnd: 11242
    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:11247,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11248,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11251
      start: 11245
    functionDepth: 0
    functionLinenumber: 11245
    functionLinenumberEnd: 11251
    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:11257,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11263
      start: 11254
    functionDepth: 1
    functionLinenumber: 11254
    functionLinenumberEnd: 11263
    functionName: Shape_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:11273,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11274,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11275,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11276,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11277,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11279
      start: 11270
    functionDepth: 1
    functionLinenumber: 11270
    functionLinenumberEnd: 11279
    functionName: SignalPdu_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    - gf_sg_mfint32_del
    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: 11285
      start: 11282
    functionDepth: 0
    functionLinenumber: 11282
    functionLinenumberEnd: 11285
    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: 11450
      start: 11287
    functionDepth: 0
    functionLinenumber: 11287
    functionLinenumberEnd: 11450
    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:11455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11460,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11461,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11462,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11463,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11464,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11466,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11468,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11471,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11475,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11476,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11477,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11479,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11480,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 54
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11482
      start: 11453
    functionDepth: 0
    functionLinenumber: 11453
    functionLinenumberEnd: 11482
    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:11488,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11490,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11493,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11499,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11502,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11510
      start: 11485
    functionDepth: 1
    functionLinenumber: 11485
    functionLinenumberEnd: 11510
    functionName: SignalPdu_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11520,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11521,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11523
      start: 11517
    functionDepth: 1
    functionLinenumber: 11517
    functionLinenumberEnd: 11523
    functionName: Sound_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 11529
      start: 11526
    functionDepth: 0
    functionLinenumber: 11526
    functionLinenumberEnd: 11529
    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: 11605
      start: 11531
    functionDepth: 0
    functionLinenumber: 11531
    functionLinenumberEnd: 11605
    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:11610,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11611,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11612,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11613,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11614,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11615,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11616,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11617,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11619,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11620,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11622
      start: 11608
    functionDepth: 0
    functionLinenumber: 11608
    functionLinenumberEnd: 11622
    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:11628,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11633,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11634,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11635,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11637,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11638,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11639,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11640,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11642,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11643,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11644,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11647
      start: 11625
    functionDepth: 1
    functionLinenumber: 11625
    functionLinenumberEnd: 11647
    functionName: Sound_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11657,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11659
      start: 11654
    functionDepth: 1
    functionLinenumber: 11654
    functionLinenumberEnd: 11659
    functionName: Sphere_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 11665
      start: 11662
    functionDepth: 0
    functionLinenumber: 11662
    functionLinenumberEnd: 11665
    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: 11686
      start: 11667
    functionDepth: 0
    functionLinenumber: 11667
    functionLinenumberEnd: 11686
    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:11691,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11694
      start: 11689
    functionDepth: 0
    functionLinenumber: 11689
    functionLinenumberEnd: 11694
    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:11700,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11702,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11705,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11707
      start: 11697
    functionDepth: 1
    functionLinenumber: 11697
    functionLinenumberEnd: 11707
    functionName: Sphere_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11717,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11718,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11720
      start: 11714
    functionDepth: 1
    functionLinenumber: 11714
    functionLinenumberEnd: 11720
    functionName: SphereSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 11726
      start: 11723
    functionDepth: 0
    functionLinenumber: 11723
    functionLinenumberEnd: 11726
    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: 11789
      start: 11728
    functionDepth: 0
    functionLinenumber: 11728
    functionLinenumberEnd: 11789
    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:11794,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11795,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11796,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11797,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11798,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11799,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11800,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11801,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11802,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11804
      start: 11792
    functionDepth: 0
    functionLinenumber: 11792
    functionLinenumberEnd: 11804
    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:11810,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11812,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11817,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11818,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11819,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11820,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11822
      start: 11807
    functionDepth: 1
    functionLinenumber: 11807
    functionLinenumberEnd: 11822
    functionName: SphereSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11832,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11834
      start: 11829
    functionDepth: 1
    functionLinenumber: 11829
    functionLinenumberEnd: 11834
    functionName: SpotLight_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 11840
      start: 11837
    functionDepth: 0
    functionLinenumber: 11837
    functionLinenumberEnd: 11840
    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: 11915
      start: 11842
    functionDepth: 0
    functionLinenumber: 11842
    functionLinenumberEnd: 11915
    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:11920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11925,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11926,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11927,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11928,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11929,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11930,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11932
      start: 11918
    functionDepth: 0
    functionLinenumber: 11918
    functionLinenumberEnd: 11932
    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:11938,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11940,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11943,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11944,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11945,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11946,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11947,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11948,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11949,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11950,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11951,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11952,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11953,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11954,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11955,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11956,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11957,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11958,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11960,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11962
      start: 11935
    functionDepth: 1
    functionLinenumber: 11935
    functionLinenumberEnd: 11962
    functionName: SpotLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11972,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11973,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:11974,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11975
      start: 11969
    functionDepth: 1
    functionLinenumber: 11969
    functionLinenumberEnd: 11975
    functionName: StaticGroup_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 11981
      start: 11978
    functionDepth: 0
    functionLinenumber: 11978
    functionLinenumberEnd: 11981
    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: 12003
      start: 11983
    functionDepth: 0
    functionLinenumber: 11983
    functionLinenumberEnd: 12003
    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:12008,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12009,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12011
      start: 12006
    functionDepth: 0
    functionLinenumber: 12006
    functionLinenumberEnd: 12011
    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:12017,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12019,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12020,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12024
      start: 12014
    functionDepth: 1
    functionLinenumber: 12014
    functionLinenumberEnd: 12024
    functionName: StaticGroup_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:12034,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12035,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12036,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12038
      start: 12031
    functionDepth: 1
    functionLinenumber: 12031
    functionLinenumberEnd: 12038
    functionName: StringSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 12044
      start: 12041
    functionDepth: 0
    functionLinenumber: 12041
    functionLinenumberEnd: 12044
    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: 12089
      start: 12046
    functionDepth: 0
    functionLinenumber: 12046
    functionLinenumberEnd: 12089
    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:12094,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12095,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12097,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12099,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12101
      start: 12092
    functionDepth: 0
    functionLinenumber: 12092
    functionLinenumberEnd: 12101
    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:12107,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12115
      start: 12104
    functionDepth: 1
    functionLinenumber: 12104
    functionLinenumberEnd: 12115
    functionName: StringSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:12125,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12126,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12128
      start: 12122
    functionDepth: 1
    functionLinenumber: 12122
    functionLinenumberEnd: 12128
    functionName: Switch_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 12134
      start: 12131
    functionDepth: 0
    functionLinenumber: 12131
    functionLinenumberEnd: 12134
    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: 12178
      start: 12136
    functionDepth: 0
    functionLinenumber: 12136
    functionLinenumberEnd: 12178
    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:12183,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12184,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12185,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12186,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12187,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12189
      start: 12181
    functionDepth: 0
    functionLinenumber: 12181
    functionLinenumberEnd: 12189
    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:12195,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12197,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12198,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12203
      start: 12192
    functionDepth: 1
    functionLinenumber: 12192
    functionLinenumberEnd: 12203
    functionName: Switch_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:12213,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12214,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12215,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12216,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12218
      start: 12210
    functionDepth: 1
    functionLinenumber: 12210
    functionLinenumberEnd: 12218
    functionName: Text_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister
    - 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: 12224
      start: 12221
    functionDepth: 0
    functionLinenumber: 12221
    functionLinenumberEnd: 12224
    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: 12264
      start: 12226
    functionDepth: 0
    functionLinenumber: 12226
    functionLinenumberEnd: 12264
    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:12269,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12273,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12275
      start: 12267
    functionDepth: 0
    functionLinenumber: 12267
    functionLinenumberEnd: 12275
    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:12281,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12283,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12288
      start: 12278
    functionDepth: 1
    functionLinenumber: 12278
    functionLinenumberEnd: 12288
    functionName: Text_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:12298,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12299,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12300,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12301,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12302,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12303,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12304,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12305,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12306,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12307,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12308,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12309,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12311
      start: 12295
    functionDepth: 1
    functionLinenumber: 12295
    functionLinenumberEnd: 12311
    functionName: TextureBackground_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_node_unregister
    - 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: 12317
      start: 12314
    functionDepth: 0
    functionLinenumber: 12314
    functionLinenumberEnd: 12317
    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: 12423
      start: 12319
    functionDepth: 0
    functionLinenumber: 12319
    functionLinenumberEnd: 12423
    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:12428,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12429,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12431,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12432,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12433,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12435,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12436,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12437,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12438,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12439,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12441,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12442,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12444
      start: 12426
    functionDepth: 0
    functionLinenumber: 12426
    functionLinenumberEnd: 12444
    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:12450,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12452,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12455,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12457,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12458,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12459,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12460,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12464
      start: 12447
    functionDepth: 1
    functionLinenumber: 12447
    functionLinenumberEnd: 12464
    functionName: TextureBackground_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:12474,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12475,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12477
      start: 12471
    functionDepth: 1
    functionLinenumber: 12471
    functionLinenumberEnd: 12477
    functionName: TextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    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: 12483
      start: 12480
    functionDepth: 0
    functionLinenumber: 12480
    functionLinenumberEnd: 12483
    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: 12504
      start: 12485
    functionDepth: 0
    functionLinenumber: 12485
    functionLinenumberEnd: 12504
    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:12509,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12510,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12512
      start: 12507
    functionDepth: 0
    functionLinenumber: 12507
    functionLinenumberEnd: 12512
    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:12518,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12520,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12524
      start: 12515
    functionDepth: 1
    functionLinenumber: 12515
    functionLinenumberEnd: 12524
    functionName: TextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:12534,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12535,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12536,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12538
      start: 12531
    functionDepth: 1
    functionLinenumber: 12531
    functionLinenumberEnd: 12538
    functionName: TextureCoordinateGenerator_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    - 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: 12544
      start: 12541
    functionDepth: 0
    functionLinenumber: 12541
    functionLinenumberEnd: 12544
    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: 12571
      start: 12546
    functionDepth: 0
    functionLinenumber: 12546
    functionLinenumberEnd: 12571
    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:12576,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12577,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12578,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12580
      start: 12574
    functionDepth: 0
    functionLinenumber: 12574
    functionLinenumberEnd: 12580
    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:12586,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12588,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12591,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12593
      start: 12583
    functionDepth: 1
    functionLinenumber: 12583
    functionLinenumberEnd: 12593
    functionName: TextureCoordinateGenerator_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_node_setup
    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:12603,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12605
      start: 12600
    functionDepth: 1
    functionLinenumber: 12600
    functionLinenumberEnd: 12605
    functionName: TextureTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 12611
      start: 12608
    functionDepth: 0
    functionLinenumber: 12608
    functionLinenumberEnd: 12611
    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: 12650
      start: 12613
    functionDepth: 0
    functionLinenumber: 12613
    functionLinenumberEnd: 12650
    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:12655,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12656,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12657,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12658,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12659,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12661
      start: 12653
    functionDepth: 0
    functionLinenumber: 12653
    functionLinenumberEnd: 12661
    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:12667,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12669,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12672,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12673,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12674,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12675,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12676,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12677,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12678,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12680
      start: 12664
    functionDepth: 1
    functionLinenumber: 12664
    functionLinenumberEnd: 12680
    functionName: TextureTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:12690,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12692
      start: 12687
    functionDepth: 1
    functionLinenumber: 12687
    functionLinenumberEnd: 12692
    functionName: TimeSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 12698
      start: 12695
    functionDepth: 0
    functionLinenumber: 12695
    functionLinenumberEnd: 12698
    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: 12791
      start: 12700
    functionDepth: 0
    functionLinenumber: 12700
    functionLinenumberEnd: 12791
    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:12796,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12797,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12798,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12799,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12800,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12801,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12802,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12803,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12804,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12805,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12806,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12807,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12808,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12809,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12811
      start: 12794
    functionDepth: 0
    functionLinenumber: 12794
    functionLinenumberEnd: 12811
    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:12817,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12829
      start: 12814
    functionDepth: 1
    functionLinenumber: 12814
    functionLinenumberEnd: 12829
    functionName: TimeSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:12839,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12841
      start: 12836
    functionDepth: 1
    functionLinenumber: 12836
    functionLinenumberEnd: 12841
    functionName: TimeTrigger_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 12847
      start: 12844
    functionDepth: 0
    functionLinenumber: 12844
    functionLinenumberEnd: 12847
    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: 12875
      start: 12849
    functionDepth: 0
    functionLinenumber: 12849
    functionLinenumberEnd: 12875
    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:12880,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12881,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12882,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12884
      start: 12878
    functionDepth: 0
    functionLinenumber: 12878
    functionLinenumberEnd: 12884
    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:12890,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12892,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12896
      start: 12887
    functionDepth: 1
    functionLinenumber: 12887
    functionLinenumberEnd: 12896
    functionName: TimeTrigger_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:12906,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12907,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12909
      start: 12903
    functionDepth: 1
    functionLinenumber: 12903
    functionLinenumberEnd: 12909
    functionName: TouchSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 12915
      start: 12912
    functionDepth: 0
    functionLinenumber: 12912
    functionLinenumberEnd: 12915
    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: 12978
      start: 12917
    functionDepth: 0
    functionLinenumber: 12917
    functionLinenumberEnd: 12978
    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:12983,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12984,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12985,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12986,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12987,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12988,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12989,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12990,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:12991,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12993
      start: 12981
    functionDepth: 0
    functionLinenumber: 12981
    functionLinenumberEnd: 12993
    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:12999,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13006
      start: 12996
    functionDepth: 1
    functionLinenumber: 12996
    functionLinenumberEnd: 13006
    functionName: TouchSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:13016,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13017,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13019
      start: 13013
    functionDepth: 1
    functionLinenumber: 13013
    functionLinenumberEnd: 13019
    functionName: Transform_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 13025
      start: 13022
    functionDepth: 0
    functionLinenumber: 13022
    functionLinenumberEnd: 13025
    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: 13093
      start: 13027
    functionDepth: 0
    functionLinenumber: 13027
    functionLinenumberEnd: 13093
    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:13098,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13099,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13100,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13101,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13102,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13104,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13105,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13106,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13108
      start: 13096
    functionDepth: 0
    functionLinenumber: 13096
    functionLinenumberEnd: 13108
    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:13114,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13116,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13117,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13120,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13121,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13122,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13123,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13124,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13125,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13126,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13127,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13128,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13129,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13130,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13131,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13132,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13133,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13134,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13135,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13138
      start: 13111
    functionDepth: 1
    functionLinenumber: 13111
    functionLinenumberEnd: 13138
    functionName: Transform_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:13148,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13149,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13150,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13151,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13153
      start: 13145
    functionDepth: 1
    functionLinenumber: 13145
    functionLinenumberEnd: 13153
    functionName: TransmitterPdu_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 13159
      start: 13156
    functionDepth: 0
    functionLinenumber: 13156
    functionLinenumberEnd: 13159
    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: 13420
      start: 13161
    functionDepth: 0
    functionLinenumber: 13161
    functionLinenumberEnd: 13420
    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:13425,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13426,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13427,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13428,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13429,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13430,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13431,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13432,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13433,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13435,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13436,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13437,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13438,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13439,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13441,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13442,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13443,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13444,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13445,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13446,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13447,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13448,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13449,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13450,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13451,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13452,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13453,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13454,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13459,1
    - 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
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 86
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13468
      start: 13423
    functionDepth: 0
    functionLinenumber: 13423
    functionLinenumberEnd: 13468
    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:13474,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13476,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13479,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13480,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13481,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13482,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13497,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13499,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13507,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13508,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13509,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13510,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13512,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13517
      start: 13471
    functionDepth: 1
    functionLinenumber: 13471
    functionLinenumberEnd: 13517
    functionName: TransmitterPdu_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:13527,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13528,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13529,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13530,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13531,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13532,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13534
      start: 13524
    functionDepth: 1
    functionLinenumber: 13524
    functionLinenumberEnd: 13534
    functionName: TriangleFanSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 13540
      start: 13537
    functionDepth: 0
    functionLinenumber: 13537
    functionLinenumberEnd: 13540
    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: 13613
      start: 13542
    functionDepth: 0
    functionLinenumber: 13542
    functionLinenumberEnd: 13613
    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:13618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13619,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13620,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13621,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13622,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13623,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13624,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13625,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13626,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13627,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13629
      start: 13616
    functionDepth: 0
    functionLinenumber: 13616
    functionLinenumberEnd: 13629
    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:13635,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13645
      start: 13632
    functionDepth: 1
    functionLinenumber: 13632
    functionLinenumberEnd: 13645
    functionName: TriangleFanSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:13655,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13656,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13657,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13658,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13659,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13660,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13661
      start: 13652
    functionDepth: 1
    functionLinenumber: 13652
    functionLinenumberEnd: 13661
    functionName: TriangleSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 13667
      start: 13664
    functionDepth: 0
    functionLinenumber: 13664
    functionLinenumberEnd: 13667
    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: 13734
      start: 13669
    functionDepth: 0
    functionLinenumber: 13669
    functionLinenumberEnd: 13734
    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:13739,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13740,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13741,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13742,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13743,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13744,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13746,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13747,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13749
      start: 13737
    functionDepth: 0
    functionLinenumber: 13737
    functionLinenumberEnd: 13749
    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:13755,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13757,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13765
      start: 13752
    functionDepth: 1
    functionLinenumber: 13752
    functionLinenumberEnd: 13765
    functionName: TriangleSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:13775,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13776,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13777,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13778
      start: 13772
    functionDepth: 1
    functionLinenumber: 13772
    functionLinenumberEnd: 13778
    functionName: TriangleSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_node_unregister
    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: 13784
      start: 13781
    functionDepth: 0
    functionLinenumber: 13781
    functionLinenumberEnd: 13784
    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: 13805
      start: 13786
    functionDepth: 0
    functionLinenumber: 13786
    functionLinenumberEnd: 13805
    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:13810,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13811,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13813
      start: 13808
    functionDepth: 0
    functionLinenumber: 13808
    functionLinenumberEnd: 13813
    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:13819,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13821,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13825
      start: 13816
    functionDepth: 1
    functionLinenumber: 13816
    functionLinenumberEnd: 13825
    functionName: TriangleSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:13835,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13836,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13837,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13838,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13839,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13840,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13841,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13842
      start: 13832
    functionDepth: 1
    functionLinenumber: 13832
    functionLinenumberEnd: 13842
    functionName: TriangleStripSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 13848
      start: 13845
    functionDepth: 0
    functionLinenumber: 13845
    functionLinenumberEnd: 13848
    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: 13921
      start: 13850
    functionDepth: 0
    functionLinenumber: 13850
    functionLinenumberEnd: 13921
    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:13926,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13927,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13928,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13929,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13930,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13931,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13932,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13933,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13934,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13935,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13937
      start: 13924
    functionDepth: 0
    functionLinenumber: 13924
    functionLinenumberEnd: 13937
    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:13943,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13945,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13953
      start: 13940
    functionDepth: 1
    functionLinenumber: 13940
    functionLinenumberEnd: 13953
    functionName: TriangleStripSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:13963,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13964,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:13965,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13966
      start: 13960
    functionDepth: 1
    functionLinenumber: 13960
    functionLinenumberEnd: 13966
    functionName: Viewpoint_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    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: 13972
      start: 13969
    functionDepth: 0
    functionLinenumber: 13969
    functionLinenumberEnd: 13972
    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: 14042
      start: 13974
    functionDepth: 0
    functionLinenumber: 13974
    functionLinenumberEnd: 14042
    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:14047,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14048,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14049,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14050,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14051,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14052,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14053,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14054,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14055,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14056,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14058
      start: 14045
    functionDepth: 0
    functionLinenumber: 14045
    functionLinenumberEnd: 14058
    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:14064,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14066,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14069,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14071,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14072,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14073,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14074,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14075,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14076,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14077,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14078,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14079,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14080,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14082
      start: 14061
    functionDepth: 1
    functionLinenumber: 14061
    functionLinenumberEnd: 14082
    functionName: Viewpoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:14092,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14093,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14094
      start: 14089
    functionDepth: 1
    functionLinenumber: 14089
    functionLinenumberEnd: 14094
    functionName: VisibilitySensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 14100
      start: 14097
    functionDepth: 0
    functionLinenumber: 14097
    functionLinenumberEnd: 14100
    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: 14151
      start: 14102
    functionDepth: 0
    functionLinenumber: 14102
    functionLinenumberEnd: 14151
    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:14156,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14157,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14158,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14159,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14160,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14161,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14162,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14164
      start: 14154
    functionDepth: 0
    functionLinenumber: 14154
    functionLinenumberEnd: 14164
    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:14170,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14172,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14175,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14176,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14179,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14180,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14183
      start: 14167
    functionDepth: 1
    functionLinenumber: 14167
    functionLinenumberEnd: 14183
    functionName: VisibilitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:14193,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14194,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14195,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14197
      start: 14190
    functionDepth: 1
    functionLinenumber: 14190
    functionLinenumberEnd: 14197
    functionName: WorldInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_unregister
    - gf_node_free
    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: 14203
      start: 14200
    functionDepth: 0
    functionLinenumber: 14200
    functionLinenumberEnd: 14203
    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: 14230
      start: 14205
    functionDepth: 0
    functionLinenumber: 14205
    functionLinenumberEnd: 14230
    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:14235,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14236,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14237,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14239
      start: 14233
    functionDepth: 0
    functionLinenumber: 14233
    functionLinenumberEnd: 14239
    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:14245,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14251
      start: 14242
    functionDepth: 1
    functionLinenumber: 14242
    functionLinenumberEnd: 14251
    functionName: WorldInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *WorldInfo_Create()
  - BBCount: 130
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14260,1
    - Dst: Appearance_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14262,1
    - Dst: Arc2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14264,1
    - Dst: ArcClose2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14266,1
    - Dst: AudioClip_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14268,1
    - Dst: Background_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14270,1
    - Dst: Billboard_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14272,1
    - Dst: BooleanFilter_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14274,1
    - Dst: BooleanSequencer_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14276,1
    - Dst: BooleanToggle_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14278,1
    - Dst: BooleanTrigger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14280,1
    - Dst: Box_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14282,1
    - Dst: Circle2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14284,1
    - Dst: Collision_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14286,1
    - Dst: Color_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14288,1
    - Dst: ColorInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14290,1
    - Dst: ColorRGBA_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14292,1
    - Dst: Cone_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14294,1
    - Dst: Contour2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14296,1
    - Dst: ContourPolyline2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14298,1
    - Dst: Coordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14300,1
    - Dst: CoordinateDouble_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14302,1
    - Dst: Coordinate2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14304,1
    - Dst: CoordinateInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14306,1
    - Dst: CoordinateInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14308,1
    - Dst: Cylinder_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14310,1
    - Dst: CylinderSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14312,1
    - Dst: DirectionalLight_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14314,1
    - Dst: Disk2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14316,1
    - Dst: ElevationGrid_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14318,1
    - Dst: EspduTransform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14320,1
    - Dst: Extrusion_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14322,1
    - Dst: FillProperties_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14324,1
    - Dst: Fog_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14326,1
    - Dst: FontStyle_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14328,1
    - Dst: GeoCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14330,1
    - Dst: GeoElevationGrid_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14332,1
    - Dst: GeoLocation_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14334,1
    - Dst: GeoLOD_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14336,1
    - Dst: GeoMetadata_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14338,1
    - Dst: GeoOrigin_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14340,1
    - Dst: GeoPositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14342,1
    - Dst: GeoTouchSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14344,1
    - Dst: GeoViewpoint_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14346,1
    - Dst: Group_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14348,1
    - Dst: HAnimDisplacer_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14350,1
    - Dst: HAnimHumanoid_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14352,1
    - Dst: HAnimJoint_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14354,1
    - Dst: HAnimSegment_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14356,1
    - Dst: HAnimSite_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14358,1
    - Dst: ImageTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14360,1
    - Dst: IndexedFaceSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14362,1
    - Dst: IndexedLineSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14364,1
    - Dst: IndexedTriangleFanSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14366,1
    - Dst: IndexedTriangleSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14368,1
    - Dst: IndexedTriangleStripSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14370,1
    - Dst: Inline_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14372,1
    - Dst: IntegerSequencer_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14374,1
    - Dst: IntegerTrigger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14376,1
    - Dst: KeySensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14378,1
    - Dst: LineProperties_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14380,1
    - Dst: LineSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14382,1
    - Dst: LoadSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14384,1
    - Dst: LOD_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14386,1
    - Dst: Material_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14388,1
    - Dst: MetadataDouble_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14390,1
    - Dst: MetadataFloat_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14392,1
    - Dst: MetadataInteger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14394,1
    - Dst: MetadataSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14396,1
    - Dst: MetadataString_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14398,1
    - Dst: MovieTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14400,1
    - Dst: MultiTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14402,1
    - Dst: MultiTextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14404,1
    - Dst: MultiTextureTransform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14406,1
    - Dst: NavigationInfo_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14408,1
    - Dst: Normal_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14410,1
    - Dst: NormalInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14412,1
    - Dst: NurbsCurve_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14414,1
    - Dst: NurbsCurve2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14416,1
    - Dst: NurbsOrientationInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14418,1
    - Dst: NurbsPatchSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14420,1
    - Dst: NurbsPositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14422,1
    - Dst: NurbsSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14424,1
    - Dst: NurbsSurfaceInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14426,1
    - Dst: NurbsSweptSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14428,1
    - Dst: NurbsSwungSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14430,1
    - Dst: NurbsTextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14432,1
    - Dst: NurbsTrimmedSurface_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14434,1
    - Dst: OrientationInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14436,1
    - Dst: PixelTexture_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14438,1
    - Dst: PlaneSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14440,1
    - Dst: PointLight_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14442,1
    - Dst: PointSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14444,1
    - Dst: Polyline2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14446,1
    - Dst: Polypoint2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14448,1
    - Dst: PositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14450,1
    - Dst: PositionInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14452,1
    - Dst: ProximitySensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14454,1
    - Dst: ReceiverPdu_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14456,1
    - Dst: Rectangle2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14458,1
    - Dst: ScalarInterpolator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14460,1
    - Dst: Script_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14462,1
    - Dst: Shape_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14464,1
    - Dst: SignalPdu_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14466,1
    - Dst: Sound_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14468,1
    - Dst: Sphere_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14470,1
    - Dst: SphereSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14472,1
    - Dst: SpotLight_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14474,1
    - Dst: StaticGroup_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14476,1
    - Dst: StringSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14478,1
    - Dst: Switch_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14480,1
    - Dst: Text_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14482,1
    - Dst: TextureBackground_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14484,1
    - Dst: TextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14486,1
    - Dst: TextureCoordinateGenerator_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14488,1
    - Dst: TextureTransform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14490,1
    - Dst: TimeSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14492,1
    - Dst: TimeTrigger_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14494,1
    - Dst: TouchSensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14496,1
    - Dst: Transform_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14498,1
    - Dst: TransmitterPdu_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14500,1
    - Dst: TriangleFanSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14502,1
    - Dst: TriangleSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14504,1
    - Dst: TriangleSet2D_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14506,1
    - Dst: TriangleStripSet_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14508,1
    - Dst: Viewpoint_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14510,1
    - Dst: VisibilitySensor_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14512,1
    - Dst: WorldInfo_Create
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14514,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 1
    argNames:
    - NodeTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14518
      start: 14256
    functionDepth: 2
    functionLinenumber: 14256
    functionLinenumberEnd: 14518
    functionName: gf_sg_x3d_node_new
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - PositionInterpolator2D_Create
    - Transform_Create
    - MetadataInteger_Create
    - CoordinateDouble_Create
    - TextureCoordinateGenerator_Create
    - SignalPdu_Create
    - Text_Create
    - GeoLOD_Create
    - BooleanFilter_Create
    - FillProperties_Create
    - ProximitySensor_Create
    - IndexedTriangleStripSet_Create
    - Normal_Create
    - Cone_Create
    - GeoOrigin_Create
    - AudioClip_Create
    - PositionInterpolator_Create
    - IndexedTriangleFanSet_Create
    - MetadataSet_Create
    - Coordinate2D_Create
    - HAnimSite_Create
    - NurbsCurve_Create
    - Circle2D_Create
    - HAnimJoint_Create
    - PlaneSensor_Create
    - TextureTransform_Create
    - NavigationInfo_Create
    - MovieTexture_Create
    - Material_Create
    - MetadataDouble_Create
    - NurbsSwungSurface_Create
    - MetadataFloat_Create
    - KeySensor_Create
    - TransmitterPdu_Create
    - Sound_Create
    - Switch_Create
    - Rectangle2D_Create
    - Extrusion_Create
    - GeoMetadata_Create
    - Coordinate_Create
    - TouchSensor_Create
    - GeoLocation_Create
    - TextureBackground_Create
    - ScalarInterpolator_Create
    - Shape_Create
    - VisibilitySensor_Create
    - BooleanToggle_Create
    - Contour2D_Create
    - Polypoint2D_Create
    - NurbsTextureCoordinate_Create
    - Inline_Create
    - IntegerSequencer_Create
    - StaticGroup_Create
    - Collision_Create
    - OrientationInterpolator_Create
    - ReceiverPdu_Create
    - Polyline2D_Create
    - ArcClose2D_Create
    - IntegerTrigger_Create
    - Billboard_Create
    - GeoElevationGrid_Create
    - NurbsPatchSurface_Create
    - Sphere_Create
    - CoordinateInterpolator_Create
    - NurbsPositionInterpolator_Create
    - SpotLight_Create
    - IndexedTriangleSet_Create
    - Disk2D_Create
    - HAnimDisplacer_Create
    - NurbsSurfaceInterpolator_Create
    - NurbsCurve2D_Create
    - DirectionalLight_Create
    - NormalInterpolator_Create
    - LoadSensor_Create
    - MetadataString_Create
    - Arc2D_Create
    - CoordinateInterpolator2D_Create
    - TriangleStripSet_Create
    - Background_Create
    - LineSet_Create
    - ColorInterpolator_Create
    - WorldInfo_Create
    - LineProperties_Create
    - ElevationGrid_Create
    - HAnimHumanoid_Create
    - NurbsSet_Create
    - IndexedLineSet_Create
    - TextureCoordinate_Create
    - MultiTextureCoordinate_Create
    - GeoTouchSensor_Create
    - FontStyle_Create
    - HAnimSegment_Create
    - TimeTrigger_Create
    - TriangleFanSet_Create
    - Color_Create
    - GeoViewpoint_Create
    - TriangleSet_Create
    - EspduTransform_Create
    - Anchor_Create
    - Box_Create
    - Group_Create
    - Viewpoint_Create
    - Fog_Create
    - MultiTexture_Create
    - PointLight_Create
    - Cylinder_Create
    - ColorRGBA_Create
    - GeoCoordinate_Create
    - TimeSensor_Create
    - LOD_Create
    - BooleanSequencer_Create
    - BooleanTrigger_Create
    - Appearance_Create
    - NurbsTrimmedSurface_Create
    - Script_Create
    - MultiTextureTransform_Create
    - NurbsSweptSurface_Create
    - IndexedFaceSet_Create
    - NurbsOrientationInterpolator_Create
    - GeoPositionInterpolator_Create
    - TriangleSet2D_Create
    - ImageTexture_Create
    - SphereSensor_Create
    - ContourPolyline2D_Create
    - CylinderSensor_Create
    - StringSensor_Create
    - PointSet_Create
    - PixelTexture_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: 14782
      start: 14520
    functionDepth: 0
    functionLinenumber: 14520
    functionLinenumberEnd: 14782
    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:14788,1
    - Dst: Appearance_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14791,1
    - Dst: Arc2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14794,1
    - Dst: ArcClose2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14797,1
    - Dst: AudioClip_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14800,1
    - Dst: Background_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14803,1
    - Dst: Billboard_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14806,1
    - Dst: BooleanFilter_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14809,1
    - Dst: BooleanSequencer_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14812,1
    - Dst: BooleanToggle_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14815,1
    - Dst: BooleanTrigger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14818,1
    - Dst: Box_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14821,1
    - Dst: Circle2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14824,1
    - Dst: Collision_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14827,1
    - Dst: Color_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14830,1
    - Dst: ColorInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14833,1
    - Dst: ColorRGBA_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14836,1
    - Dst: Cone_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14839,1
    - Dst: Contour2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14842,1
    - Dst: ContourPolyline2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14845,1
    - Dst: Coordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14848,1
    - Dst: CoordinateDouble_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14851,1
    - Dst: Coordinate2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14854,1
    - Dst: CoordinateInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14857,1
    - Dst: CoordinateInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14860,1
    - Dst: Cylinder_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14863,1
    - Dst: CylinderSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14866,1
    - Dst: DirectionalLight_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14869,1
    - Dst: Disk2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14872,1
    - Dst: ElevationGrid_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14875,1
    - Dst: EspduTransform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14878,1
    - Dst: Extrusion_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14881,1
    - Dst: FillProperties_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14884,1
    - Dst: Fog_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14887,1
    - Dst: FontStyle_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14890,1
    - Dst: GeoCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14893,1
    - Dst: GeoElevationGrid_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14896,1
    - Dst: GeoLocation_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14899,1
    - Dst: GeoLOD_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14902,1
    - Dst: GeoMetadata_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14905,1
    - Dst: GeoOrigin_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14908,1
    - Dst: GeoPositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14911,1
    - Dst: GeoTouchSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14914,1
    - Dst: GeoViewpoint_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14917,1
    - Dst: Group_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14920,1
    - Dst: HAnimDisplacer_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14923,1
    - Dst: HAnimHumanoid_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14926,1
    - Dst: HAnimJoint_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14929,1
    - Dst: HAnimSegment_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14932,1
    - Dst: HAnimSite_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14935,1
    - Dst: ImageTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14938,1
    - Dst: IndexedFaceSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14941,1
    - Dst: IndexedLineSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14944,1
    - Dst: IndexedTriangleFanSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14947,1
    - Dst: IndexedTriangleSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14950,1
    - Dst: IndexedTriangleStripSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14953,1
    - Dst: Inline_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14956,1
    - Dst: IntegerSequencer_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14959,1
    - Dst: IntegerTrigger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14962,1
    - Dst: KeySensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14965,1
    - Dst: LineProperties_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14968,1
    - Dst: LineSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14971,1
    - Dst: LoadSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14974,1
    - Dst: LOD_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14977,1
    - Dst: Material_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14980,1
    - Dst: MetadataDouble_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14983,1
    - Dst: MetadataFloat_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14986,1
    - Dst: MetadataInteger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14989,1
    - Dst: MetadataSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14992,1
    - Dst: MetadataString_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14995,1
    - Dst: MovieTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:14998,1
    - Dst: MultiTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15001,1
    - Dst: MultiTextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15004,1
    - Dst: MultiTextureTransform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15007,1
    - Dst: NavigationInfo_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15010,1
    - Dst: Normal_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15013,1
    - Dst: NormalInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15016,1
    - Dst: NurbsCurve_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15019,1
    - Dst: NurbsCurve2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15022,1
    - Dst: NurbsOrientationInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15025,1
    - Dst: NurbsPatchSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15028,1
    - Dst: NurbsPositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15031,1
    - Dst: NurbsSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15034,1
    - Dst: NurbsSurfaceInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15037,1
    - Dst: NurbsSweptSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15040,1
    - Dst: NurbsSwungSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15043,1
    - Dst: NurbsTextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15046,1
    - Dst: NurbsTrimmedSurface_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15049,1
    - Dst: OrientationInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15052,1
    - Dst: PixelTexture_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15055,1
    - Dst: PlaneSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15058,1
    - Dst: PointLight_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15061,1
    - Dst: PointSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15064,1
    - Dst: Polyline2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15067,1
    - Dst: Polypoint2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15070,1
    - Dst: PositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15073,1
    - Dst: PositionInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15076,1
    - Dst: ProximitySensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15079,1
    - Dst: ReceiverPdu_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15082,1
    - Dst: Rectangle2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15085,1
    - Dst: ScalarInterpolator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15088,1
    - Dst: Script_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15091,1
    - Dst: Shape_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15094,1
    - Dst: SignalPdu_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15097,1
    - Dst: Sound_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15100,1
    - Dst: Sphere_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15103,1
    - Dst: SphereSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15106,1
    - Dst: SpotLight_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15109,1
    - Dst: StaticGroup_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15112,1
    - Dst: StringSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15115,1
    - Dst: Switch_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15118,1
    - Dst: Text_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15121,1
    - Dst: TextureBackground_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15124,1
    - Dst: TextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15127,1
    - Dst: TextureCoordinateGenerator_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15130,1
    - Dst: TextureTransform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15133,1
    - Dst: TimeSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15136,1
    - Dst: TimeTrigger_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15139,1
    - Dst: TouchSensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15142,1
    - Dst: Transform_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15145,1
    - Dst: TransmitterPdu_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15148,1
    - Dst: TriangleFanSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15151,1
    - Dst: TriangleSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15154,1
    - Dst: TriangleSet2D_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15157,1
    - Dst: TriangleStripSet_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15160,1
    - Dst: Viewpoint_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15163,1
    - Dst: VisibilitySensor_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15166,1
    - Dst: WorldInfo_Del
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 389
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15174
      start: 14784
    functionDepth: 2
    functionLinenumber: 14784
    functionLinenumberEnd: 15174
    functionName: gf_sg_x3d_node_del
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - Coordinate2D_Del
    - Viewpoint_Del
    - OrientationInterpolator_Del
    - BooleanTrigger_Del
    - DirectionalLight_Del
    - TextureCoordinateGenerator_Del
    - Anchor_Del
    - Sound_Del
    - Fog_Del
    - GeoLocation_Del
    - Polypoint2D_Del
    - MetadataFloat_Del
    - Transform_Del
    - TextureCoordinate_Del
    - Box_Del
    - TriangleSet2D_Del
    - PointSet_Del
    - Contour2D_Del
    - BooleanFilter_Del
    - LoadSensor_Del
    - TriangleSet_Del
    - SphereSensor_Del
    - ElevationGrid_Del
    - GeoOrigin_Del
    - VisibilitySensor_Del
    - IndexedFaceSet_Del
    - MetadataDouble_Del
    - Arc2D_Del
    - GeoPositionInterpolator_Del
    - HAnimSegment_Del
    - GeoTouchSensor_Del
    - LOD_Del
    - HAnimJoint_Del
    - FontStyle_Del
    - BooleanToggle_Del
    - TouchSensor_Del
    - LineSet_Del
    - GeoElevationGrid_Del
    - GeoMetadata_Del
    - NurbsSweptSurface_Del
    - BooleanSequencer_Del
    - Circle2D_Del
    - NurbsCurve_Del
    - Shape_Del
    - ImageTexture_Del
    - PositionInterpolator2D_Del
    - Background_Del
    - CoordinateInterpolator2D_Del
    - MovieTexture_Del
    - PlaneSensor_Del
    - ContourPolyline2D_Del
    - Polyline2D_Del
    - IndexedLineSet_Del
    - NurbsSet_Del
    - NormalInterpolator_Del
    - StaticGroup_Del
    - ColorInterpolator_Del
    - HAnimHumanoid_Del
    - TimeSensor_Del
    - IndexedTriangleSet_Del
    - NurbsTextureCoordinate_Del
    - NurbsOrientationInterpolator_Del
    - IndexedTriangleFanSet_Del
    - SpotLight_Del
    - CoordinateDouble_Del
    - ProximitySensor_Del
    - IndexedTriangleStripSet_Del
    - Billboard_Del
    - Group_Del
    - TriangleStripSet_Del
    - Sphere_Del
    - NavigationInfo_Del
    - ReceiverPdu_Del
    - WorldInfo_Del
    - Disk2D_Del
    - MetadataString_Del
    - PositionInterpolator_Del
    - Switch_Del
    - GeoViewpoint_Del
    - MetadataInteger_Del
    - TransmitterPdu_Del
    - Extrusion_Del
    - AudioClip_Del
    - MultiTexture_Del
    - Inline_Del
    - EspduTransform_Del
    - ArcClose2D_Del
    - KeySensor_Del
    - Cylinder_Del
    - NurbsCurve2D_Del
    - TriangleFanSet_Del
    - IntegerTrigger_Del
    - Text_Del
    - MetadataSet_Del
    - TextureTransform_Del
    - FillProperties_Del
    - NurbsSurfaceInterpolator_Del
    - Coordinate_Del
    - TextureBackground_Del
    - Appearance_Del
    - HAnimDisplacer_Del
    - GeoCoordinate_Del
    - Rectangle2D_Del
    - TimeTrigger_Del
    - NurbsPatchSurface_Del
    - ScalarInterpolator_Del
    - SignalPdu_Del
    - StringSensor_Del
    - Material_Del
    - NurbsPositionInterpolator_Del
    - LineProperties_Del
    - Script_Del
    - PointLight_Del
    - GeoLOD_Del
    - CylinderSensor_Del
    - Normal_Del
    - Cone_Del
    - ColorRGBA_Del
    - CoordinateInterpolator_Del
    - HAnimSite_Del
    - Collision_Del
    - MultiTextureTransform_Del
    - NurbsTrimmedSurface_Del
    - IntegerSequencer_Del
    - Color_Del
    - PixelTexture_Del
    - MultiTextureCoordinate_Del
    - NurbsSwungSurface_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:15180,1
    - Dst: Appearance_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15182,1
    - Dst: Arc2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15184,1
    - Dst: ArcClose2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15186,1
    - Dst: AudioClip_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15188,1
    - Dst: Background_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15190,1
    - Dst: Billboard_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15192,1
    - Dst: BooleanFilter_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15194,1
    - Dst: BooleanSequencer_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15196,1
    - Dst: BooleanToggle_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15198,1
    - Dst: BooleanTrigger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15200,1
    - Dst: Box_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15202,1
    - Dst: Circle2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15204,1
    - Dst: Collision_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15206,1
    - Dst: Color_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15208,1
    - Dst: ColorInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15210,1
    - Dst: ColorRGBA_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15212,1
    - Dst: Cone_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15214,1
    - Dst: Contour2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15216,1
    - Dst: ContourPolyline2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15218,1
    - Dst: Coordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15220,1
    - Dst: CoordinateDouble_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15222,1
    - Dst: Coordinate2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15224,1
    - Dst: CoordinateInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15226,1
    - Dst: CoordinateInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15228,1
    - Dst: Cylinder_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15230,1
    - Dst: CylinderSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15232,1
    - Dst: DirectionalLight_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15234,1
    - Dst: Disk2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15236,1
    - Dst: ElevationGrid_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15238,1
    - Dst: EspduTransform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15240,1
    - Dst: Extrusion_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15242,1
    - Dst: FillProperties_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15244,1
    - Dst: Fog_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15246,1
    - Dst: FontStyle_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15248,1
    - Dst: GeoCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15250,1
    - Dst: GeoElevationGrid_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15252,1
    - Dst: GeoLocation_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15254,1
    - Dst: GeoLOD_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15256,1
    - Dst: GeoMetadata_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15258,1
    - Dst: GeoOrigin_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15260,1
    - Dst: GeoPositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15262,1
    - Dst: GeoTouchSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15264,1
    - Dst: GeoViewpoint_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15266,1
    - Dst: Group_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15268,1
    - Dst: HAnimDisplacer_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15270,1
    - Dst: HAnimHumanoid_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15272,1
    - Dst: HAnimJoint_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15274,1
    - Dst: HAnimSegment_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15276,1
    - Dst: HAnimSite_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15278,1
    - Dst: ImageTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15280,1
    - Dst: IndexedFaceSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15282,1
    - Dst: IndexedLineSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15284,1
    - Dst: IndexedTriangleFanSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15286,1
    - Dst: IndexedTriangleSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15288,1
    - Dst: IndexedTriangleStripSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15290,1
    - Dst: Inline_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15292,1
    - Dst: IntegerSequencer_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15294,1
    - Dst: IntegerTrigger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15296,1
    - Dst: KeySensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15298,1
    - Dst: LineProperties_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15300,1
    - Dst: LineSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15302,1
    - Dst: LoadSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15304,1
    - Dst: LOD_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15306,1
    - Dst: Material_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15308,1
    - Dst: MetadataDouble_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15310,1
    - Dst: MetadataFloat_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15312,1
    - Dst: MetadataInteger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15314,1
    - Dst: MetadataSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15316,1
    - Dst: MetadataString_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15318,1
    - Dst: MovieTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15320,1
    - Dst: MultiTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15322,1
    - Dst: MultiTextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15324,1
    - Dst: MultiTextureTransform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15326,1
    - Dst: NavigationInfo_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15328,1
    - Dst: Normal_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15330,1
    - Dst: NormalInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15332,1
    - Dst: NurbsCurve_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15334,1
    - Dst: NurbsCurve2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15336,1
    - Dst: NurbsOrientationInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15338,1
    - Dst: NurbsPatchSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15340,1
    - Dst: NurbsPositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15342,1
    - Dst: NurbsSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15344,1
    - Dst: NurbsSurfaceInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15346,1
    - Dst: NurbsSweptSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15348,1
    - Dst: NurbsSwungSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15350,1
    - Dst: NurbsTextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15352,1
    - Dst: NurbsTrimmedSurface_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15354,1
    - Dst: OrientationInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15356,1
    - Dst: PixelTexture_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15358,1
    - Dst: PlaneSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15360,1
    - Dst: PointLight_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15362,1
    - Dst: PointSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15364,1
    - Dst: Polyline2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15366,1
    - Dst: Polypoint2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15368,1
    - Dst: PositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15370,1
    - Dst: PositionInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15372,1
    - Dst: ProximitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15374,1
    - Dst: ReceiverPdu_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15376,1
    - Dst: Rectangle2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15378,1
    - Dst: ScalarInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15380,1
    - Dst: Script_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15384,1
    - Dst: Shape_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15387,1
    - Dst: SignalPdu_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15389,1
    - Dst: Sound_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15391,1
    - Dst: Sphere_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15393,1
    - Dst: SphereSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15395,1
    - Dst: SpotLight_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15397,1
    - Dst: StaticGroup_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15399,1
    - Dst: StringSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15401,1
    - Dst: Switch_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15403,1
    - Dst: Text_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15405,1
    - Dst: TextureBackground_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15407,1
    - Dst: TextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15409,1
    - Dst: TextureCoordinateGenerator_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15411,1
    - Dst: TextureTransform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15413,1
    - Dst: TimeSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15415,1
    - Dst: TimeTrigger_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15417,1
    - Dst: TouchSensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15419,1
    - Dst: Transform_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15421,1
    - Dst: TransmitterPdu_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15423,1
    - Dst: TriangleFanSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15425,1
    - Dst: TriangleSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15427,1
    - Dst: TriangleSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15429,1
    - Dst: TriangleStripSet_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15431,1
    - Dst: Viewpoint_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15433,1
    - Dst: VisibilitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15435,1
    - Dst: WorldInfo_get_field_count
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15441
      start: 15176
    functionDepth: 1
    functionLinenumber: 15176
    functionLinenumberEnd: 15441
    functionName: gf_sg_x3d_node_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - FillProperties_get_field_count
    - GeoViewpoint_get_field_count
    - TextureCoordinate_get_field_count
    - Group_get_field_count
    - TouchSensor_get_field_count
    - ReceiverPdu_get_field_count
    - Inline_get_field_count
    - MetadataFloat_get_field_count
    - ArcClose2D_get_field_count
    - BooleanTrigger_get_field_count
    - ElevationGrid_get_field_count
    - TextureCoordinateGenerator_get_field_count
    - HAnimDisplacer_get_field_count
    - Disk2D_get_field_count
    - NurbsTrimmedSurface_get_field_count
    - GeoLocation_get_field_count
    - NurbsPatchSurface_get_field_count
    - MovieTexture_get_field_count
    - GeoCoordinate_get_field_count
    - Billboard_get_field_count
    - Material_get_field_count
    - SpotLight_get_field_count
    - NavigationInfo_get_field_count
    - SphereSensor_get_field_count
    - TimeSensor_get_field_count
    - PointLight_get_field_count
    - HAnimHumanoid_get_field_count
    - NurbsSet_get_field_count
    - PlaneSensor_get_field_count
    - NormalInterpolator_get_field_count
    - Extrusion_get_field_count
    - StringSensor_get_field_count
    - AudioClip_get_field_count
    - Shape_get_field_count
    - Sound_get_field_count
    - GeoPositionInterpolator_get_field_count
    - ProximitySensor_get_field_count
    - LineProperties_get_field_count
    - TextureBackground_get_field_count
    - Circle2D_get_field_count
    - ColorInterpolator_get_field_count
    - KeySensor_get_field_count
    - NurbsSweptSurface_get_field_count
    - GeoMetadata_get_field_count
    - Sphere_get_field_count
    - SignalPdu_get_field_count
    - Appearance_get_field_count
    - Coordinate_get_field_count
    - BooleanToggle_get_field_count
    - CylinderSensor_get_field_count
    - Anchor_get_field_count
    - NurbsCurve2D_get_field_count
    - NurbsSurfaceInterpolator_get_field_count
    - PointSet_get_field_count
    - TriangleStripSet_get_field_count
    - LoadSensor_get_field_count
    - Polypoint2D_get_field_count
    - PositionInterpolator_get_field_count
    - GeoElevationGrid_get_field_count
    - EspduTransform_get_field_count
    - ColorRGBA_get_field_count
    - NurbsPositionInterpolator_get_field_count
    - MetadataDouble_get_field_count
    - MultiTextureCoordinate_get_field_count
    - Collision_get_field_count
    - IndexedTriangleStripSet_get_field_count
    - ImageTexture_get_field_count
    - BooleanSequencer_get_field_count
    - GeoLOD_get_field_count
    - BooleanFilter_get_field_count
    - TextureTransform_get_field_count
    - Fog_get_field_count
    - Text_get_field_count
    - Polyline2D_get_field_count
    - NurbsTextureCoordinate_get_field_count
    - Switch_get_field_count
    - LOD_get_field_count
    - IndexedLineSet_get_field_count
    - Contour2D_get_field_count
    - GeoOrigin_get_field_count
    - StaticGroup_get_field_count
    - PixelTexture_get_field_count
    - WorldInfo_get_field_count
    - Viewpoint_get_field_count
    - HAnimSegment_get_field_count
    - Transform_get_field_count
    - IndexedTriangleSet_get_field_count
    - IntegerSequencer_get_field_count
    - NurbsSwungSurface_get_field_count
    - NurbsCurve_get_field_count
    - DirectionalLight_get_field_count
    - GeoTouchSensor_get_field_count
    - Normal_get_field_count
    - CoordinateInterpolator_get_field_count
    - HAnimSite_get_field_count
    - OrientationInterpolator_get_field_count
    - Arc2D_get_field_count
    - FontStyle_get_field_count
    - IndexedTriangleFanSet_get_field_count
    - MultiTexture_get_field_count
    - TriangleFanSet_get_field_count
    - CoordinateInterpolator2D_get_field_count
    - HAnimJoint_get_field_count
    - PositionInterpolator2D_get_field_count
    - ScalarInterpolator_get_field_count
    - TimeTrigger_get_field_count
    - TriangleSet_get_field_count
    - MetadataSet_get_field_count
    - Coordinate2D_get_field_count
    - TriangleSet2D_get_field_count
    - IntegerTrigger_get_field_count
    - TransmitterPdu_get_field_count
    - VisibilitySensor_get_field_count
    - MultiTextureTransform_get_field_count
    - Color_get_field_count
    - Background_get_field_count
    - IndexedFaceSet_get_field_count
    - Cone_get_field_count
    - NurbsOrientationInterpolator_get_field_count
    - Cylinder_get_field_count
    - ContourPolyline2D_get_field_count
    - Box_get_field_count
    - LineSet_get_field_count
    - CoordinateDouble_get_field_count
    - Script_get_field_count
    - MetadataInteger_get_field_count
    - Rectangle2D_get_field_count
    - MetadataString_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:15447,1
    - Dst: Appearance_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15449,1
    - Dst: Arc2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15451,1
    - Dst: ArcClose2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15453,1
    - Dst: AudioClip_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15455,1
    - Dst: Background_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15457,1
    - Dst: Billboard_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15459,1
    - Dst: BooleanFilter_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15461,1
    - Dst: BooleanSequencer_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15463,1
    - Dst: BooleanToggle_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15465,1
    - Dst: BooleanTrigger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15467,1
    - Dst: Box_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15469,1
    - Dst: Circle2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15471,1
    - Dst: Collision_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15473,1
    - Dst: Color_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15475,1
    - Dst: ColorInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15477,1
    - Dst: ColorRGBA_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15479,1
    - Dst: Cone_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15481,1
    - Dst: Contour2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15483,1
    - Dst: ContourPolyline2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15485,1
    - Dst: Coordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15487,1
    - Dst: CoordinateDouble_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15489,1
    - Dst: Coordinate2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15491,1
    - Dst: CoordinateInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15493,1
    - Dst: CoordinateInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15495,1
    - Dst: Cylinder_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15497,1
    - Dst: CylinderSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15499,1
    - Dst: DirectionalLight_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15501,1
    - Dst: Disk2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15503,1
    - Dst: ElevationGrid_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15505,1
    - Dst: EspduTransform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15507,1
    - Dst: Extrusion_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15509,1
    - Dst: FillProperties_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15511,1
    - Dst: Fog_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15513,1
    - Dst: FontStyle_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15515,1
    - Dst: GeoCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15517,1
    - Dst: GeoElevationGrid_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15519,1
    - Dst: GeoLocation_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15521,1
    - Dst: GeoLOD_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15523,1
    - Dst: GeoMetadata_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15525,1
    - Dst: GeoOrigin_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15527,1
    - Dst: GeoPositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15529,1
    - Dst: GeoTouchSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15531,1
    - Dst: GeoViewpoint_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15533,1
    - Dst: Group_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15535,1
    - Dst: HAnimDisplacer_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15537,1
    - Dst: HAnimHumanoid_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15539,1
    - Dst: HAnimJoint_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15541,1
    - Dst: HAnimSegment_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15543,1
    - Dst: HAnimSite_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15545,1
    - Dst: ImageTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15547,1
    - Dst: IndexedFaceSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15549,1
    - Dst: IndexedLineSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15551,1
    - Dst: IndexedTriangleFanSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15553,1
    - Dst: IndexedTriangleSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15555,1
    - Dst: IndexedTriangleStripSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15557,1
    - Dst: Inline_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15559,1
    - Dst: IntegerSequencer_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15561,1
    - Dst: IntegerTrigger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15563,1
    - Dst: KeySensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15565,1
    - Dst: LineProperties_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15567,1
    - Dst: LineSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15569,1
    - Dst: LoadSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15571,1
    - Dst: LOD_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15573,1
    - Dst: Material_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15575,1
    - Dst: MetadataDouble_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15577,1
    - Dst: MetadataFloat_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15579,1
    - Dst: MetadataInteger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15581,1
    - Dst: MetadataSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15583,1
    - Dst: MetadataString_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15585,1
    - Dst: MovieTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15587,1
    - Dst: MultiTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15589,1
    - Dst: MultiTextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15591,1
    - Dst: MultiTextureTransform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15593,1
    - Dst: NavigationInfo_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15595,1
    - Dst: Normal_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15597,1
    - Dst: NormalInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15599,1
    - Dst: NurbsCurve_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15601,1
    - Dst: NurbsCurve2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15603,1
    - Dst: NurbsOrientationInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15605,1
    - Dst: NurbsPatchSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15607,1
    - Dst: NurbsPositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15609,1
    - Dst: NurbsSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15611,1
    - Dst: NurbsSurfaceInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15613,1
    - Dst: NurbsSweptSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15615,1
    - Dst: NurbsSwungSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15617,1
    - Dst: NurbsTextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15619,1
    - Dst: NurbsTrimmedSurface_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15621,1
    - Dst: OrientationInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15623,1
    - Dst: PixelTexture_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15625,1
    - Dst: PlaneSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15627,1
    - Dst: PointLight_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15629,1
    - Dst: PointSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15631,1
    - Dst: Polyline2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15633,1
    - Dst: Polypoint2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15635,1
    - Dst: PositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15637,1
    - Dst: PositionInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15639,1
    - Dst: ProximitySensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15641,1
    - Dst: ReceiverPdu_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15643,1
    - Dst: Rectangle2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15645,1
    - Dst: ScalarInterpolator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15647,1
    - Dst: Script_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15649,1
    - Dst: Shape_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15651,1
    - Dst: SignalPdu_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15653,1
    - Dst: Sound_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15655,1
    - Dst: Sphere_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15657,1
    - Dst: SphereSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15659,1
    - Dst: SpotLight_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15661,1
    - Dst: StaticGroup_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15663,1
    - Dst: StringSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15665,1
    - Dst: Switch_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15667,1
    - Dst: Text_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15669,1
    - Dst: TextureBackground_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15671,1
    - Dst: TextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15673,1
    - Dst: TextureCoordinateGenerator_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15675,1
    - Dst: TextureTransform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15677,1
    - Dst: TimeSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15679,1
    - Dst: TimeTrigger_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15681,1
    - Dst: TouchSensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15683,1
    - Dst: Transform_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15685,1
    - Dst: TransmitterPdu_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15687,1
    - Dst: TriangleFanSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15689,1
    - Dst: TriangleSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15691,1
    - Dst: TriangleSet2D_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15693,1
    - Dst: TriangleStripSet_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15695,1
    - Dst: Viewpoint_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15697,1
    - Dst: VisibilitySensor_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15699,1
    - Dst: WorldInfo_get_field
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15701,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15705
      start: 15443
    functionDepth: 1
    functionLinenumber: 15443
    functionLinenumberEnd: 15705
    functionName: gf_sg_x3d_node_get_field
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - Viewpoint_get_field
    - IntegerSequencer_get_field
    - TextureCoordinate_get_field
    - GeoViewpoint_get_field
    - Cylinder_get_field
    - Material_get_field
    - HAnimJoint_get_field
    - TimeSensor_get_field
    - GeoTouchSensor_get_field
    - NurbsOrientationInterpolator_get_field
    - Script_get_field
    - PlaneSensor_get_field
    - GeoPositionInterpolator_get_field
    - TimeTrigger_get_field
    - MovieTexture_get_field
    - TextureCoordinateGenerator_get_field
    - TextureBackground_get_field
    - NurbsCurve_get_field
    - EspduTransform_get_field
    - ColorInterpolator_get_field
    - HAnimHumanoid_get_field
    - MetadataInteger_get_field
    - BooleanTrigger_get_field
    - BooleanSequencer_get_field
    - TriangleSet2D_get_field
    - NurbsPositionInterpolator_get_field
    - Box_get_field
    - NurbsSweptSurface_get_field
    - HAnimSite_get_field
    - NurbsCurve2D_get_field
    - ScalarInterpolator_get_field
    - Text_get_field
    - SphereSensor_get_field
    - DirectionalLight_get_field
    - Shape_get_field
    - Inline_get_field
    - Cone_get_field
    - NurbsTextureCoordinate_get_field
    - Appearance_get_field
    - HAnimDisplacer_get_field
    - Coordinate2D_get_field
    - Normal_get_field
    - PointSet_get_field
    - Switch_get_field
    - CoordinateInterpolator2D_get_field
    - GeoOrigin_get_field
    - Polypoint2D_get_field
    - Anchor_get_field
    - GeoLocation_get_field
    - SpotLight_get_field
    - NurbsSurfaceInterpolator_get_field
    - Arc2D_get_field
    - Disk2D_get_field
    - CoordinateInterpolator_get_field
    - GeoCoordinate_get_field
    - AudioClip_get_field
    - IndexedTriangleFanSet_get_field
    - SignalPdu_get_field
    - LOD_get_field
    - Sphere_get_field
    - TransmitterPdu_get_field
    - Extrusion_get_field
    - Billboard_get_field
    - TriangleStripSet_get_field
    - ElevationGrid_get_field
    - MetadataSet_get_field
    - Sound_get_field
    - LineSet_get_field
    - VisibilitySensor_get_field
    - NurbsTrimmedSurface_get_field
    - MetadataString_get_field
    - IntegerTrigger_get_field
    - StringSensor_get_field
    - ColorRGBA_get_field
    - BooleanToggle_get_field
    - LineProperties_get_field
    - GeoElevationGrid_get_field
    - LoadSensor_get_field
    - ArcClose2D_get_field
    - Coordinate_get_field
    - TouchSensor_get_field
    - FillProperties_get_field
    - Contour2D_get_field
    - NavigationInfo_get_field
    - MultiTexture_get_field
    - OrientationInterpolator_get_field
    - KeySensor_get_field
    - PositionInterpolator2D_get_field
    - CoordinateDouble_get_field
    - Color_get_field
    - GeoLOD_get_field
    - IndexedTriangleSet_get_field
    - MultiTextureCoordinate_get_field
    - MetadataFloat_get_field
    - IndexedFaceSet_get_field
    - ReceiverPdu_get_field
    - MultiTextureTransform_get_field
    - PositionInterpolator_get_field
    - GeoMetadata_get_field
    - Fog_get_field
    - HAnimSegment_get_field
    - Rectangle2D_get_field
    - WorldInfo_get_field
    - NormalInterpolator_get_field
    - ProximitySensor_get_field
    - TriangleSet_get_field
    - Background_get_field
    - NurbsSwungSurface_get_field
    - TextureTransform_get_field
    - PointLight_get_field
    - PixelTexture_get_field
    - Collision_get_field
    - FontStyle_get_field
    - ImageTexture_get_field
    - ContourPolyline2D_get_field
    - CylinderSensor_get_field
    - IndexedTriangleStripSet_get_field
    - BooleanFilter_get_field
    - Group_get_field
    - MetadataDouble_get_field
    - NurbsSet_get_field
    - StaticGroup_get_field
    - Polyline2D_get_field
    - Circle2D_get_field
    - TriangleFanSet_get_field
    - Transform_get_field
    - IndexedLineSet_get_field
    - NurbsPatchSurface_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:15712,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15713,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15714,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15715,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15716,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15717,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15718,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15719,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15720,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15721,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15722,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15723,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15724,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15725,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15726,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15727,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15728,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15729,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15730,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15731,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15732,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15733,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15734,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15735,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15736,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15737,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15738,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15739,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15740,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15741,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15742,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15743,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15744,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15746,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15747,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15748,1
    - 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
    CyclomaticComplexity: 129
    EdgeCount: 129
    ICount: 260
    argCount: 1
    argNames:
    - node_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15841
      start: 15708
    functionDepth: 0
    functionLinenumber: 15708
    functionLinenumberEnd: 15841
    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:15847,1
    - Dst: Appearance_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15849,1
    - Dst: Arc2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15851,1
    - Dst: ArcClose2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15853,1
    - Dst: AudioClip_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15855,1
    - Dst: Background_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15857,1
    - Dst: Billboard_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15859,1
    - Dst: BooleanFilter_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15861,1
    - Dst: BooleanSequencer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15863,1
    - Dst: BooleanToggle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15865,1
    - Dst: BooleanTrigger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15867,1
    - Dst: Box_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15869,1
    - Dst: Circle2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15871,1
    - Dst: Collision_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15873,1
    - Dst: Color_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15875,1
    - Dst: ColorInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15877,1
    - Dst: ColorRGBA_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15879,1
    - Dst: Cone_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15881,1
    - Dst: Contour2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15883,1
    - Dst: ContourPolyline2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15885,1
    - Dst: Coordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15887,1
    - Dst: CoordinateDouble_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15889,1
    - Dst: Coordinate2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15891,1
    - Dst: CoordinateInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15893,1
    - Dst: CoordinateInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15895,1
    - Dst: Cylinder_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15897,1
    - Dst: CylinderSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15899,1
    - Dst: DirectionalLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15901,1
    - Dst: Disk2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15903,1
    - Dst: ElevationGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15905,1
    - Dst: EspduTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15907,1
    - Dst: Extrusion_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15909,1
    - Dst: FillProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15911,1
    - Dst: Fog_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15913,1
    - Dst: FontStyle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15915,1
    - Dst: GeoCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15917,1
    - Dst: GeoElevationGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15919,1
    - Dst: GeoLocation_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15921,1
    - Dst: GeoLOD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15923,1
    - Dst: GeoMetadata_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15925,1
    - Dst: GeoOrigin_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15927,1
    - Dst: GeoPositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15929,1
    - Dst: GeoTouchSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15931,1
    - Dst: GeoViewpoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15933,1
    - Dst: Group_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15935,1
    - Dst: HAnimDisplacer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15937,1
    - Dst: HAnimHumanoid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15939,1
    - Dst: HAnimJoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15941,1
    - Dst: HAnimSegment_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15943,1
    - Dst: HAnimSite_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15945,1
    - Dst: ImageTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15947,1
    - Dst: IndexedFaceSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15949,1
    - Dst: IndexedLineSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15951,1
    - Dst: IndexedTriangleFanSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15953,1
    - Dst: IndexedTriangleSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15955,1
    - Dst: IndexedTriangleStripSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15957,1
    - Dst: Inline_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15959,1
    - Dst: IntegerSequencer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15961,1
    - Dst: IntegerTrigger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15963,1
    - Dst: KeySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15965,1
    - Dst: LineProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15967,1
    - Dst: LineSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15969,1
    - Dst: LoadSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15971,1
    - Dst: LOD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15973,1
    - Dst: Material_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15975,1
    - Dst: MetadataDouble_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15977,1
    - Dst: MetadataFloat_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15979,1
    - Dst: MetadataInteger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15981,1
    - Dst: MetadataSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15983,1
    - Dst: MetadataString_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15985,1
    - Dst: MovieTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15987,1
    - Dst: MultiTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15989,1
    - Dst: MultiTextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15991,1
    - Dst: MultiTextureTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15993,1
    - Dst: NavigationInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15995,1
    - Dst: Normal_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15997,1
    - Dst: NormalInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:15999,1
    - Dst: NurbsCurve_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16001,1
    - Dst: NurbsCurve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16003,1
    - Dst: NurbsOrientationInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16005,1
    - Dst: NurbsPatchSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16007,1
    - Dst: NurbsPositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16009,1
    - Dst: NurbsSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16011,1
    - Dst: NurbsSurfaceInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16013,1
    - Dst: NurbsSweptSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16015,1
    - Dst: NurbsSwungSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16017,1
    - Dst: NurbsTextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16019,1
    - Dst: NurbsTrimmedSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16021,1
    - Dst: OrientationInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16023,1
    - Dst: PixelTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16025,1
    - Dst: PlaneSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16027,1
    - Dst: PointLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16029,1
    - Dst: PointSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16031,1
    - Dst: Polyline2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16033,1
    - Dst: Polypoint2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16035,1
    - Dst: PositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16037,1
    - Dst: PositionInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16039,1
    - Dst: ProximitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16041,1
    - Dst: ReceiverPdu_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16043,1
    - Dst: Rectangle2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16045,1
    - Dst: ScalarInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16047,1
    - Dst: Script_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16051,1
    - Dst: Shape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16054,1
    - Dst: SignalPdu_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16056,1
    - Dst: Sound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16058,1
    - Dst: Sphere_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16060,1
    - Dst: SphereSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16062,1
    - Dst: SpotLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16064,1
    - Dst: StaticGroup_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16066,1
    - Dst: StringSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16068,1
    - Dst: Switch_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16070,1
    - Dst: Text_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16072,1
    - Dst: TextureBackground_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16074,1
    - Dst: TextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16076,1
    - Dst: TextureCoordinateGenerator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16078,1
    - Dst: TextureTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16080,1
    - Dst: TimeSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16082,1
    - Dst: TimeTrigger_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16084,1
    - Dst: TouchSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16086,1
    - Dst: Transform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16088,1
    - Dst: TransmitterPdu_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16090,1
    - Dst: TriangleFanSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16092,1
    - Dst: TriangleSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16094,1
    - Dst: TriangleSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16096,1
    - Dst: TriangleStripSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16098,1
    - Dst: Viewpoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16100,1
    - Dst: VisibilitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16102,1
    - Dst: WorldInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/x3d_nodes.c:16104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 261
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16108
      start: 15843
    functionDepth: 1
    functionLinenumber: 15843
    functionLinenumberEnd: 16108
    functionName: gf_sg_x3d_node_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/x3d_nodes.c
    functionUses: 0
    functionsReached:
    - Sound_get_field_index_by_name
    - Coordinate_get_field_index_by_name
    - CoordinateInterpolator_get_field_index_by_name
    - Cone_get_field_index_by_name
    - NurbsOrientationInterpolator_get_field_index_by_name
    - HAnimHumanoid_get_field_index_by_name
    - PositionInterpolator2D_get_field_index_by_name
    - Box_get_field_index_by_name
    - ColorInterpolator_get_field_index_by_name
    - BooleanFilter_get_field_index_by_name
    - DirectionalLight_get_field_index_by_name
    - Inline_get_field_index_by_name
    - GeoLocation_get_field_index_by_name
    - SignalPdu_get_field_index_by_name
    - Polyline2D_get_field_index_by_name
    - ReceiverPdu_get_field_index_by_name
    - WorldInfo_get_field_index_by_name
    - FontStyle_get_field_index_by_name
    - GeoElevationGrid_get_field_index_by_name
    - Sphere_get_field_index_by_name
    - ImageTexture_get_field_index_by_name
    - TriangleStripSet_get_field_index_by_name
    - NurbsCurve_get_field_index_by_name
    - IndexedTriangleStripSet_get_field_index_by_name
    - OrientationInterpolator_get_field_index_by_name
    - AudioClip_get_field_index_by_name
    - Polypoint2D_get_field_index_by_name
    - Extrusion_get_field_index_by_name
    - Anchor_get_field_index_by_name
    - LOD_get_field_index_by_name
    - GeoCoordinate_get_field_index_by_name
    - IntegerTrigger_get_field_index_by_name
    - TimeSensor_get_field_index_by_name
    - CoordinateDouble_get_field_index_by_name
    - GeoLOD_get_field_index_by_name
    - PixelTexture_get_field_index_by_name
    - SphereSensor_get_field_index_by_name
    - Billboard_get_field_index_by_name
    - LoadSensor_get_field_index_by_name
    - IndexedTriangleFanSet_get_field_index_by_name
    - HAnimSegment_get_field_index_by_name
    - StaticGroup_get_field_index_by_name
    - Collision_get_field_index_by_name
    - Transform_get_field_index_by_name
    - Background_get_field_index_by_name
    - NurbsSwungSurface_get_field_index_by_name
    - ArcClose2D_get_field_index_by_name
    - Script_get_field_index_by_name
    - Shape_get_field_index_by_name
    - VisibilitySensor_get_field_index_by_name
    - TriangleFanSet_get_field_index_by_name
    - GeoPositionInterpolator_get_field_index_by_name
    - Arc2D_get_field_index_by_name
    - TransmitterPdu_get_field_index_by_name
    - TextureBackground_get_field_index_by_name
    - Cylinder_get_field_index_by_name
    - MetadataDouble_get_field_index_by_name
    - HAnimSite_get_field_index_by_name
    - NurbsSurfaceInterpolator_get_field_index_by_name
    - Viewpoint_get_field_index_by_name
    - ColorRGBA_get_field_index_by_name
    - TextureTransform_get_field_index_by_name
    - GeoTouchSensor_get_field_index_by_name
    - ProximitySensor_get_field_index_by_name
    - LineProperties_get_field_index_by_name
    - IndexedLineSet_get_field_index_by_name
    - TimeTrigger_get_field_index_by_name
    - HAnimDisplacer_get_field_index_by_name
    - Contour2D_get_field_index_by_name
    - IntegerSequencer_get_field_index_by_name
    - NavigationInfo_get_field_index_by_name
    - TextureCoordinate_get_field_index_by_name
    - MovieTexture_get_field_index_by_name
    - CoordinateInterpolator2D_get_field_index_by_name
    - CylinderSensor_get_field_index_by_name
    - Normal_get_field_index_by_name
    - PositionInterpolator_get_field_index_by_name
    - Disk2D_get_field_index_by_name
    - TriangleSet_get_field_index_by_name
    - NurbsTextureCoordinate_get_field_index_by_name
    - IndexedTriangleSet_get_field_index_by_name
    - Appearance_get_field_index_by_name
    - GeoMetadata_get_field_index_by_name
    - PointLight_get_field_index_by_name
    - Switch_get_field_index_by_name
    - Group_get_field_index_by_name
    - MultiTextureCoordinate_get_field_index_by_name
    - MetadataString_get_field_index_by_name
    - TextureCoordinateGenerator_get_field_index_by_name
    - Coordinate2D_get_field_index_by_name
    - MetadataSet_get_field_index_by_name
    - SpotLight_get_field_index_by_name
    - Text_get_field_index_by_name
    - BooleanToggle_get_field_index_by_name
    - Rectangle2D_get_field_index_by_name
    - BooleanSequencer_get_field_index_by_name
    - ContourPolyline2D_get_field_index_by_name
    - ElevationGrid_get_field_index_by_name
    - PlaneSensor_get_field_index_by_name
    - Fog_get_field_index_by_name
    - Circle2D_get_field_index_by_name
    - NurbsPatchSurface_get_field_index_by_name
    - TouchSensor_get_field_index_by_name
    - FillProperties_get_field_index_by_name
    - GeoOrigin_get_field_index_by_name
    - HAnimJoint_get_field_index_by_name
    - LineSet_get_field_index_by_name
    - PointSet_get_field_index_by_name
    - MetadataFloat_get_field_index_by_name
    - GeoViewpoint_get_field_index_by_name
    - NurbsPositionInterpolator_get_field_index_by_name
    - MultiTexture_get_field_index_by_name
    - NormalInterpolator_get_field_index_by_name
    - StringSensor_get_field_index_by_name
    - BooleanTrigger_get_field_index_by_name
    - EspduTransform_get_field_index_by_name
    - TriangleSet2D_get_field_index_by_name
    - IndexedFaceSet_get_field_index_by_name
    - KeySensor_get_field_index_by_name
    - MultiTextureTransform_get_field_index_by_name
    - ScalarInterpolator_get_field_index_by_name
    - NurbsTrimmedSurface_get_field_index_by_name
    - NurbsSet_get_field_index_by_name
    - MetadataInteger_get_field_index_by_name
    - Color_get_field_index_by_name
    - NurbsSweptSurface_get_field_index_by_name
    - NurbsCurve2D_get_field_index_by_name
    - Material_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: 16401
      start: 16266
    functionDepth: 0
    functionLinenumber: 16266
    functionLinenumberEnd: 16401
    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:
    - log10
    - round_ieee_754
    - fabs
    - pow
    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
    - strupr
    - strlen
    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:
    - strcmp
    - INT2FIX
    - gf_color_parse
    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: 15
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:720,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:721,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:727,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:730,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:735,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:739,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: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:744,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:745,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:746,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:749,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:749,1
    - Dst: strstr
      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:755,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:759,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:760,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:767,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:768,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:769,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:776,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:777,1
    - Dst: svg_parse_named_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:790,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:794,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:795,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:796,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 82
    argCount: 3
    argNames:
    - col
    - attribute_content
    - out_e
    argTypes:
    - SVG_Color*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 802
    functionName: svg_parse_color
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - strstr
    - INT2FIX
    - strcmp
    - strlen
    - sscanf
    - svg_parse_named_color
    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:823,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:826,1
    - Dst: pow
      Src: /src/gpac/src/scenegraph/svg_attributes.c:857,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:859,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:867,1
    - Dst: pow
      Src: /src/gpac/src/scenegraph/svg_attributes.c:888,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:890,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:899,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:899,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:901,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: 907
      start: 813
    functionDepth: 1
    functionLinenumber: 813
    functionLinenumberEnd: 907
    functionName: svg_parse_number
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strchr
    - FLT2FIX
    - GF_LOG
    - gf_mulfix
    - pow
    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:933,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:939,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:942,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:947,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:953,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:956,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:958,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:960,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:962,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:964,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:966,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:968,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:970,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:974,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 55
    argCount: 2
    argNames:
    - d
    - clock_value
    argTypes:
    - char*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 979
      start: 912
    functionDepth: 0
    functionLinenumber: 912
    functionLinenumberEnd: 979
    functionName: svg_parse_clock_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strchr
    - strpbrk
    - sscanf
    - strstr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err svg_parse_clock_value(char *d, Double *clock_value)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:996,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1000,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1006,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: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1021,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1022,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1024,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1027,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1030,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1033,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1034,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1035,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1036,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1043,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1049,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1052,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1054,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1054,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1057,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1067,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1069,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1070,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1073,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1079,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1081,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1085,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1088,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1093,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1093,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1102,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1107,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1111,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 107
    argCount: 3
    argNames:
    - elt
    - v
    - d
    argTypes:
    - GF_Node*
    - SMIL_Time*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 988
    functionDepth: 1
    functionLinenumber: 988
    functionLinenumberEnd: 1117
    functionName: smil_parse_time
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strchr
    - atoi
    - gf_dom_get_key_type
    - GF_LOG
    - strstr
    - gf_dom_event_type_by_name
    - strcmp
    - sscanf
    - gf_strdup
    - strlen
    - 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:1128,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1136,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1144,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1154,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1159,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1160,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1161,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1167,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1171,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1174,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1182,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1191,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1196,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1197,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1198,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1207,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1210,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1218,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1227,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1233,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1238,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1239,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1240,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1249,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1252,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1260,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1264,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1265,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1266,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1275,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1278,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1286,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1290,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1291,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1292,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1301,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1304,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1311,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1315,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1317,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1323,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1329,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1335,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1339,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1341,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1345,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1358,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 250
    argCount: 2
    argNames:
    - mat
    - attribute_content
    argTypes:
    - GF_Matrix2D*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1120
    functionDepth: 2
    functionLinenumber: 1120
    functionLinenumberEnd: 1365
    functionName: gf_svg_parse_transformlist
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_mx2d_add_translation
    - gf_mx2d_add_skew_y
    - GF_LOG
    - gf_mx2d_add_scale
    - gf_mx2d_copy
    - gf_mx2d_add_skew_x
    - svg_parse_number
    - strstr
    - gf_mx2d_add_rotation
    - gf_mx2d_add_matrix
    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:1376,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1378,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1395,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1401,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1416,1
    - Dst: gf_svg_parse_transformlist
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1420,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1422,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - t
    - attribute_content
    argTypes:
    - SVG_Transform*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1368
    functionDepth: 3
    functionLinenumber: 1368
    functionLinenumberEnd: 1427
    functionName: svg_parse_transform
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - GF_LOG
    - gf_svg_parse_transformlist
    - svg_parse_number
    - strstr
    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:1470,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1473,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1481,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1495,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1498,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1506,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1517,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1525,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1536,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1544,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1555,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1558,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1565,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1568,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1575,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1578,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1586,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1598,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1601,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1608,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1611,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1624,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1627,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1640,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1643,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1650,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1653,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1661,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1672,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1675,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1683,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1693,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1696,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1700,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1703,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1706,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1710,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1713,1
    - Dst: gf_path_add_svg_arc_to
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1721,1
    - Dst: gf_path_close
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1731,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: 1751
      start: 1435
    functionDepth: 2
    functionLinenumber: 1435
    functionLinenumberEnd: 1751
    functionName: svg_parse_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_path_close
    - gf_path_add_line_to
    - gf_path_add_move_to
    - gf_path_add_cubic_to
    - gf_path_add_svg_arc_to
    - svg_parse_number
    - gf_path_add_quadratic_to
    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:1760,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1766,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1782,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1784,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1787,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1789,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1791,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1792,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1806,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1808,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1811,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1813,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1815,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1816,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1829,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1831,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1834,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1836,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1838,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1850,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1852,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1855,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1857,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1859,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: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1879,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1881,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1883,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1884,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: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1906,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1908,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1910,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1911,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: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1933,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1935,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1937,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1938,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1952,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1954,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1957,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1959,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1961,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1962,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1977,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1979,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1982,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1984,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1986,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1987,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1989,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_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1994,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1996,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1998,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:1999,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2013,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2015,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: 2037
      start: 1754
    functionDepth: 2
    functionLinenumber: 1754
    functionLinenumberEnd: 2037
    functionName: svg_parse_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - strlen
    - GF_SAFEALLOC
    - svg_parse_number
    - gf_list_add
    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:2043,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2048,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2049,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2054,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2058,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - elt
    - iri
    - attribute_content
    argTypes:
    - GF_Node*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2060
      start: 2040
    functionDepth: 1
    functionLinenumber: 2040
    functionLinenumberEnd: 2060
    functionName: svg_parse_iri
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_node_register_iri
    - gf_free
    - gf_sg_find_node_by_name
    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:2065,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2067,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2069,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: 2071
      start: 2062
    functionDepth: 1
    functionLinenumber: 2062
    functionLinenumberEnd: 2071
    functionName: svg_parse_idref
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_node_register_iri
    - gf_sg_find_node_by_name
    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:2076,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2078,1
    - Dst: strncmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2080,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2081,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2084,1
    - Dst: svg_parse_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2088,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: 2090
      start: 2074
    functionDepth: 3
    functionLinenumber: 2074
    functionLinenumberEnd: 2090
    functionName: svg_parse_paint
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_parse_color
    - strrchr
    - strcmp
    - svg_parse_iri
    - strncmp
    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:2103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2106,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2109,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2112,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: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2123,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2125,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2127,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2129,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2146,1
    - Dst: MAX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2153,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2153,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: 2155
      start: 2093
    functionDepth: 2
    functionLinenumber: 2093
    functionLinenumberEnd: 2155
    functionName: svg_parse_length
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - MIN
    - MAX
    - strcmp
    - svg_parse_number
    - strstr
    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:2159,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2161,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2163,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2165,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: 2170
      start: 2157
    functionDepth: 0
    functionLinenumber: 2157
    functionLinenumberEnd: 2170
    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: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
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2202,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2204,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2206,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2208,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: 2213
      start: 2172
    functionDepth: 0
    functionLinenumber: 2172
    functionLinenumberEnd: 2213
    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:2217,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2219,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2221,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2223,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2225,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: 2230
      start: 2215
    functionDepth: 0
    functionLinenumber: 2215
    functionLinenumberEnd: 2230
    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:2234,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2236,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2238,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2240,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: 2245
      start: 2232
    functionDepth: 0
    functionLinenumber: 2232
    functionLinenumberEnd: 2245
    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: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
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2263,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2265,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2269,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: 2274
      start: 2247
    functionDepth: 0
    functionLinenumber: 2247
    functionLinenumberEnd: 2274
    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: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
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2284,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2286,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2288,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2290,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: 2295
      start: 2276
    functionDepth: 0
    functionLinenumber: 2276
    functionLinenumberEnd: 2295
    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:2299,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2301,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2303,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: 2308
      start: 2297
    functionDepth: 0
    functionLinenumber: 2297
    functionLinenumberEnd: 2308
    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:2312,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2314,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: 2319
      start: 2310
    functionDepth: 0
    functionLinenumber: 2310
    functionLinenumberEnd: 2319
    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:2323,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2325,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: 2330
      start: 2321
    functionDepth: 0
    functionLinenumber: 2321
    functionLinenumberEnd: 2330
    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:2334,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2336,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: 2341
      start: 2332
    functionDepth: 0
    functionLinenumber: 2332
    functionLinenumberEnd: 2341
    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:2345,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2347,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: 2352
      start: 2343
    functionDepth: 0
    functionLinenumber: 2343
    functionLinenumberEnd: 2352
    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:2356,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2358,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: 2363
      start: 2354
    functionDepth: 0
    functionLinenumber: 2354
    functionLinenumberEnd: 2363
    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:2367,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2369,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: 2374
      start: 2365
    functionDepth: 0
    functionLinenumber: 2365
    functionLinenumberEnd: 2374
    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:2378,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2380,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2382,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2384,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2386,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: 2391
      start: 2376
    functionDepth: 0
    functionLinenumber: 2376
    functionLinenumberEnd: 2391
    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:2395,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2397,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2399,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2401,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: 2406
      start: 2393
    functionDepth: 0
    functionLinenumber: 2393
    functionLinenumberEnd: 2406
    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:2410,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2412,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2414,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: 2419
      start: 2408
    functionDepth: 0
    functionLinenumber: 2408
    functionLinenumberEnd: 2419
    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:2423,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2425,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2427,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2429,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: 2434
      start: 2421
    functionDepth: 0
    functionLinenumber: 2421
    functionLinenumberEnd: 2434
    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:2438,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2440,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2442,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2444,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: 2449
      start: 2436
    functionDepth: 0
    functionLinenumber: 2436
    functionLinenumberEnd: 2449
    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:2453,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2457,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: 2459
      start: 2451
    functionDepth: 0
    functionLinenumber: 2451
    functionLinenumberEnd: 2459
    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:2463,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2469,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2471,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: 2476
      start: 2461
    functionDepth: 0
    functionLinenumber: 2461
    functionLinenumberEnd: 2476
    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: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
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2502,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2504,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2506,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2508,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: 2513
      start: 2478
    functionDepth: 0
    functionLinenumber: 2478
    functionLinenumberEnd: 2513
    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:2517,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2519,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2521,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: 2526
      start: 2515
    functionDepth: 0
    functionLinenumber: 2515
    functionLinenumberEnd: 2526
    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:2531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2531,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: 2535
      start: 2528
    functionDepth: 0
    functionLinenumber: 2528
    functionLinenumberEnd: 2535
    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:2550,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2554,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2557,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2562,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2564,1
    - Dst: smil_parse_time
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2575,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2577,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2581,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2582,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2584,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2586,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2589,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2594,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2599,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2606,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2607,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2609,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2611,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2611,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2613,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2622,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2624,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2625,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2626,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2627,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2633,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2637,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: 2649
      start: 2538
    functionDepth: 2
    functionLinenumber: 2538
    functionLinenumberEnd: 2649
    functionName: smil_parse_time_list
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_free
    - smil_parse_time
    - GF_LOG
    - gf_list_get
    - gf_list_del
    - gf_list_new
    - GF_SAFEALLOC
    - strlen
    - gf_list_insert
    - gf_list_add
    - memcpy
    - 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:2653,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2655,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2657,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: 2662
      start: 2651
    functionDepth: 0
    functionLinenumber: 2651
    functionLinenumberEnd: 2662
    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:2666,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2668,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2672,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: 2680
      start: 2664
    functionDepth: 1
    functionLinenumber: 2664
    functionLinenumberEnd: 2680
    functionName: smil_parse_min_max_dur_repeatdur
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_parse_clock_value
    - strcmp
    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:2684,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2688,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2690,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: 2695
      start: 2682
    functionDepth: 1
    functionLinenumber: 2682
    functionLinenumberEnd: 2695
    functionName: smil_parse_repeatcount
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - sscanf
    - strcmp
    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:2699,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2701,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: 2706
      start: 2697
    functionDepth: 0
    functionLinenumber: 2697
    functionLinenumberEnd: 2706
    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:2710,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2712,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2714,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: 2719
      start: 2708
    functionDepth: 0
    functionLinenumber: 2708
    functionLinenumberEnd: 2719
    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:2723,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2725,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2727,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2729,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: 2734
      start: 2721
    functionDepth: 0
    functionLinenumber: 2721
    functionLinenumberEnd: 2734
    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:2738,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2740,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: 2745
      start: 2736
    functionDepth: 0
    functionLinenumber: 2736
    functionLinenumberEnd: 2745
    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:2749,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2751,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: 2756
      start: 2747
    functionDepth: 0
    functionLinenumber: 2747
    functionLinenumberEnd: 2756
    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:2760,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2762,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2764,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2766,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2768,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: 2773
      start: 2758
    functionDepth: 0
    functionLinenumber: 2758
    functionLinenumberEnd: 2773
    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:2777,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2779,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2783,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: 2785
      start: 2775
    functionDepth: 1
    functionLinenumber: 2775
    functionLinenumberEnd: 2785
    functionName: smil_parse_syncToleranceOrDefault
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_parse_clock_value
    - strcmp
    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:2791,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2796,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2799,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2802,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2805,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: 2809
      start: 2787
    functionDepth: 2
    functionLinenumber: 2787
    functionLinenumberEnd: 2809
    functionName: svg_parse_viewbox
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strcmp
    - svg_parse_number
    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:2817,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2819,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2820,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2821,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2822,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2826,1
    - Dst: svg_parse_length
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2828,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2830,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2834,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: 2836
      start: 2812
    functionDepth: 3
    functionLinenumber: 2812
    functionLinenumberEnd: 2836
    functionName: svg_parse_coordinates
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - svg_parse_length
    - gf_list_add
    - GF_SAFEALLOC
    - gf_list_get
    - 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:2842,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2844,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: 2850
      start: 2839
    functionDepth: 2
    functionLinenumber: 2839
    functionLinenumberEnd: 2850
    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:2857,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2860,1
    - Dst: svg_parse_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2862,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2867,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2868,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2869,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2870,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2875,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: 2877
      start: 2853
    functionDepth: 3
    functionLinenumber: 2853
    functionLinenumberEnd: 2877
    functionName: svg_parse_points
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - svg_parse_point
    - gf_list_add
    - GF_SAFEALLOC
    - gf_list_get
    - 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:2885,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2888,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2890,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2892,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2896,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: 2898
      start: 2880
    functionDepth: 2
    functionLinenumber: 2880
    functionLinenumberEnd: 2898
    functionName: svg_parse_numbers
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strlen
    - GF_SAFEALLOC
    - svg_parse_number
    - gf_list_add
    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:2905,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2907,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2908,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2911,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2911,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - values
    - string
    - string_type
    argTypes:
    - GF_List*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2914
      start: 2900
    functionDepth: 1
    functionLinenumber: 2900
    functionLinenumberEnd: 2914
    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:2920,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2921,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2922,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2923,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2931,1
    - Dst: svg_string_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2935,1
    - Dst: svg_string_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2939,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2942,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: 2944
      start: 2916
    functionDepth: 2
    functionLinenumber: 2916
    functionLinenumberEnd: 2944
    functionName: svg_parse_strings
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_free
    - svg_string_list_add
    - gf_list_rem_last
    - gf_list_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:2949,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2951,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2955,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2957,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2961,1
    - Dst: svg_parse_length
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2963,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2965,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2969,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2971,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2972,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2973,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2975,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2978,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2980,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: 2983
      start: 2946
    functionDepth: 3
    functionLinenumber: 2946
    functionLinenumberEnd: 2983
    functionName: svg_parse_strokedasharray
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_del
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - strlen
    - gf_list_add
    - svg_parse_length
    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:2987,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:2989,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: 2994
      start: 2985
    functionDepth: 0
    functionLinenumber: 2985
    functionLinenumberEnd: 2994
    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:3000,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3007,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3010,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3013,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3016,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3019,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3022,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3025,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3028,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3031,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3034,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3043,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3045,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: 3050
      start: 2996
    functionDepth: 0
    functionLinenumber: 2996
    functionLinenumberEnd: 3050
    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:3055,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3057,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3059,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3061,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3063,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: 3068
      start: 3052
    functionDepth: 0
    functionLinenumber: 3052
    functionLinenumberEnd: 3068
    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:3072,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3074,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: 3079
      start: 3070
    functionDepth: 0
    functionLinenumber: 3070
    functionLinenumberEnd: 3079
    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:3083,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3085,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3087,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: 3092
      start: 3081
    functionDepth: 0
    functionLinenumber: 3081
    functionLinenumberEnd: 3092
    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:3096,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3098,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: 3103
      start: 3094
    functionDepth: 0
    functionLinenumber: 3094
    functionLinenumberEnd: 3103
    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:3107,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3109,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: 3114
      start: 3105
    functionDepth: 0
    functionLinenumber: 3105
    functionLinenumberEnd: 3114
    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:3118,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3120,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3122,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3124,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3126,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: 3131
      start: 3116
    functionDepth: 0
    functionLinenumber: 3116
    functionLinenumberEnd: 3131
    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:3135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3139,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3140,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3141,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3142,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3145,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: 3150
      start: 3133
    functionDepth: 2
    functionLinenumber: 3133
    functionLinenumberEnd: 3150
    functionName: svg_parse_focus
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strnicmp
    - strrchr
    - strcmp
    - svg_parse_iri
    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:3154,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3158,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3159,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3161,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3163,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: 3167
      start: 3152
    functionDepth: 2
    functionLinenumber: 3152
    functionLinenumberEnd: 3167
    functionName: svg_parse_clippath
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_free
    - strnicmp
    - strrchr
    - strcmp
    - svg_parse_iri
    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:3174,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3176,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: 3180
      start: 3170
    functionDepth: 1
    functionLinenumber: 3170
    functionLinenumberEnd: 3180
    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:3200,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3202,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3203,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: 3211
      start: 3182
    functionDepth: 1
    functionLinenumber: 3182
    functionLinenumberEnd: 3211
    functionName: svg_parse_anim_values
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_svg_parse_attribute
    - 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:3215,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3217,1
    - Dst: atoi
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - choice
    - attribute_content
    argTypes:
    - LASeR_Choice*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3224
      start: 3213
    functionDepth: 0
    functionLinenumber: 3213
    functionLinenumberEnd: 3224
    functionName: laser_parse_choice
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - atoi
    - strcmp
    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:3230,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3231,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: 3233
      start: 3226
    functionDepth: 2
    functionLinenumber: 3226
    functionLinenumberEnd: 3233
    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:3238,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3239,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3240,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: 3242
      start: 3235
    functionDepth: 1
    functionLinenumber: 3235
    functionLinenumberEnd: 3242
    functionName: gf_svg_parse_element_id
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_max_node_id
    - gf_node_set_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: 117
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3250,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3253,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3258,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3260,1
    - Dst: svg_parse_boolean
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3273,1
    - Dst: svg_parse_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3276,1
    - Dst: svg_parse_paint
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3279,1
    - Dst: svg_parse_clipfillrule
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3284,1
    - Dst: svg_parse_strokelinejoin
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3287,1
    - Dst: svg_parse_strokelinecap
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3290,1
    - Dst: svg_parse_fontstyle
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3293,1
    - Dst: svg_parse_fontweight
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3296,1
    - Dst: svg_parse_fontvariant
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3299,1
    - Dst: svg_parse_textanchor
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3302,1
    - Dst: svg_parse_display
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3305,1
    - Dst: svg_parse_visibility
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3308,1
    - Dst: svg_parse_overflow
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3311,1
    - Dst: svg_parse_zoomandpan
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3314,1
    - Dst: svg_parse_displayalign
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3317,1
    - Dst: svg_parse_textalign
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3320,1
    - Dst: svg_parse_pointerevents
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3323,1
    - Dst: svg_parse_renderinghint
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3326,1
    - Dst: svg_parse_vectoreffect
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3329,1
    - Dst: svg_parse_playbackorder
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3332,1
    - Dst: svg_parse_timelinebegin
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3335,1
    - Dst: svg_parse_xmlspace
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3338,1
    - Dst: svg_parse_xmlev_propagate
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3341,1
    - Dst: svg_parse_xmlev_defaultAction
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3344,1
    - Dst: svg_parse_xmlev_phase
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3347,1
    - Dst: smil_parse_syncBehaviorOrDefault
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3350,1
    - Dst: smil_parse_syncToleranceOrDefault
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3353,1
    - Dst: smil_parse_attributeType
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3356,1
    - Dst: smil_parse_calcmode
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3359,1
    - Dst: smil_parse_additive
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3362,1
    - Dst: smil_parse_accumulate
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3365,1
    - Dst: smil_parse_restart
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3368,1
    - Dst: smil_parse_fill
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3371,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3374,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3376,1
    - Dst: svg_parse_focushighlight
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3382,1
    - Dst: svg_parse_focusable
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3385,1
    - Dst: svg_parse_initialvisibility
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3388,1
    - Dst: svg_parse_overlay
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3391,1
    - Dst: svg_parse_transformbehavior
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3394,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: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: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3406,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3407,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3408,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3409,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3410,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3411,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3412,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3413,1
    - Dst: svg_parse_length
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3425,1
    - Dst: svg_parse_one_anim_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3429,1
    - Dst: svg_parse_anim_values
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3432,1
    - Dst: svg_parse_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3436,1
    - Dst: svg_parse_idref
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3439,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3443,1
    - Dst: smil_parse_time_list
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3446,1
    - Dst: smil_parse_min_max_dur_repeatdur
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3449,1
    - Dst: smil_parse_repeatcount
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3452,1
    - Dst: svg_parse_path
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3455,1
    - Dst: svg_parse_points
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3458,1
    - Dst: svg_parse_numbers
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3464,1
    - Dst: svg_parse_coordinates
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3467,1
    - Dst: svg_parse_viewbox
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3470,1
    - Dst: svg_parse_strokedasharray
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3473,1
    - Dst: svg_parse_fontfamily
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3476,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3482,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3483,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3484,1
    - Dst: svg_parse_transform
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3488,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3494,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:3506,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:3518,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3525,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3529,1
    - Dst: svg_parse_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3530,1
    - Dst: svg_parse_preserveaspectratio
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3535,1
    - Dst: svg_parse_animatetransform_type
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3538,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3545,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3547,1
    - Dst: svg_parse_strings
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3551,1
    - Dst: svg_parse_strings
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3554,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3560,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3563,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3567,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3570,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3573,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3579,1
    - Dst: svg_parse_focus
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3585,1
    - Dst: svg_parse_clippath
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3588,1
    - Dst: laser_parse_choice
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3592,1
    - Dst: laser_parse_size
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3595,1
    - Dst: svg_parse_clock_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3598,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3601,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3602,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3609,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3609,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3611,1
    CyclomaticComplexity: 112
    EdgeCount: 112
    ICount: 341
    argCount: 4
    argNames:
    - n
    - info
    - attribute_content
    - anim_value_type
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    - char*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3615
      start: 3245
    functionDepth: 4
    functionLinenumber: 3245
    functionLinenumberEnd: 3615
    functionName: gf_svg_parse_attribute
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 4
    functionsReached:
    - svg_parse_fontstyle
    - gf_mx2d_init
    - svg_parse_focus
    - svg_parse_overlay
    - gf_dom_get_key_type
    - svg_parse_boolean
    - smil_parse_repeatcount
    - svg_parse_overflow
    - svg_parse_xmlspace
    - smil_parse_time_list
    - svg_parse_visibility
    - svg_parse_clipfillrule
    - svg_parse_fontvariant
    - svg_parse_pointerevents
    - svg_parse_xmlev_propagate
    - svg_parse_preserveaspectratio
    - gf_dom_event_type_by_name
    - svg_parse_strokelinejoin
    - strchr
    - svg_parse_playbackorder
    - smil_parse_restart
    - svg_parse_focusable
    - smil_parse_min_max_dur_repeatdur
    - svg_parse_coordinates
    - svg_parse_transformbehavior
    - laser_parse_choice
    - svg_parse_textalign
    - svg_parse_timelinebegin
    - smil_parse_calcmode
    - svg_parse_path
    - svg_parse_zoomandpan
    - svg_parse_textanchor
    - svg_parse_clock_value
    - gf_sys_is_test_mode
    - svg_parse_transform
    - svg_parse_viewbox
    - svg_parse_clippath
    - svg_parse_anim_values
    - svg_parse_length
    - smil_parse_syncToleranceOrDefault
    - svg_parse_display
    - svg_parse_strokelinecap
    - smil_parse_accumulate
    - smil_parse_syncBehaviorOrDefault
    - svg_parse_vectoreffect
    - svg_parse_focushighlight
    - svg_parse_one_anim_value
    - svg_parse_points
    - svg_parse_strings
    - strcmp
    - strlen
    - svg_parse_xmlev_phase
    - svg_parse_number
    - svg_parse_initialvisibility
    - svg_parse_displayalign
    - svg_parse_fontweight
    - sscanf
    - svg_parse_numbers
    - svg_parse_strokedasharray
    - gf_error_to_string
    - gf_free
    - svg_parse_paint
    - smil_parse_additive
    - GF_LOG
    - svg_parse_renderinghint
    - svg_parse_idref
    - laser_parse_size
    - svg_parse_color
    - svg_parse_fontfamily
    - smil_parse_fill
    - gf_strdup
    - smil_parse_attributeType
    - svg_parse_iri
    - svg_parse_animatetransform_type
    - svg_parse_xmlev_defaultAction
    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:3624,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3629,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3631,1
    - Dst: gf_svg_parse_attribute
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3635,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3635,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - n
    - one_style
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3638
      start: 3617
    functionDepth: 5
    functionLinenumber: 3617
    functionLinenumberEnd: 3638
    functionName: svg_parse_one_style
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_svg_parse_attribute
    - GF_LOG
    - gf_node_get_class_name
    - gf_node_get_field_by_name
    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:3654,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - n
    - style
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3663
      start: 3640
    functionDepth: 6
    functionLinenumber: 3640
    functionLinenumberEnd: 3663
    functionName: gf_svg_parse_style
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    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:3672,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3679,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3686,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3732,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3739,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3752,1
    - Dst: GF_SAFEALLOC
      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:3778,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3780,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3789,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3798,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3806,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3814,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3822,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:3839,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3854,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3855,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3862,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3869,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3872,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3875,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3876,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3884,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3890,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3896,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3902,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3908,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3914,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3920,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3927,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3929,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3936,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3944,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3959,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3966,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3966,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 224
    argCount: 1
    argNames:
    - attribute_type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3970
      start: 3665
    functionDepth: 1
    functionLinenumber: 3665
    functionLinenumberEnd: 3970
    functionName: gf_svg_create_attribute_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 2
    functionsReached:
    - gf_mx2d_init
    - gf_path_reset
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_new
    - gf_svg_attribute_type_to_string
    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:3975,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3976,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3982,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3988,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3989,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3990,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3991,1
    - Dst: GF_COL_ARGB
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3991,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3992,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3994,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3995,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:3998,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - col
    argTypes:
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4002
      start: 3972
    functionDepth: 1
    functionLinenumber: 3972
    functionLinenumberEnd: 4002
    functionName: svg_dump_color
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - sprintf
    - GF_COL_ARGB
    - gf_malloc
    - FIX2INT
    - gf_color_get_name
    - gf_strdup
    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:4007,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4008,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4009,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4011,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4011,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4012,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4013,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4014,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4015,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4016,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4017,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4018,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4019,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4020,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4022,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 1
    argNames:
    - l
    argTypes:
    - SVG_Number*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4024
      start: 4004
    functionDepth: 1
    functionLinenumber: 4004
    functionLinenumberEnd: 4024
    functionName: svg_dump_number
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sprintf
    - _FIX2FLT
    - gf_strcat
    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:4031,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4034,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4034,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4035,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4037,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4038,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4038,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4040,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4045,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4047,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - iri
    argTypes:
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4048
      start: 4026
    functionDepth: 1
    functionLinenumber: 4026
    functionLinenumberEnd: 4048
    functionName: svg_dump_iri
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_malloc
    - gf_node_get_id
    - gf_node_get_name
    - strlen
    - gf_strdup
    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:4053,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4054,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4057,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4057,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4058,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4061,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4062,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - iri
    argTypes:
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4063
      start: 4050
    functionDepth: 1
    functionLinenumber: 4050
    functionLinenumberEnd: 4063
    functionName: svg_dump_idref
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sprintf
    - gf_node_get_id
    - 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:4071,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4085,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4085,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4085,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4088,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: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4091,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4091,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4092,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4092,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4092,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4100,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4100,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4100,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4100,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4100,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4104,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4112,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4115,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4121,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 54
    argCount: 1
    argNames:
    - path
    argTypes:
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4125
      start: 4066
    functionDepth: 1
    functionLinenumber: 4066
    functionLinenumberEnd: 4125
    functionName: svg_dump_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - sprintf
    - _FIX2FLT
    - gf_malloc
    - gf_strcat
    - gf_dynstrcat
    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:4129,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4129,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - pt
    - attValue
    argTypes:
    - SVG_Point*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4130
      start: 4127
    functionDepth: 1
    functionLinenumber: 4127
    functionLinenumberEnd: 4130
    functionName: svg_dump_point
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - sprintf
    - _FIX2FLT
    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:4135,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4137,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4139,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4142,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4143,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4143,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4144,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4148,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: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4150,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4154,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4155,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4156,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: gf_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: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4162,1
    - Dst: gf_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: gf_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: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4171,1
    - Dst: gf_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: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4177,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4179,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4179,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4180,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4184,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4185,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4185,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4186,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4190,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4191,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4191,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4192,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4194,1
    - Dst: svg_dump_point
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4195,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4196,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4203,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 72
    argCount: 2
    argNames:
    - path
    - attValue
    argTypes:
    - SVG_PathData*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4207
      start: 4131
    functionDepth: 2
    functionLinenumber: 4131
    functionLinenumberEnd: 4207
    functionName: svg_dump_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_list_count
    - gf_strcat
    - GF_LOG
    - svg_dump_point
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void svg_dump_path(SVG_PathData *path, char *attValue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_strlcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4213,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4217,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4245,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - evt
    - attValue
    argTypes:
    - XMLEV_Event*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4246
      start: 4210
    functionDepth: 1
    functionLinenumber: 4210
    functionLinenumberEnd: 4246
    functionName: svg_dump_access_key
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strlcat
    - gf_strlcpy
    linkageType: ''
    returnType: void
    signature: void svg_dump_access_key(XMLEV_Event *evt, char attValue[1024])
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4254,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4254,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4254,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4258,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4260,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4260,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4260,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4262,1
    - Dst: gf_asin
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4265,1
    - Dst: gf_cos
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4266,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4267,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4269,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4270,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4271,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4272,1
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4272,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4274,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4274,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4274,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4274,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4274,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4276,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4276,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4276,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4279,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4279,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4279,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4279,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4279,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4279,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4279,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4281,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4281,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4281,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4281,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4281,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4287,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4287,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4287,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4287,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4287,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4289,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4289,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4289,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4293,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4294,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4294,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4294,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4294,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4294,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4294,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4294,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4296,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 39
    argCount: 1
    argNames:
    - matrix
    argTypes:
    - GF_Matrix2D*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4297
      start: 4248
    functionDepth: 1
    functionLinenumber: 4248
    functionLinenumberEnd: 4297
    functionName: gf_svg_dump_matrix
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - _FIX2FLT
    - gf_asin
    - gf_cos
    - gf_divfix
    - gf_strcat
    - ABS
    - strlen
    - gf_strdup
    linkageType: ''
    returnType: char
    signature: char *gf_svg_dump_matrix(GF_Matrix2D *matrix)
  - BBCount: 302
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4304,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4309,1
    - Dst: svg_dump_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4312,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4317,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4318,1
    - Dst: svg_dump_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4320,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4321,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4321,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4322,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4323,1
    - Dst: svg_dump_color
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4326,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:4334,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4335,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:4340,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4341,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:4345,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4346,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4347,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: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: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:4362,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4363,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:4367,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4368,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:4373,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4374,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: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: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:4393,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4394,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:4399,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4400,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: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:4406,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4407,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4410,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4411,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:4417,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4418,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:4423,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4424,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: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: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:4436,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4437,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:4450,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4451,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:4458,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:4462,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:4466,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:4470,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:4474,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:4481,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4482,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4485,1
    - Dst: gf_strdup
      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:4488,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4489,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: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4495,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:4500,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4501,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:4505,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:4508,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:4519,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:4529,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4530,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:4534,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:4541,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4542,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:4546,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4547,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4548,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: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:4554,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4558,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4559,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4560,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4561,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4562,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4566,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4567,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4569,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4570,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4574,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4574,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4574,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4575,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4585,1
    - Dst: svg_dump_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4589,1
    - Dst: svg_dump_idref
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4591,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4595,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4596,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4601,1
    - Dst: svg_dump_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4602,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4603,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4605,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4606,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4608,1
    - Dst: svg_dump_path
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4616,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4624,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4625,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4629,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4630,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4630,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4630,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4631,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4632,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4644,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4645,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4649,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4650,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4650,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4651,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4652,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4662,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4663,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4667,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4668,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4669,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4670,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4671,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4681,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4681,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4681,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4681,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4681,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4682,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4684,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4690,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4691,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4694,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4701,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4702,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4703,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4704,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4713,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4720,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4721,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4722,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4723,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4724,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4725,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4726,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4727,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4728,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4729,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4730,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4731,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4733,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4737,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4738,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4746,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4752,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4753,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4755,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4756,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4762,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4763,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4769,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4770,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4771,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4778,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4782,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4783,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4784,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4794,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4795,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4799,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4800,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4801,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4802,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4803,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4814,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4814,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4814,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4815,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4824,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4824,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4824,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4825,1
    - Dst: gf_svg_dump_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4827,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4836,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4836,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4836,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4837,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: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4849,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4849,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4849,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4851,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4861,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4861,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4861,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4862,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: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4872,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4872,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4874,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4874,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4874,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4876,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4885,1
    - Dst: gf_svg_get_attribute_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4888,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4890,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4893,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4901,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4903,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4905,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4908,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4911,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4913,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4920,1
    - Dst: svg_dump_access_key
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4924,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4927,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4928,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4929,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4930,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4932,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4934,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4934,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4936,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4938,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4938,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4942,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:4943,1
    - Dst: gf_dynstrcat
      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_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5019,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5020,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5021,1
    - Dst: svg_dump_access_key
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5031,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5033,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5033,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5035,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5038,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5038,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5041,1
    CyclomaticComplexity: 290
    EdgeCount: 290
    ICount: 768
    argCount: 2
    argNames:
    - elt
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5042
      start: 4299
    functionDepth: 2
    functionLinenumber: 4299
    functionLinenumberEnd: 5042
    functionName: gf_svg_dump_attribute
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_svg_dump_matrix
    - svg_dump_access_key
    - gf_node_get_name
    - svg_dump_iri
    - gf_malloc
    - svg_dump_number
    - gf_list_get
    - gf_dynstrcat
    - gf_strcpy
    - svg_dump_path
    - gf_divfix
    - gf_node_get_id
    - svg_dump_color
    - gf_node_get_parent
    - strlen
    - gf_svg_attribute_type_to_string
    - gf_svg_dump_attribute
    - sprintf
    - _FIX2FLT
    - gf_free
    - svg_dump_idref
    - gf_strcat
    - GF_LOG
    - gf_svg_get_attribute_name
    - gf_dom_event_get_name
    - gf_strdup
    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:5052,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5057,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5058,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5058,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5058,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5067,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5068,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5068,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5069,1
    - Dst: svg_dump_number
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5074,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5080,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5080,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5081,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5088,1
    - Dst: _FIX2FLT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5088,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5089,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5094,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5096,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5098,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5105,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5108,1
    - Dst: svg_dump_access_key
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5110,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5112,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5114,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5115,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5116,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5117,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5119,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5121,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5121,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5123,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5125,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5125,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5129,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5130,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5137,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5137,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5140,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 75
    argCount: 2
    argNames:
    - elt
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5141
      start: 5044
    functionDepth: 2
    functionLinenumber: 5044
    functionLinenumberEnd: 5141
    functionName: gf_svg_dump_attribute_indexed
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - _FIX2FLT
    - svg_dump_number
    - gf_node_get_id
    - gf_strcat
    - GF_LOG
    - svg_dump_access_key
    - gf_node_get_parent
    - gf_dom_event_get_name
    - gf_node_get_name
    - gf_list_get
    - gf_strdup
    - gf_svg_attribute_type_to_string
    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: 5154
      start: 5143
    functionDepth: 0
    functionLinenumber: 5143
    functionLinenumberEnd: 5154
    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: 5163
      start: 5156
    functionDepth: 0
    functionLinenumber: 5156
    functionLinenumberEnd: 5163
    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: 5169
      start: 5164
    functionDepth: 0
    functionLinenumber: 5164
    functionLinenumberEnd: 5169
    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:5177,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5180,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5184,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 20
    argCount: 2
    argNames:
    - iri1
    - iri2
    argTypes:
    - XMLRI*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5187
      start: 5170
    functionDepth: 1
    functionLinenumber: 5170
    functionLinenumberEnd: 5187
    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: 5197
      start: 5188
    functionDepth: 0
    functionLinenumber: 5188
    functionLinenumberEnd: 5197
    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:5252,1
    - Dst: svg_colors_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5267,1
    - Dst: svg_iris_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5268,1
    - Dst: svg_numbers_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5278,1
    - Dst: svg_iris_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5280,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5285,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5286,1
    - Dst: svg_iris_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5288,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5323,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5324,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5326,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5327,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5340,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5341,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5343,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5344,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5354,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5355,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5357,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5358,1
    - Dst: svg_numbers_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5359,1
    - Dst: svg_viewbox_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5367,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5390,1
    - Dst: svg_matrices_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5398,1
    - Dst: svg_matrices_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5405,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5448,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5465,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5474,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5477,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5479,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5488,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5489,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5491,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5492,1
    - Dst: svg_numbers_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5493,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5502,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5503,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5505,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5506,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5557,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5557,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5577,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5577,1
    CyclomaticComplexity: 92
    EdgeCount: 92
    ICount: 305
    argCount: 2
    argNames:
    - f1
    - f2
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5580
      start: 5199
    functionDepth: 2
    functionLinenumber: 5199
    functionLinenumberEnd: 5580
    functionName: gf_svg_attributes_equal
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_colors_equal
    - gf_list_count
    - svg_matrices_equal
    - svg_numbers_equal
    - GF_LOG
    - strcmp
    - gf_list_get
    - gf_svg_attribute_type_to_string
    - svg_iris_equal
    - svg_viewbox_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:5584,1
    - Dst: MIN
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5584,1
    - 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
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - SVG_Color*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5587
      start: 5582
    functionDepth: 1
    functionLinenumber: 5582
    functionLinenumberEnd: 5587
    functionName: svg_color_clamp
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - MIN
    - MAX
    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:5592,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5596,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5596,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: svg_color_clamp
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5599,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: 5601
      start: 5589
    functionDepth: 2
    functionLinenumber: 5589
    functionLinenumberEnd: 5601
    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:5607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5611,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5614,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5614,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: 5616
      start: 5603
    functionDepth: 1
    functionLinenumber: 5603
    functionLinenumberEnd: 5616
    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:5621,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5621,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: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
    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: 5626
      start: 5618
    functionDepth: 0
    functionLinenumber: 5618
    functionLinenumberEnd: 5626
    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:5632,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5632,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:5633,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: 5635
      start: 5628
    functionDepth: 0
    functionLinenumber: 5628
    functionLinenumberEnd: 5635
    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:5639,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5639,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: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
    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: 5643
      start: 5637
    functionDepth: 0
    functionLinenumber: 5637
    functionLinenumberEnd: 5643
    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:5647,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5650,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5652,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5653,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5654,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5655,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5659,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5660,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5661,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5663,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5664,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: 5668
      start: 5645
    functionDepth: 1
    functionLinenumber: 5645
    functionLinenumberEnd: 5668
    functionName: svg_points_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_SAFEALLOC
    - svg_point_muladd
    - gf_list_get
    - gf_list_add
    - 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:5674,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5676,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5677,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5679,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5681,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5683,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5685,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5688,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_Points*
    - SVG_Points*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5692
      start: 5670
    functionDepth: 1
    functionLinenumber: 5670
    functionLinenumberEnd: 5692
    functionName: svg_points_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - gf_list_reset
    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:5696,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5699,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5701,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5702,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5703,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5708,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5709,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5710,1
    - Dst: svg_number_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5712,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5713,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: 5716
      start: 5694
    functionDepth: 2
    functionLinenumber: 5694
    functionLinenumberEnd: 5716
    functionName: svg_numbers_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - svg_number_muladd
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - gf_list_pop_back
    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:5722,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5724,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5725,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5727,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5729,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5732,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5734,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5735,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_Numbers*
    - SVG_Numbers*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5738
      start: 5718
    functionDepth: 1
    functionLinenumber: 5718
    functionLinenumberEnd: 5738
    functionName: svg_numbers_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - gf_list_reset
    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:5746,1
    - 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: memset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5750,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5753,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5754,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5759,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5760,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5765,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5766,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_PathData*
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5773
      start: 5741
    functionDepth: 0
    functionLinenumber: 5741
    functionLinenumberEnd: 5773
    functionName: svg_path_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_free
    - gf_malloc
    - memcpy
    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:5778,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5780,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5781,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5783,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5784,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5786,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5787,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5789,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5791,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5793,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5794,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5795,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5797,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5800,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5802,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5803,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_PathData*
    - SVG_PathData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5806
      start: 5775
    functionDepth: 1
    functionLinenumber: 5775
    functionLinenumberEnd: 5806
    functionName: svg_path_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - gf_list_reset
    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:5815,1
    - Dst: svg_path_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5816,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5819,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: 5824
      start: 5810
    functionDepth: 1
    functionLinenumber: 5810
    functionLinenumberEnd: 5824
    functionName: svg_path_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - svg_path_copy
    - gf_path_reset
    - svg_point_muladd
    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:5830,1
    - 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:5833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5836,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5838,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5839,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5844,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5845,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5846,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5847,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5849,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5850,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5851,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5852,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5856,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5857,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5858,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5862,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5864,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5866,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5867,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: 5870
      start: 5826
    functionDepth: 1
    functionLinenumber: 5826
    functionLinenumberEnd: 5870
    functionName: svg_path_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_rem_last
    - GF_SAFEALLOC
    - svg_point_muladd
    - gf_list_get
    - gf_list_last
    - gf_list_add
    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:5883,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5884,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5890,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5890,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: 5893
      start: 5874
    functionDepth: 0
    functionLinenumber: 5874
    functionLinenumberEnd: 5893
    functionName: svg_dasharray_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - gf_mulfix
    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:5900,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5901,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5904,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5905,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - SVG_StrokeDashArray*
    - SVG_StrokeDashArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5907
      start: 5895
    functionDepth: 0
    functionLinenumber: 5895
    functionLinenumberEnd: 5907
    functionName: svg_dasharray_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - memcpy
    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:5930,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5930,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5933,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5935,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: 5939
      start: 5909
    functionDepth: 1
    functionLinenumber: 5909
    functionLinenumberEnd: 5939
    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: 99
    BranchProfiles: []
    Callsites:
    - Dst: svg_color_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5975,1
    - Dst: svg_color_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5979,1
    - Dst: svg_number_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5986,1
    - Dst: svg_viewbox_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5989,1
    - Dst: svg_points_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5992,1
    - Dst: svg_numbers_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5996,1
    - Dst: svg_path_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:5999,1
    - Dst: svg_dasharray_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6002,1
    - Dst: svg_matrix_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6005,1
    - Dst: svg_matrix_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6013,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6015,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6028,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6031,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6031,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6031,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6034,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6034,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6034,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6037,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6037,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6037,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6037,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6040,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6040,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6043,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6046,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6049,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6050,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6058,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6068,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6069,1
    - Dst: svg_point_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6075,1
    - Dst: svg_point_angle_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6083,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6089,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6089,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6092,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6098,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6101,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6111,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6112,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6113,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6114,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6116,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6118,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6120,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6123,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_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6133,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6196,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6196,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 195
    argCount: 6
    argNames:
    - alpha
    - a
    - beta
    - b
    - c
    - clamp
    argTypes:
    - Fixed
    - GF_FieldInfo*
    - Fixed
    - GF_FieldInfo*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6200
      start: 5942
    functionDepth: 3
    functionLinenumber: 5942
    functionLinenumberEnd: 6200
    functionName: gf_svg_attributes_muladd
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - svg_numbers_muladd
    - gf_mx2d_add_scale
    - svg_number_muladd
    - svg_color_muladd
    - gf_mx2d_add_translation
    - gf_malloc
    - svg_matrix_muladd
    - svg_point_muladd
    - memcpy
    - gf_mx2d_add_skew_x
    - gf_mx2d_add_skew_y
    - svg_path_muladd
    - svg_dasharray_muladd
    - svg_viewbox_muladd
    - gf_mx2d_copy
    - gf_mulfix
    - strlen
    - gf_svg_attribute_type_to_string
    - svg_points_muladd
    - gf_free
    - GF_LOG
    - svg_point_angle_muladd
    - FIX2INT
    - gf_mx2d_add_rotation
    - gf_mx2d_add_matrix
    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:6211,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6224,1
    - Dst: svg_points_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6244,1
    - Dst: svg_numbers_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6248,1
    - Dst: svg_path_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6251,1
    - Dst: svg_dasharray_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6254,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6257,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6263,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6264,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6267,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6268,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6271,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6272,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6275,1
    - Dst: gf_mx2d_add_skew_x
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6276,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6279,1
    - Dst: gf_mx2d_add_skew_y
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6280,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6283,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6286,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6338,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6339,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6344,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6345,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6351,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6353,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6355,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6361,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6361,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6370,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6371,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6379,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6380,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6389,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6390,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6391,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6392,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6397,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6398,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6399,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6400,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6410,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6428,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6449,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6449,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 209
    argCount: 3
    argNames:
    - a
    - b
    - clamp
    argTypes:
    - GF_FieldInfo*
    - GF_FieldInfo*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6453
      start: 6203
    functionDepth: 2
    functionLinenumber: 6203
    functionLinenumberEnd: 6453
    functionName: gf_svg_attributes_copy
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_init
    - gf_list_count
    - gf_mx2d_add_scale
    - gf_list_add
    - gf_mx2d_add_translation
    - gf_malloc
    - gf_node_get_graph
    - gf_list_get
    - memcpy
    - gf_mx2d_add_skew_x
    - gf_mx2d_add_skew_y
    - svg_color_clamp
    - gf_mx2d_copy
    - gf_svg_attributes_copy
    - gf_svg_attribute_type_to_string
    - gf_free
    - GF_LOG
    - gf_node_register_iri
    - svg_points_copy
    - gf_svg_create_attribute_value
    - svg_dasharray_copy
    - svg_numbers_copy
    - gf_strdup
    - svg_path_copy
    - 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:6458,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: 6459
      start: 6456
    functionDepth: 4
    functionLinenumber: 6456
    functionLinenumberEnd: 6459
    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: 6488
      start: 6461
    functionDepth: 0
    functionLinenumber: 6461
    functionLinenumberEnd: 6488
    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:6497,1
    - Dst: gf_svg_attributes_equal
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6498,1
    - Dst: gf_svg_attributes_muladd
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6525,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6578,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6580,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6595,1
    - Dst: gf_svg_attribute_type_to_string
      Src: /src/gpac/src/scenegraph/svg_attributes.c:6595,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: 6600
      start: 6490
    functionDepth: 4
    functionLinenumber: 6490
    functionLinenumberEnd: 6600
    functionName: gf_svg_attributes_interpolate
    functionSourceFile: /src/gpac/src/scenegraph/svg_attributes.c
    functionUses: 0
    functionsReached:
    - gf_svg_attributes_equal
    - GF_LOG
    - gf_svg_attributes_muladd
    - gf_sys_is_cov_mode
    - gf_svg_attributes_copy
    - gf_svg_attribute_type_to_string
    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: 6617
      start: 6602
    functionDepth: 0
    functionLinenumber: 6602
    functionLinenumberEnd: 6617
    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: 6793
      start: 6619
    functionDepth: 0
    functionLinenumber: 6619
    functionLinenumberEnd: 6793
    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_LOG
    - gf_strdup
    - GF_SAFEALLOC
    - gf_list_new
    - 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:
    - stricmp
    - gf_list_add
    - gf_list_enum
    - gf_list_del_item
    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_list_count
    - GF_ProtoFieldInterface*::OnDelete
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - gf_list_del
    - GF_Proto*::OnDelete
    - gf_list_del_item
    - gf_sg_mfurl_del
    - gf_node_unregister_children
    - gf_sg_del
    - gf_list_get
    - gf_node_unregister
    - 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_sg_vrml_field_pointer_new
    - gf_list_count
    - GF_SAFEALLOC
    - gf_sg_proto_field_find_by_name
    - gf_strdup
    - gf_list_add
    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_sg_vrml_get_sf_type
    - gf_list_get
    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
    - strcmp
    - gf_list_get
    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_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:392,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/vrml_proto.c:393,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:396,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:400,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:400,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_proto.c:403,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:404,1
    - Dst: gf_sg_proto_create_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:412,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:414,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:417,1
    - Dst: gf_sg_script_prepare_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:425,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:430,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:431,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_proto.c:433,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:437,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:440,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:442,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:443,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:448,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:455,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/vrml_proto.c:456,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:461,1
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/scenegraph/vrml_proto.c:465,1
    - Dst: GF_SceneGraph*::GetSceneTime
      Src: /src/gpac/src/scenegraph/vrml_proto.c:466,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:467,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:467,1
    - Dst: GF_SceneGraph*::GetSceneTime
      Src: /src/gpac/src/scenegraph/vrml_proto.c:468,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:472,1
    - Dst: BIFS_SetupConditionalClone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:480,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scenegraph/vrml_proto.c:483,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:490,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:497,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:502,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:507,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:512,1
    - Dst: gf_sg_proto_instantiate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:520,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 108
    argCount: 4
    argNames:
    - inScene
    - orig
    - cloned_parent
    - inst_id_suffix
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 366
    functionDepth: 4
    functionLinenumber: 366
    functionLinenumberEnd: 523
    functionName: gf_vrml_node_clone
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_SceneGraph*::GetSceneTime
    - gf_node_new
    - gf_sg_vrml_field_clone
    - gf_list_add
    - BIFS_SetupConditionalClone
    - gf_node_get_name_and_id
    - gf_sg_find_node_by_name
    - gf_node_clone
    - gf_dynstrcat
    - gf_sg_vrml_field_copy
    - gf_node_get_field
    - gf_sg_route_new
    - gf_sg_script_prepare_clone
    - gf_list_enum
    - gf_sg_get_next_available_node_id
    - gf_sg_proto_instantiate
    - gf_node_get_field_count
    - gf_free
    - gf_node_set_id
    - gf_node_init
    - stricmp
    - gf_sg_proto_field_is_sftime_offset
    - gf_sg_route_activate
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_sg_proto_create_node
    - gf_strdup
    - gf_sg_find_node
    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:527,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: 528
      start: 525
    functionDepth: 1
    functionLinenumber: 525
    functionLinenumberEnd: 528
    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:535,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:535,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:536,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:538,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:539,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - extern_proto
    - proto
    argTypes:
    - GF_Proto*
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 545
    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:552,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:556,1
    - Dst: is_same_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:557,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:560,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:562,1
    - Dst: is_same_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:563,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - sg
    - extern_proto
    argTypes:
    - GF_SceneGraph*
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 547
    functionDepth: 2
    functionLinenumber: 547
    functionLinenumberEnd: 566
    functionName: find_proto_by_interface
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_assert
    - gf_list_get
    - is_same_proto
    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:583,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:590,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:592,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:594,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:595,1
    - Dst: GF_Proto*::parent_graph::NodeCallback
      Src: /src/gpac/src/scenegraph/vrml_proto.c:598,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:603,1
    - Dst: strrchr
      Src: /src/gpac/src/scenegraph/vrml_proto.c:610,1
    - Dst: sscanf
      Src: /src/gpac/src/scenegraph/vrml_proto.c:613,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:617,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:619,1
    - Dst: find_proto_by_interface
      Src: /src/gpac/src/scenegraph/vrml_proto.c:620,1
    - Dst: is_same_proto
      Src: /src/gpac/src/scenegraph/vrml_proto.c:622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:624,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:632,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:634,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:636,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:637,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_proto.c:644,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:645,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:653,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/vrml_proto.c:655,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:656,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:660,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:665,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:668,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:669,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:669,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/vrml_proto.c:671,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:671,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scenegraph/vrml_proto.c:674,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:675,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:679,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:685,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:689,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:690,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scenegraph/vrml_proto.c:691,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:695,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:706,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:709,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:717,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 111
    argCount: 1
    argNames:
    - proto_node
    argTypes:
    - GF_ProtoInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 569
    functionDepth: 4
    functionLinenumber: 569
    functionLinenumberEnd: 724
    functionName: gf_sg_proto_instantiate
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - GF_Proto*::parent_graph::GetExternProtoLib
    - gf_list_count
    - gf_assert
    - gf_list_add
    - gf_sg_script_load
    - gf_list_get
    - gf_node_clone
    - gf_sg_route_set_id
    - gf_sg_vrml_field_copy
    - gf_node_get_id
    - gf_sg_route_new
    - gf_list_enum
    - GF_Proto*::parent_graph::NodeCallback
    - strrchr
    - sscanf
    - find_proto_by_interface
    - gf_sg_route_set_name
    - GF_LOG
    - gf_list_del_item
    - gf_sg_route_activate
    - gf_sg_find_proto
    - is_same_proto
    - gf_sg_find_node
    - 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:729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - proto_inst
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 726
    functionDepth: 1
    functionLinenumber: 726
    functionLinenumberEnd: 731
    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:741,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:744,1
    - Dst: gf_list_new
      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_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:750,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_proto.c:752,1
    - Dst: gf_sg_new_subscene
      Src: /src/gpac/src/scenegraph/vrml_proto.c:755,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:761,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:764,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:772,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:778,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:779,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:782,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:786,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: 789
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 789
    functionName: gf_sg_proto_create_node
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_sg_new_subscene
    - gf_sg_vrml_field_pointer_new
    - gf_sg_vrml_field_copy
    - GF_LOG
    - gf_list_get
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_sg_vrml_get_sf_type
    - gf_node_setup
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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:795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sg
    - proto
    argTypes:
    - GF_SceneGraph*
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 792
    functionDepth: 2
    functionLinenumber: 792
    functionLinenumberEnd: 796
    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:806,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 798
    functionDepth: 5
    functionLinenumber: 798
    functionLinenumberEnd: 808
    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:826,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - node
    - code_mode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 811
    functionDepth: 1
    functionLinenumber: 811
    functionLinenumberEnd: 832
    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:839,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:840,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:841,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:846,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:851,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:856,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:858,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:864,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:866,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:869,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:870,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_proto.c:871,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/vrml_proto.c:872,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/scenegraph/vrml_proto.c:880,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:883,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:884,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:885,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_proto.c:885,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:886,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_proto.c:888,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:890,1
    - Dst: gf_sg_del
      Src: /src/gpac/src/scenegraph/vrml_proto.c:891,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 1
    argNames:
    - inst
    argTypes:
    - GF_ProtoInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 835
    functionDepth: 1
    functionLinenumber: 835
    functionLinenumberEnd: 892
    functionName: gf_sg_proto_del_instance
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - gf_list_del
    - gf_sg_reset
    - gf_list_del_item
    - gf_assert
    - gf_sg_del
    - gf_list_get
    - gf_node_free
    - gf_node_unregister
    - gf_list_rem
    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:904,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:906,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:909,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:909,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:911,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:911,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:914,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:914,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:914,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:914,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:919,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:929,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:934,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:935,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:948,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:950,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:960,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:963,1
    - Dst: gf_list_add
      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_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:974,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:977,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:980,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:985,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: 986
      start: 897
    functionDepth: 2
    functionLinenumber: 897
    functionLinenumberEnd: 986
    functionName: gf_sg_proto_field_set_ised
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - gf_node_get_field
    - gf_free
    - GF_LOG
    - gf_node_get_class_name
    - GF_SAFEALLOC
    - gf_sg_vrml_get_sf_type
    - gf_list_new
    - gf_list_add
    - gf_sg_vrml_get_field_type_name
    - gf_sg_proto_get_field
    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:997,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:999,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1002,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1002,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1004,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1004,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1007,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1007,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1007,1
    - Dst: gf_sg_vrml_get_field_type_name
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1007,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1012,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1022,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1025,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1026,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1040,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1042,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1052,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1055,1
    - Dst: gf_list_add
      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_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1066,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1069,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1070,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1073,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1078,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1079,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: 1080
      start: 988
    functionDepth: 4
    functionLinenumber: 988
    functionLinenumberEnd: 1080
    functionName: gf_sg_proto_instance_set_ised
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - gf_node_get_field
    - gf_free
    - GF_LOG
    - gf_node_get_class_name
    - GF_SAFEALLOC
    - gf_sg_route_activate
    - gf_sg_vrml_get_sf_type
    - gf_list_new
    - gf_list_add
    - gf_sg_vrml_get_field_type_name
    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:1094,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1100,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1101,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1104,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1105,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: 1110
      start: 1083
    functionDepth: 1
    functionLinenumber: 1083
    functionLinenumberEnd: 1110
    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: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1121,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1122,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 4
    argNames:
    - proto
    - index
    - code_mode
    - all_index
    argTypes:
    - GF_ProtoInstance*
    - u32
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1113
    functionDepth: 1
    functionLinenumber: 1113
    functionLinenumberEnd: 1155
    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:1161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1162
      start: 1157
    functionDepth: 1
    functionLinenumber: 1157
    functionLinenumberEnd: 1162
    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:1168,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1164
    functionDepth: 1
    functionLinenumber: 1164
    functionLinenumberEnd: 1169
    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:1186,1
    - Dst: gf_sg_route_activate
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1190,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1191,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: 1194
      start: 1171
    functionDepth: 4
    functionLinenumber: 1171
    functionLinenumberEnd: 1194
    functionName: gf_sg_proto_propagate_event
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - gf_sg_route_activate
    - gf_node_changed
    - gf_list_enum
    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:1206,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1217,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: 1241
      start: 1197
    functionDepth: 1
    functionLinenumber: 1197
    functionLinenumberEnd: 1241
    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: 1251
      start: 1244
    functionDepth: 0
    functionLinenumber: 1244
    functionLinenumberEnd: 1251
    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: 1258
      start: 1254
    functionDepth: 0
    functionLinenumber: 1254
    functionLinenumberEnd: 1258
    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: 1264
      start: 1260
    functionDepth: 0
    functionLinenumber: 1260
    functionLinenumberEnd: 1264
    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: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1271,1
    - Dst: gf_sg_proto_get_root_tag
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1276,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - proto
    argTypes:
    - GF_Proto*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1279
      start: 1266
    functionDepth: 1
    functionLinenumber: 1266
    functionLinenumberEnd: 1279
    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: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1294,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1299,1
    - Dst: gf_sg_proto_field_is_sftime_offset_internal
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1303,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1306,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1306,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 24
    argCount: 3
    argNames:
    - node
    - field
    - depth
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1309
      start: 1281
    functionDepth: 1
    functionLinenumber: 1281
    functionLinenumberEnd: 1309
    functionName: gf_sg_proto_field_is_sftime_offset_internal
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 1
    functionsReached:
    - stricmp
    - gf_node_get_field
    - gf_list_enum
    - gf_sg_proto_field_is_sftime_offset_internal
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sg_proto_field_is_sftime_offset_internal(GF_Node *node, GF_FieldInfo
      *field, u32 depth)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_proto_field_is_sftime_offset_internal
      Src: /src/gpac/src/scenegraph/vrml_proto.c:1314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1311
    functionDepth: 2
    functionLinenumber: 1311
    functionLinenumberEnd: 1315
    functionName: gf_sg_proto_field_is_sftime_offset
    functionSourceFile: /src/gpac/src/scenegraph/vrml_proto.c
    functionUses: 2
    functionsReached:
    - gf_sg_proto_field_is_sftime_offset_internal
    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: 1323
      start: 1317
    functionDepth: 0
    functionLinenumber: 1317
    functionLinenumberEnd: 1323
    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: 1331
      start: 1325
    functionDepth: 0
    functionLinenumber: 1325
    functionLinenumberEnd: 1331
    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: 1338
      start: 1333
    functionDepth: 0
    functionLinenumber: 1333
    functionLinenumberEnd: 1338
    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: 1349
      start: 1341
    functionDepth: 0
    functionLinenumber: 1341
    functionLinenumberEnd: 1349
    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:1356,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1351
    functionDepth: 1
    functionLinenumber: 1351
    functionLinenumberEnd: 1358
    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:1370,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - node
    - fieldIndex
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1362
    functionDepth: 1
    functionLinenumber: 1362
    functionLinenumberEnd: 1376
    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: 0
    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: 0
    functionsReached:
    - memset
    - gf_free
    - 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: 0
    functionsReached:
    - MIN
    - MAX
    - gf_mulfix
    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: 0
    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_add
    - GF_SAFEALLOC
    - gf_list_new
    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_node_get_scene_time
    - gf_node_get_log_name
    - gf_svg_attributes_copy
    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_node_get_scene_time
    - gf_divfix
    - GF_LOG
    - gf_node_get_log_name
    - gf_mulfix
    - gf_list_get
    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_smil_anim_use_keypoints_keytimes
    - gf_node_get_scene_time
    - gf_svg_attributes_resolve_currentColor
    - gf_floor
    - gf_svg_attributes_interpolate
    - GF_LOG
    - gf_svg_attribute_is_interpolatable
    - gf_node_get_log_name
    - INT2FIX
    - gf_svg_attributes_copy
    - FIX2INT
    - gf_list_get
    - memset
    - gf_svg_attributes_resolve_inherit
    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_smil_anim_use_keypoints_keytimes
    - gf_node_get_scene_time
    - gf_svg_attributes_resolve_currentColor
    - gf_svg_attributes_interpolate
    - gf_svg_attributes_resolve_unspecified
    - GF_LOG
    - gf_svg_attribute_is_interpolatable
    - gf_node_get_log_name
    - gf_svg_attributes_copy
    - gf_svg_attributes_resolve_inherit
    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_node_get_scene_time
    - gf_svg_attributes_resolve_currentColor
    - gf_svg_attributes_resolve_unspecified
    - GF_LOG
    - gf_svg_attribute_is_interpolatable
    - gf_node_get_log_name
    - gf_svg_attributes_muladd
    - gf_svg_attributes_resolve_inherit
    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_init
    - gf_mx2d_add_rotation
    - 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_smil_anim_use_keypoints_keytimes
    - gf_node_get_scene_time
    - GF_LOG
    - gf_node_get_log_name
    - gf_svg_compute_path_anim
    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_node_get_scene_time
    - gf_smil_anim_animate_using_path
    - gf_free
    - gf_smil_anim_animate_using_values
    - GF_LOG
    - gf_svg_get_attribute_name
    - gf_node_get_log_name
    - gf_smil_anim_animate_from_by
    - gf_log_tool_level_on
    - gf_smil_anim_set
    - gf_smil_anim_animate_from_to
    - gf_svg_dump_attribute
    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_node_animation_count
    - gf_svg_is_animation_tag
    - gf_list_enum
    - 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_is_inherit
    - gf_svg_attributes_resolve_currentColor
    - gf_malloc
    - GF_LOG
    - gf_svg_attribute_is_interpolatable
    - gf_node_get_log_name
    - gf_list_last
    - gf_svg_compute_path_anim
    - gf_svg_attributes_resolve_inherit
    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_node_get_scene_time
    - GF_LOG
    - gf_svg_attributes_muladd
    - gf_node_get_log_name
    - INT2FIX
    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_node_get_scene_time
    - gf_svg_attributes_add
    - gf_free
    - GF_LOG
    - gf_svg_get_attribute_name
    - gf_node_get_log_name
    - gf_svg_attributes_copy
    - gf_log_tool_level_on
    - gf_svg_dump_attribute
    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_node_get_scene_time
    - gf_smil_anim_apply_accumulate
    - GF_LOG
    - gf_node_get_log_name
    - gf_smil_anim_compute_interpolation_value
    - gf_smil_apply_additive
    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_node_get_scene_time
    - gf_free
    - GF_LOG
    - gf_svg_get_attribute_name
    - gf_node_get_log_name
    - gf_svg_attributes_copy
    - gf_log_tool_level_on
    - gf_svg_dump_attribute
    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_freeze
    - gf_smil_anim_reset_variables
    - gf_smil_anim_animate
    - gf_smil_anim_remove
    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_list_count
    - gf_node_animation_count
    - gf_node_get_scene_time
    - gf_node_get_attribute_by_tag
    - gf_free
    - gf_node_dirty_clear
    - gf_node_animation_get
    - GF_LOG
    - gf_svg_get_attribute_name
    - gf_sys_clock
    - gf_node_get_log_name
    - gf_log_tool_level_on
    - gf_list_get
    - gf_node_dirty_set
    - SMIL_Timing_RTI*::evaluate
    - gf_svg_get_property_pointer
    - gf_svg_dump_attribute
    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_mx2d_init
    - gf_list_count
    - gf_node_get_tag
    - gf_node_get_attribute_by_tag
    - gf_node_get_log_name
    - GF_SAFEALLOC
    - while
    - gf_svg_path_build
    - gf_path_iterator_get_length
    - gf_path_is_empty
    - gf_node_get_graph
    - gf_sg_find_node_by_name
    - gf_path_new
    - gf_smil_anim_reset_variables
    - gf_path_iterator_new
    - gf_svg_is_property
    - GF_LOG
    - gf_svg_create_attribute_value
    - memset
    - gf_node_get_field_by_name
    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_path_del
    - gf_svg_delete_attribute_value
    - gf_free
    - gf_path_iterator_del
    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_list_count
    - gf_node_animation_count
    - gf_free
    - gf_node_animation_get
    - gf_list_del
    - gf_list_enum
    - gf_svg_delete_attribute_value
    - gf_node_animation_rem
    - gf_smil_anim_delete_runtime_info
    - gf_list_rem
    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_node_animation_count
    - gf_free
    - gf_node_animation_get
    - gf_list_del
    - gf_list_enum
    - gf_svg_delete_attribute_value
    - gf_node_animation_del
    - gf_smil_anim_delete_runtime_info
    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_smil_timing_init_runtime_info
    - GF_SAFEALLOC
    - gf_svg_flatten_attributes
    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_malloc
    - gf_node_get_attribute_by_tag
    - gf_smil_anim_init_runtime_info
    - gf_svg_parse_attribute
    - GF_LOG
    - gf_node_register_iri
    - gf_node_get_attribute_by_name
    - gf_smil_anim_set_anim_runtime_in_timing
    - gf_smil_timing_init_runtime_info
    - gf_node_get_parent
    - gf_svg_flatten_attributes
    - gf_node_get_graph
    - gf_sg_find_node_by_name
    - strlen
    - gf_utf8_is_legal
    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:
    - atof
    - FLT2FIX
    - atoi
    - stricmp
    - INT2FIX
    - gf_mulfix
    - strstr
    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:
    - sprintf
    - FIX2FLT
    - gf_free
    - gf_node_get_private
    - gf_list_enum
    - format_sftime_string
    - gf_sg_route_setup
    - gf_sg_route_queue
    - gf_sg_route_activate
    - gf_sg_vrml_mf_alloc
    - gf_mulfix
    - FIX2INT
    - gf_strdup
    - valuator_get_output
    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:
    - atof
    - FLT2FIX
    - SetValuatorOutput
    - atoi
    - stricmp
    - INT2FIX
    - strstr
    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:
    - gf_sg_vrml_field_pointer_new
    - Valuator_SetInSFRotation
    - Valuator_SetInMFColor
    - Valuator_SetInMFRotation
    - Valuator_SetInMFInt32
    - Valuator_SetInMFString
    - gf_sys_is_cov_mode
    - Valuator_SetInMFFloat
    - gf_node_set_private
    - Valuator_SetInMFVec3f
    - gf_node_set_callback_function
    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_sfstring_del
    - gf_sg_mfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfurl_del
    - gf_node_free
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_free
    - gf_node_unregister
    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_SAFEALLOC
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_sfstring_del
    - gf_sg_mfint32_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_node_free
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_sg_mfurl_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    - gf_node_free
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_node_free
    - gf_sg_vrml_parent_destroy
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_SAFEALLOC
    - gf_node_setup
    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_SAFEALLOC
    - gf_node_setup
    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_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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_sg_sfcommand_del
    - gf_node_free
    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_SAFEALLOC
    - gf_node_setup
    - gf_list_new
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_node_free
    - gf_sg_mfvec3f_del
    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_SAFEALLOC
    - gf_node_setup
    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_node_free
    - gf_sg_mfvec2f_del
    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_SAFEALLOC
    - gf_node_setup
    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_node_free
    - gf_sg_mfvec3f_del
    - 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_SAFEALLOC
    - gf_node_setup
    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_node_free
    - gf_sg_mfvec2f_del
    - 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_SAFEALLOC
    - gf_node_setup
    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_free
    - gf_node_unregister
    - 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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_free
    - gf_node_unregister
    - 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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_SAFEALLOC
    - gf_node_setup
    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_mfrotation_del
    - gf_node_free
    - gf_sg_mfvec2f_del
    - gf_sg_mfvec3f_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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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_children
    - gf_node_free
    - gf_node_unregister
    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_SAFEALLOC
    - gf_node_setup
    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_free
    - gf_node_unregister
    - 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_SAFEALLOC
    - gf_node_setup
    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_free
    - gf_node_unregister_children
    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_SAFEALLOC
    - gf_node_setup
    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_free
    - gf_node_unregister
    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:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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_free
    - gf_node_unregister
    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_SAFEALLOC
    - gf_node_setup
    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_children
    - gf_node_free
    - gf_node_unregister
    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_SAFEALLOC
    - gf_node_setup
    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_SAFEALLOC
    - gf_node_setup
    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_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7132,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7135
      start: 7121
    functionDepth: 1
    functionLinenumber: 7121
    functionLinenumberEnd: 7135
    functionName: Fog_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:7145,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7146,1
    - Dst: gf_sg_sfstring_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_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7150
      start: 7142
    functionDepth: 1
    functionLinenumber: 7142
    functionLinenumberEnd: 7150
    functionName: FontStyle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_free
    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: 7170
      start: 7156
    functionDepth: 0
    functionLinenumber: 7156
    functionLinenumberEnd: 7170
    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: 7187
      start: 7172
    functionDepth: 0
    functionLinenumber: 7172
    functionLinenumberEnd: 7187
    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: 7248
      start: 7188
    functionDepth: 0
    functionLinenumber: 7188
    functionLinenumberEnd: 7248
    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:7253,1
    - 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
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7263
      start: 7251
    functionDepth: 0
    functionLinenumber: 7251
    functionLinenumberEnd: 7263
    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:7270,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7276,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: 7282
      start: 7264
    functionDepth: 1
    functionLinenumber: 7264
    functionLinenumberEnd: 7282
    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:7289,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7291,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7294,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7296,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7299,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7300,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7302,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7303,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7307
      start: 7286
    functionDepth: 1
    functionLinenumber: 7286
    functionLinenumberEnd: 7307
    functionName: FontStyle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:7317,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7318,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7319,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7320,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7322
      start: 7314
    functionDepth: 1
    functionLinenumber: 7314
    functionLinenumberEnd: 7322
    functionName: Form_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    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: 7343
      start: 7329
    functionDepth: 0
    functionLinenumber: 7329
    functionLinenumberEnd: 7343
    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: 7363
      start: 7345
    functionDepth: 0
    functionLinenumber: 7345
    functionLinenumberEnd: 7363
    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: 7417
      start: 7364
    functionDepth: 0
    functionLinenumber: 7364
    functionLinenumberEnd: 7417
    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:7422,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7423,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7424,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7425,1
    - 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
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7430
      start: 7420
    functionDepth: 0
    functionLinenumber: 7420
    functionLinenumberEnd: 7430
    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:7437,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7444,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7445,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7451,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7452,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: 7457
      start: 7431
    functionDepth: 1
    functionLinenumber: 7431
    functionLinenumberEnd: 7457
    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:7464,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7466,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7467,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7470,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7471,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7473
      start: 7461
    functionDepth: 1
    functionLinenumber: 7461
    functionLinenumberEnd: 7473
    functionName: Form_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:7483,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7485
      start: 7480
    functionDepth: 1
    functionLinenumber: 7480
    functionLinenumberEnd: 7485
    functionName: Group_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 7505
      start: 7491
    functionDepth: 0
    functionLinenumber: 7491
    functionLinenumberEnd: 7505
    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: 7522
      start: 7507
    functionDepth: 0
    functionLinenumber: 7507
    functionLinenumberEnd: 7522
    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: 7552
      start: 7523
    functionDepth: 0
    functionLinenumber: 7523
    functionLinenumberEnd: 7552
    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:7557,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7558,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7559,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7561
      start: 7555
    functionDepth: 0
    functionLinenumber: 7555
    functionLinenumberEnd: 7561
    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: 7568
      start: 7562
    functionDepth: 0
    functionLinenumber: 7562
    functionLinenumberEnd: 7568
    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:7575,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7577,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7582
      start: 7572
    functionDepth: 1
    functionLinenumber: 7572
    functionLinenumberEnd: 7582
    functionName: Group_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:7592,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7594
      start: 7589
    functionDepth: 1
    functionLinenumber: 7589
    functionLinenumberEnd: 7594
    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: 7614
      start: 7600
    functionDepth: 0
    functionLinenumber: 7600
    functionLinenumberEnd: 7614
    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: 7631
      start: 7616
    functionDepth: 0
    functionLinenumber: 7616
    functionLinenumberEnd: 7631
    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: 7656
      start: 7632
    functionDepth: 0
    functionLinenumber: 7632
    functionLinenumberEnd: 7656
    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:7661,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7662,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7663,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7665
      start: 7659
    functionDepth: 0
    functionLinenumber: 7659
    functionLinenumberEnd: 7665
    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: 7672
      start: 7666
    functionDepth: 0
    functionLinenumber: 7666
    functionLinenumberEnd: 7672
    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:7679,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7687
      start: 7676
    functionDepth: 1
    functionLinenumber: 7676
    functionLinenumberEnd: 7687
    functionName: ImageTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:7697,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7698,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7699,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7700,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7701,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7702,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7703,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7704,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7705,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7706,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7707,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7708,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7709,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7710
      start: 7694
    functionDepth: 1
    functionLinenumber: 7694
    functionLinenumberEnd: 7710
    functionName: IndexedFaceSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 7730
      start: 7716
    functionDepth: 0
    functionLinenumber: 7716
    functionLinenumberEnd: 7730
    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: 7747
      start: 7732
    functionDepth: 0
    functionLinenumber: 7732
    functionLinenumberEnd: 7747
    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: 7870
      start: 7748
    functionDepth: 0
    functionLinenumber: 7748
    functionLinenumberEnd: 7870
    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:7875,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7876,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7877,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7878,1
    - 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
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7894
      start: 7873
    functionDepth: 0
    functionLinenumber: 7873
    functionLinenumberEnd: 7894
    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:7901,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7907,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7913,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7914,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7919,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7925,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: 7931
      start: 7895
    functionDepth: 1
    functionLinenumber: 7895
    functionLinenumberEnd: 7931
    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:7938,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7940,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7950
      start: 7935
    functionDepth: 1
    functionLinenumber: 7935
    functionLinenumberEnd: 7950
    functionName: IndexedFaceSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:7960,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7961,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7962,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7963,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7964,1
    - Dst: gf_node_unregister
      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_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7967,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7968,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:7969,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7970
      start: 7957
    functionDepth: 1
    functionLinenumber: 7957
    functionLinenumberEnd: 7970
    functionName: IndexedFaceSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 7990
      start: 7976
    functionDepth: 0
    functionLinenumber: 7976
    functionLinenumberEnd: 7990
    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: 8007
      start: 7992
    functionDepth: 0
    functionLinenumber: 7992
    functionLinenumberEnd: 8007
    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: 8086
      start: 8008
    functionDepth: 0
    functionLinenumber: 8008
    functionLinenumberEnd: 8086
    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:8091,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8094,1
    - 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
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8103
      start: 8089
    functionDepth: 0
    functionLinenumber: 8089
    functionLinenumberEnd: 8103
    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:8110,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8116,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8122,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: 8128
      start: 8104
    functionDepth: 1
    functionLinenumber: 8104
    functionLinenumberEnd: 8128
    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:8135,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8143
      start: 8132
    functionDepth: 1
    functionLinenumber: 8132
    functionLinenumberEnd: 8143
    functionName: IndexedFaceSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8153,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8154,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8155,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8156,1
    - 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_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8160
      start: 8150
    functionDepth: 1
    functionLinenumber: 8150
    functionLinenumberEnd: 8160
    functionName: IndexedLineSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 8180
      start: 8166
    functionDepth: 0
    functionLinenumber: 8166
    functionLinenumberEnd: 8180
    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: 8197
      start: 8182
    functionDepth: 0
    functionLinenumber: 8182
    functionLinenumberEnd: 8197
    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: 8250
      start: 8198
    functionDepth: 0
    functionLinenumber: 8198
    functionLinenumberEnd: 8250
    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:8255,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8258,1
    - 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
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8263
      start: 8253
    functionDepth: 0
    functionLinenumber: 8253
    functionLinenumberEnd: 8263
    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:8270,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8276,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: 8282
      start: 8264
    functionDepth: 1
    functionLinenumber: 8264
    functionLinenumberEnd: 8282
    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:8289,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8296
      start: 8286
    functionDepth: 1
    functionLinenumber: 8286
    functionLinenumberEnd: 8296
    functionName: IndexedLineSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8306,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8307,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8308,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8309,1
    - 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_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8313
      start: 8303
    functionDepth: 1
    functionLinenumber: 8303
    functionLinenumberEnd: 8313
    functionName: IndexedLineSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 8333
      start: 8319
    functionDepth: 0
    functionLinenumber: 8319
    functionLinenumberEnd: 8333
    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: 8350
      start: 8335
    functionDepth: 0
    functionLinenumber: 8335
    functionLinenumberEnd: 8350
    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: 8403
      start: 8351
    functionDepth: 0
    functionLinenumber: 8351
    functionLinenumberEnd: 8403
    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:8408,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8409,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8410,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8411,1
    - 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
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8416
      start: 8406
    functionDepth: 0
    functionLinenumber: 8406
    functionLinenumberEnd: 8416
    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:8423,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8429,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: 8435
      start: 8417
    functionDepth: 1
    functionLinenumber: 8417
    functionLinenumberEnd: 8435
    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:8442,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8444,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8449
      start: 8439
    functionDepth: 1
    functionLinenumber: 8439
    functionLinenumberEnd: 8449
    functionName: IndexedLineSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8459,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8461
      start: 8456
    functionDepth: 1
    functionLinenumber: 8456
    functionLinenumberEnd: 8461
    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: 8481
      start: 8467
    functionDepth: 0
    functionLinenumber: 8467
    functionLinenumberEnd: 8481
    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: 8498
      start: 8483
    functionDepth: 0
    functionLinenumber: 8483
    functionLinenumberEnd: 8498
    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: 8511
      start: 8499
    functionDepth: 0
    functionLinenumber: 8499
    functionLinenumberEnd: 8511
    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:8516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8518
      start: 8514
    functionDepth: 0
    functionLinenumber: 8514
    functionLinenumberEnd: 8518
    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: 8525
      start: 8519
    functionDepth: 0
    functionLinenumber: 8519
    functionLinenumberEnd: 8525
    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:8532,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8534,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8538
      start: 8529
    functionDepth: 1
    functionLinenumber: 8529
    functionLinenumberEnd: 8538
    functionName: Inline_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:8548,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8549,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8550,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8551
      start: 8545
    functionDepth: 1
    functionLinenumber: 8545
    functionLinenumberEnd: 8551
    functionName: LOD_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - 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: 8571
      start: 8557
    functionDepth: 0
    functionLinenumber: 8557
    functionLinenumberEnd: 8571
    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: 8588
      start: 8573
    functionDepth: 0
    functionLinenumber: 8573
    functionLinenumberEnd: 8588
    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: 8614
      start: 8589
    functionDepth: 0
    functionLinenumber: 8589
    functionLinenumberEnd: 8614
    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:8619,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8620,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8621,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8623
      start: 8617
    functionDepth: 0
    functionLinenumber: 8617
    functionLinenumberEnd: 8623
    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:8636,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: 8642
      start: 8624
    functionDepth: 1
    functionLinenumber: 8624
    functionLinenumberEnd: 8642
    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:8649,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8651,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8654,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8656,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8658
      start: 8646
    functionDepth: 1
    functionLinenumber: 8646
    functionLinenumberEnd: 8658
    functionName: LOD_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:8668,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8669,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8670,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8671,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8672
      start: 8665
    functionDepth: 1
    functionLinenumber: 8665
    functionLinenumberEnd: 8672
    functionName: Layer2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 8693
      start: 8679
    functionDepth: 0
    functionLinenumber: 8679
    functionLinenumberEnd: 8693
    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: 8713
      start: 8695
    functionDepth: 0
    functionLinenumber: 8695
    functionLinenumberEnd: 8713
    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: 8763
      start: 8714
    functionDepth: 0
    functionLinenumber: 8714
    functionLinenumberEnd: 8763
    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:8768,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8769,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8773,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8775
      start: 8766
    functionDepth: 0
    functionLinenumber: 8766
    functionLinenumberEnd: 8775
    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: 8788
      start: 8776
    functionDepth: 0
    functionLinenumber: 8776
    functionLinenumberEnd: 8788
    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:8795,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8797,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8798,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8801,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8802,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8804
      start: 8792
    functionDepth: 1
    functionLinenumber: 8792
    functionLinenumberEnd: 8804
    functionName: Layer2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:8814,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8815,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8816,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8817,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8818,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8820
      start: 8811
    functionDepth: 1
    functionLinenumber: 8811
    functionLinenumberEnd: 8820
    functionName: Layer3D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 8841
      start: 8827
    functionDepth: 0
    functionLinenumber: 8827
    functionLinenumberEnd: 8841
    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: 8861
      start: 8843
    functionDepth: 0
    functionLinenumber: 8843
    functionLinenumberEnd: 8861
    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: 8925
      start: 8862
    functionDepth: 0
    functionLinenumber: 8862
    functionLinenumberEnd: 8925
    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:8930,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8931,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8932,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8933,1
    - 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
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8939
      start: 8928
    functionDepth: 0
    functionLinenumber: 8928
    functionLinenumberEnd: 8939
    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: 8952
      start: 8940
    functionDepth: 0
    functionLinenumber: 8940
    functionLinenumberEnd: 8952
    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:8959,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8961,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8962,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8965,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8966,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8968
      start: 8956
    functionDepth: 1
    functionLinenumber: 8956
    functionLinenumberEnd: 8968
    functionName: Layer3D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:8978,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8979,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:8980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8981
      start: 8975
    functionDepth: 1
    functionLinenumber: 8975
    functionLinenumberEnd: 8981
    functionName: Layout_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - 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: 9002
      start: 8988
    functionDepth: 0
    functionLinenumber: 8988
    functionLinenumberEnd: 9002
    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: 9022
      start: 9004
    functionDepth: 0
    functionLinenumber: 9004
    functionLinenumberEnd: 9022
    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: 9124
      start: 9023
    functionDepth: 0
    functionLinenumber: 9023
    functionLinenumberEnd: 9124
    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:9129,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9130,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9132,1
    - 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
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9145
      start: 9127
    functionDepth: 0
    functionLinenumber: 9127
    functionLinenumberEnd: 9145
    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:9152,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9158,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9171,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9172,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: 9177
      start: 9146
    functionDepth: 1
    functionLinenumber: 9146
    functionLinenumberEnd: 9177
    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:9184,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9186,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9187,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9190,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9191,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9193,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9195,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9203
      start: 9181
    functionDepth: 1
    functionLinenumber: 9181
    functionLinenumberEnd: 9203
    functionName: Layout_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:9213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9214
      start: 9210
    functionDepth: 1
    functionLinenumber: 9210
    functionLinenumberEnd: 9214
    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: 9235
      start: 9221
    functionDepth: 0
    functionLinenumber: 9221
    functionLinenumberEnd: 9235
    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: 9255
      start: 9237
    functionDepth: 0
    functionLinenumber: 9237
    functionLinenumberEnd: 9255
    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: 9280
      start: 9256
    functionDepth: 0
    functionLinenumber: 9256
    functionLinenumberEnd: 9280
    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:9285,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9286,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9287,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9289
      start: 9283
    functionDepth: 0
    functionLinenumber: 9283
    functionLinenumberEnd: 9289
    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:9296,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9297,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9303,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9304,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9309,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: 9315
      start: 9290
    functionDepth: 1
    functionLinenumber: 9290
    functionLinenumberEnd: 9315
    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:9322,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9324,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9327,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9328,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9329,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9331,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9333
      start: 9319
    functionDepth: 1
    functionLinenumber: 9319
    functionLinenumberEnd: 9333
    functionName: LineProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:9343,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9345
      start: 9340
    functionDepth: 1
    functionLinenumber: 9340
    functionLinenumberEnd: 9345
    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: 9366
      start: 9352
    functionDepth: 0
    functionLinenumber: 9352
    functionLinenumberEnd: 9366
    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: 9386
      start: 9368
    functionDepth: 0
    functionLinenumber: 9368
    functionLinenumberEnd: 9386
    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: 9436
      start: 9387
    functionDepth: 0
    functionLinenumber: 9387
    functionLinenumberEnd: 9436
    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:9441,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9442,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9443,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9444,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9445,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9446,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9447,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9449
      start: 9439
    functionDepth: 0
    functionLinenumber: 9439
    functionLinenumberEnd: 9449
    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: 9466
      start: 9450
    functionDepth: 0
    functionLinenumber: 9450
    functionLinenumberEnd: 9466
    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:9473,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9475,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9479,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9480,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9481,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9482,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9483,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9487
      start: 9470
    functionDepth: 1
    functionLinenumber: 9470
    functionLinenumberEnd: 9487
    functionName: ListeningPoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:9497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9498
      start: 9494
    functionDepth: 1
    functionLinenumber: 9494
    functionLinenumberEnd: 9498
    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: 9519
      start: 9505
    functionDepth: 0
    functionLinenumber: 9505
    functionLinenumberEnd: 9519
    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: 9539
      start: 9521
    functionDepth: 0
    functionLinenumber: 9521
    functionLinenumberEnd: 9539
    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: 9582
      start: 9540
    functionDepth: 0
    functionLinenumber: 9540
    functionLinenumberEnd: 9582
    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:9587,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9588,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9589,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9590,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9591,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9592,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9594
      start: 9585
    functionDepth: 0
    functionLinenumber: 9585
    functionLinenumberEnd: 9594
    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:9601,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9602,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9607,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9608,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9613,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9614,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9619,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9620,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9625,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9626,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9631,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9632,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: 9637
      start: 9595
    functionDepth: 1
    functionLinenumber: 9595
    functionLinenumberEnd: 9637
    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:9644,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9646,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9649,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9650,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9651,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9652,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9653,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9662
      start: 9641
    functionDepth: 1
    functionLinenumber: 9641
    functionLinenumberEnd: 9662
    functionName: Material_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:9672,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9673,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9674
      start: 9669
    functionDepth: 1
    functionLinenumber: 9669
    functionLinenumberEnd: 9674
    functionName: Material2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 9695
      start: 9681
    functionDepth: 0
    functionLinenumber: 9681
    functionLinenumberEnd: 9695
    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: 9715
      start: 9697
    functionDepth: 0
    functionLinenumber: 9697
    functionLinenumberEnd: 9715
    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: 9747
      start: 9716
    functionDepth: 0
    functionLinenumber: 9716
    functionLinenumberEnd: 9747
    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:9752,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9753,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9755,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9757
      start: 9750
    functionDepth: 0
    functionLinenumber: 9750
    functionLinenumberEnd: 9757
    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:9764,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9765,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9770,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9771,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: 9776
      start: 9758
    functionDepth: 1
    functionLinenumber: 9758
    functionLinenumberEnd: 9776
    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:9783,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9785,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9789,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9790,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9793
      start: 9780
    functionDepth: 1
    functionLinenumber: 9780
    functionLinenumberEnd: 9793
    functionName: Material2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:9803,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9805
      start: 9800
    functionDepth: 1
    functionLinenumber: 9800
    functionLinenumberEnd: 9805
    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: 9826
      start: 9812
    functionDepth: 0
    functionLinenumber: 9812
    functionLinenumberEnd: 9826
    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: 9846
      start: 9828
    functionDepth: 0
    functionLinenumber: 9828
    functionLinenumberEnd: 9846
    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: 9907
      start: 9847
    functionDepth: 0
    functionLinenumber: 9847
    functionLinenumberEnd: 9907
    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:9912,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9913,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9914,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9915,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9916,1
    - 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
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9922
      start: 9910
    functionDepth: 0
    functionLinenumber: 9910
    functionLinenumberEnd: 9922
    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: 9935
      start: 9923
    functionDepth: 0
    functionLinenumber: 9923
    functionLinenumberEnd: 9935
    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:9942,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9944,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9947,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9953
      start: 9939
    functionDepth: 1
    functionLinenumber: 9939
    functionLinenumberEnd: 9953
    functionName: MovieTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:9963,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:9964,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_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: NavigationInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - 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: 9987
      start: 9973
    functionDepth: 0
    functionLinenumber: 9973
    functionLinenumberEnd: 9987
    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: 10007
      start: 9989
    functionDepth: 0
    functionLinenumber: 9989
    functionLinenumberEnd: 10007
    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: 10057
      start: 10008
    functionDepth: 0
    functionLinenumber: 10008
    functionLinenumberEnd: 10057
    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:10062,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10063,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10064,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10065,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10066,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10067,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10068,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10070
      start: 10060
    functionDepth: 0
    functionLinenumber: 10060
    functionLinenumberEnd: 10070
    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:10077,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10083,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10089,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: 10095
      start: 10071
    functionDepth: 1
    functionLinenumber: 10071
    functionLinenumberEnd: 10095
    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:10102,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10104,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10107,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10109,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10110,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10111,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10113,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10114,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10116,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10117,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10120
      start: 10099
    functionDepth: 1
    functionLinenumber: 10099
    functionLinenumberEnd: 10120
    functionName: NavigationInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:10130,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10132
      start: 10127
    functionDepth: 1
    functionLinenumber: 10127
    functionLinenumberEnd: 10132
    functionName: Normal_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec3f_del
    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: 10153
      start: 10139
    functionDepth: 0
    functionLinenumber: 10139
    functionLinenumberEnd: 10153
    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: 10173
      start: 10155
    functionDepth: 0
    functionLinenumber: 10155
    functionLinenumberEnd: 10173
    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: 10186
      start: 10174
    functionDepth: 0
    functionLinenumber: 10174
    functionLinenumberEnd: 10186
    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:10191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10193
      start: 10189
    functionDepth: 0
    functionLinenumber: 10189
    functionLinenumberEnd: 10193
    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: 10204
      start: 10194
    functionDepth: 0
    functionLinenumber: 10194
    functionLinenumberEnd: 10204
    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:10211,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10217
      start: 10208
    functionDepth: 1
    functionLinenumber: 10208
    functionLinenumberEnd: 10217
    functionName: Normal_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10227,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10228,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10229,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10231
      start: 10224
    functionDepth: 1
    functionLinenumber: 10224
    functionLinenumberEnd: 10231
    functionName: NormalInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec3f_del
    - 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: 10251
      start: 10237
    functionDepth: 0
    functionLinenumber: 10237
    functionLinenumberEnd: 10251
    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: 10268
      start: 10253
    functionDepth: 0
    functionLinenumber: 10253
    functionLinenumberEnd: 10268
    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: 10300
      start: 10269
    functionDepth: 0
    functionLinenumber: 10269
    functionLinenumberEnd: 10300
    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:10305,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10306,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10307,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10308,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10310
      start: 10303
    functionDepth: 0
    functionLinenumber: 10303
    functionLinenumberEnd: 10310
    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:10317,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10318,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: 10329
      start: 10311
    functionDepth: 1
    functionLinenumber: 10311
    functionLinenumberEnd: 10329
    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:10336,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10342
      start: 10333
    functionDepth: 1
    functionLinenumber: 10333
    functionLinenumberEnd: 10342
    functionName: NormalInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10352,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10353,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10355
      start: 10349
    functionDepth: 1
    functionLinenumber: 10349
    functionLinenumberEnd: 10355
    functionName: OrderedGroup_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - 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: 10375
      start: 10361
    functionDepth: 0
    functionLinenumber: 10361
    functionLinenumberEnd: 10375
    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: 10392
      start: 10377
    functionDepth: 0
    functionLinenumber: 10377
    functionLinenumberEnd: 10392
    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: 10428
      start: 10393
    functionDepth: 0
    functionLinenumber: 10393
    functionLinenumberEnd: 10428
    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:10433,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10434,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10435,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10436,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10438
      start: 10431
    functionDepth: 0
    functionLinenumber: 10431
    functionLinenumberEnd: 10438
    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:10445,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: 10451
      start: 10439
    functionDepth: 1
    functionLinenumber: 10439
    functionLinenumberEnd: 10451
    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:10458,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10460,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10461,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10465
      start: 10455
    functionDepth: 1
    functionLinenumber: 10455
    functionLinenumberEnd: 10465
    functionName: OrderedGroup_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:10475,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10476,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10478
      start: 10472
    functionDepth: 1
    functionLinenumber: 10472
    functionLinenumberEnd: 10478
    functionName: OrientationInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfrotation_del
    - gf_node_free
    - 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: 10498
      start: 10484
    functionDepth: 0
    functionLinenumber: 10484
    functionLinenumberEnd: 10498
    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: 10515
      start: 10500
    functionDepth: 0
    functionLinenumber: 10500
    functionLinenumberEnd: 10515
    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: 10547
      start: 10516
    functionDepth: 0
    functionLinenumber: 10516
    functionLinenumberEnd: 10547
    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:10552,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10553,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10554,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10557
      start: 10550
    functionDepth: 0
    functionLinenumber: 10550
    functionLinenumberEnd: 10557
    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:10564,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10565,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: 10576
      start: 10558
    functionDepth: 1
    functionLinenumber: 10558
    functionLinenumberEnd: 10576
    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:10583,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10589
      start: 10580
    functionDepth: 1
    functionLinenumber: 10580
    functionLinenumberEnd: 10589
    functionName: OrientationInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10599,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10601
      start: 10596
    functionDepth: 1
    functionLinenumber: 10596
    functionLinenumberEnd: 10601
    functionName: PixelTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_sfimage_del
    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: 10621
      start: 10607
    functionDepth: 0
    functionLinenumber: 10607
    functionLinenumberEnd: 10621
    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: 10638
      start: 10623
    functionDepth: 0
    functionLinenumber: 10623
    functionLinenumberEnd: 10638
    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: 10663
      start: 10639
    functionDepth: 0
    functionLinenumber: 10639
    functionLinenumberEnd: 10663
    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:10668,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10670,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10672
      start: 10666
    functionDepth: 0
    functionLinenumber: 10666
    functionLinenumberEnd: 10672
    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: 10683
      start: 10673
    functionDepth: 0
    functionLinenumber: 10673
    functionLinenumberEnd: 10683
    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:10690,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10692,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10698
      start: 10687
    functionDepth: 1
    functionLinenumber: 10687
    functionLinenumberEnd: 10698
    functionName: PixelTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:10708,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10709
      start: 10705
    functionDepth: 1
    functionLinenumber: 10705
    functionLinenumberEnd: 10709
    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: 10729
      start: 10715
    functionDepth: 0
    functionLinenumber: 10715
    functionLinenumberEnd: 10729
    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: 10746
      start: 10731
    functionDepth: 0
    functionLinenumber: 10731
    functionLinenumberEnd: 10746
    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: 10801
      start: 10747
    functionDepth: 0
    functionLinenumber: 10747
    functionLinenumberEnd: 10801
    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:10806,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10807,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10808,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10809,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10810,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10811,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10812,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10813,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10815
      start: 10804
    functionDepth: 0
    functionLinenumber: 10804
    functionLinenumberEnd: 10815
    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: 10840
      start: 10816
    functionDepth: 0
    functionLinenumber: 10816
    functionLinenumberEnd: 10840
    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:10847,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10849,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10854,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10855,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10856,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10857,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10858,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10859,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10860,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10862
      start: 10844
    functionDepth: 1
    functionLinenumber: 10844
    functionLinenumberEnd: 10862
    functionName: PlaneSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:10872,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10873
      start: 10869
    functionDepth: 1
    functionLinenumber: 10869
    functionLinenumberEnd: 10873
    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: 10893
      start: 10879
    functionDepth: 0
    functionLinenumber: 10879
    functionLinenumberEnd: 10893
    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: 10910
      start: 10895
    functionDepth: 0
    functionLinenumber: 10895
    functionLinenumberEnd: 10910
    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: 10965
      start: 10911
    functionDepth: 0
    functionLinenumber: 10911
    functionLinenumberEnd: 10965
    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:10970,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10971,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10972,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10973,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10974,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10975,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10976,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:10977,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10979
      start: 10968
    functionDepth: 0
    functionLinenumber: 10968
    functionLinenumberEnd: 10979
    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: 11004
      start: 10980
    functionDepth: 0
    functionLinenumber: 10980
    functionLinenumberEnd: 11004
    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:11011,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11013,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11018,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11019,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11020,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11021,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11022,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11023,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11025
      start: 11008
    functionDepth: 1
    functionLinenumber: 11008
    functionLinenumberEnd: 11025
    functionName: PlaneSensor2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11035,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11036
      start: 11032
    functionDepth: 1
    functionLinenumber: 11032
    functionLinenumberEnd: 11036
    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: 11057
      start: 11043
    functionDepth: 0
    functionLinenumber: 11043
    functionLinenumberEnd: 11057
    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: 11077
      start: 11059
    functionDepth: 0
    functionLinenumber: 11059
    functionLinenumberEnd: 11077
    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: 11126
      start: 11078
    functionDepth: 0
    functionLinenumber: 11078
    functionLinenumberEnd: 11126
    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:11131,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11132,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11136,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11137,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11139
      start: 11129
    functionDepth: 0
    functionLinenumber: 11129
    functionLinenumberEnd: 11139
    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:11146,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11147,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11152,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11158,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11159,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11165,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11176,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: 11182
      start: 11140
    functionDepth: 1
    functionLinenumber: 11140
    functionLinenumberEnd: 11182
    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:11189,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11194,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11195,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11196,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11197,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11199,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11200,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:11206,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11208
      start: 11186
    functionDepth: 1
    functionLinenumber: 11186
    functionLinenumberEnd: 11208
    functionName: PointLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11218,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11219,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11221
      start: 11215
    functionDepth: 1
    functionLinenumber: 11215
    functionLinenumberEnd: 11221
    functionName: PointSet_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 11241
      start: 11227
    functionDepth: 0
    functionLinenumber: 11227
    functionLinenumberEnd: 11241
    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: 11258
      start: 11243
    functionDepth: 0
    functionLinenumber: 11243
    functionLinenumberEnd: 11258
    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: 11279
      start: 11259
    functionDepth: 0
    functionLinenumber: 11259
    functionLinenumberEnd: 11279
    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:11284,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11285,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11287
      start: 11282
    functionDepth: 0
    functionLinenumber: 11282
    functionLinenumberEnd: 11287
    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: 11294
      start: 11288
    functionDepth: 0
    functionLinenumber: 11288
    functionLinenumberEnd: 11294
    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:11301,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11307
      start: 11298
    functionDepth: 1
    functionLinenumber: 11298
    functionLinenumberEnd: 11307
    functionName: PointSet_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:11317,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11318,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11320
      start: 11314
    functionDepth: 1
    functionLinenumber: 11314
    functionLinenumberEnd: 11320
    functionName: PointSet2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 11340
      start: 11326
    functionDepth: 0
    functionLinenumber: 11326
    functionLinenumberEnd: 11340
    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: 11357
      start: 11342
    functionDepth: 0
    functionLinenumber: 11342
    functionLinenumberEnd: 11357
    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: 11378
      start: 11358
    functionDepth: 0
    functionLinenumber: 11358
    functionLinenumberEnd: 11378
    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:11383,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11384,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11386
      start: 11381
    functionDepth: 0
    functionLinenumber: 11381
    functionLinenumberEnd: 11386
    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: 11393
      start: 11387
    functionDepth: 0
    functionLinenumber: 11387
    functionLinenumberEnd: 11393
    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:11400,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11402,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11406
      start: 11397
    functionDepth: 1
    functionLinenumber: 11397
    functionLinenumberEnd: 11406
    functionName: PointSet2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:11416,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11417,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11419
      start: 11413
    functionDepth: 1
    functionLinenumber: 11413
    functionLinenumberEnd: 11419
    functionName: PositionInterpolator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec3f_del
    - 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: 11439
      start: 11425
    functionDepth: 0
    functionLinenumber: 11425
    functionLinenumberEnd: 11439
    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: 11456
      start: 11441
    functionDepth: 0
    functionLinenumber: 11441
    functionLinenumberEnd: 11456
    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: 11488
      start: 11457
    functionDepth: 0
    functionLinenumber: 11457
    functionLinenumberEnd: 11488
    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:11493,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11495,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11496,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11498
      start: 11491
    functionDepth: 0
    functionLinenumber: 11491
    functionLinenumberEnd: 11498
    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:11505,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11506,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: 11517
      start: 11499
    functionDepth: 1
    functionLinenumber: 11499
    functionLinenumberEnd: 11517
    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:11524,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11526,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11530
      start: 11521
    functionDepth: 1
    functionLinenumber: 11521
    functionLinenumberEnd: 11530
    functionName: PositionInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:11540,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11541,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11543
      start: 11537
    functionDepth: 1
    functionLinenumber: 11537
    functionLinenumberEnd: 11543
    functionName: PositionInterpolator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - 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: 11563
      start: 11549
    functionDepth: 0
    functionLinenumber: 11549
    functionLinenumberEnd: 11563
    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: 11580
      start: 11565
    functionDepth: 0
    functionLinenumber: 11565
    functionLinenumberEnd: 11580
    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: 11612
      start: 11581
    functionDepth: 0
    functionLinenumber: 11581
    functionLinenumberEnd: 11612
    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:11617,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11619,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11620,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11622
      start: 11615
    functionDepth: 0
    functionLinenumber: 11615
    functionLinenumberEnd: 11622
    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:11629,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11630,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: 11641
      start: 11623
    functionDepth: 1
    functionLinenumber: 11623
    functionLinenumberEnd: 11641
    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:11648,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11650,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11654
      start: 11645
    functionDepth: 1
    functionLinenumber: 11645
    functionLinenumberEnd: 11654
    functionName: PositionInterpolator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:11664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11665
      start: 11661
    functionDepth: 1
    functionLinenumber: 11661
    functionLinenumberEnd: 11665
    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: 11685
      start: 11671
    functionDepth: 0
    functionLinenumber: 11671
    functionLinenumberEnd: 11685
    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: 11702
      start: 11687
    functionDepth: 0
    functionLinenumber: 11687
    functionLinenumberEnd: 11702
    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: 11757
      start: 11703
    functionDepth: 0
    functionLinenumber: 11703
    functionLinenumberEnd: 11757
    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:11762,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11763,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11764,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11765,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11766,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11767,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11768,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11769,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11771
      start: 11760
    functionDepth: 0
    functionLinenumber: 11760
    functionLinenumberEnd: 11771
    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:11778,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11784,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: 11790
      start: 11772
    functionDepth: 1
    functionLinenumber: 11772
    functionLinenumberEnd: 11790
    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:11797,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11799,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11802,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11803,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11804,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11805,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11808
      start: 11794
    functionDepth: 1
    functionLinenumber: 11794
    functionLinenumberEnd: 11808
    functionName: ProximitySensor2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11818,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11819
      start: 11815
    functionDepth: 1
    functionLinenumber: 11815
    functionLinenumberEnd: 11819
    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: 11839
      start: 11825
    functionDepth: 0
    functionLinenumber: 11825
    functionLinenumberEnd: 11839
    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: 11856
      start: 11841
    functionDepth: 0
    functionLinenumber: 11841
    functionLinenumberEnd: 11856
    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: 11911
      start: 11857
    functionDepth: 0
    functionLinenumber: 11857
    functionLinenumberEnd: 11911
    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:11916,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11917,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11918,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11923,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11925
      start: 11914
    functionDepth: 0
    functionLinenumber: 11914
    functionLinenumberEnd: 11925
    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:11938,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: 11944
      start: 11926
    functionDepth: 1
    functionLinenumber: 11926
    functionLinenumberEnd: 11944
    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:11951,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11953,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11956,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11957,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11958,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11959,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11960,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:11961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11964
      start: 11948
    functionDepth: 1
    functionLinenumber: 11948
    functionLinenumberEnd: 11964
    functionName: ProximitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:11974,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11975
      start: 11971
    functionDepth: 1
    functionLinenumber: 11971
    functionLinenumberEnd: 11975
    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: 11993
      start: 11979
    functionDepth: 0
    functionLinenumber: 11979
    functionLinenumberEnd: 11993
    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: 12004
      start: 11995
    functionDepth: 0
    functionLinenumber: 11995
    functionLinenumberEnd: 12004
    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: 12251
      start: 12005
    functionDepth: 0
    functionLinenumber: 12005
    functionLinenumberEnd: 12251
    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:12256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12258,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12261,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12262,1
    - 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
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 82
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12297
      start: 12254
    functionDepth: 0
    functionLinenumber: 12254
    functionLinenumberEnd: 12297
    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:12317,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12318,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12336,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12337,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12355,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12356,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12361,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12362,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12367,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12368,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:12380,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12381,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12386,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12387,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:12399,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12400,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12405,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12406,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:12431,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12432,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12450,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12451,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:12476,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12477,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: 12482
      start: 12298
    functionDepth: 1
    functionLinenumber: 12298
    functionLinenumberEnd: 12482
    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:12489,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12491,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12510,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12511,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12514,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12515,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12518,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12519,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12521,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:12530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12534
      start: 12486
    functionDepth: 1
    functionLinenumber: 12486
    functionLinenumberEnd: 12534
    functionName: QuantizationParameter_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:12544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12545
      start: 12541
    functionDepth: 1
    functionLinenumber: 12541
    functionLinenumberEnd: 12545
    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: 12566
      start: 12552
    functionDepth: 0
    functionLinenumber: 12552
    functionLinenumberEnd: 12566
    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: 12586
      start: 12568
    functionDepth: 0
    functionLinenumber: 12568
    functionLinenumberEnd: 12586
    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: 12599
      start: 12587
    functionDepth: 0
    functionLinenumber: 12587
    functionLinenumberEnd: 12599
    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:12604,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12606
      start: 12602
    functionDepth: 0
    functionLinenumber: 12602
    functionLinenumberEnd: 12606
    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:12613,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: 12619
      start: 12607
    functionDepth: 1
    functionLinenumber: 12607
    functionLinenumberEnd: 12619
    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:12626,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12628,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12631,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12632,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12634
      start: 12623
    functionDepth: 1
    functionLinenumber: 12623
    functionLinenumberEnd: 12634
    functionName: Rectangle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:12644,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12645,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12646,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12647
      start: 12641
    functionDepth: 1
    functionLinenumber: 12641
    functionLinenumberEnd: 12647
    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: 12667
      start: 12653
    functionDepth: 0
    functionLinenumber: 12653
    functionLinenumberEnd: 12667
    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: 12684
      start: 12669
    functionDepth: 0
    functionLinenumber: 12669
    functionLinenumberEnd: 12684
    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: 12716
      start: 12685
    functionDepth: 0
    functionLinenumber: 12685
    functionLinenumberEnd: 12716
    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:12721,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12722,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12723,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12724,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12726
      start: 12719
    functionDepth: 0
    functionLinenumber: 12719
    functionLinenumberEnd: 12726
    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:12733,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12734,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: 12745
      start: 12727
    functionDepth: 1
    functionLinenumber: 12727
    functionLinenumberEnd: 12745
    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:12752,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12754,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12758
      start: 12749
    functionDepth: 1
    functionLinenumber: 12749
    functionLinenumberEnd: 12758
    functionName: ScalarInterpolator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:12768,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12769,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12770
      start: 12765
    functionDepth: 1
    functionLinenumber: 12765
    functionLinenumberEnd: 12770
    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: 12790
      start: 12776
    functionDepth: 0
    functionLinenumber: 12776
    functionLinenumberEnd: 12790
    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: 12807
      start: 12792
    functionDepth: 0
    functionLinenumber: 12792
    functionLinenumberEnd: 12807
    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: 12832
      start: 12808
    functionDepth: 0
    functionLinenumber: 12808
    functionLinenumberEnd: 12832
    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:12838,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12839,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12840,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12842
      start: 12836
    functionDepth: 0
    functionLinenumber: 12836
    functionLinenumberEnd: 12842
    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: 12850
      start: 12844
    functionDepth: 0
    functionLinenumber: 12844
    functionLinenumberEnd: 12850
    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:12857,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12859,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12863
      start: 12854
    functionDepth: 1
    functionLinenumber: 12854
    functionLinenumberEnd: 12863
    functionName: Script_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:12873,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12874,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12876
      start: 12870
    functionDepth: 1
    functionLinenumber: 12870
    functionLinenumberEnd: 12876
    functionName: Shape_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 12896
      start: 12882
    functionDepth: 0
    functionLinenumber: 12882
    functionLinenumberEnd: 12896
    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: 12913
      start: 12898
    functionDepth: 0
    functionLinenumber: 12898
    functionLinenumberEnd: 12913
    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: 12934
      start: 12914
    functionDepth: 0
    functionLinenumber: 12914
    functionLinenumberEnd: 12934
    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:12939,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12940,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12942
      start: 12937
    functionDepth: 0
    functionLinenumber: 12937
    functionLinenumberEnd: 12942
    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: 12949
      start: 12943
    functionDepth: 0
    functionLinenumber: 12943
    functionLinenumberEnd: 12949
    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:12956,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12958,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12962
      start: 12953
    functionDepth: 1
    functionLinenumber: 12953
    functionLinenumberEnd: 12962
    functionName: Shape_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:12972,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:12973,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12974
      start: 12969
    functionDepth: 1
    functionLinenumber: 12969
    functionLinenumberEnd: 12974
    functionName: Sound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 12995
      start: 12981
    functionDepth: 0
    functionLinenumber: 12981
    functionLinenumberEnd: 12995
    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: 13015
      start: 12997
    functionDepth: 0
    functionLinenumber: 12997
    functionLinenumberEnd: 13015
    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: 13083
      start: 13016
    functionDepth: 0
    functionLinenumber: 13016
    functionLinenumberEnd: 13083
    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:13088,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13089,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13090,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13091,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13094,1
    - 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
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13099
      start: 13086
    functionDepth: 0
    functionLinenumber: 13086
    functionLinenumberEnd: 13099
    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:13112,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13113,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13124,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13130,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13136,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13142,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13148,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13149,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: 13154
      start: 13100
    functionDepth: 1
    functionLinenumber: 13100
    functionLinenumberEnd: 13154
    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:13161,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13166,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13167,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13168,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13169,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13170,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13171,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13172,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13180
      start: 13158
    functionDepth: 1
    functionLinenumber: 13158
    functionLinenumberEnd: 13180
    functionName: Sound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:13190,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13192
      start: 13187
    functionDepth: 1
    functionLinenumber: 13187
    functionLinenumberEnd: 13192
    functionName: Sound2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 13213
      start: 13199
    functionDepth: 0
    functionLinenumber: 13199
    functionLinenumberEnd: 13213
    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: 13233
      start: 13215
    functionDepth: 0
    functionLinenumber: 13215
    functionLinenumberEnd: 13233
    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: 13265
      start: 13234
    functionDepth: 0
    functionLinenumber: 13234
    functionLinenumberEnd: 13265
    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:13270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13273,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13275
      start: 13268
    functionDepth: 0
    functionLinenumber: 13268
    functionLinenumberEnd: 13275
    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:13282,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13283,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: 13294
      start: 13276
    functionDepth: 1
    functionLinenumber: 13276
    functionLinenumberEnd: 13294
    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:13301,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13303,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13306,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13307,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13311
      start: 13298
    functionDepth: 1
    functionLinenumber: 13298
    functionLinenumberEnd: 13311
    functionName: Sound2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:13321,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13322
      start: 13318
    functionDepth: 1
    functionLinenumber: 13318
    functionLinenumberEnd: 13322
    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: 13340
      start: 13326
    functionDepth: 0
    functionLinenumber: 13326
    functionLinenumberEnd: 13340
    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: 13351
      start: 13342
    functionDepth: 0
    functionLinenumber: 13342
    functionLinenumberEnd: 13351
    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: 13364
      start: 13352
    functionDepth: 0
    functionLinenumber: 13352
    functionLinenumberEnd: 13364
    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:13369,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13371
      start: 13367
    functionDepth: 0
    functionLinenumber: 13367
    functionLinenumberEnd: 13371
    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:13378,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: 13384
      start: 13372
    functionDepth: 1
    functionLinenumber: 13372
    functionLinenumberEnd: 13384
    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:13391,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13393,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13398
      start: 13388
    functionDepth: 1
    functionLinenumber: 13388
    functionLinenumberEnd: 13398
    functionName: Sphere_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:13408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13409
      start: 13405
    functionDepth: 1
    functionLinenumber: 13405
    functionLinenumberEnd: 13409
    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: 13429
      start: 13415
    functionDepth: 0
    functionLinenumber: 13415
    functionLinenumberEnd: 13429
    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: 13446
      start: 13431
    functionDepth: 0
    functionLinenumber: 13431
    functionLinenumberEnd: 13446
    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: 13489
      start: 13447
    functionDepth: 0
    functionLinenumber: 13447
    functionLinenumberEnd: 13489
    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:13494,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13495,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13496,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13497,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13498,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13499,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13501
      start: 13492
    functionDepth: 0
    functionLinenumber: 13492
    functionLinenumberEnd: 13501
    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: 13514
      start: 13502
    functionDepth: 0
    functionLinenumber: 13502
    functionLinenumberEnd: 13514
    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:13521,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13523,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13528,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13530,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13533
      start: 13518
    functionDepth: 1
    functionLinenumber: 13518
    functionLinenumberEnd: 13533
    functionName: SphereSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:13543,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13544
      start: 13540
    functionDepth: 1
    functionLinenumber: 13540
    functionLinenumberEnd: 13544
    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: 13565
      start: 13551
    functionDepth: 0
    functionLinenumber: 13551
    functionLinenumberEnd: 13565
    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: 13585
      start: 13567
    functionDepth: 0
    functionLinenumber: 13567
    functionLinenumberEnd: 13585
    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: 13652
      start: 13586
    functionDepth: 0
    functionLinenumber: 13586
    functionLinenumberEnd: 13652
    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:13657,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13658,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13659,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13660,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13661,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13662,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13663,1
    - 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
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13668
      start: 13655
    functionDepth: 0
    functionLinenumber: 13655
    functionLinenumberEnd: 13668
    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:13675,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13676,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13681,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13687,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13688,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13693,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13694,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13699,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13700,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13711,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13712,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13723,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: 13729
      start: 13669
    functionDepth: 1
    functionLinenumber: 13669
    functionLinenumberEnd: 13729
    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:13736,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13738,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13741,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13742,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13743,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13744,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13745,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13746,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13747,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:13758,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13760
      start: 13733
    functionDepth: 1
    functionLinenumber: 13733
    functionLinenumberEnd: 13760
    functionName: SpotLight_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:13770,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13772
      start: 13767
    functionDepth: 1
    functionLinenumber: 13767
    functionLinenumberEnd: 13772
    functionName: Switch_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    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: 13792
      start: 13778
    functionDepth: 0
    functionLinenumber: 13778
    functionLinenumberEnd: 13792
    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: 13809
      start: 13794
    functionDepth: 0
    functionLinenumber: 13794
    functionLinenumberEnd: 13809
    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: 13829
      start: 13810
    functionDepth: 0
    functionLinenumber: 13810
    functionLinenumberEnd: 13829
    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:13834,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13835,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13837
      start: 13832
    functionDepth: 0
    functionLinenumber: 13832
    functionLinenumberEnd: 13837
    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:13845,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13846,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: 13851
      start: 13838
    functionDepth: 1
    functionLinenumber: 13838
    functionLinenumberEnd: 13851
    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:13858,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13860,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13865
      start: 13855
    functionDepth: 1
    functionLinenumber: 13855
    functionLinenumberEnd: 13865
    functionName: Switch_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:13875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13876
      start: 13872
    functionDepth: 1
    functionLinenumber: 13872
    functionLinenumberEnd: 13876
    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: 13896
      start: 13882
    functionDepth: 0
    functionLinenumber: 13882
    functionLinenumberEnd: 13896
    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: 13913
      start: 13898
    functionDepth: 0
    functionLinenumber: 13898
    functionLinenumberEnd: 13913
    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: 13939
      start: 13914
    functionDepth: 0
    functionLinenumber: 13914
    functionLinenumberEnd: 13939
    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:13944,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13945,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13946,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13948
      start: 13942
    functionDepth: 0
    functionLinenumber: 13942
    functionLinenumberEnd: 13948
    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:13956,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13957,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13963,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13964,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: 13969
      start: 13949
    functionDepth: 1
    functionLinenumber: 13949
    functionLinenumberEnd: 13969
    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:13976,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13978,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13983
      start: 13973
    functionDepth: 1
    functionLinenumber: 13973
    functionLinenumberEnd: 13983
    functionName: TermCap_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:13993,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13994,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13995,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:13996,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13997
      start: 13990
    functionDepth: 1
    functionLinenumber: 13990
    functionLinenumberEnd: 13997
    functionName: Text_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfstring_del
    - gf_node_unregister
    - 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: 14018
      start: 14004
    functionDepth: 0
    functionLinenumber: 14004
    functionLinenumberEnd: 14018
    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: 14038
      start: 14020
    functionDepth: 0
    functionLinenumber: 14020
    functionLinenumberEnd: 14038
    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: 14070
      start: 14039
    functionDepth: 0
    functionLinenumber: 14039
    functionLinenumberEnd: 14070
    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:14075,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14076,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14077,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14078,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14080
      start: 14073
    functionDepth: 0
    functionLinenumber: 14073
    functionLinenumberEnd: 14080
    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:14087,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14093,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: 14099
      start: 14081
    functionDepth: 1
    functionLinenumber: 14081
    functionLinenumberEnd: 14099
    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:14106,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14108,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14113
      start: 14103
    functionDepth: 1
    functionLinenumber: 14103
    functionLinenumberEnd: 14113
    functionName: Text_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:14123,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14125
      start: 14120
    functionDepth: 1
    functionLinenumber: 14120
    functionLinenumberEnd: 14125
    functionName: TextureCoordinate_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    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: 14146
      start: 14132
    functionDepth: 0
    functionLinenumber: 14132
    functionLinenumberEnd: 14146
    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: 14166
      start: 14148
    functionDepth: 0
    functionLinenumber: 14148
    functionLinenumberEnd: 14166
    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: 14179
      start: 14167
    functionDepth: 0
    functionLinenumber: 14167
    functionLinenumberEnd: 14179
    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:14184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14186
      start: 14182
    functionDepth: 0
    functionLinenumber: 14182
    functionLinenumberEnd: 14186
    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: 14199
      start: 14187
    functionDepth: 0
    functionLinenumber: 14187
    functionLinenumberEnd: 14199
    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:14206,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14212
      start: 14203
    functionDepth: 1
    functionLinenumber: 14203
    functionLinenumberEnd: 14212
    functionName: TextureCoordinate_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:14222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14223
      start: 14219
    functionDepth: 1
    functionLinenumber: 14219
    functionLinenumberEnd: 14223
    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: 14244
      start: 14230
    functionDepth: 0
    functionLinenumber: 14230
    functionLinenumberEnd: 14244
    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: 14264
      start: 14246
    functionDepth: 0
    functionLinenumber: 14246
    functionLinenumberEnd: 14264
    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: 14295
      start: 14265
    functionDepth: 0
    functionLinenumber: 14265
    functionLinenumberEnd: 14295
    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:14300,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14301,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14302,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14303,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14305
      start: 14298
    functionDepth: 0
    functionLinenumber: 14298
    functionLinenumberEnd: 14305
    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:14318,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14319,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: 14336
      start: 14306
    functionDepth: 1
    functionLinenumber: 14306
    functionLinenumberEnd: 14336
    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:14343,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14345,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14348,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14349,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14350,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14351,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14352,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14353,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14354,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14356
      start: 14340
    functionDepth: 1
    functionLinenumber: 14340
    functionLinenumberEnd: 14356
    functionName: TextureTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:14366,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14367
      start: 14363
    functionDepth: 1
    functionLinenumber: 14363
    functionLinenumberEnd: 14367
    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: 14387
      start: 14373
    functionDepth: 0
    functionLinenumber: 14373
    functionLinenumberEnd: 14387
    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: 14404
      start: 14389
    functionDepth: 0
    functionLinenumber: 14389
    functionLinenumberEnd: 14404
    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: 14465
      start: 14405
    functionDepth: 0
    functionLinenumber: 14405
    functionLinenumberEnd: 14465
    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:14470,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14471,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14472,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14473,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14474,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14475,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14476,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14477,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14478,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14480
      start: 14468
    functionDepth: 0
    functionLinenumber: 14468
    functionLinenumberEnd: 14480
    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: 14487
      start: 14481
    functionDepth: 0
    functionLinenumber: 14481
    functionLinenumberEnd: 14487
    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:14494,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14504
      start: 14491
    functionDepth: 1
    functionLinenumber: 14491
    functionLinenumberEnd: 14504
    functionName: TimeSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:14514,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14515
      start: 14511
    functionDepth: 1
    functionLinenumber: 14511
    functionLinenumberEnd: 14515
    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: 14535
      start: 14521
    functionDepth: 0
    functionLinenumber: 14521
    functionLinenumberEnd: 14535
    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: 14552
      start: 14537
    functionDepth: 0
    functionLinenumber: 14537
    functionLinenumberEnd: 14552
    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: 14601
      start: 14553
    functionDepth: 0
    functionLinenumber: 14553
    functionLinenumberEnd: 14601
    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:14606,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14607,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14608,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14609,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14610,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14611,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14612,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14614
      start: 14604
    functionDepth: 0
    functionLinenumber: 14604
    functionLinenumberEnd: 14614
    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: 14621
      start: 14615
    functionDepth: 0
    functionLinenumber: 14615
    functionLinenumberEnd: 14621
    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:14628,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14630,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14635
      start: 14625
    functionDepth: 1
    functionLinenumber: 14625
    functionLinenumberEnd: 14635
    functionName: TouchSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:14645,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14646,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14647
      start: 14642
    functionDepth: 1
    functionLinenumber: 14642
    functionLinenumberEnd: 14647
    functionName: Transform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 14668
      start: 14654
    functionDepth: 0
    functionLinenumber: 14654
    functionLinenumberEnd: 14668
    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: 14688
      start: 14670
    functionDepth: 0
    functionLinenumber: 14670
    functionLinenumberEnd: 14688
    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: 14748
      start: 14689
    functionDepth: 0
    functionLinenumber: 14689
    functionLinenumberEnd: 14748
    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:14753,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14754,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14755,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14756,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14757,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14758,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14759,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14760,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14762
      start: 14751
    functionDepth: 0
    functionLinenumber: 14751
    functionLinenumberEnd: 14762
    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:14779,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: 14795
      start: 14763
    functionDepth: 1
    functionLinenumber: 14763
    functionLinenumberEnd: 14795
    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:14802,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14804,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14805,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14808,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14809,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14810,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14811,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14812,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14813,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14814,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14826
      start: 14799
    functionDepth: 1
    functionLinenumber: 14799
    functionLinenumberEnd: 14826
    functionName: Transform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:14836,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14838
      start: 14833
    functionDepth: 1
    functionLinenumber: 14833
    functionLinenumberEnd: 14838
    functionName: Transform2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 14859
      start: 14845
    functionDepth: 0
    functionLinenumber: 14845
    functionLinenumberEnd: 14859
    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: 14879
      start: 14861
    functionDepth: 0
    functionLinenumber: 14861
    functionLinenumberEnd: 14879
    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: 14939
      start: 14880
    functionDepth: 0
    functionLinenumber: 14880
    functionLinenumberEnd: 14939
    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:14944,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14945,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14946,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14947,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14948,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14949,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14950,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14951,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14953
      start: 14942
    functionDepth: 0
    functionLinenumber: 14942
    functionLinenumberEnd: 14953
    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:14966,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14967,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14978,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14979,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: 14990
      start: 14954
    functionDepth: 1
    functionLinenumber: 14954
    functionLinenumberEnd: 14990
    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:14997,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:14999,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15000,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15003,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15004,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15005,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15006,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15007,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15008,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15009,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15010,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15012
      start: 14994
    functionDepth: 1
    functionLinenumber: 14994
    functionLinenumberEnd: 15012
    functionName: Transform2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:15022,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15023,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15024,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15025,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15026,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15027,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15028,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15029,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15030,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15031,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15032,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15033,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15034,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15035,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15036,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15037,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15038,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15039
      start: 15019
    functionDepth: 1
    functionLinenumber: 15019
    functionLinenumberEnd: 15039
    functionName: Valuator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfrotation_del
    - gf_sg_sfstring_del
    - gf_sg_mfvec2f_del
    - gf_sg_mfcolor_del
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    - gf_sg_mfstring_del
    - gf_sg_mffloat_del
    - gf_node_free
    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: 15059
      start: 15045
    functionDepth: 0
    functionLinenumber: 15045
    functionLinenumberEnd: 15059
    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: 15076
      start: 15061
    functionDepth: 0
    functionLinenumber: 15061
    functionLinenumberEnd: 15076
    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: 15345
      start: 15077
    functionDepth: 0
    functionLinenumber: 15077
    functionLinenumberEnd: 15345
    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:15350,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15351,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15352,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15353,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15354,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15355,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15356,1
    - 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
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 84
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15392
      start: 15348
    functionDepth: 0
    functionLinenumber: 15348
    functionLinenumberEnd: 15392
    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: 15447
      start: 15393
    functionDepth: 0
    functionLinenumber: 15393
    functionLinenumberEnd: 15447
    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:15454,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15456,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15459,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15460,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15461,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15462,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15463,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15464,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15465,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15466,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15468
      start: 15451
    functionDepth: 1
    functionLinenumber: 15451
    functionLinenumberEnd: 15468
    functionName: Valuator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:15478,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15480
      start: 15475
    functionDepth: 1
    functionLinenumber: 15475
    functionLinenumberEnd: 15480
    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: 15501
      start: 15487
    functionDepth: 0
    functionLinenumber: 15487
    functionLinenumberEnd: 15501
    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: 15521
      start: 15503
    functionDepth: 0
    functionLinenumber: 15503
    functionLinenumberEnd: 15521
    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: 15577
      start: 15522
    functionDepth: 0
    functionLinenumber: 15522
    functionLinenumberEnd: 15577
    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:15582,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15583,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15584,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15585,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15586,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15587,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15588,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15589,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15591
      start: 15580
    functionDepth: 0
    functionLinenumber: 15580
    functionLinenumberEnd: 15591
    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:15598,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15599,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: 15614
      start: 15592
    functionDepth: 1
    functionLinenumber: 15592
    functionLinenumberEnd: 15614
    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:15621,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15623,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15626,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15628,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15629,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15631,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15632,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15633,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15636
      start: 15618
    functionDepth: 1
    functionLinenumber: 15618
    functionLinenumberEnd: 15636
    functionName: Viewpoint_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:15646,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15647
      start: 15643
    functionDepth: 1
    functionLinenumber: 15643
    functionLinenumberEnd: 15647
    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: 15668
      start: 15654
    functionDepth: 0
    functionLinenumber: 15654
    functionLinenumberEnd: 15668
    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: 15688
      start: 15670
    functionDepth: 0
    functionLinenumber: 15670
    functionLinenumberEnd: 15688
    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: 15731
      start: 15689
    functionDepth: 0
    functionLinenumber: 15689
    functionLinenumberEnd: 15731
    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:15736,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15737,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15738,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15739,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15740,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15741,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15743
      start: 15734
    functionDepth: 0
    functionLinenumber: 15734
    functionLinenumberEnd: 15743
    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:15756,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: 15762
      start: 15744
    functionDepth: 1
    functionLinenumber: 15744
    functionLinenumberEnd: 15762
    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:15769,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15771,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15774,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15775,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15776,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15778,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15779,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15780,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15782
      start: 15766
    functionDepth: 1
    functionLinenumber: 15766
    functionLinenumberEnd: 15782
    functionName: VisibilitySensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:15792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15793
      start: 15789
    functionDepth: 1
    functionLinenumber: 15789
    functionLinenumberEnd: 15793
    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: 15813
      start: 15799
    functionDepth: 0
    functionLinenumber: 15799
    functionLinenumberEnd: 15813
    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: 15830
      start: 15815
    functionDepth: 0
    functionLinenumber: 15815
    functionLinenumberEnd: 15830
    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: 15861
      start: 15831
    functionDepth: 0
    functionLinenumber: 15831
    functionLinenumberEnd: 15861
    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:15866,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15867,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15868,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15869,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15871
      start: 15864
    functionDepth: 0
    functionLinenumber: 15864
    functionLinenumberEnd: 15871
    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:15879,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15880,1
    - 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
    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: 15899
      start: 15872
    functionDepth: 1
    functionLinenumber: 15872
    functionLinenumberEnd: 15899
    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:15906,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15908,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15915
      start: 15903
    functionDepth: 1
    functionLinenumber: 15903
    functionLinenumberEnd: 15915
    functionName: Viseme_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:15925,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15926,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15927,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15928
      start: 15922
    functionDepth: 1
    functionLinenumber: 15922
    functionLinenumberEnd: 15928
    functionName: WorldInfo_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_free
    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: 15946
      start: 15932
    functionDepth: 0
    functionLinenumber: 15932
    functionLinenumberEnd: 15946
    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: 15957
      start: 15948
    functionDepth: 0
    functionLinenumber: 15948
    functionLinenumberEnd: 15957
    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: 15976
      start: 15958
    functionDepth: 0
    functionLinenumber: 15958
    functionLinenumberEnd: 15976
    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:15981,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:15982,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15984
      start: 15979
    functionDepth: 0
    functionLinenumber: 15979
    functionLinenumberEnd: 15984
    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: 15991
      start: 15985
    functionDepth: 0
    functionLinenumber: 15985
    functionLinenumberEnd: 15991
    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:15998,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16000,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16004
      start: 15995
    functionDepth: 1
    functionLinenumber: 15995
    functionLinenumberEnd: 16004
    functionName: WorldInfo_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:16014,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16015,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16016,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16017,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16019
      start: 16011
    functionDepth: 1
    functionLinenumber: 16011
    functionLinenumberEnd: 16019
    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: 16040
      start: 16026
    functionDepth: 0
    functionLinenumber: 16026
    functionLinenumberEnd: 16040
    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: 16060
      start: 16042
    functionDepth: 0
    functionLinenumber: 16042
    functionLinenumberEnd: 16060
    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: 16127
      start: 16061
    functionDepth: 0
    functionLinenumber: 16061
    functionLinenumberEnd: 16127
    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:16132,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16136,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16137,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16138,1
    - 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
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16143
      start: 16130
    functionDepth: 0
    functionLinenumber: 16130
    functionLinenumberEnd: 16143
    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:16150,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16151,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16157,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16162,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16168,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16169,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16174,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16175,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16180,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16181,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16204,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: 16210
      start: 16144
    functionDepth: 1
    functionLinenumber: 16144
    functionLinenumberEnd: 16210
    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:16217,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16219,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16222,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16223,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16224,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16225,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16226,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16227,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16228,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: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16234,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16236,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16237,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16239,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16240,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16242,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16243,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16245,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16247
      start: 16214
    functionDepth: 1
    functionLinenumber: 16214
    functionLinenumberEnd: 16247
    functionName: AcousticMaterial_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:16257,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16258,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16260
      start: 16254
    functionDepth: 1
    functionLinenumber: 16254
    functionLinenumberEnd: 16260
    functionName: AcousticScene_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mftime_del
    - gf_sg_mffloat_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: 16281
      start: 16267
    functionDepth: 0
    functionLinenumber: 16267
    functionLinenumberEnd: 16281
    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: 16301
      start: 16283
    functionDepth: 0
    functionLinenumber: 16283
    functionLinenumberEnd: 16301
    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: 16344
      start: 16302
    functionDepth: 0
    functionLinenumber: 16302
    functionLinenumberEnd: 16344
    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:16349,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16350,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16351,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16352,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16353,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16354,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16356
      start: 16347
    functionDepth: 0
    functionLinenumber: 16347
    functionLinenumberEnd: 16356
    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:16375,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16381,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16387,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16393,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: 16399
      start: 16357
    functionDepth: 1
    functionLinenumber: 16357
    functionLinenumberEnd: 16399
    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:16406,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16408,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16411,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16412,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16413,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16414,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16415,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16416,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16417,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16420,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16426
      start: 16403
    functionDepth: 1
    functionLinenumber: 16403
    functionLinenumberEnd: 16426
    functionName: AcousticScene_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:16436,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16437,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16438,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16440
      start: 16433
    functionDepth: 1
    functionLinenumber: 16433
    functionLinenumberEnd: 16440
    functionName: ApplicationWindow_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_node_free
    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: 16461
      start: 16447
    functionDepth: 0
    functionLinenumber: 16447
    functionLinenumberEnd: 16461
    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: 16481
      start: 16463
    functionDepth: 0
    functionLinenumber: 16463
    functionLinenumberEnd: 16481
    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: 16530
      start: 16482
    functionDepth: 0
    functionLinenumber: 16482
    functionLinenumberEnd: 16530
    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:16535,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16536,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16537,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16538,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16539,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16540,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16541,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16543
      start: 16533
    functionDepth: 0
    functionLinenumber: 16533
    functionLinenumberEnd: 16543
    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: 16568
      start: 16544
    functionDepth: 0
    functionLinenumber: 16544
    functionLinenumberEnd: 16568
    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:16575,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16577,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16582,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:16583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16585
      start: 16572
    functionDepth: 1
    functionLinenumber: 16572
    functionLinenumberEnd: 16585
    functionName: ApplicationWindow_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:16595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16596
      start: 16592
    functionDepth: 1
    functionLinenumber: 16592
    functionLinenumberEnd: 16596
    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: 16616
      start: 16602
    functionDepth: 0
    functionLinenumber: 16602
    functionLinenumberEnd: 16616
    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: 16633
      start: 16618
    functionDepth: 0
    functionLinenumber: 16618
    functionLinenumberEnd: 16633
    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: 18416
      start: 16634
    functionDepth: 0
    functionLinenumber: 16634
    functionLinenumberEnd: 18416
    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:18421,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18422,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18423,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18424,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18425,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18426,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:18427,1
    - 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
    CyclomaticComplexity: 296
    EdgeCount: 296
    ICount: 594
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18718
      start: 18419
    functionDepth: 0
    functionLinenumber: 18419
    functionLinenumberEnd: 18718
    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: 20501
      start: 18719
    functionDepth: 0
    functionLinenumber: 18719
    functionLinenumberEnd: 20501
    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:20508,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20510,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 302
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20810
      start: 20505
    functionDepth: 1
    functionLinenumber: 20505
    functionLinenumberEnd: 20810
    functionName: BAP_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:20820,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20821,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20823
      start: 20817
    functionDepth: 1
    functionLinenumber: 20817
    functionLinenumberEnd: 20823
    functionName: BDP_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    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: 20843
      start: 20829
    functionDepth: 0
    functionLinenumber: 20829
    functionLinenumberEnd: 20843
    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: 20860
      start: 20845
    functionDepth: 0
    functionLinenumber: 20845
    functionLinenumberEnd: 20860
    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: 20881
      start: 20861
    functionDepth: 0
    functionLinenumber: 20861
    functionLinenumberEnd: 20881
    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:20886,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20887,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20889
      start: 20884
    functionDepth: 0
    functionLinenumber: 20884
    functionLinenumberEnd: 20889
    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: 20896
      start: 20890
    functionDepth: 0
    functionLinenumber: 20890
    functionLinenumberEnd: 20896
    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:20903,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20909
      start: 20900
    functionDepth: 1
    functionLinenumber: 20900
    functionLinenumberEnd: 20909
    functionName: BDP_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:20919,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20920,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20921,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20923
      start: 20916
    functionDepth: 1
    functionLinenumber: 20916
    functionLinenumberEnd: 20923
    functionName: Body_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    - gf_node_unregister
    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: 20943
      start: 20929
    functionDepth: 0
    functionLinenumber: 20929
    functionLinenumberEnd: 20943
    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: 20960
      start: 20945
    functionDepth: 0
    functionLinenumber: 20945
    functionLinenumberEnd: 20960
    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: 20988
      start: 20961
    functionDepth: 0
    functionLinenumber: 20961
    functionLinenumberEnd: 20988
    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:20993,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20994,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:20995,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20997
      start: 20991
    functionDepth: 0
    functionLinenumber: 20991
    functionLinenumberEnd: 20997
    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: 21004
      start: 20998
    functionDepth: 0
    functionLinenumber: 20998
    functionLinenumberEnd: 21004
    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:21011,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21013,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21017
      start: 21008
    functionDepth: 1
    functionLinenumber: 21008
    functionLinenumberEnd: 21017
    functionName: Body_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:21027,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21028,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21029,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21030,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21031,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21032,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21033
      start: 21024
    functionDepth: 1
    functionLinenumber: 21024
    functionLinenumberEnd: 21033
    functionName: BodyDefTable_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    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: 21053
      start: 21039
    functionDepth: 0
    functionLinenumber: 21039
    functionLinenumberEnd: 21053
    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: 21070
      start: 21055
    functionDepth: 0
    functionLinenumber: 21055
    functionLinenumberEnd: 21070
    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: 21113
      start: 21071
    functionDepth: 0
    functionLinenumber: 21071
    functionLinenumberEnd: 21113
    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:21118,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21119,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21120,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21121,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21122,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21123,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21125
      start: 21116
    functionDepth: 0
    functionLinenumber: 21116
    functionLinenumberEnd: 21125
    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:21133,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21134,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21139,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21151,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: 21157
      start: 21126
    functionDepth: 1
    functionLinenumber: 21126
    functionLinenumberEnd: 21157
    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:21164,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21171
      start: 21161
    functionDepth: 1
    functionLinenumber: 21161
    functionLinenumberEnd: 21171
    functionName: BodyDefTable_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:21181,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21182,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21183,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21184,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21186
      start: 21178
    functionDepth: 1
    functionLinenumber: 21178
    functionLinenumberEnd: 21186
    functionName: BodySegmentConnectionHint_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - 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: 21206
      start: 21192
    functionDepth: 0
    functionLinenumber: 21192
    functionLinenumberEnd: 21206
    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: 21223
      start: 21208
    functionDepth: 0
    functionLinenumber: 21208
    functionLinenumberEnd: 21223
    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: 21254
      start: 21224
    functionDepth: 0
    functionLinenumber: 21224
    functionLinenumberEnd: 21254
    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:21259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21261,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21262,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21264
      start: 21257
    functionDepth: 0
    functionLinenumber: 21257
    functionLinenumberEnd: 21264
    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:21271,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21277,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: 21283
      start: 21265
    functionDepth: 1
    functionLinenumber: 21265
    functionLinenumberEnd: 21283
    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:21290,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21296
      start: 21287
    functionDepth: 1
    functionLinenumber: 21287
    functionLinenumberEnd: 21296
    functionName: BodySegmentConnectionHint_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:21306,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21307,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21308,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21309,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21310,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21312
      start: 21303
    functionDepth: 1
    functionLinenumber: 21303
    functionLinenumberEnd: 21312
    functionName: DirectiveSound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 21333
      start: 21319
    functionDepth: 0
    functionLinenumber: 21319
    functionLinenumberEnd: 21333
    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: 21353
      start: 21335
    functionDepth: 0
    functionLinenumber: 21335
    functionLinenumberEnd: 21353
    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: 21440
      start: 21354
    functionDepth: 0
    functionLinenumber: 21354
    functionLinenumberEnd: 21440
    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:21445,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21446,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21447,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21448,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21449,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21450,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21451,1
    - 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
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21459
      start: 21443
    functionDepth: 0
    functionLinenumber: 21443
    functionLinenumberEnd: 21459
    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:21472,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21490,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21491,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21496,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21502,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21508,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: 21514
      start: 21460
    functionDepth: 1
    functionLinenumber: 21460
    functionLinenumberEnd: 21514
    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:21521,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21523,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21526,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21527,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21528,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21530,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21531,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21532,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21534,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21536,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21537,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21539,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21540,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21541,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21543
      start: 21518
    functionDepth: 1
    functionLinenumber: 21518
    functionLinenumberEnd: 21543
    functionName: DirectiveSound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:21553,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21554,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21555
      start: 21550
    functionDepth: 1
    functionLinenumber: 21550
    functionLinenumberEnd: 21555
    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: 21575
      start: 21561
    functionDepth: 0
    functionLinenumber: 21561
    functionLinenumberEnd: 21575
    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: 21592
      start: 21577
    functionDepth: 0
    functionLinenumber: 21577
    functionLinenumberEnd: 21592
    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: 21624
      start: 21593
    functionDepth: 0
    functionLinenumber: 21593
    functionLinenumberEnd: 21624
    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:21629,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21630,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21631,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21632,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21634
      start: 21627
    functionDepth: 0
    functionLinenumber: 21627
    functionLinenumberEnd: 21634
    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:21641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21647,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: 21653
      start: 21635
    functionDepth: 1
    functionLinenumber: 21635
    functionLinenumberEnd: 21653
    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:21660,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21662,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21665,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21667
      start: 21657
    functionDepth: 1
    functionLinenumber: 21657
    functionLinenumberEnd: 21667
    functionName: Hierarchical3DMesh_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:21677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21678
      start: 21674
    functionDepth: 1
    functionLinenumber: 21674
    functionLinenumberEnd: 21678
    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: 21699
      start: 21685
    functionDepth: 0
    functionLinenumber: 21685
    functionLinenumberEnd: 21699
    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: 21719
      start: 21701
    functionDepth: 0
    functionLinenumber: 21701
    functionLinenumberEnd: 21719
    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: 21762
      start: 21720
    functionDepth: 0
    functionLinenumber: 21720
    functionLinenumberEnd: 21762
    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:21767,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21768,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21769,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21770,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21772,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21774
      start: 21765
    functionDepth: 0
    functionLinenumber: 21765
    functionLinenumberEnd: 21774
    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:21781,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21782,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21787,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21794,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21799,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21800,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: 21805
      start: 21775
    functionDepth: 1
    functionLinenumber: 21775
    functionLinenumberEnd: 21805
    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:21812,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21814,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21819,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21820,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21821,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21822,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21823,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21824,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21826
      start: 21809
    functionDepth: 1
    functionLinenumber: 21809
    functionLinenumberEnd: 21826
    functionName: MaterialKey_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:21836,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21837,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21838,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:21839,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21840
      start: 21833
    functionDepth: 1
    functionLinenumber: 21833
    functionLinenumberEnd: 21840
    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: 21861
      start: 21847
    functionDepth: 0
    functionLinenumber: 21847
    functionLinenumberEnd: 21861
    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: 21881
      start: 21863
    functionDepth: 0
    functionLinenumber: 21863
    functionLinenumberEnd: 21881
    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: 22002
      start: 21882
    functionDepth: 0
    functionLinenumber: 21882
    functionLinenumberEnd: 22002
    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:22007,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22008,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22009,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22010,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22011,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22012,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22013,1
    - 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
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22027
      start: 22005
    functionDepth: 0
    functionLinenumber: 22005
    functionLinenumberEnd: 22027
    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: 22148
      start: 22028
    functionDepth: 0
    functionLinenumber: 22028
    functionLinenumberEnd: 22148
    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:22155,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22157,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22160,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22161,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22162,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22163,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22164,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22165,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22166,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: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22169,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22171,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22172,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22176,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22177,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22179,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22180,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22190
      start: 22152
    functionDepth: 1
    functionLinenumber: 22152
    functionLinenumberEnd: 22190
    functionName: PerceptualParameters_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:22200,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22201,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22202,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22203,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22205
      start: 22197
    functionDepth: 1
    functionLinenumber: 22197
    functionLinenumberEnd: 22205
    functionName: TemporalTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfint32_del
    - gf_node_free
    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: 22226
      start: 22212
    functionDepth: 0
    functionLinenumber: 22212
    functionLinenumberEnd: 22226
    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: 22246
      start: 22228
    functionDepth: 0
    functionLinenumber: 22228
    functionLinenumberEnd: 22246
    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: 22336
      start: 22247
    functionDepth: 0
    functionLinenumber: 22247
    functionLinenumberEnd: 22336
    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:22341,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22342,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22343,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22344,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22345,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22346,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22347,1
    - 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
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22355
      start: 22339
    functionDepth: 0
    functionLinenumber: 22339
    functionLinenumberEnd: 22355
    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:22368,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22375,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22376,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
    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: 22388
      start: 22356
    functionDepth: 1
    functionLinenumber: 22356
    functionLinenumberEnd: 22388
    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:22395,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22397,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22398,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22403,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22404,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22405,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22406,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22414
      start: 22392
    functionDepth: 1
    functionLinenumber: 22392
    functionLinenumberEnd: 22414
    functionName: TemporalTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    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:22424,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22425,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22427
      start: 22421
    functionDepth: 1
    functionLinenumber: 22421
    functionLinenumberEnd: 22427
    functionName: TemporalGroup_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - 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: 22447
      start: 22433
    functionDepth: 0
    functionLinenumber: 22433
    functionLinenumberEnd: 22447
    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: 22464
      start: 22449
    functionDepth: 0
    functionLinenumber: 22449
    functionLinenumberEnd: 22464
    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: 22530
      start: 22465
    functionDepth: 0
    functionLinenumber: 22465
    functionLinenumberEnd: 22530
    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:22535,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22536,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22537,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22538,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22539,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22540,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22541,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22542,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22543,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22545
      start: 22533
    functionDepth: 0
    functionLinenumber: 22533
    functionLinenumberEnd: 22545
    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:22552,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: 22558
      start: 22546
    functionDepth: 1
    functionLinenumber: 22546
    functionLinenumberEnd: 22558
    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:22565,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22567,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22568,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22573
      start: 22562
    functionDepth: 1
    functionLinenumber: 22562
    functionLinenumberEnd: 22573
    functionName: TemporalGroup_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:22583,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22584,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22586
      start: 22580
    functionDepth: 1
    functionLinenumber: 22580
    functionLinenumberEnd: 22586
    functionName: ServerCommand_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfurl_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: 22606
      start: 22592
    functionDepth: 0
    functionLinenumber: 22592
    functionLinenumberEnd: 22606
    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: 22623
      start: 22608
    functionDepth: 0
    functionLinenumber: 22608
    functionLinenumberEnd: 22623
    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: 22655
      start: 22624
    functionDepth: 0
    functionLinenumber: 22624
    functionLinenumberEnd: 22655
    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:22660,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22661,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22662,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22663,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22665
      start: 22658
    functionDepth: 0
    functionLinenumber: 22658
    functionLinenumberEnd: 22665
    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: 22672
      start: 22666
    functionDepth: 0
    functionLinenumber: 22666
    functionLinenumberEnd: 22672
    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:22679,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22685
      start: 22676
    functionDepth: 1
    functionLinenumber: 22676
    functionLinenumberEnd: 22685
    functionName: ServerCommand_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:22695,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22696,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22697,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22698
      start: 22692
    functionDepth: 1
    functionLinenumber: 22692
    functionLinenumberEnd: 22698
    functionName: InputSensor_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_sfcommand_del
    - gf_node_free
    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: 22718
      start: 22704
    functionDepth: 0
    functionLinenumber: 22704
    functionLinenumberEnd: 22718
    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: 22735
      start: 22720
    functionDepth: 0
    functionLinenumber: 22720
    functionLinenumberEnd: 22735
    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: 22766
      start: 22736
    functionDepth: 0
    functionLinenumber: 22736
    functionLinenumberEnd: 22766
    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:22771,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22772,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22773,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22774,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22776
      start: 22769
    functionDepth: 0
    functionLinenumber: 22769
    functionLinenumberEnd: 22776
    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: 22783
      start: 22777
    functionDepth: 0
    functionLinenumber: 22777
    functionLinenumberEnd: 22783
    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:22790,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22792,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22793,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22798
      start: 22787
    functionDepth: 1
    functionLinenumber: 22787
    functionLinenumberEnd: 22798
    functionName: InputSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_list_new
    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:22808,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22809,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22810,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22811,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22812,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22814
      start: 22805
    functionDepth: 1
    functionLinenumber: 22805
    functionLinenumberEnd: 22814
    functionName: MatteTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister
    - 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: 22834
      start: 22820
    functionDepth: 0
    functionLinenumber: 22820
    functionLinenumberEnd: 22834
    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: 22851
      start: 22836
    functionDepth: 0
    functionLinenumber: 22836
    functionLinenumberEnd: 22851
    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: 22903
      start: 22852
    functionDepth: 0
    functionLinenumber: 22852
    functionLinenumberEnd: 22903
    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:22908,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22909,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22910,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22911,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22912,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22913,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22914,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22916
      start: 22906
    functionDepth: 0
    functionLinenumber: 22906
    functionLinenumberEnd: 22916
    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: 22923
      start: 22917
    functionDepth: 0
    functionLinenumber: 22917
    functionLinenumberEnd: 22923
    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:22930,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22932,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22935,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22936,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22938,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22940
      start: 22927
    functionDepth: 1
    functionLinenumber: 22927
    functionLinenumberEnd: 22940
    functionName: MatteTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:22950,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:22951,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22952
      start: 22947
    functionDepth: 1
    functionLinenumber: 22947
    functionLinenumberEnd: 22952
    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: 22972
      start: 22958
    functionDepth: 0
    functionLinenumber: 22958
    functionLinenumberEnd: 22972
    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: 22989
      start: 22974
    functionDepth: 0
    functionLinenumber: 22974
    functionLinenumberEnd: 22989
    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: 23032
      start: 22990
    functionDepth: 0
    functionLinenumber: 22990
    functionLinenumberEnd: 23032
    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:23037,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23038,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23039,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23040,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23041,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23042,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23044
      start: 23035
    functionDepth: 0
    functionLinenumber: 23035
    functionLinenumberEnd: 23044
    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: 23051
      start: 23045
    functionDepth: 0
    functionLinenumber: 23045
    functionLinenumberEnd: 23051
    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:23058,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23060,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23063,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23068
      start: 23055
    functionDepth: 1
    functionLinenumber: 23055
    functionLinenumberEnd: 23068
    functionName: MediaBuffer_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:23078,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23079,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23080
      start: 23075
    functionDepth: 1
    functionLinenumber: 23075
    functionLinenumberEnd: 23080
    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: 23100
      start: 23086
    functionDepth: 0
    functionLinenumber: 23086
    functionLinenumberEnd: 23100
    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: 23117
      start: 23102
    functionDepth: 0
    functionLinenumber: 23102
    functionLinenumberEnd: 23117
    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: 23178
      start: 23118
    functionDepth: 0
    functionLinenumber: 23118
    functionLinenumberEnd: 23178
    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:23183,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23184,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23185,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23186,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23187,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23188,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23189,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23190,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23191,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23193
      start: 23181
    functionDepth: 0
    functionLinenumber: 23181
    functionLinenumberEnd: 23193
    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: 23200
      start: 23194
    functionDepth: 0
    functionLinenumber: 23194
    functionLinenumberEnd: 23200
    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:23207,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23209,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23218
      start: 23204
    functionDepth: 1
    functionLinenumber: 23204
    functionLinenumberEnd: 23218
    functionName: MediaControl_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:23228,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23229,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23231
      start: 23225
    functionDepth: 1
    functionLinenumber: 23225
    functionLinenumberEnd: 23231
    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: 23251
      start: 23237
    functionDepth: 0
    functionLinenumber: 23237
    functionLinenumberEnd: 23251
    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: 23268
      start: 23253
    functionDepth: 0
    functionLinenumber: 23253
    functionLinenumberEnd: 23268
    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: 23311
      start: 23269
    functionDepth: 0
    functionLinenumber: 23269
    functionLinenumberEnd: 23311
    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:23316,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23317,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23318,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23319,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23320,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23321,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23323
      start: 23314
    functionDepth: 0
    functionLinenumber: 23314
    functionLinenumberEnd: 23323
    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: 23330
      start: 23324
    functionDepth: 0
    functionLinenumber: 23324
    functionLinenumberEnd: 23330
    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:23337,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23343
      start: 23334
    functionDepth: 1
    functionLinenumber: 23334
    functionLinenumberEnd: 23343
    functionName: MediaSensor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:23353,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23354,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23355,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23357
      start: 23350
    functionDepth: 1
    functionLinenumber: 23350
    functionLinenumberEnd: 23357
    functionName: BitWrapper_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister
    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: 23375
      start: 23361
    functionDepth: 0
    functionLinenumber: 23361
    functionLinenumberEnd: 23375
    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: 23386
      start: 23377
    functionDepth: 0
    functionLinenumber: 23377
    functionLinenumberEnd: 23386
    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: 23418
      start: 23387
    functionDepth: 0
    functionLinenumber: 23387
    functionLinenumberEnd: 23418
    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:23423,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23424,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23425,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23426,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23428
      start: 23421
    functionDepth: 0
    functionLinenumber: 23421
    functionLinenumberEnd: 23428
    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: 23435
      start: 23429
    functionDepth: 0
    functionLinenumber: 23429
    functionLinenumberEnd: 23435
    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:23442,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23444,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23449
      start: 23439
    functionDepth: 1
    functionLinenumber: 23439
    functionLinenumberEnd: 23449
    functionName: BitWrapper_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:23459,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23460,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23461,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23463
      start: 23456
    functionDepth: 1
    functionLinenumber: 23456
    functionLinenumberEnd: 23463
    functionName: CoordinateInterpolator4D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec4f_del
    - gf_node_free
    - 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: 23483
      start: 23469
    functionDepth: 0
    functionLinenumber: 23469
    functionLinenumberEnd: 23483
    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: 23500
      start: 23485
    functionDepth: 0
    functionLinenumber: 23485
    functionLinenumberEnd: 23500
    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: 23532
      start: 23501
    functionDepth: 0
    functionLinenumber: 23501
    functionLinenumberEnd: 23532
    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:23537,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23538,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23539,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23540,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23542
      start: 23535
    functionDepth: 0
    functionLinenumber: 23535
    functionLinenumberEnd: 23542
    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:23549,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23550,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: 23561
      start: 23543
    functionDepth: 1
    functionLinenumber: 23543
    functionLinenumberEnd: 23561
    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:23568,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23574
      start: 23565
    functionDepth: 1
    functionLinenumber: 23565
    functionLinenumberEnd: 23574
    functionName: CoordinateInterpolator4D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:23584,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23586
      start: 23581
    functionDepth: 1
    functionLinenumber: 23581
    functionLinenumberEnd: 23586
    functionName: DepthImage_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 23604
      start: 23590
    functionDepth: 0
    functionLinenumber: 23590
    functionLinenumberEnd: 23604
    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: 23615
      start: 23606
    functionDepth: 0
    functionLinenumber: 23606
    functionLinenumberEnd: 23615
    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: 23665
      start: 23616
    functionDepth: 0
    functionLinenumber: 23616
    functionLinenumberEnd: 23665
    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:23670,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23671,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23672,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23673,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23674,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23675,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23676,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23678
      start: 23668
    functionDepth: 0
    functionLinenumber: 23668
    functionLinenumberEnd: 23678
    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: 23685
      start: 23679
    functionDepth: 0
    functionLinenumber: 23679
    functionLinenumberEnd: 23685
    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:23692,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23694,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23697,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23698,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23699,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23700,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23701,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23702,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23703,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23704,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23710
      start: 23689
    functionDepth: 1
    functionLinenumber: 23689
    functionLinenumberEnd: 23710
    functionName: DepthImage_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:23720,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23721,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23722,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23723,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23724,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23726
      start: 23717
    functionDepth: 1
    functionLinenumber: 23717
    functionLinenumberEnd: 23726
    functionName: FFD_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec4f_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - 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: 23747
      start: 23733
    functionDepth: 0
    functionLinenumber: 23733
    functionLinenumberEnd: 23747
    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: 23767
      start: 23749
    functionDepth: 0
    functionLinenumber: 23749
    functionLinenumberEnd: 23767
    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: 23857
      start: 23768
    functionDepth: 0
    functionLinenumber: 23768
    functionLinenumberEnd: 23857
    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:23862,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23863,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23864,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23865,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23866,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23867,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23868,1
    - 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
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23876
      start: 23860
    functionDepth: 0
    functionLinenumber: 23860
    functionLinenumberEnd: 23876
    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:23890,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23891,1
    - 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
    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: 23931
      start: 23877
    functionDepth: 1
    functionLinenumber: 23877
    functionLinenumberEnd: 23931
    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:23938,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23940,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23941,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23951
      start: 23935
    functionDepth: 1
    functionLinenumber: 23935
    functionLinenumberEnd: 23951
    functionName: FFD_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:23961,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23962,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:23963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23964
      start: 23958
    functionDepth: 1
    functionLinenumber: 23958
    functionLinenumberEnd: 23964
    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: 23985
      start: 23971
    functionDepth: 0
    functionLinenumber: 23971
    functionLinenumberEnd: 23985
    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: 24005
      start: 23987
    functionDepth: 0
    functionLinenumber: 23987
    functionLinenumberEnd: 24005
    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: 24042
      start: 24006
    functionDepth: 0
    functionLinenumber: 24006
    functionLinenumberEnd: 24042
    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:24047,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24048,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24049,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24050,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24051,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24053
      start: 24045
    functionDepth: 0
    functionLinenumber: 24045
    functionLinenumberEnd: 24053
    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:24060,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: 24072
      start: 24054
    functionDepth: 1
    functionLinenumber: 24054
    functionLinenumberEnd: 24072
    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:24079,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24081,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24084,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24085,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24086,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24088
      start: 24076
    functionDepth: 1
    functionLinenumber: 24076
    functionLinenumberEnd: 24088
    functionName: Implicit_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:24098,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24099,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24100,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24101,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24103
      start: 24095
    functionDepth: 1
    functionLinenumber: 24095
    functionLinenumberEnd: 24103
    functionName: XXLFM_Appearance_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    - gf_node_unregister
    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: 24123
      start: 24109
    functionDepth: 0
    functionLinenumber: 24109
    functionLinenumberEnd: 24123
    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: 24140
      start: 24125
    functionDepth: 0
    functionLinenumber: 24125
    functionLinenumberEnd: 24140
    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: 24175
      start: 24141
    functionDepth: 0
    functionLinenumber: 24141
    functionLinenumberEnd: 24175
    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:24180,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24181,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24182,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24183,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24185
      start: 24178
    functionDepth: 0
    functionLinenumber: 24178
    functionLinenumberEnd: 24185
    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: 24192
      start: 24186
    functionDepth: 0
    functionLinenumber: 24186
    functionLinenumberEnd: 24192
    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:24199,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24205
      start: 24196
    functionDepth: 1
    functionLinenumber: 24196
    functionLinenumberEnd: 24205
    functionName: XXLFM_Appearance_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:24215,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24216,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24218
      start: 24212
    functionDepth: 1
    functionLinenumber: 24212
    functionLinenumberEnd: 24218
    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: 24238
      start: 24224
    functionDepth: 0
    functionLinenumber: 24224
    functionLinenumberEnd: 24238
    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: 24255
      start: 24240
    functionDepth: 0
    functionLinenumber: 24240
    functionLinenumberEnd: 24255
    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: 24274
      start: 24256
    functionDepth: 0
    functionLinenumber: 24256
    functionLinenumberEnd: 24274
    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:24279,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24280,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24282
      start: 24277
    functionDepth: 0
    functionLinenumber: 24277
    functionLinenumberEnd: 24282
    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:24290,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24291,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: 24300
      start: 24283
    functionDepth: 1
    functionLinenumber: 24283
    functionLinenumberEnd: 24300
    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:24307,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24313
      start: 24304
    functionDepth: 1
    functionLinenumber: 24304
    functionLinenumberEnd: 24313
    functionName: XXLFM_BlendList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:24323,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24324,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24326
      start: 24320
    functionDepth: 1
    functionLinenumber: 24320
    functionLinenumberEnd: 24326
    functionName: XXLFM_FrameList_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_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: 24346
      start: 24332
    functionDepth: 0
    functionLinenumber: 24332
    functionLinenumberEnd: 24346
    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: 24363
      start: 24348
    functionDepth: 0
    functionLinenumber: 24348
    functionLinenumberEnd: 24363
    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: 24382
      start: 24364
    functionDepth: 0
    functionLinenumber: 24364
    functionLinenumberEnd: 24382
    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:24387,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24388,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24390
      start: 24385
    functionDepth: 0
    functionLinenumber: 24385
    functionLinenumberEnd: 24390
    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:24401,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24402,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: 24407
      start: 24391
    functionDepth: 1
    functionLinenumber: 24391
    functionLinenumberEnd: 24407
    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:24414,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24416,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24419,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24422,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24424,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24425,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24426,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24427,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24428,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24429,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24430,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24434
      start: 24411
    functionDepth: 1
    functionLinenumber: 24411
    functionLinenumberEnd: 24434
    functionName: XXLFM_FrameList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:24444,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24445,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24447
      start: 24441
    functionDepth: 1
    functionLinenumber: 24441
    functionLinenumberEnd: 24447
    functionName: XXLFM_LightMap_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 24467
      start: 24453
    functionDepth: 0
    functionLinenumber: 24453
    functionLinenumberEnd: 24467
    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: 24484
      start: 24469
    functionDepth: 0
    functionLinenumber: 24469
    functionLinenumberEnd: 24484
    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: 24523
      start: 24485
    functionDepth: 0
    functionLinenumber: 24485
    functionLinenumberEnd: 24523
    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:24528,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24529,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24530,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24531,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24532,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24534
      start: 24526
    functionDepth: 0
    functionLinenumber: 24526
    functionLinenumberEnd: 24534
    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:24541,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24542,1
    - 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:24554,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24555,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: 24560
      start: 24535
    functionDepth: 1
    functionLinenumber: 24535
    functionLinenumberEnd: 24560
    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:24567,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24569,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24572,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24573,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24574,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24576,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24577,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24580
      start: 24564
    functionDepth: 1
    functionLinenumber: 24564
    functionLinenumberEnd: 24580
    functionName: XXLFM_LightMap_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:24590,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24591,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24592,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24593,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24595
      start: 24587
    functionDepth: 1
    functionLinenumber: 24587
    functionLinenumberEnd: 24595
    functionName: XXLFM_SurfaceMapList_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 24615
      start: 24601
    functionDepth: 0
    functionLinenumber: 24601
    functionLinenumberEnd: 24615
    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: 24632
      start: 24617
    functionDepth: 0
    functionLinenumber: 24617
    functionLinenumberEnd: 24632
    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: 24664
      start: 24633
    functionDepth: 0
    functionLinenumber: 24633
    functionLinenumberEnd: 24664
    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:24669,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24670,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24671,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24672,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24674
      start: 24667
    functionDepth: 0
    functionLinenumber: 24667
    functionLinenumberEnd: 24674
    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: 24693
      start: 24675
    functionDepth: 0
    functionLinenumber: 24675
    functionLinenumberEnd: 24693
    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:24700,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24702,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24706
      start: 24697
    functionDepth: 1
    functionLinenumber: 24697
    functionLinenumberEnd: 24706
    functionName: XXLFM_SurfaceMapList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:24716,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24717,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24718,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24719,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24721
      start: 24713
    functionDepth: 1
    functionLinenumber: 24713
    functionLinenumberEnd: 24721
    functionName: XXLFM_ViewMapList_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 24741
      start: 24727
    functionDepth: 0
    functionLinenumber: 24727
    functionLinenumberEnd: 24741
    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: 24758
      start: 24743
    functionDepth: 0
    functionLinenumber: 24743
    functionLinenumberEnd: 24758
    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: 24791
      start: 24759
    functionDepth: 0
    functionLinenumber: 24759
    functionLinenumberEnd: 24791
    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:24796,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24797,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24798,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24799,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24801
      start: 24794
    functionDepth: 0
    functionLinenumber: 24794
    functionLinenumberEnd: 24801
    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: 24816
      start: 24802
    functionDepth: 0
    functionLinenumber: 24802
    functionLinenumberEnd: 24816
    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:24823,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24825,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24829
      start: 24820
    functionDepth: 1
    functionLinenumber: 24820
    functionLinenumberEnd: 24829
    functionName: XXLFM_ViewMapList_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:24839,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24840,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24841,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24842,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24843,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24844,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24845,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24846,1
    - Dst: gf_node_unregister
      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_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24849,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24850,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24851,1
    - Dst: gf_sg_mfint32_del
      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_sg_mfint32_del
      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_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24856,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:24857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24858
      start: 24836
    functionDepth: 1
    functionLinenumber: 24836
    functionLinenumberEnd: 24858
    functionName: MeshGrid_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 24879
      start: 24865
    functionDepth: 0
    functionLinenumber: 24865
    functionLinenumberEnd: 24879
    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: 24899
      start: 24881
    functionDepth: 0
    functionLinenumber: 24881
    functionLinenumberEnd: 24899
    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: 25053
      start: 24900
    functionDepth: 0
    functionLinenumber: 24900
    functionLinenumberEnd: 25053
    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:25058,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25059,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25060,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25061,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25062,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25063,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25064,1
    - 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
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25082
      start: 25056
    functionDepth: 0
    functionLinenumber: 25056
    functionLinenumberEnd: 25082
    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:25090,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25097,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25098,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25104,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25118,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25119,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:25131,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25137,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25143,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25149,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: 25155
      start: 25083
    functionDepth: 1
    functionLinenumber: 25083
    functionLinenumberEnd: 25155
    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:25162,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25172
      start: 25159
    functionDepth: 1
    functionLinenumber: 25159
    functionLinenumberEnd: 25172
    functionName: MeshGrid_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:25182,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25183,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25185
      start: 25179
    functionDepth: 1
    functionLinenumber: 25179
    functionLinenumberEnd: 25185
    functionName: NonLinearDeformer_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 25205
      start: 25191
    functionDepth: 0
    functionLinenumber: 25191
    functionLinenumberEnd: 25205
    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: 25222
      start: 25207
    functionDepth: 0
    functionLinenumber: 25207
    functionLinenumberEnd: 25222
    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: 25260
      start: 25223
    functionDepth: 0
    functionLinenumber: 25223
    functionLinenumberEnd: 25260
    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:25265,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25269,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25271
      start: 25263
    functionDepth: 0
    functionLinenumber: 25263
    functionLinenumberEnd: 25271
    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: 25278
      start: 25272
    functionDepth: 0
    functionLinenumber: 25272
    functionLinenumberEnd: 25278
    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:25285,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25287,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25290,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25291,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25292,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25293,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25296
      start: 25282
    functionDepth: 1
    functionLinenumber: 25282
    functionLinenumberEnd: 25296
    functionName: NonLinearDeformer_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:25306,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25307,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25308,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25309,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25310,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25312
      start: 25303
    functionDepth: 1
    functionLinenumber: 25303
    functionLinenumberEnd: 25312
    functionName: NurbsCurve_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    - gf_sg_mfvec4f_del
    - gf_node_free
    - 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: 25333
      start: 25319
    functionDepth: 0
    functionLinenumber: 25319
    functionLinenumberEnd: 25333
    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: 25353
      start: 25335
    functionDepth: 0
    functionLinenumber: 25335
    functionLinenumberEnd: 25353
    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: 25410
      start: 25354
    functionDepth: 0
    functionLinenumber: 25354
    functionLinenumberEnd: 25410
    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:25415,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25416,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25417,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25418,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25419,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25420,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25421,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25422,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25424
      start: 25413
    functionDepth: 0
    functionLinenumber: 25413
    functionLinenumberEnd: 25424
    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:25442,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25443,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: 25448
      start: 25425
    functionDepth: 1
    functionLinenumber: 25425
    functionLinenumberEnd: 25448
    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:25455,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25464
      start: 25452
    functionDepth: 1
    functionLinenumber: 25452
    functionLinenumberEnd: 25464
    functionName: NurbsCurve_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:25474,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25475,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25476,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25477,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25478,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25480
      start: 25471
    functionDepth: 1
    functionLinenumber: 25471
    functionLinenumberEnd: 25480
    functionName: NurbsCurve2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    - gf_sg_mffloat_del
    - gf_node_free
    - 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: 25501
      start: 25487
    functionDepth: 0
    functionLinenumber: 25487
    functionLinenumberEnd: 25501
    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: 25521
      start: 25503
    functionDepth: 0
    functionLinenumber: 25503
    functionLinenumberEnd: 25521
    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: 25578
      start: 25522
    functionDepth: 0
    functionLinenumber: 25522
    functionLinenumberEnd: 25578
    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:25583,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25584,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25585,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25586,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25587,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25588,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25589,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25590,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25592
      start: 25581
    functionDepth: 0
    functionLinenumber: 25581
    functionLinenumberEnd: 25592
    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:25610,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25611,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: 25616
      start: 25593
    functionDepth: 1
    functionLinenumber: 25593
    functionLinenumberEnd: 25616
    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:25623,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25632
      start: 25620
    functionDepth: 1
    functionLinenumber: 25620
    functionLinenumberEnd: 25632
    functionName: NurbsCurve2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:25642,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25643,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25644,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25645,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25646,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25647,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25648,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25649,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25650,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25652
      start: 25639
    functionDepth: 1
    functionLinenumber: 25639
    functionLinenumberEnd: 25652
    functionName: NurbsSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_sg_mffloat_del
    - gf_sg_mfvec4f_del
    - gf_node_free
    - 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: 25673
      start: 25659
    functionDepth: 0
    functionLinenumber: 25659
    functionLinenumberEnd: 25673
    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: 25693
      start: 25675
    functionDepth: 0
    functionLinenumber: 25675
    functionLinenumberEnd: 25693
    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: 25812
      start: 25694
    functionDepth: 0
    functionLinenumber: 25694
    functionLinenumberEnd: 25812
    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:25817,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25818,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25819,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25820,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25821,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25822,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25823,1
    - 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
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25836
      start: 25815
    functionDepth: 0
    functionLinenumber: 25815
    functionLinenumberEnd: 25836
    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:25858,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25859,1
    - 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
    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: 25885
      start: 25837
    functionDepth: 1
    functionLinenumber: 25837
    functionLinenumberEnd: 25885
    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:25892,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25894,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25907
      start: 25889
    functionDepth: 1
    functionLinenumber: 25889
    functionLinenumberEnd: 25907
    functionName: NurbsSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:25917,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25918,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25919,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25920,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25921
      start: 25914
    functionDepth: 1
    functionLinenumber: 25914
    functionLinenumberEnd: 25921
    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: 25939
      start: 25925
    functionDepth: 0
    functionLinenumber: 25925
    functionLinenumberEnd: 25939
    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: 25950
      start: 25941
    functionDepth: 0
    functionLinenumber: 25941
    functionLinenumberEnd: 25950
    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: 25982
      start: 25951
    functionDepth: 0
    functionLinenumber: 25951
    functionLinenumberEnd: 25982
    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:25987,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25988,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25989,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:25990,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25992
      start: 25985
    functionDepth: 0
    functionLinenumber: 25985
    functionLinenumberEnd: 25992
    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:26000,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26001,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26007,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26008,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: 26013
      start: 25993
    functionDepth: 1
    functionLinenumber: 25993
    functionLinenumberEnd: 26013
    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:26020,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26022,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26027
      start: 26017
    functionDepth: 1
    functionLinenumber: 26017
    functionLinenumberEnd: 26027
    functionName: OctreeImage_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:26037,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26038,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26039,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26040,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26041
      start: 26034
    functionDepth: 1
    functionLinenumber: 26034
    functionLinenumberEnd: 26041
    functionName: XXParticles_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    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: 26061
      start: 26047
    functionDepth: 0
    functionLinenumber: 26047
    functionLinenumberEnd: 26061
    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: 26078
      start: 26063
    functionDepth: 0
    functionLinenumber: 26063
    functionLinenumberEnd: 26078
    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: 26238
      start: 26079
    functionDepth: 0
    functionLinenumber: 26079
    functionLinenumberEnd: 26238
    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:26243,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26244,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26245,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26246,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26247,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26248,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26249,1
    - 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
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 52
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26269
      start: 26241
    functionDepth: 0
    functionLinenumber: 26241
    functionLinenumberEnd: 26269
    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: 26276
      start: 26270
    functionDepth: 0
    functionLinenumber: 26270
    functionLinenumberEnd: 26276
    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:26283,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26285,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26288,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26289,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26290,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26291,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26292,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26293,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26294,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: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:26313,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26314,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26316,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:26321,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26322,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26325
      start: 26280
    functionDepth: 1
    functionLinenumber: 26280
    functionLinenumberEnd: 26325
    functionName: XXParticles_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:26335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26336
      start: 26332
    functionDepth: 1
    functionLinenumber: 26332
    functionLinenumberEnd: 26336
    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: 26356
      start: 26342
    functionDepth: 0
    functionLinenumber: 26342
    functionLinenumberEnd: 26356
    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: 26373
      start: 26358
    functionDepth: 0
    functionLinenumber: 26358
    functionLinenumberEnd: 26373
    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: 26392
      start: 26374
    functionDepth: 0
    functionLinenumber: 26374
    functionLinenumberEnd: 26392
    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:26397,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26400
      start: 26395
    functionDepth: 0
    functionLinenumber: 26395
    functionLinenumberEnd: 26400
    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: 26407
      start: 26401
    functionDepth: 0
    functionLinenumber: 26401
    functionLinenumberEnd: 26407
    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:26414,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26416,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26419,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26420,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26421,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26422,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26424
      start: 26411
    functionDepth: 1
    functionLinenumber: 26411
    functionLinenumberEnd: 26424
    functionName: XXParticleInitBox_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:26434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26435
      start: 26431
    functionDepth: 1
    functionLinenumber: 26431
    functionLinenumberEnd: 26435
    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: 26455
      start: 26441
    functionDepth: 0
    functionLinenumber: 26441
    functionLinenumberEnd: 26455
    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: 26472
      start: 26457
    functionDepth: 0
    functionLinenumber: 26457
    functionLinenumberEnd: 26472
    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: 26503
      start: 26473
    functionDepth: 0
    functionLinenumber: 26473
    functionLinenumberEnd: 26503
    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:26508,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26509,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26510,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26511,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26513
      start: 26506
    functionDepth: 0
    functionLinenumber: 26506
    functionLinenumberEnd: 26513
    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: 26520
      start: 26514
    functionDepth: 0
    functionLinenumber: 26514
    functionLinenumberEnd: 26520
    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:26527,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26532,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26533,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26534,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26535,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26536,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26537,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26538,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26539,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26541
      start: 26524
    functionDepth: 1
    functionLinenumber: 26524
    functionLinenumberEnd: 26541
    functionName: XXPlanarObstacle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:26551,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26552
      start: 26548
    functionDepth: 1
    functionLinenumber: 26548
    functionLinenumberEnd: 26552
    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: 26572
      start: 26558
    functionDepth: 0
    functionLinenumber: 26558
    functionLinenumberEnd: 26572
    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: 26589
      start: 26574
    functionDepth: 0
    functionLinenumber: 26574
    functionLinenumberEnd: 26589
    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: 26620
      start: 26590
    functionDepth: 0
    functionLinenumber: 26590
    functionLinenumberEnd: 26620
    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:26625,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26626,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26627,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26628,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26630
      start: 26623
    functionDepth: 0
    functionLinenumber: 26623
    functionLinenumberEnd: 26630
    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: 26637
      start: 26631
    functionDepth: 0
    functionLinenumber: 26631
    functionLinenumberEnd: 26637
    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:26644,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26646,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26649,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26650,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26651,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26652,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26653,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26654,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26656
      start: 26641
    functionDepth: 1
    functionLinenumber: 26641
    functionLinenumberEnd: 26656
    functionName: XXPointAttractor_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:26666,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26667,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26668,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26669
      start: 26663
    functionDepth: 1
    functionLinenumber: 26663
    functionLinenumberEnd: 26669
    functionName: PointTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_sg_mfint32_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: 26687
      start: 26673
    functionDepth: 0
    functionLinenumber: 26673
    functionLinenumberEnd: 26687
    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: 26698
      start: 26689
    functionDepth: 0
    functionLinenumber: 26689
    functionLinenumberEnd: 26698
    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: 26735
      start: 26699
    functionDepth: 0
    functionLinenumber: 26699
    functionLinenumberEnd: 26735
    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:26740,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26741,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26742,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26743,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26744,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26746
      start: 26738
    functionDepth: 0
    functionLinenumber: 26738
    functionLinenumberEnd: 26746
    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:26754,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26755,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: 26760
      start: 26747
    functionDepth: 1
    functionLinenumber: 26747
    functionLinenumberEnd: 26760
    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:26767,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26769,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26776
      start: 26764
    functionDepth: 1
    functionLinenumber: 26764
    functionLinenumberEnd: 26776
    functionName: PointTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:26786,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26787,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26788,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26789,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26790,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26792
      start: 26783
    functionDepth: 1
    functionLinenumber: 26783
    functionLinenumberEnd: 26792
    functionName: PositionAnimator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfrotation_del
    - gf_sg_mfvec2f_del
    - gf_sg_mfvec3f_del
    - gf_sg_mffloat_del
    - gf_node_free
    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: 26812
      start: 26798
    functionDepth: 0
    functionLinenumber: 26798
    functionLinenumberEnd: 26812
    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: 26829
      start: 26814
    functionDepth: 0
    functionLinenumber: 26814
    functionLinenumberEnd: 26829
    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: 26915
      start: 26830
    functionDepth: 0
    functionLinenumber: 26830
    functionLinenumberEnd: 26915
    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:26920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26925,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26926,1
    - 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
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26934
      start: 26918
    functionDepth: 0
    functionLinenumber: 26918
    functionLinenumberEnd: 26934
    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: 26963
      start: 26935
    functionDepth: 0
    functionLinenumber: 26935
    functionLinenumberEnd: 26963
    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:26970,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26972,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26975,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26976,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26978,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26980,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26981,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26985,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26986,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:26987,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26989
      start: 26967
    functionDepth: 1
    functionLinenumber: 26967
    functionLinenumberEnd: 26989
    functionName: PositionAnimator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:26999,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27000,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27001,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27002,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27004
      start: 26996
    functionDepth: 1
    functionLinenumber: 26996
    functionLinenumberEnd: 27004
    functionName: PositionAnimator2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - 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: 27024
      start: 27010
    functionDepth: 0
    functionLinenumber: 27010
    functionLinenumberEnd: 27024
    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: 27041
      start: 27026
    functionDepth: 0
    functionLinenumber: 27026
    functionLinenumberEnd: 27041
    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: 27127
      start: 27042
    functionDepth: 0
    functionLinenumber: 27042
    functionLinenumberEnd: 27127
    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:27132,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27133,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27134,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27135,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27136,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27137,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27138,1
    - 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
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27146
      start: 27130
    functionDepth: 0
    functionLinenumber: 27130
    functionLinenumberEnd: 27146
    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: 27175
      start: 27147
    functionDepth: 0
    functionLinenumber: 27147
    functionLinenumberEnd: 27175
    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:27182,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27184,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27187,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27188,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27191,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27193,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27196,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27198,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27201
      start: 27179
    functionDepth: 1
    functionLinenumber: 27179
    functionLinenumberEnd: 27201
    functionName: PositionAnimator2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:27211,1
    - Dst: gf_sg_mfvec4f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27212,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27214
      start: 27208
    functionDepth: 1
    functionLinenumber: 27208
    functionLinenumberEnd: 27214
    functionName: PositionInterpolator4D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec4f_del
    - gf_node_free
    - 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: 27234
      start: 27220
    functionDepth: 0
    functionLinenumber: 27220
    functionLinenumberEnd: 27234
    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: 27251
      start: 27236
    functionDepth: 0
    functionLinenumber: 27236
    functionLinenumberEnd: 27251
    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: 27283
      start: 27252
    functionDepth: 0
    functionLinenumber: 27252
    functionLinenumberEnd: 27283
    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:27288,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27289,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27290,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27291,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27293
      start: 27286
    functionDepth: 0
    functionLinenumber: 27286
    functionLinenumberEnd: 27293
    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:27300,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27301,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: 27312
      start: 27294
    functionDepth: 1
    functionLinenumber: 27294
    functionLinenumberEnd: 27312
    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:27319,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27325
      start: 27316
    functionDepth: 1
    functionLinenumber: 27316
    functionLinenumberEnd: 27325
    functionName: PositionInterpolator4D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:27335,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27336,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27337,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27338,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27339,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27340,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27341,1
    - Dst: gf_sg_sfimage_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27342,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27344
      start: 27332
    functionDepth: 1
    functionLinenumber: 27332
    functionLinenumberEnd: 27344
    functionName: ProceduralTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfvec2f_del
    - gf_sg_mfcolor_del
    - gf_sg_mffloat_del
    - gf_sg_sfimage_del
    - gf_node_free
    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: 27364
      start: 27350
    functionDepth: 0
    functionLinenumber: 27350
    functionLinenumberEnd: 27364
    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: 27381
      start: 27366
    functionDepth: 0
    functionLinenumber: 27366
    functionLinenumberEnd: 27381
    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: 27508
      start: 27382
    functionDepth: 0
    functionLinenumber: 27382
    functionLinenumberEnd: 27508
    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:27513,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27514,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27515,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27516,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27517,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27518,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27519,1
    - 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
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 42
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27534
      start: 27511
    functionDepth: 0
    functionLinenumber: 27511
    functionLinenumberEnd: 27534
    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:27541,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27542,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27547,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27548,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:27572,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27573,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:27599,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27600,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27605,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27606,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
    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: 27618
      start: 27535
    functionDepth: 1
    functionLinenumber: 27535
    functionLinenumberEnd: 27618
    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:27625,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27627,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27632,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27633,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27634,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27635,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27636,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27638,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27643,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27644,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: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27654,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: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27660,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27662,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27667,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27668,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: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27680,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27685,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27686,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27687,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27688,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 76
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27701
      start: 27622
    functionDepth: 1
    functionLinenumber: 27622
    functionLinenumberEnd: 27701
    functionName: ProceduralTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:27711,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27713
      start: 27708
    functionDepth: 1
    functionLinenumber: 27708
    functionLinenumberEnd: 27713
    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: 27734
      start: 27720
    functionDepth: 0
    functionLinenumber: 27720
    functionLinenumberEnd: 27734
    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: 27754
      start: 27736
    functionDepth: 0
    functionLinenumber: 27736
    functionLinenumberEnd: 27754
    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: 27821
      start: 27755
    functionDepth: 0
    functionLinenumber: 27755
    functionLinenumberEnd: 27821
    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:27826,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27827,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27828,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27829,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27830,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27831,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27832,1
    - 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
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27837
      start: 27824
    functionDepth: 0
    functionLinenumber: 27824
    functionLinenumberEnd: 27837
    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:27844,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: 27886
      start: 27838
    functionDepth: 1
    functionLinenumber: 27838
    functionLinenumberEnd: 27886
    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:27893,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27895,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27898,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27899,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27900,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27901,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27902,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27903,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27904,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27926
      start: 27890
    functionDepth: 1
    functionLinenumber: 27890
    functionLinenumberEnd: 27926
    functionName: Quadric_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:27936,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27937,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27938,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27939,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27940,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27941,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27942,1
    - 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_mfint32_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_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27947,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:27948,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27949
      start: 27933
    functionDepth: 1
    functionLinenumber: 27933
    functionLinenumberEnd: 27949
    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: 27970
      start: 27956
    functionDepth: 0
    functionLinenumber: 27956
    functionLinenumberEnd: 27970
    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: 27990
      start: 27972
    functionDepth: 0
    functionLinenumber: 27972
    functionLinenumberEnd: 27990
    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: 28146
      start: 27991
    functionDepth: 0
    functionLinenumber: 27991
    functionLinenumberEnd: 28146
    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:28151,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28152,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28153,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28154,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28155,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28156,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28157,1
    - 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
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 50
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28176
      start: 28149
    functionDepth: 0
    functionLinenumber: 28149
    functionLinenumberEnd: 28176
    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:28184,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28185,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28199,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28200,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:28217,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28218,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: 28239
      start: 28177
    functionDepth: 1
    functionLinenumber: 28177
    functionLinenumberEnd: 28239
    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:28246,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28248,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28249,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28253,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28254,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28255,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28256,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28257,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28258,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:28266,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28267,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:28272,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28277
      start: 28243
    functionDepth: 1
    functionLinenumber: 28243
    functionLinenumberEnd: 28277
    functionName: SBBone_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:28287,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28288,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28289,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28291
      start: 28284
    functionDepth: 1
    functionLinenumber: 28284
    functionLinenumberEnd: 28291
    functionName: SBMuscle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 28312
      start: 28298
    functionDepth: 0
    functionLinenumber: 28298
    functionLinenumberEnd: 28312
    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: 28332
      start: 28314
    functionDepth: 0
    functionLinenumber: 28314
    functionLinenumberEnd: 28332
    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: 28376
      start: 28333
    functionDepth: 0
    functionLinenumber: 28333
    functionLinenumberEnd: 28376
    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:28381,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28382,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28383,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28384,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28385,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28386,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28388
      start: 28379
    functionDepth: 0
    functionLinenumber: 28379
    functionLinenumberEnd: 28388
    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:28396,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28397,1
    - 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:28413,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: 28419
      start: 28389
    functionDepth: 1
    functionLinenumber: 28389
    functionLinenumberEnd: 28419
    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:28426,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28435
      start: 28423
    functionDepth: 1
    functionLinenumber: 28423
    functionLinenumberEnd: 28435
    functionName: SBMuscle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:28445,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28446,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28447,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28449
      start: 28442
    functionDepth: 1
    functionLinenumber: 28442
    functionLinenumberEnd: 28449
    functionName: SBSegment_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mfvec3f_del
    - gf_node_free
    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: 28470
      start: 28456
    functionDepth: 0
    functionLinenumber: 28456
    functionLinenumberEnd: 28470
    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: 28490
      start: 28472
    functionDepth: 0
    functionLinenumber: 28472
    functionLinenumberEnd: 28490
    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: 28544
      start: 28491
    functionDepth: 0
    functionLinenumber: 28491
    functionLinenumberEnd: 28544
    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:28549,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28550,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28551,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28552,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28553,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28554,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28555,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28557
      start: 28547
    functionDepth: 0
    functionLinenumber: 28547
    functionLinenumberEnd: 28557
    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: 28568
      start: 28558
    functionDepth: 0
    functionLinenumber: 28558
    functionLinenumberEnd: 28568
    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:28575,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28577,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28578,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28581,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28582,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28583,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28584,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28585,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28587,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28592,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28593,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28597
      start: 28572
    functionDepth: 1
    functionLinenumber: 28572
    functionLinenumberEnd: 28597
    functionName: SBSegment_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    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:28607,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28608,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28610
      start: 28604
    functionDepth: 1
    functionLinenumber: 28604
    functionLinenumberEnd: 28610
    functionName: SBSite_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_vrml_parent_destroy
    - gf_node_free
    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: 28631
      start: 28617
    functionDepth: 0
    functionLinenumber: 28617
    functionLinenumberEnd: 28631
    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: 28651
      start: 28633
    functionDepth: 0
    functionLinenumber: 28633
    functionLinenumberEnd: 28651
    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: 28717
      start: 28652
    functionDepth: 0
    functionLinenumber: 28652
    functionLinenumberEnd: 28717
    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:28722,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28723,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28724,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28725,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28726,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28727,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28728,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28729,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28730,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28732
      start: 28720
    functionDepth: 0
    functionLinenumber: 28720
    functionLinenumberEnd: 28732
    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: 28759
      start: 28733
    functionDepth: 0
    functionLinenumber: 28733
    functionLinenumberEnd: 28759
    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:28766,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28768,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28769,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28772,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28773,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28774,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28775,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28776,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28777,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28778,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28790
      start: 28763
    functionDepth: 1
    functionLinenumber: 28763
    functionLinenumberEnd: 28790
    functionName: SBSite_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:28800,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28801,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28802,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28803,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28804,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28805,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28806,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28807,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28808,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28809,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28810,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28811
      start: 28797
    functionDepth: 1
    functionLinenumber: 28797
    functionLinenumberEnd: 28811
    functionName: SBSkinnedModel_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_node_unregister_children
    - gf_node_unregister
    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: 28832
      start: 28818
    functionDepth: 0
    functionLinenumber: 28818
    functionLinenumberEnd: 28832
    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: 28852
      start: 28834
    functionDepth: 0
    functionLinenumber: 28834
    functionLinenumberEnd: 28852
    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: 28958
      start: 28853
    functionDepth: 0
    functionLinenumber: 28853
    functionLinenumberEnd: 28958
    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:28963,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28964,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28965,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28966,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28967,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28968,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:28969,1
    - 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
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28979
      start: 28961
    functionDepth: 0
    functionLinenumber: 28961
    functionLinenumberEnd: 28979
    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: 29006
      start: 28980
    functionDepth: 0
    functionLinenumber: 28980
    functionLinenumberEnd: 29006
    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:29013,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29015,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29018,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29019,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29020,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29021,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29022,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29023,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29024,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29036
      start: 29010
    functionDepth: 1
    functionLinenumber: 29010
    functionLinenumberEnd: 29036
    functionName: SBSkinnedModel_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:29046,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29047,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29048,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29049
      start: 29043
    functionDepth: 1
    functionLinenumber: 29043
    functionLinenumberEnd: 29049
    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: 29069
      start: 29055
    functionDepth: 0
    functionLinenumber: 29055
    functionLinenumberEnd: 29069
    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: 29086
      start: 29071
    functionDepth: 0
    functionLinenumber: 29071
    functionLinenumberEnd: 29086
    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: 29106
      start: 29087
    functionDepth: 0
    functionLinenumber: 29087
    functionLinenumberEnd: 29106
    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:29111,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29114
      start: 29109
    functionDepth: 0
    functionLinenumber: 29109
    functionLinenumberEnd: 29114
    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: 29121
      start: 29115
    functionDepth: 0
    functionLinenumber: 29115
    functionLinenumberEnd: 29121
    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:29128,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29134
      start: 29125
    functionDepth: 1
    functionLinenumber: 29125
    functionLinenumberEnd: 29134
    functionName: SBVCAnimation_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:29144,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29145,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29146,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29147,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29149
      start: 29141
    functionDepth: 1
    functionLinenumber: 29141
    functionLinenumberEnd: 29149
    functionName: ScalarAnimator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfvec2f_del
    - 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: 29169
      start: 29155
    functionDepth: 0
    functionLinenumber: 29155
    functionLinenumberEnd: 29169
    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: 29186
      start: 29171
    functionDepth: 0
    functionLinenumber: 29171
    functionLinenumberEnd: 29186
    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: 29260
      start: 29187
    functionDepth: 0
    functionLinenumber: 29187
    functionLinenumberEnd: 29260
    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:29265,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29266,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29267,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29268,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29269,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29270,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29271,1
    - 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
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29277
      start: 29263
    functionDepth: 0
    functionLinenumber: 29263
    functionLinenumberEnd: 29277
    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: 29300
      start: 29278
    functionDepth: 0
    functionLinenumber: 29278
    functionLinenumberEnd: 29300
    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:29307,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29309,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29313,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29315,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29317,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29318,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: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29324
      start: 29304
    functionDepth: 1
    functionLinenumber: 29304
    functionLinenumberEnd: 29324
    functionName: ScalarAnimator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:29334,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29335,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29337
      start: 29331
    functionDepth: 1
    functionLinenumber: 29331
    functionLinenumberEnd: 29337
    functionName: SimpleTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 29355
      start: 29341
    functionDepth: 0
    functionLinenumber: 29341
    functionLinenumberEnd: 29355
    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: 29366
      start: 29357
    functionDepth: 0
    functionLinenumber: 29357
    functionLinenumberEnd: 29366
    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: 29387
      start: 29367
    functionDepth: 0
    functionLinenumber: 29367
    functionLinenumberEnd: 29387
    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:29392,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29393,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29395
      start: 29390
    functionDepth: 0
    functionLinenumber: 29390
    functionLinenumberEnd: 29395
    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: 29402
      start: 29396
    functionDepth: 0
    functionLinenumber: 29396
    functionLinenumberEnd: 29402
    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:29409,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29415
      start: 29406
    functionDepth: 1
    functionLinenumber: 29406
    functionLinenumberEnd: 29415
    functionName: SimpleTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:29425,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29426,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29428
      start: 29422
    functionDepth: 1
    functionLinenumber: 29422
    functionLinenumberEnd: 29428
    functionName: SolidRep_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 29449
      start: 29435
    functionDepth: 0
    functionLinenumber: 29435
    functionLinenumberEnd: 29449
    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: 29469
      start: 29451
    functionDepth: 0
    functionLinenumber: 29451
    functionLinenumberEnd: 29469
    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: 29495
      start: 29470
    functionDepth: 0
    functionLinenumber: 29470
    functionLinenumberEnd: 29495
    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:29500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29501,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29502,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29504
      start: 29498
    functionDepth: 0
    functionLinenumber: 29498
    functionLinenumberEnd: 29504
    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:29511,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: 29517
      start: 29505
    functionDepth: 1
    functionLinenumber: 29505
    functionLinenumberEnd: 29517
    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:29524,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29526,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29530,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29531,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29533
      start: 29521
    functionDepth: 1
    functionLinenumber: 29521
    functionLinenumberEnd: 29533
    functionName: SolidRep_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:29543,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29544,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29545,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29546,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29547,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29548,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29549,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29550,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29551,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29552,1
    - Dst: gf_node_unregister_children
      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_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29557,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29558,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29559,1
    - Dst: gf_sg_mfint32_del
      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_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29562,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29563
      start: 29540
    functionDepth: 1
    functionLinenumber: 29540
    functionLinenumberEnd: 29563
    functionName: SubdivisionSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    - gf_node_unregister
    - 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: 29583
      start: 29569
    functionDepth: 0
    functionLinenumber: 29569
    functionLinenumberEnd: 29583
    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: 29600
      start: 29585
    functionDepth: 0
    functionLinenumber: 29585
    functionLinenumberEnd: 29600
    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: 29774
      start: 29601
    functionDepth: 0
    functionLinenumber: 29601
    functionLinenumberEnd: 29774
    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:29779,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29780,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29781,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29782,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29783,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29784,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29785,1
    - 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
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 54
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29806
      start: 29777
    functionDepth: 0
    functionLinenumber: 29777
    functionLinenumberEnd: 29806
    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:29814,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29815,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29821,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29822,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: 29827
      start: 29807
    functionDepth: 1
    functionLinenumber: 29807
    functionLinenumberEnd: 29827
    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:29834,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29836,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29847
      start: 29831
    functionDepth: 1
    functionLinenumber: 29831
    functionLinenumberEnd: 29847
    functionName: SubdivisionSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:29857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29858
      start: 29854
    functionDepth: 1
    functionLinenumber: 29854
    functionLinenumberEnd: 29858
    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: 29878
      start: 29864
    functionDepth: 0
    functionLinenumber: 29864
    functionLinenumberEnd: 29878
    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: 29895
      start: 29880
    functionDepth: 0
    functionLinenumber: 29880
    functionLinenumberEnd: 29895
    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: 29944
      start: 29896
    functionDepth: 0
    functionLinenumber: 29896
    functionLinenumberEnd: 29944
    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:29949,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29950,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29951,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29952,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29953,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29954,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29955,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29957
      start: 29947
    functionDepth: 0
    functionLinenumber: 29947
    functionLinenumberEnd: 29957
    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:29964,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29965,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29974,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29975,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:29987,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:29988,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: 30001
      start: 29958
    functionDepth: 1
    functionLinenumber: 29958
    functionLinenumberEnd: 30001
    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:30008,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30010,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30013,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30014,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30015,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30016,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30017,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30019,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30023
      start: 30005
    functionDepth: 1
    functionLinenumber: 30005
    functionLinenumberEnd: 30023
    functionName: SubdivSurfaceSector_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:30033,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30035
      start: 30030
    functionDepth: 1
    functionLinenumber: 30030
    functionLinenumberEnd: 30035
    functionName: WaveletSubdivisionSurface_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 30055
      start: 30041
    functionDepth: 0
    functionLinenumber: 30041
    functionLinenumberEnd: 30055
    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: 30072
      start: 30057
    functionDepth: 0
    functionLinenumber: 30057
    functionLinenumberEnd: 30072
    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: 30104
      start: 30073
    functionDepth: 0
    functionLinenumber: 30073
    functionLinenumberEnd: 30104
    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:30109,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30110,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30111,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30112,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30114
      start: 30107
    functionDepth: 0
    functionLinenumber: 30107
    functionLinenumberEnd: 30114
    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: 30121
      start: 30115
    functionDepth: 0
    functionLinenumber: 30115
    functionLinenumberEnd: 30121
    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:30128,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30130,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30133,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30137
      start: 30125
    functionDepth: 1
    functionLinenumber: 30125
    functionLinenumberEnd: 30137
    functionName: WaveletSubdivisionSurface_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:30147,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30148,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30149,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30151
      start: 30144
    functionDepth: 1
    functionLinenumber: 30144
    functionLinenumberEnd: 30151
    functionName: Clipper2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    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: 30171
      start: 30157
    functionDepth: 0
    functionLinenumber: 30157
    functionLinenumberEnd: 30171
    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: 30188
      start: 30173
    functionDepth: 0
    functionLinenumber: 30173
    functionLinenumberEnd: 30188
    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: 30244
      start: 30189
    functionDepth: 0
    functionLinenumber: 30189
    functionLinenumberEnd: 30244
    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:30249,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30250,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30251,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30252,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30253,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30254,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30255,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30257
      start: 30247
    functionDepth: 0
    functionLinenumber: 30247
    functionLinenumberEnd: 30257
    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: 30264
      start: 30258
    functionDepth: 0
    functionLinenumber: 30258
    functionLinenumberEnd: 30264
    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:30271,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30273,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30279
      start: 30268
    functionDepth: 1
    functionLinenumber: 30268
    functionLinenumberEnd: 30279
    functionName: Clipper2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:30289,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30291
      start: 30286
    functionDepth: 1
    functionLinenumber: 30286
    functionLinenumberEnd: 30291
    functionName: ColorTransform_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 30312
      start: 30298
    functionDepth: 0
    functionLinenumber: 30298
    functionLinenumberEnd: 30312
    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: 30332
      start: 30314
    functionDepth: 0
    functionLinenumber: 30314
    functionLinenumberEnd: 30332
    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: 30482
      start: 30333
    functionDepth: 0
    functionLinenumber: 30333
    functionLinenumberEnd: 30482
    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:30487,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30488,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30489,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30490,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30491,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30492,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30493,1
    - 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
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30511
      start: 30485
    functionDepth: 0
    functionLinenumber: 30485
    functionLinenumberEnd: 30511
    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: 30638
      start: 30512
    functionDepth: 0
    functionLinenumber: 30512
    functionLinenumberEnd: 30638
    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:30645,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30647,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30648,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30651,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30652,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30653,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30654,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30655,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30656,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30657,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30672
      start: 30642
    functionDepth: 1
    functionLinenumber: 30642
    functionLinenumberEnd: 30672
    functionName: ColorTransform_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:30682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30683
      start: 30679
    functionDepth: 1
    functionLinenumber: 30679
    functionLinenumberEnd: 30683
    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: 30704
      start: 30690
    functionDepth: 0
    functionLinenumber: 30690
    functionLinenumberEnd: 30704
    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: 30724
      start: 30706
    functionDepth: 0
    functionLinenumber: 30706
    functionLinenumberEnd: 30724
    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: 30737
      start: 30725
    functionDepth: 0
    functionLinenumber: 30725
    functionLinenumberEnd: 30737
    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:30742,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30744
      start: 30740
    functionDepth: 0
    functionLinenumber: 30740
    functionLinenumberEnd: 30744
    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:30751,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: 30757
      start: 30745
    functionDepth: 1
    functionLinenumber: 30745
    functionLinenumberEnd: 30757
    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:30764,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30766,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30769,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30772
      start: 30761
    functionDepth: 1
    functionLinenumber: 30761
    functionLinenumberEnd: 30772
    functionName: Ellipse_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:30782,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30783,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30784,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30785,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30787
      start: 30779
    functionDepth: 1
    functionLinenumber: 30779
    functionLinenumberEnd: 30787
    functionName: LinearGradient_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_node_unregister
    - 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: 30808
      start: 30794
    functionDepth: 0
    functionLinenumber: 30794
    functionLinenumberEnd: 30808
    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: 30828
      start: 30810
    functionDepth: 0
    functionLinenumber: 30810
    functionLinenumberEnd: 30828
    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: 30878
      start: 30829
    functionDepth: 0
    functionLinenumber: 30829
    functionLinenumberEnd: 30878
    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:30883,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30884,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30885,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30886,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30887,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30888,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30889,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30891
      start: 30881
    functionDepth: 0
    functionLinenumber: 30881
    functionLinenumberEnd: 30891
    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:30904,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30905,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30910,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30911,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30916,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30917,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
    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: 30935
      start: 30892
    functionDepth: 1
    functionLinenumber: 30892
    functionLinenumberEnd: 30935
    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:30942,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30944,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30947,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30948,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30949,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30951,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30953,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30956
      start: 30939
    functionDepth: 1
    functionLinenumber: 30939
    functionLinenumberEnd: 30956
    functionName: LinearGradient_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:30966,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30967,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30968,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:30969,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30970
      start: 30963
    functionDepth: 1
    functionLinenumber: 30963
    functionLinenumberEnd: 30970
    functionName: PathLayout_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    - gf_node_unregister
    - gf_sg_mfint32_del
    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: 30991
      start: 30977
    functionDepth: 0
    functionLinenumber: 30977
    functionLinenumberEnd: 30991
    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: 31011
      start: 30993
    functionDepth: 0
    functionLinenumber: 30993
    functionLinenumberEnd: 31011
    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: 31084
      start: 31012
    functionDepth: 0
    functionLinenumber: 31012
    functionLinenumberEnd: 31084
    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:31089,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31090,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31091,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31092,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31093,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31094,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31095,1
    - 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
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31100
      start: 31087
    functionDepth: 0
    functionLinenumber: 31087
    functionLinenumberEnd: 31100
    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:31108,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31109,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31127,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31128,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: 31133
      start: 31101
    functionDepth: 1
    functionLinenumber: 31101
    functionLinenumberEnd: 31133
    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:31140,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31142,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31143,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31146,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31149,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31150,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31154
      start: 31137
    functionDepth: 1
    functionLinenumber: 31137
    functionLinenumberEnd: 31154
    functionName: PathLayout_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - gf_sg_vrml_parent_setup
    - GF_SAFEALLOC
    - gf_node_setup
    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:31164,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31165,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31166,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31167,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31169
      start: 31161
    functionDepth: 1
    functionLinenumber: 31161
    functionLinenumberEnd: 31169
    functionName: RadialGradient_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_mfcolor_del
    - gf_node_unregister
    - 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: 31190
      start: 31176
    functionDepth: 0
    functionLinenumber: 31176
    functionLinenumberEnd: 31190
    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: 31210
      start: 31192
    functionDepth: 0
    functionLinenumber: 31192
    functionLinenumberEnd: 31210
    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: 31266
      start: 31211
    functionDepth: 0
    functionLinenumber: 31211
    functionLinenumberEnd: 31266
    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:31271,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31272,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31273,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31274,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31275,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31276,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31277,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31278,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31280
      start: 31269
    functionDepth: 0
    functionLinenumber: 31269
    functionLinenumberEnd: 31280
    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:31299,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31300,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31305,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31306,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31311,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31312,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31317,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31324,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31325,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: 31330
      start: 31281
    functionDepth: 1
    functionLinenumber: 31281
    functionLinenumberEnd: 31330
    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:31337,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31339,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31342,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31343,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31344,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31345,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31346,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31348,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31349,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31352
      start: 31334
    functionDepth: 1
    functionLinenumber: 31334
    functionLinenumberEnd: 31352
    functionName: RadialGradient_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:31362,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31363,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31364,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31366
      start: 31359
    functionDepth: 1
    functionLinenumber: 31359
    functionLinenumberEnd: 31366
    functionName: SynthesizedTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfrotation_del
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_sg_mfvec3f_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: 31387
      start: 31373
    functionDepth: 0
    functionLinenumber: 31373
    functionLinenumberEnd: 31387
    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: 31407
      start: 31389
    functionDepth: 0
    functionLinenumber: 31389
    functionLinenumberEnd: 31407
    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: 31480
      start: 31408
    functionDepth: 0
    functionLinenumber: 31408
    functionLinenumberEnd: 31480
    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:31485,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31486,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31487,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31488,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31489,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31490,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31491,1
    - 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
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31497
      start: 31483
    functionDepth: 0
    functionLinenumber: 31483
    functionLinenumberEnd: 31497
    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:31517,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31524,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: 31536
      start: 31498
    functionDepth: 1
    functionLinenumber: 31498
    functionLinenumberEnd: 31536
    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:31543,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31545,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31550,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31554
      start: 31540
    functionDepth: 1
    functionLinenumber: 31540
    functionLinenumberEnd: 31554
    functionName: SynthesizedTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:31564,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31566
      start: 31561
    functionDepth: 1
    functionLinenumber: 31561
    functionLinenumberEnd: 31566
    functionName: TransformMatrix2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 31587
      start: 31573
    functionDepth: 0
    functionLinenumber: 31573
    functionLinenumberEnd: 31587
    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: 31607
      start: 31589
    functionDepth: 0
    functionLinenumber: 31589
    functionLinenumberEnd: 31607
    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: 31673
      start: 31608
    functionDepth: 0
    functionLinenumber: 31608
    functionLinenumberEnd: 31673
    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:31678,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31679,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31680,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31681,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31682,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31683,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31684,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31685,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31686,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31688
      start: 31676
    functionDepth: 0
    functionLinenumber: 31676
    functionLinenumberEnd: 31688
    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: 31731
      start: 31689
    functionDepth: 0
    functionLinenumber: 31689
    functionLinenumberEnd: 31731
    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:31738,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31740,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31741,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31744,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31745,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31746,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31747,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31748,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31749,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31751
      start: 31735
    functionDepth: 1
    functionLinenumber: 31735
    functionLinenumberEnd: 31751
    functionName: TransformMatrix2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:31761,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31762,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31763,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31764
      start: 31758
    functionDepth: 1
    functionLinenumber: 31758
    functionLinenumberEnd: 31764
    functionName: Viewport_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_node_free
    - 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: 31785
      start: 31771
    functionDepth: 0
    functionLinenumber: 31771
    functionLinenumberEnd: 31785
    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: 31805
      start: 31787
    functionDepth: 0
    functionLinenumber: 31787
    functionLinenumberEnd: 31805
    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: 31867
      start: 31806
    functionDepth: 0
    functionLinenumber: 31806
    functionLinenumberEnd: 31867
    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:31872,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31873,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31874,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31875,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31876,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31877,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31878,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31879,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31880,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31882
      start: 31870
    functionDepth: 0
    functionLinenumber: 31870
    functionLinenumberEnd: 31882
    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:31901,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31902,1
    - 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
    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: 31921
      start: 31883
    functionDepth: 1
    functionLinenumber: 31883
    functionLinenumberEnd: 31921
    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:31928,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31930,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31933,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31934,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31935,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31936,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31937,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31938,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31943
      start: 31925
    functionDepth: 1
    functionLinenumber: 31925
    functionLinenumberEnd: 31943
    functionName: Viewport_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:31953,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31954,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:31955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31956
      start: 31950
    functionDepth: 1
    functionLinenumber: 31950
    functionLinenumberEnd: 31956
    functionName: XCurve2D_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 31977
      start: 31963
    functionDepth: 0
    functionLinenumber: 31963
    functionLinenumberEnd: 31977
    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: 31997
      start: 31979
    functionDepth: 0
    functionLinenumber: 31979
    functionLinenumberEnd: 31997
    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: 32023
      start: 31998
    functionDepth: 0
    functionLinenumber: 31998
    functionLinenumberEnd: 32023
    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:32028,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32029,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32030,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32032
      start: 32026
    functionDepth: 0
    functionLinenumber: 32026
    functionLinenumberEnd: 32032
    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:32039,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32040,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32046,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32047,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: 32052
      start: 32033
    functionDepth: 1
    functionLinenumber: 32033
    functionLinenumberEnd: 32052
    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:32059,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32061,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32064,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32066
      start: 32056
    functionDepth: 1
    functionLinenumber: 32056
    functionLinenumberEnd: 32066
    functionName: XCurve2D_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:32076,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32077,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32078,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32079,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32080,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32081,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32082,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32083,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32084,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32085,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32086
      start: 32073
    functionDepth: 1
    functionLinenumber: 32073
    functionLinenumberEnd: 32086
    functionName: XFontStyle_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfstring_del
    - gf_sg_mfint32_del
    - gf_node_free
    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: 32106
      start: 32092
    functionDepth: 0
    functionLinenumber: 32092
    functionLinenumberEnd: 32106
    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: 32123
      start: 32108
    functionDepth: 0
    functionLinenumber: 32108
    functionLinenumberEnd: 32123
    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: 32232
      start: 32124
    functionDepth: 0
    functionLinenumber: 32124
    functionLinenumberEnd: 32232
    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:32237,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32238,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32239,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32240,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32241,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32242,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32243,1
    - 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
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 36
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32255
      start: 32235
    functionDepth: 0
    functionLinenumber: 32235
    functionLinenumberEnd: 32255
    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:32262,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32268,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32274,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: 32280
      start: 32256
    functionDepth: 1
    functionLinenumber: 32256
    functionLinenumberEnd: 32280
    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:32287,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32289,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32292,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32294,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32296,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32298,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32300,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32301,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32302,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32303,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32309
      start: 32284
    functionDepth: 1
    functionLinenumber: 32284
    functionLinenumberEnd: 32309
    functionName: XFontStyle_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_malloc
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_strdup
    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:32319,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32320,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32321,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32323
      start: 32316
    functionDepth: 1
    functionLinenumber: 32316
    functionLinenumberEnd: 32323
    functionName: XLineProperties_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 32344
      start: 32330
    functionDepth: 0
    functionLinenumber: 32330
    functionLinenumberEnd: 32344
    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: 32364
      start: 32346
    functionDepth: 0
    functionLinenumber: 32346
    functionLinenumberEnd: 32364
    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: 32451
      start: 32365
    functionDepth: 0
    functionLinenumber: 32365
    functionLinenumberEnd: 32451
    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:32456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32460,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32461,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32462,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32463,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32464,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32465,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32466,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32467,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32468,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32470
      start: 32454
    functionDepth: 0
    functionLinenumber: 32454
    functionLinenumberEnd: 32470
    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:32477,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32478,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32484,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32485,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32491,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32492,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32498,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32499,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32504,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32510,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32511,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32516,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32522,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32528,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: 32534
      start: 32471
    functionDepth: 1
    functionLinenumber: 32471
    functionLinenumberEnd: 32534
    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:32541,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32543,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32546,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32547,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32548,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32554,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32555,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32556,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32559
      start: 32538
    functionDepth: 1
    functionLinenumber: 32538
    functionLinenumberEnd: 32559
    functionName: XLineProperties_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:32569,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32570,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32571,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32572
      start: 32566
    functionDepth: 1
    functionLinenumber: 32566
    functionLinenumberEnd: 32572
    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: 32593
      start: 32579
    functionDepth: 0
    functionLinenumber: 32579
    functionLinenumberEnd: 32593
    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: 32613
      start: 32595
    functionDepth: 0
    functionLinenumber: 32595
    functionLinenumberEnd: 32613
    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: 32733
      start: 32614
    functionDepth: 0
    functionLinenumber: 32614
    functionLinenumberEnd: 32733
    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:32738,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32739,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32740,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32741,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32742,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32743,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32744,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32746,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32747,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32748,1
    - 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
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32757
      start: 32736
    functionDepth: 0
    functionLinenumber: 32736
    functionLinenumberEnd: 32757
    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:32764,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32770,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32776,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32782,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32788,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32795,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32796,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32802,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32810,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32817,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32822,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32829,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32830,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32836,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32837,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: 32842
      start: 32758
    functionDepth: 1
    functionLinenumber: 32758
    functionLinenumberEnd: 32842
    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:32849,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32851,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32852,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32855,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32864,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32867
      start: 32846
    functionDepth: 1
    functionLinenumber: 32846
    functionLinenumberEnd: 32867
    functionName: AdvancedAudioBuffer_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:32877,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32878,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32879,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32880,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32881,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32882,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32883,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32884,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:32885,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32886
      start: 32874
    functionDepth: 1
    functionLinenumber: 32874
    functionLinenumberEnd: 32886
    functionName: AudioChannelConfig_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    - gf_sg_vrml_parent_destroy
    - gf_sg_mffloat_del
    - gf_node_free
    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: 32906
      start: 32892
    functionDepth: 0
    functionLinenumber: 32892
    functionLinenumberEnd: 32906
    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: 32923
      start: 32908
    functionDepth: 0
    functionLinenumber: 32908
    functionLinenumberEnd: 32923
    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: 33067
      start: 32924
    functionDepth: 0
    functionLinenumber: 32924
    functionLinenumberEnd: 33067
    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:33072,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33073,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33074,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33075,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33076,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33077,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33078,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33079,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33080,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33081,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33082,1
    - 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
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 46
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33095
      start: 33070
    functionDepth: 0
    functionLinenumber: 33070
    functionLinenumberEnd: 33095
    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:33103,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33104,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33110,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33111,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33117,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33118,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33124,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33125,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33131,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33132,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33138,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33139,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33145,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33146,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33152,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33153,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33159,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33160,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33166,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33167,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33173,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33174,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33180,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33181,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33187,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33188,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: 33193
      start: 33096
    functionDepth: 1
    functionLinenumber: 33096
    functionLinenumberEnd: 33193
    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:33200,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33202,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33203,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33213,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33219
      start: 33197
    functionDepth: 1
    functionLinenumber: 33197
    functionLinenumberEnd: 33219
    functionName: AudioChannelConfig_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:33229,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33231
      start: 33226
    functionDepth: 1
    functionLinenumber: 33226
    functionLinenumberEnd: 33231
    functionName: DepthImageV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 33249
      start: 33235
    functionDepth: 0
    functionLinenumber: 33235
    functionLinenumberEnd: 33249
    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: 33260
      start: 33251
    functionDepth: 0
    functionLinenumber: 33251
    functionLinenumberEnd: 33260
    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: 33316
      start: 33261
    functionDepth: 0
    functionLinenumber: 33261
    functionLinenumberEnd: 33316
    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:33321,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33322,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33323,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33324,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33325,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33326,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33327,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33328,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33330
      start: 33319
    functionDepth: 0
    functionLinenumber: 33319
    functionLinenumberEnd: 33330
    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: 33337
      start: 33331
    functionDepth: 0
    functionLinenumber: 33331
    functionLinenumberEnd: 33337
    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:33344,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33346,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33349,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33350,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33351,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33352,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33353,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33354,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33355,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33356,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33358,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33359,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33364
      start: 33341
    functionDepth: 1
    functionLinenumber: 33341
    functionLinenumberEnd: 33364
    functionName: DepthImageV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:33374,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33375,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33376,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33378
      start: 33371
    functionDepth: 1
    functionLinenumber: 33371
    functionLinenumberEnd: 33378
    functionName: MorphShape_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    - gf_node_unregister
    - 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: 33398
      start: 33384
    functionDepth: 0
    functionLinenumber: 33384
    functionLinenumberEnd: 33398
    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: 33415
      start: 33400
    functionDepth: 0
    functionLinenumber: 33400
    functionLinenumberEnd: 33415
    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: 33448
      start: 33416
    functionDepth: 0
    functionLinenumber: 33416
    functionLinenumberEnd: 33448
    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:33453,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33454,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33456,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33458
      start: 33451
    functionDepth: 0
    functionLinenumber: 33451
    functionLinenumberEnd: 33458
    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:33466,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33467,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: 33472
      start: 33459
    functionDepth: 1
    functionLinenumber: 33459
    functionLinenumberEnd: 33472
    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:33479,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33486
      start: 33476
    functionDepth: 1
    functionLinenumber: 33476
    functionLinenumberEnd: 33486
    functionName: MorphShape_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:33496,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33497,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33498,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33499,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33500,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33502
      start: 33493
    functionDepth: 1
    functionLinenumber: 33493
    functionLinenumberEnd: 33502
    functionName: MultiTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_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: 33522
      start: 33508
    functionDepth: 0
    functionLinenumber: 33508
    functionLinenumberEnd: 33522
    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: 33539
      start: 33524
    functionDepth: 0
    functionLinenumber: 33524
    functionLinenumberEnd: 33539
    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: 33595
      start: 33540
    functionDepth: 0
    functionLinenumber: 33540
    functionLinenumberEnd: 33595
    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:33600,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33601,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33602,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33603,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33604,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33605,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33606,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33607,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33609
      start: 33598
    functionDepth: 0
    functionLinenumber: 33598
    functionLinenumberEnd: 33609
    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: 33616
      start: 33610
    functionDepth: 0
    functionLinenumber: 33610
    functionLinenumberEnd: 33616
    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:33623,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33625,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33628,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33629,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33630,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33633
      start: 33620
    functionDepth: 1
    functionLinenumber: 33620
    functionLinenumberEnd: 33633
    functionName: MultiTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:33643,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33644,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33645,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33646,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33647,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33648,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33649
      start: 33640
    functionDepth: 1
    functionLinenumber: 33640
    functionLinenumberEnd: 33649
    functionName: PointTextureV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfcolor_del
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    - gf_node_free
    - gf_node_unregister
    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: 33667
      start: 33653
    functionDepth: 0
    functionLinenumber: 33653
    functionLinenumberEnd: 33667
    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: 33678
      start: 33669
    functionDepth: 0
    functionLinenumber: 33669
    functionLinenumberEnd: 33678
    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: 33734
      start: 33679
    functionDepth: 0
    functionLinenumber: 33679
    functionLinenumberEnd: 33734
    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:33739,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33740,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33741,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33742,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33743,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33744,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33745,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33746,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33748
      start: 33737
    functionDepth: 0
    functionLinenumber: 33737
    functionLinenumberEnd: 33748
    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:33756,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33757,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: 33774
      start: 33749
    functionDepth: 1
    functionLinenumber: 33749
    functionLinenumberEnd: 33774
    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:33781,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33783,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33790
      start: 33778
    functionDepth: 1
    functionLinenumber: 33778
    functionLinenumberEnd: 33790
    functionName: PointTextureV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:33800,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33801,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33802,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33804
      start: 33797
    functionDepth: 1
    functionLinenumber: 33797
    functionLinenumberEnd: 33804
    functionName: SBVCAnimationV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_node_free
    - gf_node_unregister_children
    - gf_sg_mfint32_del
    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: 33825
      start: 33811
    functionDepth: 0
    functionLinenumber: 33811
    functionLinenumberEnd: 33825
    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: 33845
      start: 33827
    functionDepth: 0
    functionLinenumber: 33827
    functionLinenumberEnd: 33845
    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: 33913
      start: 33846
    functionDepth: 0
    functionLinenumber: 33846
    functionLinenumberEnd: 33913
    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:33918,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33919,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33920,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33921,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33922,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33923,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33924,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33925,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33926,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33927,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33929
      start: 33916
    functionDepth: 0
    functionLinenumber: 33916
    functionLinenumberEnd: 33929
    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:33942,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: 33948
      start: 33930
    functionDepth: 1
    functionLinenumber: 33930
    functionLinenumberEnd: 33948
    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:33955,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33957,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33960,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33963,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33965
      start: 33952
    functionDepth: 1
    functionLinenumber: 33952
    functionLinenumberEnd: 33965
    functionName: SBVCAnimationV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:33975,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33976,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33977,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33978,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33979,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:33980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33981
      start: 33972
    functionDepth: 1
    functionLinenumber: 33972
    functionLinenumberEnd: 33981
    functionName: SimpleTextureV2_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 33999
      start: 33985
    functionDepth: 0
    functionLinenumber: 33985
    functionLinenumberEnd: 33999
    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: 34010
      start: 34001
    functionDepth: 0
    functionLinenumber: 34001
    functionLinenumberEnd: 34010
    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: 34052
      start: 34011
    functionDepth: 0
    functionLinenumber: 34011
    functionLinenumberEnd: 34052
    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:34057,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34058,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34059,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34060,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34061,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34063
      start: 34055
    functionDepth: 0
    functionLinenumber: 34055
    functionLinenumberEnd: 34063
    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: 34070
      start: 34064
    functionDepth: 0
    functionLinenumber: 34064
    functionLinenumberEnd: 34070
    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:34077,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34079,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34083
      start: 34074
    functionDepth: 1
    functionLinenumber: 34074
    functionLinenumberEnd: 34083
    functionName: SimpleTextureV2_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:34093,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34094,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34095
      start: 34090
    functionDepth: 1
    functionLinenumber: 34090
    functionLinenumberEnd: 34095
    functionName: SurroundingSound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 34116
      start: 34102
    functionDepth: 0
    functionLinenumber: 34102
    functionLinenumberEnd: 34116
    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: 34136
      start: 34118
    functionDepth: 0
    functionLinenumber: 34118
    functionLinenumberEnd: 34136
    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: 34186
      start: 34137
    functionDepth: 0
    functionLinenumber: 34137
    functionLinenumberEnd: 34186
    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:34191,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34192,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34193,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34194,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34195,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34196,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34197,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34199
      start: 34189
    functionDepth: 0
    functionLinenumber: 34189
    functionLinenumberEnd: 34199
    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:34206,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34207,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34212,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: 34230
      start: 34200
    functionDepth: 1
    functionLinenumber: 34200
    functionLinenumberEnd: 34230
    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:34237,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34239,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34242,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34243,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34244,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34245,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34246,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34247,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34248,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34249,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34250,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34254
      start: 34234
    functionDepth: 1
    functionLinenumber: 34234
    functionLinenumberEnd: 34254
    functionName: SurroundingSound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:34264,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34266
      start: 34261
    functionDepth: 1
    functionLinenumber: 34261
    functionLinenumberEnd: 34266
    functionName: Transform3DAudio_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 34287
      start: 34273
    functionDepth: 0
    functionLinenumber: 34273
    functionLinenumberEnd: 34287
    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: 34307
      start: 34289
    functionDepth: 0
    functionLinenumber: 34289
    functionLinenumberEnd: 34307
    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: 34373
      start: 34308
    functionDepth: 0
    functionLinenumber: 34308
    functionLinenumberEnd: 34373
    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:34378,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34379,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34380,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34381,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34382,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34383,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34384,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34385,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34386,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34388
      start: 34376
    functionDepth: 0
    functionLinenumber: 34376
    functionLinenumberEnd: 34388
    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:34401,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34402,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34407,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34413,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34414,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34425,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34426,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: 34431
      start: 34389
    functionDepth: 1
    functionLinenumber: 34389
    functionLinenumberEnd: 34431
    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:34438,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34440,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34441,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34444,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34445,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34446,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34447,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34448,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34449,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34450,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34451,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34452,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34453,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34454,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34458
      start: 34435
    functionDepth: 1
    functionLinenumber: 34435
    functionLinenumberEnd: 34458
    functionName: Transform3DAudio_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:34468,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34469,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34470,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34471,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34472
      start: 34465
    functionDepth: 1
    functionLinenumber: 34465
    functionLinenumberEnd: 34472
    functionName: WideSound_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    - 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: 34493
      start: 34479
    functionDepth: 0
    functionLinenumber: 34479
    functionLinenumberEnd: 34493
    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: 34513
      start: 34495
    functionDepth: 0
    functionLinenumber: 34495
    functionLinenumberEnd: 34513
    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: 34612
      start: 34514
    functionDepth: 0
    functionLinenumber: 34514
    functionLinenumberEnd: 34612
    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:34617,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34618,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34619,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34620,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34621,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34622,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34623,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34624,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34625,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34626,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34627,1
    - 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
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 32
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34633
      start: 34615
    functionDepth: 0
    functionLinenumber: 34615
    functionLinenumberEnd: 34633
    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:34640,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34641,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34653,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34654,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34665,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34671,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34677,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: 34683
      start: 34634
    functionDepth: 1
    functionLinenumber: 34634
    functionLinenumberEnd: 34683
    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:34690,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34692,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34695,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34696,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34697,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34698,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34701,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34703,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34704,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34705,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:34709,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34710,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34711,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34713
      start: 34687
    functionDepth: 1
    functionLinenumber: 34687
    functionLinenumberEnd: 34713
    functionName: WideSound_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:34723,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34724,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34726
      start: 34720
    functionDepth: 1
    functionLinenumber: 34720
    functionLinenumberEnd: 34726
    functionName: ScoreShape_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 34746
      start: 34732
    functionDepth: 0
    functionLinenumber: 34732
    functionLinenumberEnd: 34746
    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: 34763
      start: 34748
    functionDepth: 0
    functionLinenumber: 34748
    functionLinenumberEnd: 34763
    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: 34784
      start: 34764
    functionDepth: 0
    functionLinenumber: 34764
    functionLinenumberEnd: 34784
    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:34789,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34792
      start: 34787
    functionDepth: 0
    functionLinenumber: 34787
    functionLinenumberEnd: 34792
    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: 34799
      start: 34793
    functionDepth: 0
    functionLinenumber: 34793
    functionLinenumberEnd: 34799
    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:34806,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34808,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34812
      start: 34803
    functionDepth: 1
    functionLinenumber: 34803
    functionLinenumberEnd: 34812
    functionName: ScoreShape_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:34822,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34823,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34824,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34825,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34826,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34827,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34828,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34829,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34830,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34831,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34832,1
    - Dst: gf_sg_mfstring_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_mfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34835,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:34836,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34837
      start: 34819
    functionDepth: 1
    functionLinenumber: 34819
    functionLinenumberEnd: 34837
    functionName: MusicScore_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfstring_del
    - gf_sg_mfint32_del
    - gf_sg_mfstring_del
    - gf_sg_mfurl_del
    - gf_node_free
    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: 34858
      start: 34844
    functionDepth: 0
    functionLinenumber: 34844
    functionLinenumberEnd: 34858
    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: 34878
      start: 34860
    functionDepth: 0
    functionLinenumber: 34860
    functionLinenumberEnd: 34878
    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: 35076
      start: 34879
    functionDepth: 0
    functionLinenumber: 34879
    functionLinenumberEnd: 35076
    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:35081,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35082,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35083,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35084,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35085,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35086,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35087,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35088,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35089,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35090,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35091,1
    - 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
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 64
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35113
      start: 35079
    functionDepth: 0
    functionLinenumber: 35079
    functionLinenumberEnd: 35113
    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: 35126
      start: 35114
    functionDepth: 0
    functionLinenumber: 35114
    functionLinenumberEnd: 35126
    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:35133,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35135,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35141,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35142,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35143,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35148
      start: 35130
    functionDepth: 1
    functionLinenumber: 35130
    functionLinenumberEnd: 35148
    functionName: MusicScore_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:35158,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35160
      start: 35155
    functionDepth: 1
    functionLinenumber: 35155
    functionLinenumberEnd: 35160
    functionName: FootPrintSetNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 35180
      start: 35166
    functionDepth: 0
    functionLinenumber: 35166
    functionLinenumberEnd: 35180
    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: 35197
      start: 35182
    functionDepth: 0
    functionLinenumber: 35182
    functionLinenumberEnd: 35197
    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: 35211
      start: 35198
    functionDepth: 0
    functionLinenumber: 35198
    functionLinenumberEnd: 35211
    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:35216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35218
      start: 35214
    functionDepth: 0
    functionLinenumber: 35214
    functionLinenumberEnd: 35218
    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: 35225
      start: 35219
    functionDepth: 0
    functionLinenumber: 35219
    functionLinenumberEnd: 35225
    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:35232,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35234,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35239
      start: 35229
    functionDepth: 1
    functionLinenumber: 35229
    functionLinenumberEnd: 35239
    functionName: FootPrintSetNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:35249,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35251
      start: 35246
    functionDepth: 1
    functionLinenumber: 35246
    functionLinenumberEnd: 35251
    functionName: FootPrintNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 35271
      start: 35257
    functionDepth: 0
    functionLinenumber: 35257
    functionLinenumberEnd: 35271
    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: 35288
      start: 35273
    functionDepth: 0
    functionLinenumber: 35273
    functionLinenumberEnd: 35288
    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: 35308
      start: 35289
    functionDepth: 0
    functionLinenumber: 35289
    functionLinenumberEnd: 35308
    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:35313,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35314,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35316
      start: 35311
    functionDepth: 0
    functionLinenumber: 35311
    functionLinenumberEnd: 35316
    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: 35323
      start: 35317
    functionDepth: 0
    functionLinenumber: 35317
    functionLinenumberEnd: 35323
    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:35330,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35332,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35337
      start: 35327
    functionDepth: 1
    functionLinenumber: 35327
    functionLinenumberEnd: 35337
    functionName: FootPrintNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:35347,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35348,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35349,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35350,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35352
      start: 35344
    functionDepth: 1
    functionLinenumber: 35344
    functionLinenumberEnd: 35352
    functionName: BuildingPartNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_unregister_children
    - gf_node_free
    - gf_node_unregister
    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: 35372
      start: 35358
    functionDepth: 0
    functionLinenumber: 35358
    functionLinenumberEnd: 35372
    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: 35389
      start: 35374
    functionDepth: 0
    functionLinenumber: 35374
    functionLinenumberEnd: 35389
    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: 35448
      start: 35390
    functionDepth: 0
    functionLinenumber: 35390
    functionLinenumberEnd: 35448
    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:35453,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35454,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35455,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35456,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35457,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35458,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35460,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35462
      start: 35451
    functionDepth: 0
    functionLinenumber: 35451
    functionLinenumberEnd: 35462
    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: 35469
      start: 35463
    functionDepth: 0
    functionLinenumber: 35463
    functionLinenumberEnd: 35469
    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:35476,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35478,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35483,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35484,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35486
      start: 35473
    functionDepth: 1
    functionLinenumber: 35473
    functionLinenumberEnd: 35486
    functionName: BuildingPartNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:35496,1
    - Dst: gf_sg_sfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35497,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35499
      start: 35493
    functionDepth: 1
    functionLinenumber: 35493
    functionLinenumberEnd: 35499
    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: 35519
      start: 35505
    functionDepth: 0
    functionLinenumber: 35505
    functionLinenumberEnd: 35519
    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: 35536
      start: 35521
    functionDepth: 0
    functionLinenumber: 35521
    functionLinenumberEnd: 35536
    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: 35615
      start: 35537
    functionDepth: 0
    functionLinenumber: 35537
    functionLinenumberEnd: 35615
    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:35620,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35621,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35622,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35623,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35624,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35625,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35626,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35627,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35628,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35629,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35630,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35631,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35633
      start: 35618
    functionDepth: 0
    functionLinenumber: 35618
    functionLinenumberEnd: 35633
    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: 35640
      start: 35634
    functionDepth: 0
    functionLinenumber: 35634
    functionLinenumberEnd: 35640
    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:35647,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35649,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35653,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35654,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35656,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35657,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35660,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35661,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35662,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35663,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35664,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35666
      start: 35644
    functionDepth: 1
    functionLinenumber: 35644
    functionLinenumberEnd: 35666
    functionName: RoofNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:35676,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35677,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35678,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35679,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35681
      start: 35673
    functionDepth: 1
    functionLinenumber: 35673
    functionLinenumberEnd: 35681
    functionName: FacadeNode_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfint32_del
    - gf_sg_sfurl_del
    - gf_sg_mffloat_del
    - gf_node_free
    - gf_node_unregister_children
    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: 35701
      start: 35687
    functionDepth: 0
    functionLinenumber: 35687
    functionLinenumberEnd: 35701
    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: 35718
      start: 35703
    functionDepth: 0
    functionLinenumber: 35703
    functionLinenumberEnd: 35718
    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: 35804
      start: 35719
    functionDepth: 0
    functionLinenumber: 35719
    functionLinenumberEnd: 35804
    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:35809,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35810,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35811,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35812,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35813,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35814,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35815,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35816,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35817,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35818,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35819,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35820,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35821,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35823
      start: 35807
    functionDepth: 0
    functionLinenumber: 35807
    functionLinenumberEnd: 35823
    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: 35830
      start: 35824
    functionDepth: 0
    functionLinenumber: 35824
    functionLinenumberEnd: 35830
    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:35837,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35839,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35842,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35843,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35844,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35845,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35846,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35847,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35848,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35850,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35853,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35855,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35857
      start: 35834
    functionDepth: 1
    functionLinenumber: 35834
    functionLinenumberEnd: 35857
    functionName: FacadeNode_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_malloc
    - gf_node_setup
    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:35867,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35868,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35869
      start: 35864
    functionDepth: 1
    functionLinenumber: 35864
    functionLinenumberEnd: 35869
    functionName: Shadow_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 35889
      start: 35875
    functionDepth: 0
    functionLinenumber: 35875
    functionLinenumberEnd: 35889
    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: 35906
      start: 35891
    functionDepth: 0
    functionLinenumber: 35891
    functionLinenumberEnd: 35906
    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: 35960
      start: 35907
    functionDepth: 0
    functionLinenumber: 35907
    functionLinenumberEnd: 35960
    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:35965,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35966,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35967,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35968,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35969,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35970,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35971,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35973
      start: 35963
    functionDepth: 0
    functionLinenumber: 35963
    functionLinenumberEnd: 35973
    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: 35980
      start: 35974
    functionDepth: 0
    functionLinenumber: 35974
    functionLinenumberEnd: 35980
    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:35987,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35989,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35990,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:35996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35998
      start: 35984
    functionDepth: 1
    functionLinenumber: 35984
    functionLinenumberEnd: 35998
    functionName: Shadow_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:36008,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36009,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36010,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36011,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36012,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36013,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36014
      start: 36005
    functionDepth: 1
    functionLinenumber: 36005
    functionLinenumberEnd: 36014
    functionName: CacheTexture_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_mfurl_del
    - gf_sg_sfstring_del
    - gf_node_free
    - gf_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: 36032
      start: 36018
    functionDepth: 0
    functionLinenumber: 36018
    functionLinenumberEnd: 36032
    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: 36043
      start: 36034
    functionDepth: 0
    functionLinenumber: 36034
    functionLinenumberEnd: 36043
    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: 36098
      start: 36044
    functionDepth: 0
    functionLinenumber: 36044
    functionLinenumberEnd: 36098
    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:36103,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36104,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36105,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36106,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36107,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36108,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36109,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36110,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36112
      start: 36101
    functionDepth: 0
    functionLinenumber: 36101
    functionLinenumberEnd: 36112
    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: 36119
      start: 36113
    functionDepth: 0
    functionLinenumber: 36113
    functionLinenumberEnd: 36119
    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:36126,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36136
      start: 36123
    functionDepth: 1
    functionLinenumber: 36123
    functionLinenumberEnd: 36136
    functionName: CacheTexture_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:36146,1
    - Dst: gf_sg_sfstring_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36147,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36149
      start: 36143
    functionDepth: 1
    functionLinenumber: 36143
    functionLinenumberEnd: 36149
    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: 36169
      start: 36155
    functionDepth: 0
    functionLinenumber: 36155
    functionLinenumberEnd: 36169
    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: 36186
      start: 36171
    functionDepth: 0
    functionLinenumber: 36171
    functionLinenumberEnd: 36186
    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: 36248
      start: 36187
    functionDepth: 0
    functionLinenumber: 36187
    functionLinenumberEnd: 36248
    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:36253,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36254,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36255,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36256,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36257,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36258,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36259,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36260,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36261,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36263
      start: 36251
    functionDepth: 0
    functionLinenumber: 36251
    functionLinenumberEnd: 36263
    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: 36270
      start: 36264
    functionDepth: 0
    functionLinenumber: 36264
    functionLinenumberEnd: 36270
    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:36277,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36286
      start: 36274
    functionDepth: 1
    functionLinenumber: 36274
    functionLinenumberEnd: 36286
    functionName: EnvironmentTest_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    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:36296,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36297,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36298,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36299,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36300,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36301,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36302,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36304
      start: 36293
    functionDepth: 1
    functionLinenumber: 36293
    functionLinenumberEnd: 36304
    functionName: KeyNavigator_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_node_free
    - gf_node_unregister
    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: 36324
      start: 36310
    functionDepth: 0
    functionLinenumber: 36310
    functionLinenumberEnd: 36324
    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: 36341
      start: 36326
    functionDepth: 0
    functionLinenumber: 36326
    functionLinenumberEnd: 36341
    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: 36416
      start: 36342
    functionDepth: 0
    functionLinenumber: 36342
    functionLinenumberEnd: 36416
    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:36421,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36422,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36423,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36424,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36425,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36426,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36427,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36428,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36429,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36430,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36432
      start: 36419
    functionDepth: 0
    functionLinenumber: 36419
    functionLinenumberEnd: 36432
    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: 36439
      start: 36433
    functionDepth: 0
    functionLinenumber: 36433
    functionLinenumberEnd: 36439
    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:36446,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36448,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36453
      start: 36443
    functionDepth: 1
    functionLinenumber: 36443
    functionLinenumberEnd: 36453
    functionName: KeyNavigator_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - FLT2FIX
    - gf_node_setup
    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:36463,1
    - Dst: gf_sg_vrml_parent_destroy
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36464,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36466
      start: 36460
    functionDepth: 1
    functionLinenumber: 36460
    functionLinenumberEnd: 36466
    functionName: SpacePartition_Del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - gf_sg_sfurl_del
    - gf_node_free
    - gf_sg_vrml_parent_destroy
    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: 36486
      start: 36472
    functionDepth: 0
    functionLinenumber: 36472
    functionLinenumberEnd: 36486
    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: 36503
      start: 36488
    functionDepth: 0
    functionLinenumber: 36488
    functionLinenumberEnd: 36503
    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: 36539
      start: 36504
    functionDepth: 0
    functionLinenumber: 36504
    functionLinenumberEnd: 36539
    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:36544,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36545,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36546,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36547,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36549
      start: 36542
    functionDepth: 0
    functionLinenumber: 36542
    functionLinenumberEnd: 36549
    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: 36556
      start: 36550
    functionDepth: 0
    functionLinenumber: 36550
    functionLinenumberEnd: 36556
    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:36563,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36565,1
    - Dst: gf_sg_vrml_parent_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36566,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36570
      start: 36560
    functionDepth: 1
    functionLinenumber: 36560
    functionLinenumberEnd: 36570
    functionName: SpacePartition_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_sg_vrml_parent_setup
    - gf_node_setup
    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:36580,1
    - Dst: gf_sg_mfattrref_del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36581,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36583
      start: 36577
    functionDepth: 1
    functionLinenumber: 36577
    functionLinenumberEnd: 36583
    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: 36603
      start: 36589
    functionDepth: 0
    functionLinenumber: 36589
    functionLinenumberEnd: 36603
    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: 36620
      start: 36605
    functionDepth: 0
    functionLinenumber: 36605
    functionLinenumberEnd: 36620
    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: 36665
      start: 36621
    functionDepth: 0
    functionLinenumber: 36621
    functionLinenumberEnd: 36665
    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:36670,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36671,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36672,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36673,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36674,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36675,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36677
      start: 36668
    functionDepth: 0
    functionLinenumber: 36668
    functionLinenumberEnd: 36677
    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: 36684
      start: 36678
    functionDepth: 0
    functionLinenumber: 36678
    functionLinenumberEnd: 36684
    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:36691,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36693,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36699
      start: 36688
    functionDepth: 1
    functionLinenumber: 36688
    functionLinenumberEnd: 36699
    functionName: Storage_Create
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_node_setup
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *Storage_Create()
  - BBCount: 197
    BranchProfiles: []
    Callsites:
    - Dst: Anchor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36708,1
    - Dst: AnimationStream_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36710,1
    - Dst: Appearance_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36712,1
    - Dst: AudioBuffer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36714,1
    - Dst: AudioClip_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36716,1
    - Dst: AudioDelay_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36718,1
    - Dst: AudioFX_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36720,1
    - Dst: AudioMix_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36722,1
    - Dst: AudioSource_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36724,1
    - Dst: AudioSwitch_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36726,1
    - Dst: Background_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36728,1
    - Dst: Background2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36730,1
    - Dst: Billboard_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36732,1
    - Dst: Bitmap_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36734,1
    - Dst: Box_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36736,1
    - Dst: Circle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36738,1
    - Dst: Collision_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36740,1
    - Dst: Color_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36742,1
    - Dst: ColorInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36744,1
    - Dst: CompositeTexture2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36746,1
    - Dst: CompositeTexture3D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36748,1
    - Dst: Conditional_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36750,1
    - Dst: Cone_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36752,1
    - Dst: Coordinate_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36754,1
    - Dst: Coordinate2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36756,1
    - Dst: CoordinateInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36758,1
    - Dst: CoordinateInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36760,1
    - Dst: Curve2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36762,1
    - Dst: Cylinder_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36764,1
    - Dst: CylinderSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36766,1
    - Dst: DirectionalLight_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36768,1
    - Dst: DiscSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36770,1
    - Dst: ElevationGrid_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36772,1
    - Dst: Expression_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36774,1
    - Dst: Extrusion_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36776,1
    - Dst: Face_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36778,1
    - Dst: FaceDefMesh_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36780,1
    - Dst: FaceDefTables_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36782,1
    - Dst: FaceDefTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36784,1
    - Dst: FAP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36786,1
    - Dst: FDP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36788,1
    - Dst: FIT_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36790,1
    - Dst: Fog_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36792,1
    - Dst: FontStyle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36794,1
    - Dst: Form_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36796,1
    - Dst: Group_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36798,1
    - Dst: ImageTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36800,1
    - Dst: IndexedFaceSet_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36802,1
    - Dst: IndexedFaceSet2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36804,1
    - Dst: IndexedLineSet_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36806,1
    - Dst: IndexedLineSet2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36808,1
    - Dst: Inline_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36810,1
    - Dst: LOD_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36812,1
    - Dst: Layer2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36814,1
    - Dst: Layer3D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36816,1
    - Dst: Layout_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36818,1
    - Dst: LineProperties_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36820,1
    - Dst: ListeningPoint_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36822,1
    - Dst: Material_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36824,1
    - Dst: Material2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36826,1
    - Dst: MovieTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36828,1
    - Dst: NavigationInfo_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36830,1
    - Dst: Normal_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36832,1
    - Dst: NormalInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36834,1
    - Dst: OrderedGroup_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36836,1
    - Dst: OrientationInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36838,1
    - Dst: PixelTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36840,1
    - Dst: PlaneSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36842,1
    - Dst: PlaneSensor2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36844,1
    - Dst: PointLight_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36846,1
    - Dst: PointSet_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36848,1
    - Dst: PointSet2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36850,1
    - Dst: PositionInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36852,1
    - Dst: PositionInterpolator2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36854,1
    - Dst: ProximitySensor2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36856,1
    - Dst: ProximitySensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36858,1
    - Dst: QuantizationParameter_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36860,1
    - Dst: Rectangle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36862,1
    - Dst: ScalarInterpolator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36864,1
    - Dst: Script_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36866,1
    - Dst: Shape_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36868,1
    - Dst: Sound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36870,1
    - Dst: Sound2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36872,1
    - Dst: Sphere_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36874,1
    - Dst: SphereSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36876,1
    - Dst: SpotLight_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36878,1
    - Dst: Switch_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36880,1
    - Dst: TermCap_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36882,1
    - Dst: Text_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36884,1
    - Dst: TextureCoordinate_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36886,1
    - Dst: TextureTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36888,1
    - Dst: TimeSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36890,1
    - Dst: TouchSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36892,1
    - Dst: Transform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36894,1
    - Dst: Transform2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36896,1
    - Dst: Valuator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36898,1
    - Dst: Viewpoint_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36900,1
    - Dst: VisibilitySensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36902,1
    - Dst: Viseme_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36904,1
    - Dst: WorldInfo_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36906,1
    - Dst: AcousticMaterial_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36908,1
    - Dst: AcousticScene_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36910,1
    - Dst: ApplicationWindow_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36912,1
    - Dst: BAP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36914,1
    - Dst: BDP_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36916,1
    - Dst: Body_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36918,1
    - Dst: BodyDefTable_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36920,1
    - Dst: BodySegmentConnectionHint_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36922,1
    - Dst: DirectiveSound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36924,1
    - Dst: Hierarchical3DMesh_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36926,1
    - Dst: MaterialKey_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36928,1
    - Dst: PerceptualParameters_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36930,1
    - Dst: TemporalTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36932,1
    - Dst: TemporalGroup_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36934,1
    - Dst: ServerCommand_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36936,1
    - Dst: InputSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36938,1
    - Dst: MatteTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36940,1
    - Dst: MediaBuffer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36942,1
    - Dst: MediaControl_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36944,1
    - Dst: MediaSensor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36946,1
    - Dst: BitWrapper_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36948,1
    - Dst: CoordinateInterpolator4D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36950,1
    - Dst: DepthImage_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36952,1
    - Dst: FFD_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36954,1
    - Dst: Implicit_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36956,1
    - Dst: XXLFM_Appearance_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36958,1
    - Dst: XXLFM_BlendList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36960,1
    - Dst: XXLFM_FrameList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36962,1
    - Dst: XXLFM_LightMap_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36964,1
    - Dst: XXLFM_SurfaceMapList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36966,1
    - Dst: XXLFM_ViewMapList_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36968,1
    - Dst: MeshGrid_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36970,1
    - Dst: NonLinearDeformer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36972,1
    - Dst: NurbsCurve_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36974,1
    - Dst: NurbsCurve2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36976,1
    - Dst: NurbsSurface_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36978,1
    - Dst: OctreeImage_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36980,1
    - Dst: XXParticles_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36982,1
    - Dst: XXParticleInitBox_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36984,1
    - Dst: XXPlanarObstacle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36986,1
    - Dst: XXPointAttractor_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36988,1
    - Dst: PointTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36990,1
    - Dst: PositionAnimator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36992,1
    - Dst: PositionAnimator2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36994,1
    - Dst: PositionInterpolator4D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36996,1
    - Dst: ProceduralTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:36998,1
    - Dst: Quadric_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37000,1
    - Dst: SBBone_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37002,1
    - Dst: SBMuscle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37004,1
    - Dst: SBSegment_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37006,1
    - Dst: SBSite_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37008,1
    - Dst: SBSkinnedModel_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37010,1
    - Dst: SBVCAnimation_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37012,1
    - Dst: ScalarAnimator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37014,1
    - Dst: SimpleTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37016,1
    - Dst: SolidRep_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37018,1
    - Dst: SubdivisionSurface_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37020,1
    - Dst: SubdivSurfaceSector_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37022,1
    - Dst: WaveletSubdivisionSurface_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37024,1
    - Dst: Clipper2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37026,1
    - Dst: ColorTransform_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37028,1
    - Dst: Ellipse_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37030,1
    - Dst: LinearGradient_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37032,1
    - Dst: PathLayout_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37034,1
    - Dst: RadialGradient_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37036,1
    - Dst: SynthesizedTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37038,1
    - Dst: TransformMatrix2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37040,1
    - Dst: Viewport_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37042,1
    - Dst: XCurve2D_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37044,1
    - Dst: XFontStyle_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37046,1
    - Dst: XLineProperties_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37048,1
    - Dst: AdvancedAudioBuffer_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37050,1
    - Dst: AudioChannelConfig_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37052,1
    - Dst: DepthImageV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37054,1
    - Dst: MorphShape_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37056,1
    - Dst: MultiTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37058,1
    - Dst: PointTextureV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37060,1
    - Dst: SBVCAnimationV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37062,1
    - Dst: SimpleTextureV2_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37064,1
    - Dst: SurroundingSound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37066,1
    - Dst: Transform3DAudio_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37068,1
    - Dst: WideSound_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37070,1
    - Dst: ScoreShape_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37072,1
    - Dst: MusicScore_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37074,1
    - Dst: FootPrintSetNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37076,1
    - Dst: FootPrintNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37078,1
    - Dst: BuildingPartNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37080,1
    - Dst: RoofNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37082,1
    - Dst: FacadeNode_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37084,1
    - Dst: Shadow_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37086,1
    - Dst: CacheTexture_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37088,1
    - Dst: EnvironmentTest_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37090,1
    - Dst: KeyNavigator_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37092,1
    - Dst: SpacePartition_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37094,1
    - Dst: Storage_Create
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37096,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 1
    argNames:
    - NodeTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37100
      start: 36704
    functionDepth: 2
    functionLinenumber: 36704
    functionLinenumberEnd: 37100
    functionName: gf_sg_mpeg4_node_new
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - PositionInterpolator2D_Create
    - Transform_Create
    - DepthImageV2_Create
    - InputSensor_Create
    - PositionAnimator_Create
    - FAP_Create
    - XXPlanarObstacle_Create
    - FDP_Create
    - CompositeTexture3D_Create
    - SpacePartition_Create
    - AudioSwitch_Create
    - Viewport_Create
    - XLineProperties_Create
    - Text_Create
    - BDP_Create
    - ProximitySensor_Create
    - SBVCAnimation_Create
    - IndexedLineSet2D_Create
    - LinearGradient_Create
    - FFD_Create
    - Normal_Create
    - Cone_Create
    - Curve2D_Create
    - AudioClip_Create
    - PositionInterpolator_Create
    - XFontStyle_Create
    - Coordinate2D_Create
    - NurbsCurve_Create
    - SBMuscle_Create
    - Ellipse_Create
    - Layer2D_Create
    - BodyDefTable_Create
    - WideSound_Create
    - NonLinearDeformer_Create
    - PlaneSensor_Create
    - TextureTransform_Create
    - Clipper2D_Create
    - NavigationInfo_Create
    - RoofNode_Create
    - PlaneSensor2D_Create
    - MovieTexture_Create
    - AudioBuffer_Create
    - Face_Create
    - FaceDefMesh_Create
    - Material_Create
    - Valuator_Create
    - EnvironmentTest_Create
    - FaceDefTransform_Create
    - TransformMatrix2D_Create
    - ServerCommand_Create
    - OctreeImage_Create
    - Sound_Create
    - Switch_Create
    - DiscSensor_Create
    - ScoreShape_Create
    - Extrusion_Create
    - ProximitySensor2D_Create
    - Coordinate_Create
    - TouchSensor_Create
    - BuildingPartNode_Create
    - ColorTransform_Create
    - Bitmap_Create
    - MaterialKey_Create
    - ScalarInterpolator_Create
    - Transform3DAudio_Create
    - Shape_Create
    - VisibilitySensor_Create
    - FacadeNode_Create
    - DirectiveSound_Create
    - BitWrapper_Create
    - PathLayout_Create
    - MusicScore_Create
    - Storage_Create
    - XXLFM_LightMap_Create
    - AcousticScene_Create
    - XXParticleInitBox_Create
    - Inline_Create
    - MorphShape_Create
    - NurbsSurface_Create
    - Material2D_Create
    - Collision_Create
    - SubdivSurfaceSector_Create
    - OrientationInterpolator_Create
    - Body_Create
    - Quadric_Create
    - Background2D_Create
    - FaceDefTables_Create
    - Billboard_Create
    - Sphere_Create
    - FootPrintSetNode_Create
    - CoordinateInterpolator_Create
    - SBSkinnedModel_Create
    - TemporalGroup_Create
    - MediaSensor_Create
    - SpotLight_Create
    - Layout_Create
    - Rectangle_Create
    - PositionInterpolator4D_Create
    - MeshGrid_Create
    - NurbsCurve2D_Create
    - DirectionalLight_Create
    - NormalInterpolator_Create
    - SBSite_Create
    - ScalarAnimator_Create
    - SBVCAnimationV2_Create
    - QuantizationParameter_Create
    - KeyNavigator_Create
    - FIT_Create
    - PointSet2D_Create
    - AcousticMaterial_Create
    - CoordinateInterpolator2D_Create
    - IndexedFaceSet2D_Create
    - MediaBuffer_Create
    - MediaControl_Create
    - WaveletSubdivisionSurface_Create
    - AudioChannelConfig_Create
    - Background_Create
    - ListeningPoint_Create
    - FootPrintNode_Create
    - ColorInterpolator_Create
    - WorldInfo_Create
    - ApplicationWindow_Create
    - LineProperties_Create
    - ElevationGrid_Create
    - AudioMix_Create
    - Layer3D_Create
    - Conditional_Create
    - IndexedLineSet_Create
    - TextureCoordinate_Create
    - XXParticles_Create
    - AudioFX_Create
    - Sound2D_Create
    - SimpleTexture_Create
    - Shadow_Create
    - FontStyle_Create
    - MatteTexture_Create
    - PerceptualParameters_Create
    - Color_Create
    - Anchor_Create
    - Box_Create
    - XCurve2D_Create
    - CoordinateInterpolator4D_Create
    - Group_Create
    - PointTextureV2_Create
    - Viewpoint_Create
    - CompositeTexture2D_Create
    - AudioSource_Create
    - Fog_Create
    - XXPointAttractor_Create
    - PointLight_Create
    - BodySegmentConnectionHint_Create
    - XXLFM_SurfaceMapList_Create
    - MultiTexture_Create
    - Cylinder_Create
    - Form_Create
    - Expression_Create
    - SurroundingSound_Create
    - AudioDelay_Create
    - ProceduralTexture_Create
    - Implicit_Create
    - SynthesizedTexture_Create
    - SubdivisionSurface_Create
    - Transform2D_Create
    - TimeSensor_Create
    - XXLFM_Appearance_Create
    - Viseme_Create
    - RadialGradient_Create
    - LOD_Create
    - SolidRep_Create
    - XXLFM_FrameList_Create
    - AnimationStream_Create
    - PointTexture_Create
    - Appearance_Create
    - SBBone_Create
    - BAP_Create
    - Script_Create
    - PositionAnimator2D_Create
    - OrderedGroup_Create
    - SimpleTextureV2_Create
    - TemporalTransform_Create
    - XXLFM_ViewMapList_Create
    - IndexedFaceSet_Create
    - AdvancedAudioBuffer_Create
    - DepthImage_Create
    - TermCap_Create
    - Hierarchical3DMesh_Create
    - SBSegment_Create
    - ImageTexture_Create
    - SphereSensor_Create
    - CylinderSensor_Create
    - Circle_Create
    - XXLFM_BlendList_Create
    - PointSet_Create
    - PixelTexture_Create
    - CacheTexture_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: 37498
      start: 37102
    functionDepth: 0
    functionLinenumber: 37102
    functionLinenumberEnd: 37498
    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:37504,1
    - Dst: AnimationStream_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37507,1
    - Dst: Appearance_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37510,1
    - Dst: AudioBuffer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37513,1
    - Dst: AudioClip_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37516,1
    - Dst: AudioDelay_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37519,1
    - Dst: AudioFX_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37522,1
    - Dst: AudioMix_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37525,1
    - Dst: AudioSource_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37528,1
    - Dst: AudioSwitch_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37531,1
    - Dst: Background_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37534,1
    - Dst: Background2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37537,1
    - Dst: Billboard_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37540,1
    - Dst: Bitmap_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37543,1
    - Dst: Box_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37546,1
    - Dst: Circle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37549,1
    - Dst: Collision_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37552,1
    - Dst: Color_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37555,1
    - Dst: ColorInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37558,1
    - Dst: CompositeTexture2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37561,1
    - Dst: CompositeTexture3D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37564,1
    - Dst: Conditional_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37567,1
    - Dst: Cone_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37570,1
    - Dst: Coordinate_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37573,1
    - Dst: Coordinate2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37576,1
    - Dst: CoordinateInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37579,1
    - Dst: CoordinateInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37582,1
    - Dst: Curve2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37585,1
    - Dst: Cylinder_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37588,1
    - Dst: CylinderSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37591,1
    - Dst: DirectionalLight_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37594,1
    - Dst: DiscSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37597,1
    - Dst: ElevationGrid_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37600,1
    - Dst: Expression_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37603,1
    - Dst: Extrusion_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37606,1
    - Dst: Face_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37609,1
    - Dst: FaceDefMesh_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37612,1
    - Dst: FaceDefTables_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37615,1
    - Dst: FaceDefTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37618,1
    - Dst: FAP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37621,1
    - Dst: FDP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37624,1
    - Dst: FIT_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37627,1
    - Dst: Fog_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37630,1
    - Dst: FontStyle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37633,1
    - Dst: Form_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37636,1
    - Dst: Group_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37639,1
    - Dst: ImageTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37642,1
    - Dst: IndexedFaceSet_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37645,1
    - Dst: IndexedFaceSet2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37648,1
    - Dst: IndexedLineSet_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37651,1
    - Dst: IndexedLineSet2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37654,1
    - Dst: Inline_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37657,1
    - Dst: LOD_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37660,1
    - Dst: Layer2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37663,1
    - Dst: Layer3D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37666,1
    - Dst: Layout_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37669,1
    - Dst: LineProperties_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37672,1
    - Dst: ListeningPoint_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37675,1
    - Dst: Material_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37678,1
    - Dst: Material2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37681,1
    - Dst: MovieTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37684,1
    - Dst: NavigationInfo_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37687,1
    - Dst: Normal_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37690,1
    - Dst: NormalInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37693,1
    - Dst: OrderedGroup_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37696,1
    - Dst: OrientationInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37699,1
    - Dst: PixelTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37702,1
    - Dst: PlaneSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37705,1
    - Dst: PlaneSensor2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37708,1
    - Dst: PointLight_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37711,1
    - Dst: PointSet_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37714,1
    - Dst: PointSet2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37717,1
    - Dst: PositionInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37720,1
    - Dst: PositionInterpolator2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37723,1
    - Dst: ProximitySensor2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37726,1
    - Dst: ProximitySensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37729,1
    - Dst: QuantizationParameter_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37732,1
    - Dst: Rectangle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37735,1
    - Dst: ScalarInterpolator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37738,1
    - Dst: Script_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37741,1
    - Dst: Shape_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37744,1
    - Dst: Sound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37747,1
    - Dst: Sound2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37750,1
    - Dst: Sphere_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37753,1
    - Dst: SphereSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37756,1
    - Dst: SpotLight_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37759,1
    - Dst: Switch_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37762,1
    - Dst: TermCap_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37765,1
    - Dst: Text_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37768,1
    - Dst: TextureCoordinate_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37771,1
    - Dst: TextureTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37774,1
    - Dst: TimeSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37777,1
    - Dst: TouchSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37780,1
    - Dst: Transform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37783,1
    - Dst: Transform2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37786,1
    - Dst: Valuator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37789,1
    - Dst: Viewpoint_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37792,1
    - Dst: VisibilitySensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37795,1
    - Dst: Viseme_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37798,1
    - Dst: WorldInfo_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37801,1
    - Dst: AcousticMaterial_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37804,1
    - Dst: AcousticScene_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37807,1
    - Dst: ApplicationWindow_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37810,1
    - Dst: BAP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37813,1
    - Dst: BDP_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37816,1
    - Dst: Body_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37819,1
    - Dst: BodyDefTable_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37822,1
    - Dst: BodySegmentConnectionHint_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37825,1
    - Dst: DirectiveSound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37828,1
    - Dst: Hierarchical3DMesh_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37831,1
    - Dst: MaterialKey_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37834,1
    - Dst: PerceptualParameters_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37837,1
    - Dst: TemporalTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37840,1
    - Dst: TemporalGroup_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37843,1
    - Dst: ServerCommand_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37846,1
    - Dst: InputSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37849,1
    - Dst: MatteTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37852,1
    - Dst: MediaBuffer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37855,1
    - Dst: MediaControl_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37858,1
    - Dst: MediaSensor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37861,1
    - Dst: BitWrapper_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37864,1
    - Dst: CoordinateInterpolator4D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37867,1
    - Dst: DepthImage_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37870,1
    - Dst: FFD_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37873,1
    - Dst: Implicit_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37876,1
    - Dst: XXLFM_Appearance_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37879,1
    - Dst: XXLFM_BlendList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37882,1
    - Dst: XXLFM_FrameList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37885,1
    - Dst: XXLFM_LightMap_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37888,1
    - Dst: XXLFM_SurfaceMapList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37891,1
    - Dst: XXLFM_ViewMapList_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37894,1
    - Dst: MeshGrid_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37897,1
    - Dst: NonLinearDeformer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37900,1
    - Dst: NurbsCurve_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37903,1
    - Dst: NurbsCurve2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37906,1
    - Dst: NurbsSurface_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37909,1
    - Dst: OctreeImage_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37912,1
    - Dst: XXParticles_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37915,1
    - Dst: XXParticleInitBox_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37918,1
    - Dst: XXPlanarObstacle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37921,1
    - Dst: XXPointAttractor_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37924,1
    - Dst: PointTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37927,1
    - Dst: PositionAnimator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37930,1
    - Dst: PositionAnimator2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37933,1
    - Dst: PositionInterpolator4D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37936,1
    - Dst: ProceduralTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37939,1
    - Dst: Quadric_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37942,1
    - Dst: SBBone_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37945,1
    - Dst: SBMuscle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37948,1
    - Dst: SBSegment_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37951,1
    - Dst: SBSite_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37954,1
    - Dst: SBSkinnedModel_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37957,1
    - Dst: SBVCAnimation_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37960,1
    - Dst: ScalarAnimator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37963,1
    - Dst: SimpleTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37966,1
    - Dst: SolidRep_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37969,1
    - Dst: SubdivisionSurface_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37972,1
    - Dst: SubdivSurfaceSector_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37975,1
    - Dst: WaveletSubdivisionSurface_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37978,1
    - Dst: Clipper2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37981,1
    - Dst: ColorTransform_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37984,1
    - Dst: Ellipse_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37987,1
    - Dst: LinearGradient_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37990,1
    - Dst: PathLayout_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37993,1
    - Dst: RadialGradient_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37996,1
    - Dst: SynthesizedTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:37999,1
    - Dst: TransformMatrix2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38002,1
    - Dst: Viewport_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38005,1
    - Dst: XCurve2D_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38008,1
    - Dst: XFontStyle_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38011,1
    - Dst: XLineProperties_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38014,1
    - Dst: AdvancedAudioBuffer_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38017,1
    - Dst: AudioChannelConfig_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38020,1
    - Dst: DepthImageV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38023,1
    - Dst: MorphShape_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38026,1
    - Dst: MultiTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38029,1
    - Dst: PointTextureV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38032,1
    - Dst: SBVCAnimationV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38035,1
    - Dst: SimpleTextureV2_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38038,1
    - Dst: SurroundingSound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38041,1
    - Dst: Transform3DAudio_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38044,1
    - Dst: WideSound_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38047,1
    - Dst: ScoreShape_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38050,1
    - Dst: MusicScore_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38053,1
    - Dst: FootPrintSetNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38056,1
    - Dst: FootPrintNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38059,1
    - Dst: BuildingPartNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38062,1
    - Dst: RoofNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38065,1
    - Dst: FacadeNode_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38068,1
    - Dst: Shadow_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38071,1
    - Dst: CacheTexture_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38074,1
    - Dst: EnvironmentTest_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38077,1
    - Dst: KeyNavigator_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38080,1
    - Dst: SpacePartition_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38083,1
    - Dst: Storage_Del
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38086,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 590
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38091
      start: 37500
    functionDepth: 2
    functionLinenumber: 37500
    functionLinenumberEnd: 38091
    functionName: gf_sg_mpeg4_node_del
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - Coordinate2D_Del
    - Viewport_Del
    - XXLFM_Appearance_Del
    - ColorTransform_Del
    - AudioSwitch_Del
    - DiscSensor_Del
    - Viewpoint_Del
    - DirectiveSound_Del
    - OrientationInterpolator_Del
    - SolidRep_Del
    - DirectionalLight_Del
    - SubdivSurfaceSector_Del
    - MorphShape_Del
    - BAP_Del
    - Storage_Del
    - Anchor_Del
    - Rectangle_Del
    - Sound_Del
    - Fog_Del
    - XXLFM_SurfaceMapList_Del
    - SBSkinnedModel_Del
    - Transform_Del
    - XXLFM_ViewMapList_Del
    - TextureCoordinate_Del
    - Box_Del
    - WaveletSubdivisionSurface_Del
    - PointSet_Del
    - Ellipse_Del
    - TermCap_Del
    - SphereSensor_Del
    - ElevationGrid_Del
    - FootPrintSetNode_Del
    - SBVCAnimationV2_Del
    - KeyNavigator_Del
    - AudioFX_Del
    - VisibilitySensor_Del
    - IndexedFaceSet_Del
    - FIT_Del
    - SurroundingSound_Del
    - Expression_Del
    - LOD_Del
    - Implicit_Del
    - AudioDelay_Del
    - FontStyle_Del
    - SBBone_Del
    - TouchSensor_Del
    - Form_Del
    - CoordinateInterpolator4D_Del
    - AnimationStream_Del
    - XLineProperties_Del
    - DepthImageV2_Del
    - Circle_Del
    - ProximitySensor2D_Del
    - FAP_Del
    - PointSet2D_Del
    - NurbsCurve_Del
    - Shape_Del
    - Transform3DAudio_Del
    - ImageTexture_Del
    - WideSound_Del
    - XXLFM_FrameList_Del
    - PositionInterpolator2D_Del
    - BDP_Del
    - Background_Del
    - CoordinateInterpolator2D_Del
    - RadialGradient_Del
    - BuildingPartNode_Del
    - SpacePartition_Del
    - Bitmap_Del
    - Hierarchical3DMesh_Del
    - MovieTexture_Del
    - PlaneSensor_Del
    - SimpleTextureV2_Del
    - IndexedLineSet_Del
    - NormalInterpolator_Del
    - ServerCommand_Del
    - PlaneSensor2D_Del
    - Material2D_Del
    - BitWrapper_Del
    - FaceDefTransform_Del
    - ColorInterpolator_Del
    - XXPointAttractor_Del
    - FootPrintNode_Del
    - PositionInterpolator4D_Del
    - Layer2D_Del
    - SBVCAnimation_Del
    - Conditional_Del
    - TimeSensor_Del
    - TemporalTransform_Del
    - IndexedFaceSet2D_Del
    - Shadow_Del
    - ScoreShape_Del
    - MediaBuffer_Del
    - MatteTexture_Del
    - OctreeImage_Del
    - XFontStyle_Del
    - SpotLight_Del
    - SBSegment_Del
    - ProximitySensor_Del
    - BodySegmentConnectionHint_Del
    - Billboard_Del
    - Group_Del
    - Body_Del
    - AudioMix_Del
    - Sphere_Del
    - Face_Del
    - Viseme_Del
    - NavigationInfo_Del
    - XXLFM_BlendList_Del
    - CacheTexture_Del
    - WorldInfo_Del
    - ApplicationWindow_Del
    - ScalarAnimator_Del
    - Switch_Del
    - PositionInterpolator_Del
    - NonLinearDeformer_Del
    - RoofNode_Del
    - Layer3D_Del
    - SBSite_Del
    - FaceDefMesh_Del
    - XXPlanarObstacle_Del
    - LinearGradient_Del
    - Extrusion_Del
    - AudioClip_Del
    - MultiTexture_Del
    - Inline_Del
    - BodyDefTable_Del
    - DepthImage_Del
    - MediaControl_Del
    - NurbsSurface_Del
    - PointTextureV2_Del
    - Cylinder_Del
    - NurbsCurve2D_Del
    - FacadeNode_Del
    - PositionAnimator2D_Del
    - PerceptualParameters_Del
    - Text_Del
    - SubdivisionSurface_Del
    - TextureTransform_Del
    - AcousticScene_Del
    - TransformMatrix2D_Del
    - Coordinate_Del
    - XXLFM_LightMap_Del
    - Sound2D_Del
    - CompositeTexture3D_Del
    - Appearance_Del
    - SBMuscle_Del
    - Valuator_Del
    - AudioChannelConfig_Del
    - QuantizationParameter_Del
    - ScalarInterpolator_Del
    - Clipper2D_Del
    - OrderedGroup_Del
    - SimpleTexture_Del
    - Material_Del
    - LineProperties_Del
    - Script_Del
    - EnvironmentTest_Del
    - Curve2D_Del
    - PointLight_Del
    - TemporalGroup_Del
    - FFD_Del
    - ProceduralTexture_Del
    - MediaSensor_Del
    - CylinderSensor_Del
    - Normal_Del
    - AdvancedAudioBuffer_Del
    - XXParticles_Del
    - XCurve2D_Del
    - PointTexture_Del
    - FDP_Del
    - IndexedLineSet2D_Del
    - PathLayout_Del
    - Cone_Del
    - MeshGrid_Del
    - CoordinateInterpolator_Del
    - MaterialKey_Del
    - ListeningPoint_Del
    - Collision_Del
    - AcousticMaterial_Del
    - XXParticleInitBox_Del
    - InputSensor_Del
    - Background2D_Del
    - SynthesizedTexture_Del
    - CompositeTexture2D_Del
    - AudioBuffer_Del
    - AudioSource_Del
    - FaceDefTables_Del
    - PositionAnimator_Del
    - Color_Del
    - MusicScore_Del
    - PixelTexture_Del
    - Quadric_Del
    - Transform2D_Del
    - Layout_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:38097,1
    - Dst: AnimationStream_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38099,1
    - Dst: Appearance_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38101,1
    - Dst: AudioBuffer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38103,1
    - Dst: AudioClip_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38105,1
    - Dst: AudioDelay_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38107,1
    - Dst: AudioFX_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38109,1
    - Dst: AudioMix_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38111,1
    - Dst: AudioSource_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38113,1
    - Dst: AudioSwitch_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38115,1
    - Dst: Background_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38117,1
    - Dst: Background2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38119,1
    - Dst: Billboard_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38121,1
    - Dst: Bitmap_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38123,1
    - Dst: Box_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38125,1
    - Dst: Circle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38127,1
    - Dst: Collision_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38129,1
    - Dst: Color_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38131,1
    - Dst: ColorInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38133,1
    - Dst: CompositeTexture2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38135,1
    - Dst: CompositeTexture3D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38137,1
    - Dst: Conditional_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38139,1
    - Dst: Cone_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38141,1
    - Dst: Coordinate_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38143,1
    - Dst: Coordinate2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38145,1
    - Dst: CoordinateInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38147,1
    - Dst: CoordinateInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38149,1
    - Dst: Curve2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38151,1
    - Dst: Cylinder_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38153,1
    - Dst: CylinderSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38155,1
    - Dst: DirectionalLight_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38157,1
    - Dst: DiscSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38159,1
    - Dst: ElevationGrid_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38161,1
    - Dst: Expression_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38163,1
    - Dst: Extrusion_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38165,1
    - Dst: Face_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38167,1
    - Dst: FaceDefMesh_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38169,1
    - Dst: FaceDefTables_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38171,1
    - Dst: FaceDefTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38173,1
    - Dst: FAP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38175,1
    - Dst: FDP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38177,1
    - Dst: FIT_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38179,1
    - Dst: Fog_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38181,1
    - Dst: FontStyle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38183,1
    - Dst: Form_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38185,1
    - Dst: Group_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38187,1
    - Dst: ImageTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38189,1
    - Dst: IndexedFaceSet_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38191,1
    - Dst: IndexedFaceSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38193,1
    - Dst: IndexedLineSet_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38195,1
    - Dst: IndexedLineSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38197,1
    - Dst: Inline_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38199,1
    - Dst: LOD_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38201,1
    - Dst: Layer2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38203,1
    - Dst: Layer3D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38205,1
    - Dst: Layout_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38207,1
    - Dst: LineProperties_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38209,1
    - Dst: ListeningPoint_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38211,1
    - Dst: Material_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38213,1
    - Dst: Material2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38215,1
    - Dst: MovieTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38217,1
    - Dst: NavigationInfo_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38219,1
    - Dst: Normal_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38221,1
    - Dst: NormalInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38223,1
    - Dst: OrderedGroup_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38225,1
    - Dst: OrientationInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38227,1
    - Dst: PixelTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38229,1
    - Dst: PlaneSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38231,1
    - Dst: PlaneSensor2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38233,1
    - Dst: PointLight_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38235,1
    - Dst: PointSet_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38237,1
    - Dst: PointSet2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38239,1
    - Dst: PositionInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38241,1
    - Dst: PositionInterpolator2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38243,1
    - Dst: ProximitySensor2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38245,1
    - Dst: ProximitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38247,1
    - Dst: QuantizationParameter_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38249,1
    - Dst: Rectangle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38251,1
    - Dst: ScalarInterpolator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38253,1
    - Dst: Script_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38255,1
    - Dst: Shape_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38257,1
    - Dst: Sound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38259,1
    - Dst: Sound2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38261,1
    - Dst: Sphere_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38263,1
    - Dst: SphereSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38265,1
    - Dst: SpotLight_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38267,1
    - Dst: Switch_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38269,1
    - Dst: TermCap_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38271,1
    - Dst: Text_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38273,1
    - Dst: TextureCoordinate_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38275,1
    - Dst: TextureTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38277,1
    - Dst: TimeSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38279,1
    - Dst: TouchSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38281,1
    - Dst: Transform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38283,1
    - Dst: Transform2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38285,1
    - Dst: Valuator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38287,1
    - Dst: Viewpoint_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38289,1
    - Dst: VisibilitySensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38291,1
    - Dst: Viseme_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38293,1
    - Dst: WorldInfo_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38295,1
    - Dst: AcousticMaterial_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38297,1
    - Dst: AcousticScene_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38299,1
    - Dst: ApplicationWindow_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38301,1
    - Dst: BAP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38303,1
    - Dst: BDP_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38305,1
    - Dst: Body_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38307,1
    - Dst: BodyDefTable_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38309,1
    - Dst: BodySegmentConnectionHint_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38311,1
    - Dst: DirectiveSound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38313,1
    - Dst: Hierarchical3DMesh_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38315,1
    - Dst: MaterialKey_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38317,1
    - Dst: PerceptualParameters_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38319,1
    - Dst: TemporalTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38321,1
    - Dst: TemporalGroup_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38323,1
    - Dst: ServerCommand_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38325,1
    - Dst: InputSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38327,1
    - Dst: MatteTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38329,1
    - Dst: MediaBuffer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38331,1
    - Dst: MediaControl_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38333,1
    - Dst: MediaSensor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38335,1
    - Dst: BitWrapper_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38337,1
    - Dst: CoordinateInterpolator4D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38339,1
    - Dst: DepthImage_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38341,1
    - Dst: FFD_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38343,1
    - Dst: Implicit_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38345,1
    - Dst: XXLFM_Appearance_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38347,1
    - Dst: XXLFM_BlendList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38349,1
    - Dst: XXLFM_FrameList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38351,1
    - Dst: XXLFM_LightMap_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38353,1
    - Dst: XXLFM_SurfaceMapList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38355,1
    - Dst: XXLFM_ViewMapList_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38357,1
    - Dst: MeshGrid_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38359,1
    - Dst: NonLinearDeformer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38361,1
    - Dst: NurbsCurve_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38363,1
    - Dst: NurbsCurve2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38365,1
    - Dst: NurbsSurface_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38367,1
    - Dst: OctreeImage_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38369,1
    - Dst: XXParticles_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38371,1
    - Dst: XXParticleInitBox_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38373,1
    - Dst: XXPlanarObstacle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38375,1
    - Dst: XXPointAttractor_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38377,1
    - Dst: PointTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38379,1
    - Dst: PositionAnimator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38381,1
    - Dst: PositionAnimator2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38383,1
    - Dst: PositionInterpolator4D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38385,1
    - Dst: ProceduralTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38387,1
    - Dst: Quadric_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38389,1
    - Dst: SBBone_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38391,1
    - Dst: SBMuscle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38393,1
    - Dst: SBSegment_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38395,1
    - Dst: SBSite_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38397,1
    - Dst: SBSkinnedModel_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38399,1
    - Dst: SBVCAnimation_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38401,1
    - Dst: ScalarAnimator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38403,1
    - Dst: SimpleTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38405,1
    - Dst: SolidRep_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38407,1
    - Dst: SubdivisionSurface_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38409,1
    - Dst: SubdivSurfaceSector_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38411,1
    - Dst: WaveletSubdivisionSurface_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38413,1
    - Dst: Clipper2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38415,1
    - Dst: ColorTransform_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38417,1
    - Dst: Ellipse_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38419,1
    - Dst: LinearGradient_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38421,1
    - Dst: PathLayout_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38423,1
    - Dst: RadialGradient_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38425,1
    - Dst: SynthesizedTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38427,1
    - Dst: TransformMatrix2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38429,1
    - Dst: Viewport_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38431,1
    - Dst: XCurve2D_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38433,1
    - Dst: XFontStyle_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38435,1
    - Dst: XLineProperties_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38437,1
    - Dst: AdvancedAudioBuffer_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38439,1
    - Dst: AudioChannelConfig_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38441,1
    - Dst: DepthImageV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38443,1
    - Dst: MorphShape_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38445,1
    - Dst: MultiTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38447,1
    - Dst: PointTextureV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38449,1
    - Dst: SBVCAnimationV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38451,1
    - Dst: SimpleTextureV2_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38453,1
    - Dst: SurroundingSound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38455,1
    - Dst: Transform3DAudio_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38457,1
    - Dst: WideSound_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38459,1
    - Dst: ScoreShape_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38461,1
    - Dst: MusicScore_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38463,1
    - Dst: FootPrintSetNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38465,1
    - Dst: FootPrintNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38467,1
    - Dst: BuildingPartNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38469,1
    - Dst: RoofNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38471,1
    - Dst: FacadeNode_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38473,1
    - Dst: Shadow_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38475,1
    - Dst: CacheTexture_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38477,1
    - Dst: EnvironmentTest_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38479,1
    - Dst: KeyNavigator_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38481,1
    - Dst: SpacePartition_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38483,1
    - Dst: Storage_get_field_count
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 2
    argNames:
    - node
    - code_mode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38489
      start: 38093
    functionDepth: 1
    functionLinenumber: 38093
    functionLinenumberEnd: 38489
    functionName: gf_sg_mpeg4_node_get_field_count
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - FaceDefTransform_get_field_count
    - Implicit_get_field_count
    - SubdivisionSurface_get_field_count
    - Body_get_field_count
    - IndexedLineSet2D_get_field_count
    - TemporalTransform_get_field_count
    - MatteTexture_get_field_count
    - SimpleTexture_get_field_count
    - XXParticleInitBox_get_field_count
    - TextureCoordinate_get_field_count
    - XXLFM_Appearance_get_field_count
    - XXLFM_ViewMapList_get_field_count
    - AudioFX_get_field_count
    - Group_get_field_count
    - TouchSensor_get_field_count
    - OctreeImage_get_field_count
    - NurbsSurface_get_field_count
    - Inline_get_field_count
    - ElevationGrid_get_field_count
    - AcousticScene_get_field_count
    - SBBone_get_field_count
    - RadialGradient_get_field_count
    - FacadeNode_get_field_count
    - CompositeTexture3D_get_field_count
    - ProximitySensor2D_get_field_count
    - MorphShape_get_field_count
    - PositionAnimator2D_get_field_count
    - OrderedGroup_get_field_count
    - BitWrapper_get_field_count
    - MovieTexture_get_field_count
    - Layout_get_field_count
    - ServerCommand_get_field_count
    - SubdivSurfaceSector_get_field_count
    - AudioSwitch_get_field_count
    - PlaneSensor2D_get_field_count
    - Viseme_get_field_count
    - PositionAnimator_get_field_count
    - SBSite_get_field_count
    - Billboard_get_field_count
    - Material_get_field_count
    - SpotLight_get_field_count
    - Hierarchical3DMesh_get_field_count
    - AudioChannelConfig_get_field_count
    - NavigationInfo_get_field_count
    - SphereSensor_get_field_count
    - Expression_get_field_count
    - WideSound_get_field_count
    - TransformMatrix2D_get_field_count
    - TimeSensor_get_field_count
    - SynthesizedTexture_get_field_count
    - FootPrintSetNode_get_field_count
    - PointLight_get_field_count
    - ColorTransform_get_field_count
    - PointTextureV2_get_field_count
    - Clipper2D_get_field_count
    - PlaneSensor_get_field_count
    - SBMuscle_get_field_count
    - NormalInterpolator_get_field_count
    - Extrusion_get_field_count
    - AudioSource_get_field_count
    - WaveletSubdivisionSurface_get_field_count
    - AudioClip_get_field_count
    - BuildingPartNode_get_field_count
    - Material2D_get_field_count
    - Shadow_get_field_count
    - Bitmap_get_field_count
    - CacheTexture_get_field_count
    - Shape_get_field_count
    - Sound_get_field_count
    - LinearGradient_get_field_count
    - ProximitySensor_get_field_count
    - Form_get_field_count
    - PositionInterpolator4D_get_field_count
    - SolidRep_get_field_count
    - LineProperties_get_field_count
    - ColorInterpolator_get_field_count
    - KeyNavigator_get_field_count
    - Rectangle_get_field_count
    - XXLFM_LightMap_get_field_count
    - Ellipse_get_field_count
    - Layer3D_get_field_count
    - Layer2D_get_field_count
    - EnvironmentTest_get_field_count
    - InputSensor_get_field_count
    - TemporalGroup_get_field_count
    - XXLFM_SurfaceMapList_get_field_count
    - Sphere_get_field_count
    - SBSegment_get_field_count
    - BDP_get_field_count
    - PointSet2D_get_field_count
    - SBVCAnimationV2_get_field_count
    - Transform3DAudio_get_field_count
    - ScoreShape_get_field_count
    - Appearance_get_field_count
    - Transform2D_get_field_count
    - BodySegmentConnectionHint_get_field_count
    - Coordinate_get_field_count
    - MeshGrid_get_field_count
    - PathLayout_get_field_count
    - PerceptualParameters_get_field_count
    - CylinderSensor_get_field_count
    - Anchor_get_field_count
    - FDP_get_field_count
    - MaterialKey_get_field_count
    - NurbsCurve2D_get_field_count
    - PointTexture_get_field_count
    - FootPrintNode_get_field_count
    - PointSet_get_field_count
    - BAP_get_field_count
    - MediaBuffer_get_field_count
    - PositionInterpolator_get_field_count
    - Conditional_get_field_count
    - Collision_get_field_count
    - Face_get_field_count
    - Quadric_get_field_count
    - ScalarAnimator_get_field_count
    - BodyDefTable_get_field_count
    - XLineProperties_get_field_count
    - AudioBuffer_get_field_count
    - ImageTexture_get_field_count
    - Valuator_get_field_count
    - TextureTransform_get_field_count
    - Fog_get_field_count
    - CoordinateInterpolator4D_get_field_count
    - DirectiveSound_get_field_count
    - FaceDefMesh_get_field_count
    - Text_get_field_count
    - XXPlanarObstacle_get_field_count
    - Circle_get_field_count
    - Switch_get_field_count
    - LOD_get_field_count
    - IndexedLineSet_get_field_count
    - FIT_get_field_count
    - PixelTexture_get_field_count
    - WorldInfo_get_field_count
    - ProceduralTexture_get_field_count
    - Viewpoint_get_field_count
    - SBSkinnedModel_get_field_count
    - AdvancedAudioBuffer_get_field_count
    - QuantizationParameter_get_field_count
    - Transform_get_field_count
    - XXParticles_get_field_count
    - XXLFM_BlendList_get_field_count
    - RoofNode_get_field_count
    - AnimationStream_get_field_count
    - NonLinearDeformer_get_field_count
    - AcousticMaterial_get_field_count
    - NurbsCurve_get_field_count
    - DiscSensor_get_field_count
    - Curve2D_get_field_count
    - IndexedFaceSet2D_get_field_count
    - DirectionalLight_get_field_count
    - CompositeTexture2D_get_field_count
    - Normal_get_field_count
    - CoordinateInterpolator_get_field_count
    - AudioMix_get_field_count
    - OrientationInterpolator_get_field_count
    - Background2D_get_field_count
    - FaceDefTables_get_field_count
    - DepthImage_get_field_count
    - FontStyle_get_field_count
    - XFontStyle_get_field_count
    - MultiTexture_get_field_count
    - SimpleTextureV2_get_field_count
    - CoordinateInterpolator2D_get_field_count
    - MediaSensor_get_field_count
    - PositionInterpolator2D_get_field_count
    - MusicScore_get_field_count
    - ScalarInterpolator_get_field_count
    - XCurve2D_get_field_count
    - SBVCAnimation_get_field_count
    - Coordinate2D_get_field_count
    - MediaControl_get_field_count
    - FFD_get_field_count
    - ListeningPoint_get_field_count
    - VisibilitySensor_get_field_count
    - Color_get_field_count
    - Storage_get_field_count
    - Sound2D_get_field_count
    - ApplicationWindow_get_field_count
    - Background_get_field_count
    - IndexedFaceSet_get_field_count
    - XXLFM_FrameList_get_field_count
    - Cone_get_field_count
    - Viewport_get_field_count
    - SpacePartition_get_field_count
    - Cylinder_get_field_count
    - DepthImageV2_get_field_count
    - Box_get_field_count
    - FAP_get_field_count
    - SurroundingSound_get_field_count
    - XXPointAttractor_get_field_count
    - Script_get_field_count
    - AudioDelay_get_field_count
    - TermCap_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:38495,1
    - Dst: AnimationStream_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38497,1
    - Dst: Appearance_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38499,1
    - Dst: AudioBuffer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38501,1
    - Dst: AudioClip_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38503,1
    - Dst: AudioDelay_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38505,1
    - Dst: AudioFX_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38507,1
    - Dst: AudioMix_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38509,1
    - Dst: AudioSource_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38511,1
    - Dst: AudioSwitch_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38513,1
    - Dst: Background_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38515,1
    - Dst: Background2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38517,1
    - Dst: Billboard_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38519,1
    - Dst: Bitmap_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38521,1
    - Dst: Box_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38523,1
    - Dst: Circle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38525,1
    - Dst: Collision_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38527,1
    - Dst: Color_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38529,1
    - Dst: ColorInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38531,1
    - Dst: CompositeTexture2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38533,1
    - Dst: CompositeTexture3D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38535,1
    - Dst: Conditional_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38537,1
    - Dst: Cone_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38539,1
    - Dst: Coordinate_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38541,1
    - Dst: Coordinate2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38543,1
    - Dst: CoordinateInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38545,1
    - Dst: CoordinateInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38547,1
    - Dst: Curve2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38549,1
    - Dst: Cylinder_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38551,1
    - Dst: CylinderSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38553,1
    - Dst: DirectionalLight_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38555,1
    - Dst: DiscSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38557,1
    - Dst: ElevationGrid_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38559,1
    - Dst: Expression_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38561,1
    - Dst: Extrusion_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38563,1
    - Dst: Face_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38565,1
    - Dst: FaceDefMesh_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38567,1
    - Dst: FaceDefTables_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38569,1
    - Dst: FaceDefTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38571,1
    - Dst: FAP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38573,1
    - Dst: FDP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38575,1
    - Dst: FIT_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38577,1
    - Dst: Fog_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38579,1
    - Dst: FontStyle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38581,1
    - Dst: Form_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38583,1
    - Dst: Group_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38585,1
    - Dst: ImageTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38587,1
    - Dst: IndexedFaceSet_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38589,1
    - Dst: IndexedFaceSet2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38591,1
    - Dst: IndexedLineSet_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38593,1
    - Dst: IndexedLineSet2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38595,1
    - Dst: Inline_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38597,1
    - Dst: LOD_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38599,1
    - Dst: Layer2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38601,1
    - Dst: Layer3D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38603,1
    - Dst: Layout_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38605,1
    - Dst: LineProperties_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38607,1
    - Dst: ListeningPoint_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38609,1
    - Dst: Material_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38611,1
    - Dst: Material2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38613,1
    - Dst: MovieTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38615,1
    - Dst: NavigationInfo_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38617,1
    - Dst: Normal_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38619,1
    - Dst: NormalInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38621,1
    - Dst: OrderedGroup_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38623,1
    - Dst: OrientationInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38625,1
    - Dst: PixelTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38627,1
    - Dst: PlaneSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38629,1
    - Dst: PlaneSensor2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38631,1
    - Dst: PointLight_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38633,1
    - Dst: PointSet_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38635,1
    - Dst: PointSet2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38637,1
    - Dst: PositionInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38639,1
    - Dst: PositionInterpolator2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38641,1
    - Dst: ProximitySensor2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38643,1
    - Dst: ProximitySensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38645,1
    - Dst: QuantizationParameter_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38647,1
    - Dst: Rectangle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38649,1
    - Dst: ScalarInterpolator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38651,1
    - Dst: Script_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38653,1
    - Dst: Shape_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38655,1
    - Dst: Sound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38657,1
    - Dst: Sound2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38659,1
    - Dst: Sphere_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38661,1
    - Dst: SphereSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38663,1
    - Dst: SpotLight_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38665,1
    - Dst: Switch_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38667,1
    - Dst: TermCap_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38669,1
    - Dst: Text_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38671,1
    - Dst: TextureCoordinate_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38673,1
    - Dst: TextureTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38675,1
    - Dst: TimeSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38677,1
    - Dst: TouchSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38679,1
    - Dst: Transform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38681,1
    - Dst: Transform2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38683,1
    - Dst: Valuator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38685,1
    - Dst: Viewpoint_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38687,1
    - Dst: VisibilitySensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38689,1
    - Dst: Viseme_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38691,1
    - Dst: WorldInfo_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38693,1
    - Dst: AcousticMaterial_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38695,1
    - Dst: AcousticScene_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38697,1
    - Dst: ApplicationWindow_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38699,1
    - Dst: BAP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38701,1
    - Dst: BDP_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38703,1
    - Dst: Body_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38705,1
    - Dst: BodyDefTable_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38707,1
    - Dst: BodySegmentConnectionHint_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38709,1
    - Dst: DirectiveSound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38711,1
    - Dst: Hierarchical3DMesh_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38713,1
    - Dst: MaterialKey_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38715,1
    - Dst: PerceptualParameters_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38717,1
    - Dst: TemporalTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38719,1
    - Dst: TemporalGroup_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38721,1
    - Dst: ServerCommand_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38723,1
    - Dst: InputSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38725,1
    - Dst: MatteTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38727,1
    - Dst: MediaBuffer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38729,1
    - Dst: MediaControl_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38731,1
    - Dst: MediaSensor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38733,1
    - Dst: BitWrapper_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38735,1
    - Dst: CoordinateInterpolator4D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38737,1
    - Dst: DepthImage_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38739,1
    - Dst: FFD_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38741,1
    - Dst: Implicit_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38743,1
    - Dst: XXLFM_Appearance_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38745,1
    - Dst: XXLFM_BlendList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38747,1
    - Dst: XXLFM_FrameList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38749,1
    - Dst: XXLFM_LightMap_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38751,1
    - Dst: XXLFM_SurfaceMapList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38753,1
    - Dst: XXLFM_ViewMapList_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38755,1
    - Dst: MeshGrid_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38757,1
    - Dst: NonLinearDeformer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38759,1
    - Dst: NurbsCurve_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38761,1
    - Dst: NurbsCurve2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38763,1
    - Dst: NurbsSurface_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38765,1
    - Dst: OctreeImage_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38767,1
    - Dst: XXParticles_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38769,1
    - Dst: XXParticleInitBox_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38771,1
    - Dst: XXPlanarObstacle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38773,1
    - Dst: XXPointAttractor_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38775,1
    - Dst: PointTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38777,1
    - Dst: PositionAnimator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38779,1
    - Dst: PositionAnimator2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38781,1
    - Dst: PositionInterpolator4D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38783,1
    - Dst: ProceduralTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38785,1
    - Dst: Quadric_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38787,1
    - Dst: SBBone_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38789,1
    - Dst: SBMuscle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38791,1
    - Dst: SBSegment_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38793,1
    - Dst: SBSite_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38795,1
    - Dst: SBSkinnedModel_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38797,1
    - Dst: SBVCAnimation_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38799,1
    - Dst: ScalarAnimator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38801,1
    - Dst: SimpleTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38803,1
    - Dst: SolidRep_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38805,1
    - Dst: SubdivisionSurface_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38807,1
    - Dst: SubdivSurfaceSector_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38809,1
    - Dst: WaveletSubdivisionSurface_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38811,1
    - Dst: Clipper2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38813,1
    - Dst: ColorTransform_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38815,1
    - Dst: Ellipse_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38817,1
    - Dst: LinearGradient_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38819,1
    - Dst: PathLayout_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38821,1
    - Dst: RadialGradient_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38823,1
    - Dst: SynthesizedTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38825,1
    - Dst: TransformMatrix2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38827,1
    - Dst: Viewport_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38829,1
    - Dst: XCurve2D_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38831,1
    - Dst: XFontStyle_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38833,1
    - Dst: XLineProperties_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38835,1
    - Dst: AdvancedAudioBuffer_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38837,1
    - Dst: AudioChannelConfig_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38839,1
    - Dst: DepthImageV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38841,1
    - Dst: MorphShape_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38843,1
    - Dst: MultiTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38845,1
    - Dst: PointTextureV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38847,1
    - Dst: SBVCAnimationV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38849,1
    - Dst: SimpleTextureV2_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38851,1
    - Dst: SurroundingSound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38853,1
    - Dst: Transform3DAudio_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38855,1
    - Dst: WideSound_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38857,1
    - Dst: ScoreShape_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38859,1
    - Dst: MusicScore_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38861,1
    - Dst: FootPrintSetNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38863,1
    - Dst: FootPrintNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38865,1
    - Dst: BuildingPartNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38867,1
    - Dst: RoofNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38869,1
    - Dst: FacadeNode_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38871,1
    - Dst: Shadow_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38873,1
    - Dst: CacheTexture_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38875,1
    - Dst: EnvironmentTest_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38877,1
    - Dst: KeyNavigator_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38879,1
    - Dst: SpacePartition_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38881,1
    - Dst: Storage_get_field
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38883,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38887
      start: 38491
    functionDepth: 1
    functionLinenumber: 38491
    functionLinenumberEnd: 38887
    functionName: gf_sg_mpeg4_node_get_field
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - BAP_get_field
    - Viewpoint_get_field
    - ProximitySensor2D_get_field
    - PlaneSensor2D_get_field
    - TextureCoordinate_get_field
    - NurbsSurface_get_field
    - XXLFM_SurfaceMapList_get_field
    - SBSite_get_field
    - Circle_get_field
    - ScoreShape_get_field
    - Material_get_field
    - Cylinder_get_field
    - WideSound_get_field
    - ScalarAnimator_get_field
    - TimeSensor_get_field
    - Script_get_field
    - CompositeTexture2D_get_field
    - Transform3DAudio_get_field
    - MediaControl_get_field
    - PlaneSensor_get_field
    - FaceDefMesh_get_field
    - SBVCAnimationV2_get_field
    - MovieTexture_get_field
    - AcousticMaterial_get_field
    - ServerCommand_get_field
    - FaceDefTables_get_field
    - AnimationStream_get_field
    - NurbsCurve_get_field
    - RoofNode_get_field
    - XXLFM_Appearance_get_field
    - AudioSwitch_get_field
    - TermCap_get_field
    - AudioDelay_get_field
    - ColorInterpolator_get_field
    - FAP_get_field
    - AudioChannelConfig_get_field
    - CoordinateInterpolator4D_get_field
    - Background2D_get_field
    - MusicScore_get_field
    - MediaBuffer_get_field
    - DiscSensor_get_field
    - Viewport_get_field
    - XLineProperties_get_field
    - ProceduralTexture_get_field
    - Shadow_get_field
    - Curve2D_get_field
    - MeshGrid_get_field
    - Box_get_field
    - SubdivSurfaceSector_get_field
    - NurbsCurve2D_get_field
    - ScalarInterpolator_get_field
    - Text_get_field
    - SphereSensor_get_field
    - DirectionalLight_get_field
    - Shape_get_field
    - Inline_get_field
    - Cone_get_field
    - NonLinearDeformer_get_field
    - Appearance_get_field
    - DepthImageV2_get_field
    - Coordinate2D_get_field
    - Normal_get_field
    - Expression_get_field
    - PointSet_get_field
    - Switch_get_field
    - Layer3D_get_field
    - CoordinateInterpolator2D_get_field
    - XXPointAttractor_get_field
    - Sound2D_get_field
    - PointTexture_get_field
    - Anchor_get_field
    - SBBone_get_field
    - SpotLight_get_field
    - DepthImage_get_field
    - XXPlanarObstacle_get_field
    - ApplicationWindow_get_field
    - AcousticScene_get_field
    - WaveletSubdivisionSurface_get_field
    - Transform2D_get_field
    - CoordinateInterpolator_get_field
    - MaterialKey_get_field
    - PointTextureV2_get_field
    - SBSkinnedModel_get_field
    - AudioClip_get_field
    - SBMuscle_get_field
    - CacheTexture_get_field
    - SpacePartition_get_field
    - XXLFM_ViewMapList_get_field
    - Viseme_get_field
    - ListeningPoint_get_field
    - LOD_get_field
    - Sphere_get_field
    - DirectiveSound_get_field
    - Extrusion_get_field
    - Form_get_field
    - AudioSource_get_field
    - BodyDefTable_get_field
    - Billboard_get_field
    - MatteTexture_get_field
    - SBSegment_get_field
    - Ellipse_get_field
    - TransformMatrix2D_get_field
    - Layout_get_field
    - ElevationGrid_get_field
    - SubdivisionSurface_get_field
    - Sound_get_field
    - PathLayout_get_field
    - PositionAnimator_get_field
    - VisibilitySensor_get_field
    - EnvironmentTest_get_field
    - FDP_get_field
    - Material2D_get_field
    - LinearGradient_get_field
    - PointSet2D_get_field
    - QuantizationParameter_get_field
    - AudioFX_get_field
    - Bitmap_get_field
    - FootPrintSetNode_get_field
    - LineProperties_get_field
    - Layer2D_get_field
    - InputSensor_get_field
    - Coordinate_get_field
    - TouchSensor_get_field
    - OrderedGroup_get_field
    - XFontStyle_get_field
    - NavigationInfo_get_field
    - Valuator_get_field
    - MultiTexture_get_field
    - OrientationInterpolator_get_field
    - PositionInterpolator2D_get_field
    - Hierarchical3DMesh_get_field
    - XXLFM_LightMap_get_field
    - TemporalTransform_get_field
    - MediaSensor_get_field
    - Color_get_field
    - Implicit_get_field
    - Conditional_get_field
    - TemporalGroup_get_field
    - PerceptualParameters_get_field
    - XXParticleInitBox_get_field
    - XCurve2D_get_field
    - BitWrapper_get_field
    - AudioBuffer_get_field
    - FootPrintNode_get_field
    - SolidRep_get_field
    - ColorTransform_get_field
    - IndexedLineSet2D_get_field
    - IndexedFaceSet_get_field
    - SimpleTextureV2_get_field
    - XXLFM_BlendList_get_field
    - XXLFM_FrameList_get_field
    - SimpleTexture_get_field
    - PositionInterpolator_get_field
    - Quadric_get_field
    - SBVCAnimation_get_field
    - AudioMix_get_field
    - Fog_get_field
    - WorldInfo_get_field
    - FaceDefTransform_get_field
    - PositionAnimator2D_get_field
    - RadialGradient_get_field
    - NormalInterpolator_get_field
    - ProximitySensor_get_field
    - Background_get_field
    - CompositeTexture3D_get_field
    - TextureTransform_get_field
    - PointLight_get_field
    - PixelTexture_get_field
    - Collision_get_field
    - Body_get_field
    - BodySegmentConnectionHint_get_field
    - FontStyle_get_field
    - BDP_get_field
    - PositionInterpolator4D_get_field
    - ImageTexture_get_field
    - AdvancedAudioBuffer_get_field
    - CylinderSensor_get_field
    - Clipper2D_get_field
    - BuildingPartNode_get_field
    - MorphShape_get_field
    - OctreeImage_get_field
    - IndexedFaceSet2D_get_field
    - Group_get_field
    - Face_get_field
    - XXParticles_get_field
    - FFD_get_field
    - FacadeNode_get_field
    - Storage_get_field
    - Rectangle_get_field
    - KeyNavigator_get_field
    - SurroundingSound_get_field
    - Transform_get_field
    - SynthesizedTexture_get_field
    - IndexedLineSet_get_field
    - FIT_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:38893,1
    - Dst: AnimationStream_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38895,1
    - Dst: Appearance_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38897,1
    - Dst: AudioBuffer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38899,1
    - Dst: AudioClip_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38901,1
    - Dst: AudioDelay_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38903,1
    - Dst: AudioFX_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38905,1
    - Dst: AudioMix_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38907,1
    - Dst: AudioSource_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38909,1
    - Dst: AudioSwitch_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38911,1
    - Dst: Background_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38913,1
    - Dst: Background2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38915,1
    - Dst: Billboard_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38917,1
    - Dst: Bitmap_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38919,1
    - Dst: Box_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38921,1
    - Dst: Circle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38923,1
    - Dst: Collision_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38925,1
    - Dst: Color_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38927,1
    - Dst: ColorInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38929,1
    - Dst: CompositeTexture2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38931,1
    - Dst: CompositeTexture3D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38933,1
    - Dst: Conditional_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38935,1
    - Dst: Cone_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38937,1
    - Dst: Coordinate_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38939,1
    - Dst: Coordinate2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38941,1
    - Dst: CoordinateInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38943,1
    - Dst: CoordinateInterpolator2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38945,1
    - Dst: Curve2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38947,1
    - Dst: Cylinder_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38949,1
    - Dst: CylinderSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38951,1
    - Dst: DirectionalLight_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38953,1
    - Dst: DiscSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38955,1
    - Dst: ElevationGrid_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38957,1
    - Dst: Expression_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38959,1
    - Dst: Extrusion_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38961,1
    - Dst: Face_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38963,1
    - Dst: FaceDefMesh_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38965,1
    - Dst: FaceDefTables_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38967,1
    - Dst: FaceDefTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38969,1
    - Dst: FAP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38971,1
    - Dst: FDP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38973,1
    - Dst: FIT_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38975,1
    - Dst: Fog_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38977,1
    - Dst: FontStyle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38979,1
    - Dst: Form_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38981,1
    - Dst: Group_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38983,1
    - Dst: ImageTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38985,1
    - Dst: IndexedFaceSet_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38987,1
    - Dst: IndexedFaceSet2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38989,1
    - Dst: IndexedLineSet_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38991,1
    - Dst: IndexedLineSet2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38993,1
    - Dst: Inline_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38995,1
    - Dst: LOD_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38997,1
    - Dst: Layer2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:38999,1
    - Dst: Layer3D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39001,1
    - Dst: Layout_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39003,1
    - Dst: LineProperties_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39005,1
    - Dst: ListeningPoint_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39007,1
    - Dst: Material_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39009,1
    - Dst: Material2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39011,1
    - Dst: MovieTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39013,1
    - Dst: NavigationInfo_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39015,1
    - Dst: Normal_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39017,1
    - Dst: NormalInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39019,1
    - Dst: OrderedGroup_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39021,1
    - Dst: OrientationInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39023,1
    - Dst: PixelTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39025,1
    - Dst: PlaneSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39027,1
    - Dst: PlaneSensor2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39029,1
    - Dst: PointLight_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39031,1
    - Dst: PointSet_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39033,1
    - Dst: PointSet2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39035,1
    - Dst: PositionInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39037,1
    - Dst: PositionInterpolator2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39039,1
    - Dst: ProximitySensor2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39041,1
    - Dst: ProximitySensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39043,1
    - Dst: QuantizationParameter_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39045,1
    - Dst: Rectangle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39047,1
    - Dst: ScalarInterpolator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39049,1
    - Dst: Script_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39051,1
    - Dst: Shape_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39053,1
    - Dst: Sound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39055,1
    - Dst: Sound2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39057,1
    - Dst: Sphere_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39059,1
    - Dst: SphereSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39061,1
    - Dst: SpotLight_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39063,1
    - Dst: Switch_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39065,1
    - Dst: TermCap_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39067,1
    - Dst: Text_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39069,1
    - Dst: TextureCoordinate_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39071,1
    - Dst: TextureTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39073,1
    - Dst: TimeSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39075,1
    - Dst: TouchSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39077,1
    - Dst: Transform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39079,1
    - Dst: Transform2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39081,1
    - Dst: Valuator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39083,1
    - Dst: Viewpoint_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39085,1
    - Dst: VisibilitySensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39087,1
    - Dst: Viseme_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39089,1
    - Dst: WorldInfo_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39091,1
    - Dst: AcousticMaterial_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39093,1
    - Dst: AcousticScene_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39095,1
    - Dst: ApplicationWindow_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39097,1
    - Dst: BAP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39099,1
    - Dst: BDP_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39101,1
    - Dst: Body_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39103,1
    - Dst: BodyDefTable_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39105,1
    - Dst: BodySegmentConnectionHint_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39107,1
    - Dst: DirectiveSound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39109,1
    - Dst: Hierarchical3DMesh_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39111,1
    - Dst: MaterialKey_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39113,1
    - Dst: PerceptualParameters_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39115,1
    - Dst: TemporalTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39117,1
    - Dst: TemporalGroup_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39119,1
    - Dst: ServerCommand_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39121,1
    - Dst: InputSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39123,1
    - Dst: MatteTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39125,1
    - Dst: MediaBuffer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39127,1
    - Dst: MediaControl_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39129,1
    - Dst: MediaSensor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39131,1
    - Dst: BitWrapper_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39133,1
    - Dst: CoordinateInterpolator4D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39135,1
    - Dst: DepthImage_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39137,1
    - Dst: FFD_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39139,1
    - Dst: Implicit_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39141,1
    - Dst: XXLFM_Appearance_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39143,1
    - Dst: XXLFM_BlendList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39145,1
    - Dst: XXLFM_FrameList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39147,1
    - Dst: XXLFM_LightMap_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39149,1
    - Dst: XXLFM_SurfaceMapList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39151,1
    - Dst: XXLFM_ViewMapList_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39153,1
    - Dst: MeshGrid_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39155,1
    - Dst: NonLinearDeformer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39157,1
    - Dst: NurbsCurve_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39159,1
    - Dst: NurbsCurve2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39161,1
    - Dst: NurbsSurface_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39163,1
    - Dst: OctreeImage_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39165,1
    - Dst: XXParticles_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39167,1
    - Dst: XXParticleInitBox_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39169,1
    - Dst: XXPlanarObstacle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39171,1
    - Dst: XXPointAttractor_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39173,1
    - Dst: PointTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39175,1
    - Dst: PositionAnimator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39177,1
    - Dst: PositionAnimator2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39179,1
    - Dst: PositionInterpolator4D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39181,1
    - Dst: ProceduralTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39183,1
    - Dst: Quadric_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39185,1
    - Dst: SBBone_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39187,1
    - Dst: SBMuscle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39189,1
    - Dst: SBSegment_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39191,1
    - Dst: SBSite_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39193,1
    - Dst: SBSkinnedModel_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39195,1
    - Dst: SBVCAnimation_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39197,1
    - Dst: ScalarAnimator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39199,1
    - Dst: SimpleTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39201,1
    - Dst: SolidRep_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39203,1
    - Dst: SubdivisionSurface_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39205,1
    - Dst: SubdivSurfaceSector_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39207,1
    - Dst: WaveletSubdivisionSurface_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39209,1
    - Dst: Clipper2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39211,1
    - Dst: ColorTransform_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39213,1
    - Dst: Ellipse_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39215,1
    - Dst: LinearGradient_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39217,1
    - Dst: PathLayout_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39219,1
    - Dst: RadialGradient_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39221,1
    - Dst: SynthesizedTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39223,1
    - Dst: TransformMatrix2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39225,1
    - Dst: Viewport_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39227,1
    - Dst: XCurve2D_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39229,1
    - Dst: XFontStyle_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39231,1
    - Dst: XLineProperties_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39233,1
    - Dst: AdvancedAudioBuffer_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39235,1
    - Dst: AudioChannelConfig_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39237,1
    - Dst: DepthImageV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39239,1
    - Dst: MorphShape_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39241,1
    - Dst: MultiTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39243,1
    - Dst: PointTextureV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39245,1
    - Dst: SBVCAnimationV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39247,1
    - Dst: SimpleTextureV2_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39249,1
    - Dst: SurroundingSound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39251,1
    - Dst: Transform3DAudio_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39253,1
    - Dst: WideSound_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39255,1
    - Dst: ScoreShape_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39257,1
    - Dst: MusicScore_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39259,1
    - Dst: FootPrintSetNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39261,1
    - Dst: FootPrintNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39263,1
    - Dst: BuildingPartNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39265,1
    - Dst: RoofNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39267,1
    - Dst: FacadeNode_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39269,1
    - Dst: Shadow_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39271,1
    - Dst: CacheTexture_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39273,1
    - Dst: EnvironmentTest_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39275,1
    - Dst: KeyNavigator_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39277,1
    - Dst: SpacePartition_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39279,1
    - Dst: Storage_get_field_index
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39281,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: 39285
      start: 38889
    functionDepth: 1
    functionLinenumber: 38889
    functionLinenumberEnd: 39285
    functionName: gf_sg_mpeg4_node_get_field_index
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - Shadow_get_field_index
    - FaceDefTransform_get_field_index
    - Inline_get_field_index
    - XXLFM_FrameList_get_field_index
    - Material2D_get_field_index
    - XLineProperties_get_field_index
    - FIT_get_field_index
    - NormalInterpolator_get_field_index
    - AcousticMaterial_get_field_index
    - Group_get_field_index
    - Color_get_field_index
    - DirectiveSound_get_field_index
    - SimpleTextureV2_get_field_index
    - PlaneSensor_get_field_index
    - DepthImage_get_field_index
    - Layer3D_get_field_index
    - TextureTransform_get_field_index
    - ProximitySensor2D_get_field_index
    - BodySegmentConnectionHint_get_field_index
    - MusicScore_get_field_index
    - Coordinate2D_get_field_index
    - AudioFX_get_field_index
    - VisibilitySensor_get_field_index
    - Sound_get_field_index
    - XCurve2D_get_field_index
    - MediaBuffer_get_field_index
    - XXPointAttractor_get_field_index
    - TemporalGroup_get_field_index
    - NurbsCurve_get_field_index
    - PointTextureV2_get_field_index
    - PointSet2D_get_field_index
    - IndexedFaceSet2D_get_field_index
    - Rectangle_get_field_index
    - MediaControl_get_field_index
    - CylinderSensor_get_field_index
    - Switch_get_field_index
    - FacadeNode_get_field_index
    - Text_get_field_index
    - Transform3DAudio_get_field_index
    - ProximitySensor_get_field_index
    - XXParticles_get_field_index
    - PositionAnimator2D_get_field_index
    - KeyNavigator_get_field_index
    - Cylinder_get_field_index
    - AudioMix_get_field_index
    - AnimationStream_get_field_index
    - FaceDefTables_get_field_index
    - Transform_get_field_index
    - TouchSensor_get_field_index
    - Hierarchical3DMesh_get_field_index
    - Ellipse_get_field_index
    - OrderedGroup_get_field_index
    - CompositeTexture3D_get_field_index
    - FFD_get_field_index
    - MultiTexture_get_field_index
    - BuildingPartNode_get_field_index
    - TextureCoordinate_get_field_index
    - SBVCAnimationV2_get_field_index
    - Circle_get_field_index
    - XXLFM_BlendList_get_field_index
    - Fog_get_field_index
    - IndexedFaceSet_get_field_index
    - LineProperties_get_field_index
    - PointSet_get_field_index
    - PositionInterpolator2D_get_field_index
    - CompositeTexture2D_get_field_index
    - Viewpoint_get_field_index
    - ScalarInterpolator_get_field_index
    - Script_get_field_index
    - SpotLight_get_field_index
    - SBVCAnimation_get_field_index
    - CacheTexture_get_field_index
    - WideSound_get_field_index
    - DepthImageV2_get_field_index
    - OrientationInterpolator_get_field_index
    - TemporalTransform_get_field_index
    - FootPrintSetNode_get_field_index
    - Cone_get_field_index
    - AdvancedAudioBuffer_get_field_index
    - RadialGradient_get_field_index
    - EnvironmentTest_get_field_index
    - ServerCommand_get_field_index
    - Quadric_get_field_index
    - TermCap_get_field_index
    - MeshGrid_get_field_index
    - XXLFM_LightMap_get_field_index
    - ProceduralTexture_get_field_index
    - MatteTexture_get_field_index
    - AudioClip_get_field_index
    - SBSkinnedModel_get_field_index
    - XXLFM_ViewMapList_get_field_index
    - LOD_get_field_index
    - SBBone_get_field_index
    - Viewport_get_field_index
    - Billboard_get_field_index
    - Layout_get_field_index
    - RoofNode_get_field_index
    - ListeningPoint_get_field_index
    - Face_get_field_index
    - Coordinate_get_field_index
    - MovieTexture_get_field_index
    - Background2D_get_field_index
    - DiscSensor_get_field_index
    - Storage_get_field_index
    - XFontStyle_get_field_index
    - Material_get_field_index
    - FontStyle_get_field_index
    - SimpleTexture_get_field_index
    - BAP_get_field_index
    - PerceptualParameters_get_field_index
    - AudioSwitch_get_field_index
    - AudioSource_get_field_index
    - SBSite_get_field_index
    - Layer2D_get_field_index
    - Viseme_get_field_index
    - Curve2D_get_field_index
    - Implicit_get_field_index
    - OctreeImage_get_field_index
    - InputSensor_get_field_index
    - PathLayout_get_field_index
    - IndexedLineSet2D_get_field_index
    - ScoreShape_get_field_index
    - PositionInterpolator4D_get_field_index
    - BodyDefTable_get_field_index
    - Background_get_field_index
    - QuantizationParameter_get_field_index
    - FDP_get_field_index
    - Anchor_get_field_index
    - Collision_get_field_index
    - SolidRep_get_field_index
    - MorphShape_get_field_index
    - PointTexture_get_field_index
    - BDP_get_field_index
    - NonLinearDeformer_get_field_index
    - WaveletSubdivisionSurface_get_field_index
    - DirectionalLight_get_field_index
    - Conditional_get_field_index
    - MaterialKey_get_field_index
    - Transform2D_get_field_index
    - AudioBuffer_get_field_index
    - ApplicationWindow_get_field_index
    - SBSegment_get_field_index
    - LinearGradient_get_field_index
    - Body_get_field_index
    - Extrusion_get_field_index
    - PositionInterpolator_get_field_index
    - AcousticScene_get_field_index
    - MediaSensor_get_field_index
    - SBMuscle_get_field_index
    - NurbsSurface_get_field_index
    - SubdivSurfaceSector_get_field_index
    - TransformMatrix2D_get_field_index
    - Appearance_get_field_index
    - SurroundingSound_get_field_index
    - CoordinateInterpolator4D_get_field_index
    - Shape_get_field_index
    - XXLFM_Appearance_get_field_index
    - XXParticleInitBox_get_field_index
    - SphereSensor_get_field_index
    - SpacePartition_get_field_index
    - Sound2D_get_field_index
    - WorldInfo_get_field_index
    - Box_get_field_index
    - CoordinateInterpolator_get_field_index
    - Form_get_field_index
    - AudioDelay_get_field_index
    - AudioChannelConfig_get_field_index
    - PlaneSensor2D_get_field_index
    - PixelTexture_get_field_index
    - ColorTransform_get_field_index
    - PositionAnimator_get_field_index
    - Valuator_get_field_index
    - NavigationInfo_get_field_index
    - PointLight_get_field_index
    - TimeSensor_get_field_index
    - ElevationGrid_get_field_index
    - ScalarAnimator_get_field_index
    - Bitmap_get_field_index
    - XXPlanarObstacle_get_field_index
    - ImageTexture_get_field_index
    - NurbsCurve2D_get_field_index
    - FaceDefMesh_get_field_index
    - Sphere_get_field_index
    - Clipper2D_get_field_index
    - FootPrintNode_get_field_index
    - Normal_get_field_index
    - XXLFM_SurfaceMapList_get_field_index
    - BitWrapper_get_field_index
    - Expression_get_field_index
    - SubdivisionSurface_get_field_index
    - CoordinateInterpolator2D_get_field_index
    - IndexedLineSet_get_field_index
    - FAP_get_field_index
    - ColorInterpolator_get_field_index
    - SynthesizedTexture_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:39291,1
    - Dst: AnimationStream_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39293,1
    - Dst: Appearance_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39295,1
    - Dst: AudioBuffer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39297,1
    - Dst: AudioClip_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39299,1
    - Dst: AudioDelay_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39301,1
    - Dst: AudioFX_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39303,1
    - Dst: AudioMix_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39305,1
    - Dst: AudioSource_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39307,1
    - Dst: AudioSwitch_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39309,1
    - Dst: Background_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39311,1
    - Dst: Background2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39313,1
    - Dst: Billboard_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39315,1
    - Dst: Bitmap_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39317,1
    - Dst: Box_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39319,1
    - Dst: Circle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39321,1
    - Dst: Collision_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39323,1
    - Dst: Color_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39325,1
    - Dst: ColorInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39327,1
    - Dst: CompositeTexture2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39329,1
    - Dst: CompositeTexture3D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39331,1
    - Dst: Conditional_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39333,1
    - Dst: Cone_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39335,1
    - Dst: Coordinate_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39337,1
    - Dst: Coordinate2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39339,1
    - Dst: CoordinateInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39341,1
    - Dst: CoordinateInterpolator2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39343,1
    - Dst: Curve2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39345,1
    - Dst: Cylinder_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39347,1
    - Dst: CylinderSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39349,1
    - Dst: DirectionalLight_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39351,1
    - Dst: DiscSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39353,1
    - Dst: ElevationGrid_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39355,1
    - Dst: Expression_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39357,1
    - Dst: Extrusion_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39359,1
    - Dst: Face_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39361,1
    - Dst: FaceDefMesh_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39363,1
    - Dst: FaceDefTables_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39365,1
    - Dst: FaceDefTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39367,1
    - Dst: FAP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39369,1
    - Dst: FDP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39371,1
    - Dst: FIT_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39373,1
    - Dst: Fog_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39375,1
    - Dst: FontStyle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39377,1
    - Dst: Form_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39379,1
    - Dst: Group_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39381,1
    - Dst: ImageTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39383,1
    - Dst: IndexedFaceSet_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39385,1
    - Dst: IndexedFaceSet2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39387,1
    - Dst: IndexedLineSet_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39389,1
    - Dst: IndexedLineSet2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39391,1
    - Dst: Inline_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39393,1
    - Dst: LOD_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39395,1
    - Dst: Layer2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39397,1
    - Dst: Layer3D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39399,1
    - Dst: Layout_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39401,1
    - Dst: LineProperties_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39403,1
    - Dst: ListeningPoint_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39405,1
    - Dst: Material_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39407,1
    - Dst: Material2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39409,1
    - Dst: MovieTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39411,1
    - Dst: NavigationInfo_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39413,1
    - Dst: Normal_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39415,1
    - Dst: NormalInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39417,1
    - Dst: OrderedGroup_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39419,1
    - Dst: OrientationInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39421,1
    - Dst: PixelTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39423,1
    - Dst: PlaneSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39425,1
    - Dst: PlaneSensor2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39427,1
    - Dst: PointLight_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39429,1
    - Dst: PointSet_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39431,1
    - Dst: PointSet2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39433,1
    - Dst: PositionInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39435,1
    - Dst: PositionInterpolator2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39437,1
    - Dst: ProximitySensor2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39439,1
    - Dst: ProximitySensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39441,1
    - Dst: QuantizationParameter_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39443,1
    - Dst: Rectangle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39445,1
    - Dst: ScalarInterpolator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39447,1
    - Dst: Script_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39449,1
    - Dst: Shape_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39451,1
    - Dst: Sound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39453,1
    - Dst: Sound2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39455,1
    - Dst: Sphere_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39457,1
    - Dst: SphereSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39459,1
    - Dst: SpotLight_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39461,1
    - Dst: Switch_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39463,1
    - Dst: TermCap_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39465,1
    - Dst: Text_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39467,1
    - Dst: TextureCoordinate_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39469,1
    - Dst: TextureTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39471,1
    - Dst: TimeSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39473,1
    - Dst: TouchSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39475,1
    - Dst: Transform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39477,1
    - Dst: Transform2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39479,1
    - Dst: Valuator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39481,1
    - Dst: Viewpoint_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39483,1
    - Dst: VisibilitySensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39485,1
    - Dst: Viseme_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39487,1
    - Dst: WorldInfo_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39489,1
    - Dst: AcousticMaterial_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39491,1
    - Dst: AcousticScene_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39493,1
    - Dst: ApplicationWindow_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39495,1
    - Dst: BAP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39497,1
    - Dst: BDP_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39499,1
    - Dst: Body_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39501,1
    - Dst: BodyDefTable_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39503,1
    - Dst: BodySegmentConnectionHint_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39505,1
    - Dst: DirectiveSound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39507,1
    - Dst: Hierarchical3DMesh_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39509,1
    - Dst: MaterialKey_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39511,1
    - Dst: PerceptualParameters_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39513,1
    - Dst: TemporalTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39515,1
    - Dst: TemporalGroup_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39517,1
    - Dst: ServerCommand_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39519,1
    - Dst: InputSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39521,1
    - Dst: MatteTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39523,1
    - Dst: MediaBuffer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39525,1
    - Dst: MediaControl_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39527,1
    - Dst: MediaSensor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39529,1
    - Dst: BitWrapper_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39531,1
    - Dst: CoordinateInterpolator4D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39533,1
    - Dst: DepthImage_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39535,1
    - Dst: FFD_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39537,1
    - Dst: Implicit_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39539,1
    - Dst: XXLFM_Appearance_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39541,1
    - Dst: XXLFM_BlendList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39543,1
    - Dst: XXLFM_FrameList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39545,1
    - Dst: XXLFM_LightMap_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39547,1
    - Dst: XXLFM_SurfaceMapList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39549,1
    - Dst: XXLFM_ViewMapList_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39551,1
    - Dst: MeshGrid_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39553,1
    - Dst: NonLinearDeformer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39555,1
    - Dst: NurbsCurve_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39557,1
    - Dst: NurbsCurve2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39559,1
    - Dst: NurbsSurface_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39561,1
    - Dst: OctreeImage_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39563,1
    - Dst: XXParticles_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39565,1
    - Dst: XXParticleInitBox_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39567,1
    - Dst: XXPlanarObstacle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39569,1
    - Dst: XXPointAttractor_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39571,1
    - Dst: PointTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39573,1
    - Dst: PositionAnimator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39575,1
    - Dst: PositionAnimator2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39577,1
    - Dst: PositionInterpolator4D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39579,1
    - Dst: ProceduralTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39581,1
    - Dst: Quadric_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39583,1
    - Dst: SBBone_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39585,1
    - Dst: SBMuscle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39587,1
    - Dst: SBSegment_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39589,1
    - Dst: SBSite_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39591,1
    - Dst: SBSkinnedModel_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39593,1
    - Dst: SBVCAnimation_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39595,1
    - Dst: ScalarAnimator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39597,1
    - Dst: SimpleTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39599,1
    - Dst: SolidRep_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39601,1
    - Dst: SubdivisionSurface_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39603,1
    - Dst: SubdivSurfaceSector_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39605,1
    - Dst: WaveletSubdivisionSurface_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39607,1
    - Dst: Clipper2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39609,1
    - Dst: ColorTransform_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39611,1
    - Dst: Ellipse_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39613,1
    - Dst: LinearGradient_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39615,1
    - Dst: PathLayout_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39617,1
    - Dst: RadialGradient_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39619,1
    - Dst: SynthesizedTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39621,1
    - Dst: TransformMatrix2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39623,1
    - Dst: Viewport_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39625,1
    - Dst: XCurve2D_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39627,1
    - Dst: XFontStyle_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39629,1
    - Dst: XLineProperties_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39631,1
    - Dst: AdvancedAudioBuffer_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39633,1
    - Dst: AudioChannelConfig_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39635,1
    - Dst: DepthImageV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39637,1
    - Dst: MorphShape_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39639,1
    - Dst: MultiTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39641,1
    - Dst: PointTextureV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39643,1
    - Dst: SBVCAnimationV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39645,1
    - Dst: SimpleTextureV2_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39647,1
    - Dst: SurroundingSound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39649,1
    - Dst: Transform3DAudio_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39651,1
    - Dst: WideSound_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39653,1
    - Dst: ScoreShape_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39655,1
    - Dst: MusicScore_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39657,1
    - Dst: FootPrintSetNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39659,1
    - Dst: FootPrintNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39661,1
    - Dst: BuildingPartNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39663,1
    - Dst: RoofNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39665,1
    - Dst: FacadeNode_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39667,1
    - Dst: Shadow_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39669,1
    - Dst: CacheTexture_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39671,1
    - Dst: EnvironmentTest_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39673,1
    - Dst: KeyNavigator_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39675,1
    - Dst: SpacePartition_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39677,1
    - Dst: Storage_get_aq_info
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39679,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: 39683
      start: 39287
    functionDepth: 2
    functionLinenumber: 39287
    functionLinenumberEnd: 39683
    functionName: gf_sg_mpeg4_node_get_aq_info
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 1
    functionsReached:
    - OrderedGroup_get_aq_info
    - Viewport_get_aq_info
    - SimpleTexture_get_aq_info
    - Conditional_get_aq_info
    - BitWrapper_get_aq_info
    - PositionInterpolator4D_get_aq_info
    - ProceduralTexture_get_aq_info
    - AnimationStream_get_aq_info
    - PointSet_get_aq_info
    - Shape_get_aq_info
    - DepthImageV2_get_aq_info
    - FootPrintSetNode_get_aq_info
    - XXPointAttractor_get_aq_info
    - FFD_get_aq_info
    - FIT_get_aq_info
    - PlaneSensor_get_aq_info
    - Circle_get_aq_info
    - XXParticleInitBox_get_aq_info
    - Cylinder_get_aq_info
    - DiscSensor_get_aq_info
    - WideSound_get_aq_info
    - PositionInterpolator2D_get_aq_info
    - PointSet2D_get_aq_info
    - TimeSensor_get_aq_info
    - AudioSwitch_get_aq_info
    - TextureCoordinate_get_aq_info
    - SBBone_get_aq_info
    - SBSkinnedModel_get_aq_info
    - XLineProperties_get_aq_info
    - Sound2D_get_aq_info
    - PointTextureV2_get_aq_info
    - DirectiveSound_get_aq_info
    - Cone_get_aq_info
    - Transform2D_get_aq_info
    - OrientationInterpolator_get_aq_info
    - PointTexture_get_aq_info
    - Clipper2D_get_aq_info
    - MatteTexture_get_aq_info
    - Anchor_get_aq_info
    - ColorTransform_get_aq_info
    - KeyNavigator_get_aq_info
    - ServerCommand_get_aq_info
    - Storage_get_aq_info
    - FaceDefMesh_get_aq_info
    - Billboard_get_aq_info
    - FDP_get_aq_info
    - ScalarInterpolator_get_aq_info
    - Switch_get_aq_info
    - NurbsSurface_get_aq_info
    - Coordinate_get_aq_info
    - NurbsCurve_get_aq_info
    - SimpleTextureV2_get_aq_info
    - SBSegment_get_aq_info
    - CacheTexture_get_aq_info
    - Text_get_aq_info
    - BuildingPartNode_get_aq_info
    - Appearance_get_aq_info
    - NavigationInfo_get_aq_info
    - Sphere_get_aq_info
    - WaveletSubdivisionSurface_get_aq_info
    - FaceDefTables_get_aq_info
    - Material2D_get_aq_info
    - QuantizationParameter_get_aq_info
    - Body_get_aq_info
    - Color_get_aq_info
    - Viewpoint_get_aq_info
    - XXLFM_FrameList_get_aq_info
    - XXPlanarObstacle_get_aq_info
    - ScalarAnimator_get_aq_info
    - Face_get_aq_info
    - ApplicationWindow_get_aq_info
    - MorphShape_get_aq_info
    - MeshGrid_get_aq_info
    - OctreeImage_get_aq_info
    - Background2D_get_aq_info
    - LOD_get_aq_info
    - NormalInterpolator_get_aq_info
    - EnvironmentTest_get_aq_info
    - Rectangle_get_aq_info
    - CoordinateInterpolator4D_get_aq_info
    - DirectionalLight_get_aq_info
    - XXLFM_Appearance_get_aq_info
    - InputSensor_get_aq_info
    - ElevationGrid_get_aq_info
    - PixelTexture_get_aq_info
    - XFontStyle_get_aq_info
    - ColorInterpolator_get_aq_info
    - AudioDelay_get_aq_info
    - Implicit_get_aq_info
    - AudioChannelConfig_get_aq_info
    - AudioMix_get_aq_info
    - Hierarchical3DMesh_get_aq_info
    - TextureTransform_get_aq_info
    - Viseme_get_aq_info
    - Coordinate2D_get_aq_info
    - MediaControl_get_aq_info
    - PerceptualParameters_get_aq_info
    - TouchSensor_get_aq_info
    - TemporalGroup_get_aq_info
    - PositionAnimator_get_aq_info
    - FAP_get_aq_info
    - Quadric_get_aq_info
    - AdvancedAudioBuffer_get_aq_info
    - AudioSource_get_aq_info
    - DepthImage_get_aq_info
    - Form_get_aq_info
    - SBVCAnimation_get_aq_info
    - MultiTexture_get_aq_info
    - Valuator_get_aq_info
    - NonLinearDeformer_get_aq_info
    - IndexedLineSet2D_get_aq_info
    - SurroundingSound_get_aq_info
    - Fog_get_aq_info
    - Ellipse_get_aq_info
    - Layer2D_get_aq_info
    - AcousticMaterial_get_aq_info
    - Shadow_get_aq_info
    - NurbsCurve2D_get_aq_info
    - FontStyle_get_aq_info
    - BodySegmentConnectionHint_get_aq_info
    - MediaSensor_get_aq_info
    - MusicScore_get_aq_info
    - Inline_get_aq_info
    - AudioBuffer_get_aq_info
    - TransformMatrix2D_get_aq_info
    - SpacePartition_get_aq_info
    - Normal_get_aq_info
    - MovieTexture_get_aq_info
    - Transform_get_aq_info
    - SBVCAnimationV2_get_aq_info
    - LineProperties_get_aq_info
    - RoofNode_get_aq_info
    - XCurve2D_get_aq_info
    - Group_get_aq_info
    - XXLFM_BlendList_get_aq_info
    - MediaBuffer_get_aq_info
    - TermCap_get_aq_info
    - TemporalTransform_get_aq_info
    - Transform3DAudio_get_aq_info
    - IndexedFaceSet2D_get_aq_info
    - CoordinateInterpolator2D_get_aq_info
    - AcousticScene_get_aq_info
    - BDP_get_aq_info
    - Box_get_aq_info
    - VisibilitySensor_get_aq_info
    - SBMuscle_get_aq_info
    - SubdivSurfaceSector_get_aq_info
    - SpotLight_get_aq_info
    - XXLFM_SurfaceMapList_get_aq_info
    - FaceDefTransform_get_aq_info
    - Script_get_aq_info
    - SolidRep_get_aq_info
    - BAP_get_aq_info
    - RadialGradient_get_aq_info
    - SphereSensor_get_aq_info
    - FootPrintNode_get_aq_info
    - Curve2D_get_aq_info
    - SBSite_get_aq_info
    - CoordinateInterpolator_get_aq_info
    - AudioFX_get_aq_info
    - AudioClip_get_aq_info
    - LinearGradient_get_aq_info
    - Material_get_aq_info
    - Bitmap_get_aq_info
    - Extrusion_get_aq_info
    - PlaneSensor2D_get_aq_info
    - SubdivisionSurface_get_aq_info
    - Background_get_aq_info
    - PathLayout_get_aq_info
    - ScoreShape_get_aq_info
    - CylinderSensor_get_aq_info
    - IndexedLineSet_get_aq_info
    - ImageTexture_get_aq_info
    - Collision_get_aq_info
    - Layout_get_aq_info
    - CompositeTexture2D_get_aq_info
    - ListeningPoint_get_aq_info
    - FacadeNode_get_aq_info
    - XXParticles_get_aq_info
    - WorldInfo_get_aq_info
    - Layer3D_get_aq_info
    - PositionInterpolator_get_aq_info
    - MaterialKey_get_aq_info
    - Sound_get_aq_info
    - ProximitySensor2D_get_aq_info
    - IndexedFaceSet_get_aq_info
    - SynthesizedTexture_get_aq_info
    - BodyDefTable_get_aq_info
    - CompositeTexture3D_get_aq_info
    - XXLFM_LightMap_get_aq_info
    - PositionAnimator2D_get_aq_info
    - XXLFM_ViewMapList_get_aq_info
    - PointLight_get_aq_info
    - ProximitySensor_get_aq_info
    - Expression_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: 39797
      start: 39685
    functionDepth: 0
    functionLinenumber: 39685
    functionLinenumberEnd: 39797
    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:39804,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39805,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39806,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39807,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39808,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39809,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39810,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39811,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39812,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39813,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:39814,1
    - 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
    CyclomaticComplexity: 196
    EdgeCount: 196
    ICount: 394
    argCount: 1
    argNames:
    - node_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40000
      start: 39800
    functionDepth: 0
    functionLinenumber: 39800
    functionLinenumberEnd: 40000
    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:40006,1
    - Dst: AnimationStream_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40008,1
    - Dst: Appearance_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40010,1
    - Dst: AudioBuffer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40012,1
    - Dst: AudioClip_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40014,1
    - Dst: AudioDelay_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40016,1
    - Dst: AudioFX_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40018,1
    - Dst: AudioMix_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40020,1
    - Dst: AudioSource_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40022,1
    - Dst: AudioSwitch_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40024,1
    - Dst: Background_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40026,1
    - Dst: Background2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40028,1
    - Dst: Billboard_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40030,1
    - Dst: Bitmap_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40032,1
    - Dst: Box_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40034,1
    - Dst: Circle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40036,1
    - Dst: Collision_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40038,1
    - Dst: Color_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40040,1
    - Dst: ColorInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40042,1
    - Dst: CompositeTexture2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40044,1
    - Dst: CompositeTexture3D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40046,1
    - Dst: Conditional_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40048,1
    - Dst: Cone_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40050,1
    - Dst: Coordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40052,1
    - Dst: Coordinate2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40054,1
    - Dst: CoordinateInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40056,1
    - Dst: CoordinateInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40058,1
    - Dst: Curve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40060,1
    - Dst: Cylinder_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40062,1
    - Dst: CylinderSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40064,1
    - Dst: DirectionalLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40066,1
    - Dst: DiscSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40068,1
    - Dst: ElevationGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40070,1
    - Dst: Expression_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40072,1
    - Dst: Extrusion_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40074,1
    - Dst: Face_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40076,1
    - Dst: FaceDefMesh_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40078,1
    - Dst: FaceDefTables_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40080,1
    - Dst: FaceDefTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40082,1
    - Dst: FAP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40084,1
    - Dst: FDP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40086,1
    - Dst: FIT_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40088,1
    - Dst: Fog_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40090,1
    - Dst: FontStyle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40092,1
    - Dst: Form_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40094,1
    - Dst: Group_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40096,1
    - Dst: ImageTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40098,1
    - Dst: IndexedFaceSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40100,1
    - Dst: IndexedFaceSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40102,1
    - Dst: IndexedLineSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40104,1
    - Dst: IndexedLineSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40106,1
    - Dst: Inline_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40108,1
    - Dst: LOD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40110,1
    - Dst: Layer2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40112,1
    - Dst: Layer3D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40114,1
    - Dst: Layout_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40116,1
    - Dst: LineProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40118,1
    - Dst: ListeningPoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40120,1
    - Dst: Material_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40122,1
    - Dst: Material2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40124,1
    - Dst: MovieTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40126,1
    - Dst: NavigationInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40128,1
    - Dst: Normal_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40130,1
    - Dst: NormalInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40132,1
    - Dst: OrderedGroup_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40134,1
    - Dst: OrientationInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40136,1
    - Dst: PixelTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40138,1
    - Dst: PlaneSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40140,1
    - Dst: PlaneSensor2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40142,1
    - Dst: PointLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40144,1
    - Dst: PointSet_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40146,1
    - Dst: PointSet2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40148,1
    - Dst: PositionInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40150,1
    - Dst: PositionInterpolator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40152,1
    - Dst: ProximitySensor2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40154,1
    - Dst: ProximitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40156,1
    - Dst: QuantizationParameter_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40158,1
    - Dst: Rectangle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40160,1
    - Dst: ScalarInterpolator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40162,1
    - Dst: Script_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40166,1
    - Dst: Shape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40169,1
    - Dst: Sound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40171,1
    - Dst: Sound2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40173,1
    - Dst: Sphere_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40175,1
    - Dst: SphereSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40177,1
    - Dst: SpotLight_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40179,1
    - Dst: Switch_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40181,1
    - Dst: TermCap_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40183,1
    - Dst: Text_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40185,1
    - Dst: TextureCoordinate_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40187,1
    - Dst: TextureTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40189,1
    - Dst: TimeSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40191,1
    - Dst: TouchSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40193,1
    - Dst: Transform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40195,1
    - Dst: Transform2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40197,1
    - Dst: Valuator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40199,1
    - Dst: Viewpoint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40201,1
    - Dst: VisibilitySensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40203,1
    - Dst: Viseme_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40205,1
    - Dst: WorldInfo_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40207,1
    - Dst: AcousticMaterial_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40209,1
    - Dst: AcousticScene_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40211,1
    - Dst: ApplicationWindow_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40213,1
    - Dst: BAP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40215,1
    - Dst: BDP_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40217,1
    - Dst: Body_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40219,1
    - Dst: BodyDefTable_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40221,1
    - Dst: BodySegmentConnectionHint_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40223,1
    - Dst: DirectiveSound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40225,1
    - Dst: Hierarchical3DMesh_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40227,1
    - Dst: MaterialKey_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40229,1
    - Dst: PerceptualParameters_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40231,1
    - Dst: TemporalTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40233,1
    - Dst: TemporalGroup_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40235,1
    - Dst: ServerCommand_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40237,1
    - Dst: InputSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40239,1
    - Dst: MatteTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40241,1
    - Dst: MediaBuffer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40243,1
    - Dst: MediaControl_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40245,1
    - Dst: MediaSensor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40247,1
    - Dst: BitWrapper_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40249,1
    - Dst: CoordinateInterpolator4D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40251,1
    - Dst: DepthImage_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40253,1
    - Dst: FFD_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40255,1
    - Dst: Implicit_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40257,1
    - Dst: XXLFM_Appearance_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40259,1
    - Dst: XXLFM_BlendList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40261,1
    - Dst: XXLFM_FrameList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40263,1
    - Dst: XXLFM_LightMap_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40265,1
    - Dst: XXLFM_SurfaceMapList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40267,1
    - Dst: XXLFM_ViewMapList_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40269,1
    - Dst: MeshGrid_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40271,1
    - Dst: NonLinearDeformer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40273,1
    - Dst: NurbsCurve_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40275,1
    - Dst: NurbsCurve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40277,1
    - Dst: NurbsSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40279,1
    - Dst: OctreeImage_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40281,1
    - Dst: XXParticles_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40283,1
    - Dst: XXParticleInitBox_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40285,1
    - Dst: XXPlanarObstacle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40287,1
    - Dst: XXPointAttractor_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40289,1
    - Dst: PointTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40291,1
    - Dst: PositionAnimator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40293,1
    - Dst: PositionAnimator2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40295,1
    - Dst: PositionInterpolator4D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40297,1
    - Dst: ProceduralTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40299,1
    - Dst: Quadric_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40301,1
    - Dst: SBBone_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40303,1
    - Dst: SBMuscle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40305,1
    - Dst: SBSegment_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40307,1
    - Dst: SBSite_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40309,1
    - Dst: SBSkinnedModel_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40311,1
    - Dst: SBVCAnimation_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40313,1
    - Dst: ScalarAnimator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40315,1
    - Dst: SimpleTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40317,1
    - Dst: SolidRep_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40319,1
    - Dst: SubdivisionSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40321,1
    - Dst: SubdivSurfaceSector_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40323,1
    - Dst: WaveletSubdivisionSurface_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40325,1
    - Dst: Clipper2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40327,1
    - Dst: ColorTransform_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40329,1
    - Dst: Ellipse_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40331,1
    - Dst: LinearGradient_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40333,1
    - Dst: PathLayout_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40335,1
    - Dst: RadialGradient_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40337,1
    - Dst: SynthesizedTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40339,1
    - Dst: TransformMatrix2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40341,1
    - Dst: Viewport_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40343,1
    - Dst: XCurve2D_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40345,1
    - Dst: XFontStyle_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40347,1
    - Dst: XLineProperties_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40349,1
    - Dst: AdvancedAudioBuffer_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40351,1
    - Dst: AudioChannelConfig_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40353,1
    - Dst: DepthImageV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40355,1
    - Dst: MorphShape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40357,1
    - Dst: MultiTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40359,1
    - Dst: PointTextureV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40361,1
    - Dst: SBVCAnimationV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40363,1
    - Dst: SimpleTextureV2_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40365,1
    - Dst: SurroundingSound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40367,1
    - Dst: Transform3DAudio_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40369,1
    - Dst: WideSound_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40371,1
    - Dst: ScoreShape_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40373,1
    - Dst: MusicScore_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40375,1
    - Dst: FootPrintSetNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40377,1
    - Dst: FootPrintNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40379,1
    - Dst: BuildingPartNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40381,1
    - Dst: RoofNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40383,1
    - Dst: FacadeNode_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40385,1
    - Dst: Shadow_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40387,1
    - Dst: CacheTexture_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40389,1
    - Dst: EnvironmentTest_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40391,1
    - Dst: KeyNavigator_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40393,1
    - Dst: SpacePartition_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40395,1
    - Dst: Storage_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/mpeg4_nodes.c:40397,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 395
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40401
      start: 40002
    functionDepth: 1
    functionLinenumber: 40002
    functionLinenumberEnd: 40401
    functionName: gf_sg_mpeg4_node_get_field_index_by_name
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_nodes.c
    functionUses: 0
    functionsReached:
    - Sound_get_field_index_by_name
    - MusicScore_get_field_index_by_name
    - Coordinate_get_field_index_by_name
    - DirectiveSound_get_field_index_by_name
    - CoordinateInterpolator_get_field_index_by_name
    - ServerCommand_get_field_index_by_name
    - Cone_get_field_index_by_name
    - PositionInterpolator2D_get_field_index_by_name
    - Box_get_field_index_by_name
    - SBVCAnimation_get_field_index_by_name
    - PointTextureV2_get_field_index_by_name
    - ColorInterpolator_get_field_index_by_name
    - WideSound_get_field_index_by_name
    - ListeningPoint_get_field_index_by_name
    - KeyNavigator_get_field_index_by_name
    - BuildingPartNode_get_field_index_by_name
    - NurbsSurface_get_field_index_by_name
    - DirectionalLight_get_field_index_by_name
    - Inline_get_field_index_by_name
    - Material2D_get_field_index_by_name
    - RadialGradient_get_field_index_by_name
    - IndexedLineSet2D_get_field_index_by_name
    - XXLFM_Appearance_get_field_index_by_name
    - Sound2D_get_field_index_by_name
    - SBMuscle_get_field_index_by_name
    - WorldInfo_get_field_index_by_name
    - Shadow_get_field_index_by_name
    - FontStyle_get_field_index_by_name
    - Sphere_get_field_index_by_name
    - InputSensor_get_field_index_by_name
    - Expression_get_field_index_by_name
    - CompositeTexture2D_get_field_index_by_name
    - ImageTexture_get_field_index_by_name
    - BodySegmentConnectionHint_get_field_index_by_name
    - XXLFM_SurfaceMapList_get_field_index_by_name
    - ScoreShape_get_field_index_by_name
    - MatteTexture_get_field_index_by_name
    - Bitmap_get_field_index_by_name
    - NonLinearDeformer_get_field_index_by_name
    - NurbsCurve_get_field_index_by_name
    - FaceDefMesh_get_field_index_by_name
    - FIT_get_field_index_by_name
    - OrientationInterpolator_get_field_index_by_name
    - TemporalGroup_get_field_index_by_name
    - AudioClip_get_field_index_by_name
    - ProceduralTexture_get_field_index_by_name
    - Extrusion_get_field_index_by_name
    - Anchor_get_field_index_by_name
    - LOD_get_field_index_by_name
    - MorphShape_get_field_index_by_name
    - TemporalTransform_get_field_index_by_name
    - PlaneSensor2D_get_field_index_by_name
    - XXLFM_LightMap_get_field_index_by_name
    - TimeSensor_get_field_index_by_name
    - Layer2D_get_field_index_by_name
    - PixelTexture_get_field_index_by_name
    - Storage_get_field_index_by_name
    - SphereSensor_get_field_index_by_name
    - ProximitySensor2D_get_field_index_by_name
    - FootPrintNode_get_field_index_by_name
    - Billboard_get_field_index_by_name
    - CacheTexture_get_field_index_by_name
    - PointSet2D_get_field_index_by_name
    - Implicit_get_field_index_by_name
    - SimpleTextureV2_get_field_index_by_name
    - Collision_get_field_index_by_name
    - FaceDefTables_get_field_index_by_name
    - Transform_get_field_index_by_name
    - Background_get_field_index_by_name
    - WaveletSubdivisionSurface_get_field_index_by_name
    - PositionAnimator2D_get_field_index_by_name
    - Clipper2D_get_field_index_by_name
    - ScalarAnimator_get_field_index_by_name
    - Script_get_field_index_by_name
    - SBBone_get_field_index_by_name
    - Shape_get_field_index_by_name
    - VisibilitySensor_get_field_index_by_name
    - OrderedGroup_get_field_index_by_name
    - Hierarchical3DMesh_get_field_index_by_name
    - SBSkinnedModel_get_field_index_by_name
    - DepthImage_get_field_index_by_name
    - AcousticMaterial_get_field_index_by_name
    - BodyDefTable_get_field_index_by_name
    - FDP_get_field_index_by_name
    - XXPlanarObstacle_get_field_index_by_name
    - SBSite_get_field_index_by_name
    - PointTexture_get_field_index_by_name
    - EnvironmentTest_get_field_index_by_name
    - TermCap_get_field_index_by_name
    - AudioSource_get_field_index_by_name
    - Conditional_get_field_index_by_name
    - Cylinder_get_field_index_by_name
    - Layer3D_get_field_index_by_name
    - BDP_get_field_index_by_name
    - PositionInterpolator4D_get_field_index_by_name
    - OctreeImage_get_field_index_by_name
    - Quadric_get_field_index_by_name
    - Viewpoint_get_field_index_by_name
    - ColorTransform_get_field_index_by_name
    - TextureTransform_get_field_index_by_name
    - MediaBuffer_get_field_index_by_name
    - DepthImageV2_get_field_index_by_name
    - CompositeTexture3D_get_field_index_by_name
    - ProximitySensor_get_field_index_by_name
    - LineProperties_get_field_index_by_name
    - AudioBuffer_get_field_index_by_name
    - IndexedLineSet_get_field_index_by_name
    - SynthesizedTexture_get_field_index_by_name
    - NavigationInfo_get_field_index_by_name
    - XXPointAttractor_get_field_index_by_name
    - TextureCoordinate_get_field_index_by_name
    - MovieTexture_get_field_index_by_name
    - BAP_get_field_index_by_name
    - CoordinateInterpolator2D_get_field_index_by_name
    - Layout_get_field_index_by_name
    - Transform3DAudio_get_field_index_by_name
    - CylinderSensor_get_field_index_by_name
    - MeshGrid_get_field_index_by_name
    - Circle_get_field_index_by_name
    - Normal_get_field_index_by_name
    - AcousticScene_get_field_index_by_name
    - PositionInterpolator_get_field_index_by_name
    - XXLFM_ViewMapList_get_field_index_by_name
    - Form_get_field_index_by_name
    - QuantizationParameter_get_field_index_by_name
    - XFontStyle_get_field_index_by_name
    - AdvancedAudioBuffer_get_field_index_by_name
    - FaceDefTransform_get_field_index_by_name
    - Curve2D_get_field_index_by_name
    - AudioChannelConfig_get_field_index_by_name
    - XCurve2D_get_field_index_by_name
    - Appearance_get_field_index_by_name
    - PointLight_get_field_index_by_name
    - Switch_get_field_index_by_name
    - PerceptualParameters_get_field_index_by_name
    - Group_get_field_index_by_name
    - SubdivisionSurface_get_field_index_by_name
    - SolidRep_get_field_index_by_name
    - Background2D_get_field_index_by_name
    - MediaSensor_get_field_index_by_name
    - Coordinate2D_get_field_index_by_name
    - SpotLight_get_field_index_by_name
    - Text_get_field_index_by_name
    - Ellipse_get_field_index_by_name
    - AudioFX_get_field_index_by_name
    - SubdivSurfaceSector_get_field_index_by_name
    - MediaControl_get_field_index_by_name
    - Face_get_field_index_by_name
    - BitWrapper_get_field_index_by_name
    - ElevationGrid_get_field_index_by_name
    - PlaneSensor_get_field_index_by_name
    - XXLFM_FrameList_get_field_index_by_name
    - AudioMix_get_field_index_by_name
    - Fog_get_field_index_by_name
    - AudioSwitch_get_field_index_by_name
    - SBSegment_get_field_index_by_name
    - TouchSensor_get_field_index_by_name
    - Viseme_get_field_index_by_name
    - PointSet_get_field_index_by_name
    - Transform2D_get_field_index_by_name
    - DiscSensor_get_field_index_by_name
    - XXLFM_BlendList_get_field_index_by_name
    - SBVCAnimationV2_get_field_index_by_name
    - XXParticles_get_field_index_by_name
    - PositionAnimator_get_field_index_by_name
    - Viewport_get_field_index_by_name
    - Rectangle_get_field_index_by_name
    - XXParticleInitBox_get_field_index_by_name
    - TransformMatrix2D_get_field_index_by_name
    - AudioDelay_get_field_index_by_name
    - NormalInterpolator_get_field_index_by_name
    - MultiTexture_get_field_index_by_name
    - FacadeNode_get_field_index_by_name
    - Valuator_get_field_index_by_name
    - FFD_get_field_index_by_name
    - LinearGradient_get_field_index_by_name
    - ApplicationWindow_get_field_index_by_name
    - FootPrintSetNode_get_field_index_by_name
    - FAP_get_field_index_by_name
    - SimpleTexture_get_field_index_by_name
    - PathLayout_get_field_index_by_name
    - XLineProperties_get_field_index_by_name
    - IndexedFaceSet_get_field_index_by_name
    - SurroundingSound_get_field_index_by_name
    - RoofNode_get_field_index_by_name
    - ScalarInterpolator_get_field_index_by_name
    - Body_get_field_index_by_name
    - IndexedFaceSet2D_get_field_index_by_name
    - MaterialKey_get_field_index_by_name
    - Color_get_field_index_by_name
    - NurbsCurve2D_get_field_index_by_name
    - SpacePartition_get_field_index_by_name
    - Material_get_field_index_by_name
    - CoordinateInterpolator4D_get_field_index_by_name
    - AnimationStream_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
    - ABS
    - gf_assert
    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_malloc
    - gf_divfix
    - 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_invfix
    - gf_vec_scale
    - 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_invfix
    - gf_mulfix
    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:
    - gf_node_get_private
    - anurbs_reset
    - gf_free
    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_init
    - anurbs_reset
    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:
    - Animator_Update
    - gf_vec_len
    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:
    - gf_floor
    - gf_divfix
    - GetInterpolateFraction
    - anim_check_frac
    - do_bisection
    - gf_node_get_private
    - gf_node_event_out
    - INT2FIX
    - anurbs_get_vec3f
    - PA_Update
    - gf_vec_len
    - Interpolate
    - anurbs_basis
    - FIX2INT
    - gf_mulfix
    - anurbs_find_span
    linkageType: ''
    returnType: void
    signature: void PA_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:467,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 5
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 465
    functionDepth: 1
    functionLinenumber: 465
    functionLinenumberEnd: 480
    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:485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:487,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:491,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:492,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 481
    functionDepth: 1
    functionLinenumber: 481
    functionLinenumberEnd: 494
    functionName: PA_Init
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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:510,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:510,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:510,1
    - Dst: Animator_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:513,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - pa
    - stack
    argTypes:
    - M_PositionAnimator2D*
    - AnimatorStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 496
    functionDepth: 2
    functionLinenumber: 496
    functionLinenumberEnd: 514
    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:522,1
    - Dst: anim_check_frac
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:525,1
    - Dst: PA2D_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:527,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:551,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:555,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:555,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:559,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:559,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:560,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:564,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:571,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:571,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:571,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:576,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:579,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:580,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:580,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:581,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:587,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:588,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:598,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:598,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:599,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:602,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:602,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:603,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:606,1
    - Dst: anurbs_find_span
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:616,1
    - Dst: anurbs_basis
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:617,1
    - Dst: anurbs_get_vec2f
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:618,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:628,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 95
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 515
    functionDepth: 5
    functionLinenumber: 515
    functionLinenumberEnd: 629
    functionName: PA2D_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - anurbs_get_vec2f
    - gf_floor
    - gf_divfix
    - GetInterpolateFraction
    - anim_check_frac
    - gf_sqrt
    - gf_node_get_private
    - do_bisection
    - gf_node_event_out
    - INT2FIX
    - Interpolate
    - anurbs_basis
    - FIX2INT
    - gf_mulfix
    - PA2D_Update
    - anurbs_find_span
    linkageType: ''
    returnType: void
    signature: void PA2D_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:633,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 5
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 631
    functionDepth: 1
    functionLinenumber: 631
    functionLinenumberEnd: 646
    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:651,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:653,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:657,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 647
    functionDepth: 1
    functionLinenumber: 647
    functionLinenumberEnd: 660
    functionName: PA2D_Init
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    linkageType: ''
    returnType: void
    signature: void PA2D_Init(GF_Node *n)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ABS
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:675,1
    - Dst: Animator_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:678,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - sa
    - stack
    argTypes:
    - M_ScalarAnimator*
    - AnimatorStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 662
    functionDepth: 2
    functionLinenumber: 662
    functionLinenumberEnd: 679
    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:687,1
    - Dst: anim_check_frac
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:690,1
    - Dst: SA_Update
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:692,1
    - Dst: GetInterpolateFraction
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:717,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:721,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:721,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:725,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:725,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:726,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:730,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:741,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:744,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:745,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:745,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:746,1
    - Dst: Interpolate
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:750,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:760,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:760,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:761,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:764,1
    - Dst: gf_floor
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:764,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:765,1
    - Dst: do_bisection
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:768,1
    - Dst: anurbs_find_span
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:778,1
    - Dst: anurbs_basis
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:779,1
    - Dst: anurbs_get_float
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:780,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:789,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 92
    argCount: 2
    argNames:
    - node
    - route
    argTypes:
    - GF_Node*
    - GF_Route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 681
    functionDepth: 5
    functionLinenumber: 681
    functionLinenumberEnd: 790
    functionName: SA_SetFraction
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - gf_floor
    - gf_divfix
    - GetInterpolateFraction
    - anim_check_frac
    - do_bisection
    - gf_node_get_private
    - gf_node_event_out
    - INT2FIX
    - Interpolate
    - SA_Update
    - anurbs_basis
    - FIX2INT
    - gf_mulfix
    - anurbs_get_float
    - anurbs_find_span
    linkageType: ''
    returnType: void
    signature: void SA_SetFraction(GF_Node *node, GF_Route *route)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:794,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 5
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 792
    functionDepth: 1
    functionLinenumber: 792
    functionLinenumberEnd: 807
    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:813,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:815,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:819,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/scenegraph/mpeg4_animators.c:820,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 809
    functionDepth: 1
    functionLinenumber: 809
    functionLinenumberEnd: 822
    functionName: SA_Init
    functionSourceFile: /src/gpac/src/scenegraph/mpeg4_animators.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_node_get_attribute_by_tag
    - gf_sg_register_event_type
    - gf_dom_event_get_category
    - gf_node_register
    - gf_list_add
    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_dom_event_target_new
    - gf_sg_listener_associate
    - 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_list_del_item
    - gf_dom_event_get_category
    - gf_node_unregister
    - gf_sg_unregister_event_type
    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_dom_event_get_category
    - gf_list_del_item
    - gf_node_get_attribute_by_tag
    - gf_sg_unregister_event_type
    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_count
    - gf_list_find
    - gf_list_get
    - gf_dom_listener_del
    - 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_list_add
    - gf_mx_p
    - gf_malloc
    - gf_mx_v
    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_list_count
    - gf_free
    - gf_node_dom_listener_add
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - gf_list_reset
    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_list_count
    - gf_free
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - 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:
    - gf_node_get_attribute_by_tag
    - dom_evt_get_handler
    - gf_sg_find_node_by_name
    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:
    - gf_node_get_scene_time
    - gf_node_get_attribute_by_tag
    - dom_evt_get_handler
    - GF_LOG
    - gf_dom_event_fire
    - SVG_handlerElement*::handle_event
    - gf_node_traverse
    - strnicmp
    - gf_dom_event_get_name
    - gf_sg_find_node_by_name
    - memset
    - svgjs_handler_execute
    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_list_count
    - gf_list_get
    - gf_dom_listener_process_add
    - gf_node_unregister
    - gf_assert
    - gf_list_find
    - gf_svg_flatten_attributes
    - dom_event_process
    - gf_sg_set_destroy_cookie
    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_sg_dom_event_bubble
    - gf_list_get
    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_node_get_scene_time
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - gf_dom_listener_process_add
    - gf_list_del
    - gf_node_get_log_name
    - gf_sg_fire_dom_event
    - gf_sg_dom_event_bubble
    - gf_dom_event_get_name
    - gf_node_get_parent
    - gf_node_get_graph
    - gf_list_new
    - gf_sg_dom_stack_parents
    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_node_dom_listener_add
    - GF_LOG
    - gf_node_new
    - gf_node_register
    - gf_node_list_add_child_last
    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_node_get_scene_time
    - gf_list_count
    - gf_free
    - GF_SMIL_TIME_IS_CLOCK
    - GF_LOG
    - gf_node_get_log_name
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - 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_node_register
    - gf_list_get
    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_node_get_attribute_by_tag
    - gf_smil_setup_event_list
    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_strdup
    - gf_node_unregister_children
    - 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_SAFEALLOC
    - gf_node_register
    - gf_node_setup
    - gf_node_list_add_child_last
    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_SAFEALLOC
    - gf_node_setup
    linkageType: ''
    returnType: GF_DOMText
    signature: GF_DOMText *gf_dom_new_text_node(GF_SceneGraph *sg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/dom_events.c:865,1
    - Dst: gf_dom_flatten_textContent
      Src: /src/gpac/src/scenegraph/dom_events.c:871,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scenegraph/dom_events.c:873,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_events.c:874,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 856
    functionDepth: 1
    functionLinenumber: 856
    functionLinenumberEnd: 879
    functionName: gf_dom_flatten_textContent
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 5
    functionsReached:
    - gf_strdup
    - gf_dynstrcat
    - gf_free
    - gf_dom_flatten_textContent
    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:884,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/dom_events.c:887,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_events.c:889,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:890,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/dom_events.c:891,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - parent
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 893
      start: 881
    functionDepth: 1
    functionLinenumber: 881
    functionLinenumberEnd: 893
    functionName: gf_dom_add_updates_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_node_setup
    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:899,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/dom_events.c:902,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_events.c:904,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/dom_events.c:905,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/dom_events.c:906,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - parent
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 896
    functionDepth: 1
    functionLinenumber: 896
    functionLinenumberEnd: 908
    functionName: gf_dom_add_update_node
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_new
    - GF_SAFEALLOC
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_node_setup
    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:921,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/dom_events.c:924,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:927,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/dom_events.c:939,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/scenegraph/dom_events.c:940,1
    - Dst: gf_dom_event_get_name
      Src: /src/gpac/src/scenegraph/dom_events.c:940,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 22
    argCount: 2
    argNames:
    - n
    - f
    argTypes:
    - GF_Node*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 911
    functionDepth: 1
    functionLinenumber: 911
    functionLinenumberEnd: 945
    functionName: gf_dom_event_dump_listeners
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_attribute_by_tag
    - gf_dom_event_get_name
    - gf_list_get
    - gf_fprintf
    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:950,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/dom_events.c:953,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - type
    - obj
    argTypes:
    - GF_DOMEventTargetType
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 956
      start: 947
    functionDepth: 1
    functionLinenumber: 947
    functionLinenumberEnd: 956
    functionName: gf_dom_event_target_new
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:960,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/dom_events.c:960,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/dom_events.c:961,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/dom_events.c:962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - target
    argTypes:
    - GF_DOMEventTarget*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 958
    functionDepth: 1
    functionLinenumber: 958
    functionLinenumberEnd: 963
    functionName: gf_dom_event_target_del
    functionSourceFile: /src/gpac/src/scenegraph/dom_events.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_free
    - gf_assert
    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:972,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/scenegraph/dom_events.c:976,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 965
    functionDepth: 2
    functionLinenumber: 965
    functionLinenumberEnd: 981
    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:
    - gf_sg_add_namespace
    - strncmp
    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:
    - gf_sg_remove_namespace
    - strncmp
    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:
    - gf_xml_get_namespace
    - gf_xml_get_namespace_id
    - strncmp
    - strcmp
    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:
    - gf_xml_get_namespace_qname
    - gf_xml_get_namespace_id
    - strncmp
    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:
    - strchr
    - gf_xml_get_namespace
    - gf_sg_get_namespace_code
    - strcmp
    - gf_xml_get_element_namespace
    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_namespace_qname
    - gf_xml_get_element_namespace
    - snprintf
    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_node_create_attribute_from_datatype
    - gf_xml_get_attribute_type
    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: 0
    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_code
    - gf_sg_get_namespace_qname
    - 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_svg_delete_attribute_value
    - gf_free
    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_SAFEALLOC
    - gf_svg_create_attribute_value
    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: 6
    functionsReached:
    - gf_node_get_attribute_by_tag
    - gf_xml_get_attribute_tag
    - gf_svg_create_attribute_value
    - GF_SAFEALLOC
    - strcmp
    - strlen
    - gf_strdup
    - gf_xml_get_element_namespace
    - gf_sg_get_namespace_qname
    - strncmp
    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_mx2d_init
    - gf_svg_get_attribute_name
    - INT2FIX
    - GF_LOG
    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: 14
    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: 4
    functionsReached:
    - gf_list_add
    - gf_list_find
    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_list_add_child
    - gf_node_get_attribute_by_tag
    - gf_node_init
    - gf_node_get_attribute_by_name
    - gf_svg_attributes_copy
    - gf_node_new
    - gf_node_get_parent
    - gf_node_register
    - gf_node_clone
    - gf_strdup
    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
    - GF_LOG
    - gf_fopen
    - memcmp
    - gf_fsize
    - snprintf
    - gf_fread
    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: gf_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: gf_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: gf_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: gf_strcat
      Src: /src/gpac/src/scenegraph/xml_ns.c:1162,1
    - Dst: gf_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:
    - gf_strcpy
    - sprintf
    - gf_file_ext_start
    - gf_free
    - gf_malloc
    - gf_base16_decode
    - check_existing_file
    - gf_fclose
    - gf_strcat
    - gf_fopen
    - gf_fwrite
    - gf_base64_decode
    - strrchr
    - strcmp
    - strlen
    - gf_strdup
    - strstr
    - strncmp
    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: 46
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 46
    functionName: gf_svg_is_animation_tag
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 2
    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:50,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 1
    argNames:
    - tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 56
    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:61,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_types.c:63,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_types.c:67,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/svg_types.c:70,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/svg_types.c:73,1
    - Dst: gf_sg_parent_setup
      Src: /src/gpac/src/scenegraph/svg_types.c:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ElementTag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 76
    functionName: gf_svg_create_node
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_svg_is_timing_tag
    - GF_SAFEALLOC
    - gf_sg_parent_setup
    - gf_node_setup
    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:83,1
    - Dst: gf_dom_event_remove_listener_from_parent
      Src: /src/gpac/src/scenegraph/svg_types.c:87,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/svg_types.c:95,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/svg_types.c:98,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/svg_types.c:102,1
    - Dst: gf_dom_listener_count
      Src: /src/gpac/src/scenegraph/svg_types.c:109,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:111,1
    - Dst: gf_svg_is_timing_tag
      Src: /src/gpac/src/scenegraph/svg_types.c:116,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:119,1
    - Dst: gf_smil_anim_remove_from_target
      Src: /src/gpac/src/scenegraph/svg_types.c:120,1
    - Dst: gf_smil_timing_delete_runtime_info
      Src: /src/gpac/src/scenegraph/svg_types.c:123,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:124,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:126,1
    - Dst: gf_node_delete_attributes
      Src: /src/gpac/src/scenegraph/svg_types.c:129,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/svg_types.c:130,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/svg_types.c:131,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 78
    functionDepth: 5
    functionLinenumber: 78
    functionLinenumberEnd: 132
    functionName: gf_svg_node_del
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_node_get_attribute_by_tag
    - gf_node_delete_attributes
    - gf_sg_parent_reset
    - gf_smil_anim_delete_animations
    - gf_dom_listener_count
    - gf_dom_event_remove_listener_from_parent
    - gf_assert
    - gf_smil_timing_delete_runtime_info
    - gf_list_get
    - gf_node_free
    - gf_svg_is_timing_tag
    - gf_node_unregister
    - gf_smil_anim_remove_from_target
    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:139,1
    - Dst: GF_Node*::sgprivate::scenegraph::script_load
      Src: /src/gpac/src/scenegraph/svg_types.c:144,1
    - Dst: gf_smil_timing_init_runtime_info
      Src: /src/gpac/src/scenegraph/svg_types.c:149,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:150,1
    - Dst: gf_smil_anim_init_node
      Src: /src/gpac/src/scenegraph/svg_types.c:157,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:158,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_timing_init_runtime_info
      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
    - Dst: gf_smil_anim_init_discard
      Src: /src/gpac/src/scenegraph/svg_types.c:174,1
    - Dst: gf_smil_setup_events
      Src: /src/gpac/src/scenegraph/svg_types.c:175,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 134
    functionDepth: 7
    functionLinenumber: 134
    functionLinenumberEnd: 181
    functionName: gf_svg_node_init
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_smil_anim_init_node
    - GF_Node*::sgprivate::scenegraph::script_load
    - gf_smil_timing_init_runtime_info
    - gf_smil_anim_init_discard
    - 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:193,1
    - Dst: gf_smil_timing_modified
      Src: /src/gpac/src/scenegraph/svg_types.c:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 204
    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:211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:214,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:216,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:217,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:219,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:220,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:222,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:223,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - d
    argTypes:
    - SVG_PathData
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 208
    functionDepth: 1
    functionLinenumber: 208
    functionLinenumberEnd: 227
    functionName: gf_svg_reset_path
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_path_reset
    - gf_free
    - gf_list_del
    - gf_list_get
    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:237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:244,1
    - Dst: gf_path_add_move_to
      Src: /src/gpac/src/scenegraph/svg_types.c:246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:255,1
    - Dst: gf_path_add_line_to
      Src: /src/gpac/src/scenegraph/svg_types.c:258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:265,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:267,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:269,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:271,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:279,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:281,1
    - Dst: gf_path_add_cubic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:283,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:289,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:291,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:300,1
    - Dst: gf_path_add_quadratic_to
      Src: /src/gpac/src/scenegraph/svg_types.c:302,1
    - Dst: gf_path_close
      Src: /src/gpac/src/scenegraph/svg_types.c:307,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: 311
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 311
    functionName: gf_svg_path_build
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_path_add_quadratic_to
    - gf_path_close
    - gf_path_add_move_to
    - gf_path_add_cubic_to
    - gf_list_get
    - gf_path_add_line_to
    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:318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:320,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:321,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:322,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 325
    functionName: gf_smil_delete_times
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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:330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:332,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:333,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:335,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 336
    functionName: gf_svg_delete_points
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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:340,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:342,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:343,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 338
    functionDepth: 1
    functionLinenumber: 338
    functionLinenumberEnd: 346
    functionName: gf_svg_delete_coordinates
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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:352,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/scenegraph/svg_types.c:353,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - sg
    - iri
    argTypes:
    - GF_SceneGraph*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 349
    functionDepth: 2
    functionLinenumber: 349
    functionLinenumberEnd: 354
    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:360,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:361,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - sg
    - paint
    argTypes:
    - GF_SceneGraph*
    - SVG_Paint*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 356
    functionDepth: 3
    functionLinenumber: 356
    functionLinenumberEnd: 362
    functionName: gf_svg_delete_paint
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 1
    functionsReached:
    - gf_svg_reset_iri
    - gf_free
    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:368,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: 369
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 369
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:377,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:381,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/scenegraph/svg_types.c:384,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:391,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - anim_values
    - sg
    argTypes:
    - SMIL_AnimateValues
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 393
    functionName: gf_svg_reset_animate_values
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - lsr_delete_anim_value
    - gf_list_get
    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:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - anim_value
    - sg
    argTypes:
    - SMIL_AnimateValue
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 396
    functionDepth: 2
    functionLinenumber: 396
    functionLinenumberEnd: 400
    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: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/svg_types.c:407,1
    - Dst: gf_svg_delete_paint
      Src: /src/gpac/src/scenegraph/svg_types.c:412,1
    - Dst: gf_svg_reset_iri
      Src: /src/gpac/src/scenegraph/svg_types.c:416,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:417,1
    - Dst: gf_svg_reset_iri
      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_svg_reset_iri
      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_path_del
      Src: /src/gpac/src/scenegraph/svg_types.c:429,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:431,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:438,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:439,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:442,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:443,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:444,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:453,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_types.c:454,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_types.c:455,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:456,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:458,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:459,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:464,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:465,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:471,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:472,1
    - Dst: gf_smil_delete_times
      Src: /src/gpac/src/scenegraph/svg_types.c:476,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:477,1
    - Dst: svg_delete_one_anim_value
      Src: /src/gpac/src/scenegraph/svg_types.c:480,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:481,1
    - Dst: gf_svg_reset_animate_values
      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_count
      Src: /src/gpac/src/scenegraph/svg_types.c:489,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_types.c:490,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_types.c:491,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:492,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:495,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/svg_types.c:499,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scenegraph/svg_types.c:500,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scenegraph/svg_types.c:501,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:502,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:503,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:505,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:506,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:510,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:511,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:522,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 117
    argCount: 3
    argNames:
    - type
    - value
    - sg
    argTypes:
    - u32
    - void*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 403
    functionDepth: 4
    functionLinenumber: 403
    functionLinenumberEnd: 525
    functionName: gf_svg_delete_attribute_value
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 5
    functionsReached:
    - svg_delete_one_anim_value
    - gf_list_count
    - gf_free
    - gf_path_del
    - gf_list_del
    - gf_svg_delete_paint
    - gf_smil_delete_times
    - gf_list_find
    - gf_list_rem_last
    - gf_svg_reset_animate_values
    - gf_svg_reset_iri
    - gf_list_last
    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:530,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/svg_types.c:531,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/svg_types.c:532,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/svg_types.c:533,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/svg_types.c:535,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - l
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 536
    functionName: gf_smil_delete_key_types
    functionSourceFile: /src/gpac/src/scenegraph/svg_types.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:
    - JS_NewObject
    - SMJS_SET_PRIVATE
    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:
    - JS_NewObject
    - SMJS_SET_PRIVATE
    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:
    - gf_list_count
    - sprintf
    - html_media_tracklist_has_track
    - gf_html_track_init_js
    - gf_html_media_object
    - gf_list_get
    - html_media_add_new_track_to_list
    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:
    - JS_GetProperty
    - SMJS_GET_PRIVATE
    - JSVAL_TO_OBJECT
    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_JS_InstanceOf
    - gf_free
    - gf_malloc
    - SMJS_GET_PRIVATE
    - gf_mo_register
    - html_media_element_get_from_node
    - dom_throw_exception
    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_new
    - gf_html_media_element_init_js
    - 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:
    - gf_html_media_element_del
    - html_media_element_get_from_node
    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:
    - JS_NewDouble
    - GF_JS_InstanceOf
    - JSVAL_TO_INT
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_list_get
    - JSVAL_IS_INT
    - dom_throw_exception
    - DOUBLE_TO_JSVAL
    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:
    - JS_NewDouble
    - GF_JS_InstanceOf
    - JSVAL_TO_INT
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_list_get
    - JSVAL_IS_INT
    - dom_throw_exception
    - DOUBLE_TO_JSVAL
    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
    - SMJS_GET_PRIVATE
    - html_media_tracklist_get_track
    - JS_ValueToString
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - dom_throw_exception
    - SMJS_CHARS_FROM_STRING
    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
    - SMJS_GET_PRIVATE
    - html_media_tracklist_get_track
    - JS_ValueToString
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - dom_throw_exception
    - SMJS_CHARS_FROM_STRING
    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:
    - JS_NewStringCopyZ
    - GF_JS_InstanceOf
    - BOOLEAN_TO_JSVAL
    - SMJS_GET_PRIVATE
    - SMJS_ID_TO_INT
    - STRING_TO_JSVAL
    - dom_throw_exception
    - SMJS_ID_IS_INT
    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:
    - GF_JS_InstanceOf
    - SMJS_GET_PRIVATE
    - SMJS_ID_TO_INT
    - JSVAL_TO_BOOLEAN
    - dom_throw_exception
    - SMJS_ID_IS_INT
    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
    - SMJS_FUNCTION_SPEC
    - GF_LOG
    - html_media_source_init_js_api
    - JS_SETUP_CLASS
    - GF_SAFEALLOC
    - GF_JS_InitClass
    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_dom_event_target_new
    - gf_sg_get_namespace
    - gf_node_get_log_name
    - GF_SAFEALLOC
    - gf_node_remove_id
    - gf_node_get_parent_count
    - gf_node_get_num_instances
    - gf_sg_xml_node_clone
    - gf_smil_timing_pause
    - gf_mx_new
    - gf_smil_get_media_duration
    - gf_smil_timing_resume
    - gf_list_new
    - node_modif_stub
    - gf_dom_flatten_textContent
    - gf_sys_is_cov_mode
    - gf_node_get_attribute_count
    - gf_sg_get_parent
    - gf_node_list_get_child
    - gf_node_parent_of
    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: 6
    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_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:201,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:204,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:207,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 208
    functionName: gf_sg_del
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 8
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_sg_reset
    - gf_svg_script_context_del
    - gf_dom_event_target_del
    - gf_list_get
    - gf_mx_del
    - gf_node_unregister
    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:228,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:230,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:237,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:242,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:251,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:256,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:258,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:267,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:271,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:272,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:279,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:284,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:294,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:299,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:301,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 77
    argCount: 2
    argNames:
    - node
    - sg
    argTypes:
    - GF_Node*
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 312
    functionName: SG_GraphRemoved
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - SG_GraphRemoved
    - gf_node_get_field
    - gf_free
    - gf_node_unregister
    - gf_list_enum
    - gf_list_get
    - gf_node_get_field_count
    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: 323
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 323
    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: 334
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 334
    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:348,1
    - Dst: SG_GraphRemoved
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:354,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:358,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:362,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:363,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:364,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:366,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:368,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:371,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:373,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:379,1
    - Dst: gf_dom_event_remove_all_listeners
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:381,1
    - Dst: gf_dom_listener_reset_deferred
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:383,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:384,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:388,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:389,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:393,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:394,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:396,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:403,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:404,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:405,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:406,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:409,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:413,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:417,1
    - Dst: GF_SceneGraph*::GetExternProtoLib
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:418,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:424,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:426,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:427,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:428,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:429,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:432,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:434,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:435,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:436,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:437,1
    - Dst: SG_SearchForNode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:477,1
    - Dst: ReplaceIRINode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:485,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:488,1
    - Dst: ReplaceDEFNode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:489,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:501,1
    - Dst: get_num_id_nodes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:509,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:512,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:513,1
    - Dst: get_num_id_nodes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:514,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:519,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:523,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:524,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:526,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:529,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:530,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:532,1
    - Dst: gf_sg_destroy_routes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:541,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:542,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:543,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:544,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:545,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:546,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:548,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:559,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:572,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 125
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 336
    functionDepth: 4
    functionLinenumber: 336
    functionLinenumberEnd: 573
    functionName: gf_sg_reset
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_sg_route_del
    - GF_SceneGraph*::GetExternProtoLib
    - gf_list_add
    - gf_node_unregister
    - SG_GraphRemoved
    - gf_list_find
    - gf_mx_v
    - gf_list_get
    - gf_node_replace
    - ReplaceIRINode
    - SG_SearchForNode
    - get_num_id_nodes
    - gf_dom_event_remove_all_listeners
    - gf_mx_p
    - gf_dom_listener_reset_deferred
    - gf_list_new
    - gf_sg_proto_del
    - gf_list_pop_back
    - ReplaceDEFNode
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_sg_destroy_routes
    - gf_node_register
    - gf_list_reset
    - 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: 584
      start: 576
    functionDepth: 0
    functionLinenumber: 576
    functionLinenumberEnd: 584
    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: 597
      start: 587
    functionDepth: 0
    functionLinenumber: 587
    functionLinenumberEnd: 597
    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: 604
      start: 600
    functionDepth: 0
    functionLinenumber: 600
    functionLinenumberEnd: 604
    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: 610
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 610
    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: 624
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 624
    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: 636
      start: 626
    functionDepth: 0
    functionLinenumber: 626
    functionLinenumberEnd: 636
    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: 645
      start: 638
    functionDepth: 0
    functionLinenumber: 638
    functionLinenumberEnd: 645
    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: 652
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 652
    functionName: gf_sg_get_root_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    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: 658
      start: 654
    functionDepth: 0
    functionLinenumber: 654
    functionLinenumberEnd: 658
    functionName: gf_sg_set_root_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    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:669,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:670,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:683,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:685,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - sg
    - node
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 689
    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:694,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:696,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: 697
      start: 691
    functionDepth: 1
    functionLinenumber: 691
    functionLinenumberEnd: 697
    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:726,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:734,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:744,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:752,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:758,1
    - Dst: remove_node_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:763,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:770,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:772,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:779,1
    - Dst: gf_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:792,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 61
    argCount: 2
    argNames:
    - pNode
    - parentNode
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 700
    functionDepth: 2
    functionLinenumber: 700
    functionLinenumberEnd: 795
    functionName: gf_node_unregister
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 225
    functionsReached:
    - gf_free
    - gf_sg_route_del
    - gf_list_del_item
    - gf_assert
    - gf_list_enum
    - remove_node_id
    - gf_node_del
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_node_unregister(GF_Node *pNode, GF_Node *parentNode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:807,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:813,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:819,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - node
    - parentNode
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 823
    functionName: gf_node_register
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 41
    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:836,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:838,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:865,1
    - Dst: gf_sg_vrml_mf_remove
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:874,1
    - Dst: gf_node_changed_internal
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:875,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:899,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:904,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: 905
      start: 828
    functionDepth: 1
    functionLinenumber: 828
    functionLinenumberEnd: 905
    functionName: ReplaceDEFNode
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_changed_internal
    - gf_node_get_field
    - gf_sg_vrml_mf_remove
    - gf_node_changed
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    - gf_node_list_del_child
    - gf_node_get_field_count
    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:912,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:914,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:918,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: 924
      start: 909
    functionDepth: 1
    functionLinenumber: 909
    functionLinenumberEnd: 924
    functionName: Replace_IRI
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_rem
    - gf_list_get
    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:942,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: 946
      start: 927
    functionDepth: 0
    functionLinenumber: 927
    functionLinenumberEnd: 946
    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: 11
    BranchProfiles: []
    Callsites:
    - Dst: Replace_IRI
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:967,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:978,1
    - Dst: ReplaceIRINode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:988,1
    - Dst: ReplaceDEFNode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:992,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:995,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:996,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:998,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1003,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1005,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1011,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1013,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 3
    argNames:
    - node
    - new_node
    - updateOrderedGroup
    argTypes:
    - GF_Node*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 950
    functionDepth: 3
    functionLinenumber: 950
    functionLinenumberEnd: 1017
    functionName: gf_node_replace
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - ReplaceDEFNode
    - ReplaceIRINode
    - Replace_IRI
    - gf_list_del_item
    - gf_list_find
    - gf_node_changed
    - gf_node_register
    - gf_node_unregister
    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:1023,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1026,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: 1053
      start: 1019
    functionDepth: 0
    functionLinenumber: 1019
    functionLinenumberEnd: 1053
    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:1072,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1076,1
    - Dst: remove_node_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1077,1
    - Dst: insert_node_def
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1078,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1079,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - p
    - ID
    - name
    argTypes:
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1082
      start: 1057
    functionDepth: 1
    functionLinenumber: 1057
    functionLinenumberEnd: 1082
    functionName: gf_node_set_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - gf_strdup
    - remove_node_id
    - gf_free
    - insert_node_def
    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:1098,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 1084
    functionDepth: 1
    functionLinenumber: 1084
    functionLinenumberEnd: 1103
    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:1117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1119,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1119,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1119,1
    - Dst: GF_Node*::sgprivate::UserCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1120,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1138,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1145,1
    - Dst: gf_sg_proto_instantiate
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1149,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1154,1
    - Dst: GF_Node*::sgprivate::scenegraph::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1168,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1168,1
    - Dst: GF_Node*::sgprivate::UserCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1169,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 2
    argNames:
    - node
    - renderStack
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1106
    functionDepth: 5
    functionLinenumber: 1106
    functionLinenumberEnd: 1176
    functionName: gf_node_traverse
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - gf_node_dirty_clear
    - GF_LOG
    - gf_assert
    - gf_node_get_class_name
    - gf_node_traverse
    - gf_node_dirty_set
    - gf_sg_proto_instantiate
    - gf_node_get_name
    - GF_Node*::sgprivate::UserCallback
    - GF_Node*::sgprivate::scenegraph::NodeCallback
    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: 1184
      start: 1178
    functionDepth: 0
    functionLinenumber: 1178
    functionLinenumberEnd: 1184
    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: 1202
      start: 1187
    functionDepth: 0
    functionLinenumber: 1187
    functionLinenumberEnd: 1202
    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:1210,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - node
    - renderStack
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1216
      start: 1205
    functionDepth: 6
    functionLinenumber: 1205
    functionLinenumberEnd: 1216
    functionName: gf_node_traverse_children
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_traverse
    - gf_assert
    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: 1223
      start: 1219
    functionDepth: 0
    functionLinenumber: 1219
    functionLinenumberEnd: 1223
    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: 1234
      start: 1225
    functionDepth: 0
    functionLinenumber: 1225
    functionLinenumberEnd: 1234
    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:1242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - sg
    - name
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1247
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1247
    functionName: gf_sg_find_node_by_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 14
    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: 1265
      start: 1250
    functionDepth: 0
    functionLinenumber: 1250
    functionLinenumberEnd: 1265
    functionName: gf_sg_get_next_available_node_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    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: 1276
      start: 1267
    functionDepth: 0
    functionLinenumber: 1267
    functionLinenumberEnd: 1276
    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:1281,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1286,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - p
    - tag
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1291
      start: 1278
    functionDepth: 1
    functionLinenumber: 1278
    functionLinenumberEnd: 1291
    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:1295,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1298
      start: 1293
    functionDepth: 2
    functionLinenumber: 1293
    functionLinenumberEnd: 1298
    functionName: gf_sg_new_base_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_node_setup
    linkageType: ''
    returnType: GF_Node
    signature: GF_Node *gf_sg_new_base_node()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1299
    functionDepth: 0
    functionLinenumber: 1299
    functionLinenumberEnd: 1304
    functionName: gf_node_get_tag
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 20
    functionsReached: []
    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:1310,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1305
    functionDepth: 1
    functionLinenumber: 1305
    functionLinenumberEnd: 1324
    functionName: gf_node_get_id
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 25
    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: 1345
      start: 1326
    functionDepth: 0
    functionLinenumber: 1326
    functionLinenumberEnd: 1345
    functionName: gf_node_get_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 6
    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:1352,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - p
    - id
    argTypes:
    - GF_Node*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1374
      start: 1347
    functionDepth: 1
    functionLinenumber: 1347
    functionLinenumberEnd: 1374
    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:1379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1376
    functionDepth: 1
    functionLinenumber: 1376
    functionLinenumberEnd: 1381
    functionName: gf_node_get_private
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 12
    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:1385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - p
    - pr
    argTypes:
    - GF_Node*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1382
    functionDepth: 1
    functionLinenumber: 1382
    functionLinenumberEnd: 1387
    functionName: gf_node_set_private
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 5
    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:1391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1388
    functionDepth: 1
    functionLinenumber: 1388
    functionLinenumberEnd: 1394
    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: 1400
      start: 1396
    functionDepth: 0
    functionLinenumber: 1396
    functionLinenumberEnd: 1400
    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: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1407,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1410,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - container
    - child
    argTypes:
    - GF_Node*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1402
    functionDepth: 3
    functionLinenumber: 1402
    functionLinenumberEnd: 1412
    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:1420,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1424,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - list
    - n
    - pos
    argTypes:
    - GF_ChildNodeItem**
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1414
    functionDepth: 1
    functionLinenumber: 1414
    functionLinenumberEnd: 1444
    functionName: gf_node_list_insert_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_malloc
    - gf_assert
    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:1453,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: 1472
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1472
    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: 1486
      start: 1475
    functionDepth: 0
    functionLinenumber: 1475
    functionLinenumberEnd: 1486
    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: 1498
      start: 1488
    functionDepth: 0
    functionLinenumber: 1488
    functionLinenumberEnd: 1498
    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:1507,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - list
    - n
    argTypes:
    - GF_ChildNodeItem**
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1500
    functionDepth: 0
    functionLinenumber: 1500
    functionLinenumberEnd: 1518
    functionName: gf_node_list_add_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    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:1528,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: 1548
      start: 1521
    functionDepth: 0
    functionLinenumber: 1521
    functionLinenumberEnd: 1548
    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:1559,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1570,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - list
    - n
    argTypes:
    - GF_ChildNodeItem**
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1550
    functionDepth: 0
    functionLinenumber: 1550
    functionLinenumberEnd: 1574
    functionName: gf_node_list_del_child
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    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:1588,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1601,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - list
    - pos
    argTypes:
    - GF_ChildNodeItem**
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1605
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1605
    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: 1616
      start: 1607
    functionDepth: 0
    functionLinenumber: 1607
    functionLinenumberEnd: 1616
    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:1620,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1618
    functionDepth: 4
    functionLinenumber: 1618
    functionLinenumberEnd: 1622
    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: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_Node*::sgprivate::UserCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1628,1
    - Dst: GF_Node*::sgprivate::scenegraph::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1631,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1635,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1637,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1640,1
    - Dst: gf_dom_event_remove_all_listeners
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1644,1
    - Dst: gf_dom_event_target_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1645,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1648,1
    - Dst: GF_Node*::sgprivate::scenegraph::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1654,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1655,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1656,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1659,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1673,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1683,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1684,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1685,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 49
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1624
    functionDepth: 4
    functionLinenumber: 1624
    functionLinenumberEnd: 1686
    functionName: gf_node_free
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 325
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    - gf_list_del
    - gf_assert
    - gf_dom_event_remove_all_listeners
    - gf_dom_event_target_del
    - gf_list_get
    - GF_Node*::sgprivate::UserCallback
    - GF_Node*::sgprivate::scenegraph::NodeCallback
    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: 1698
      start: 1688
    functionDepth: 0
    functionLinenumber: 1688
    functionLinenumberEnd: 1698
    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: 1717
      start: 1700
    functionDepth: 0
    functionLinenumber: 1700
    functionLinenumberEnd: 1717
    functionName: gf_node_get_parent
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 7
    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:1729,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1733,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1735,1
    - Dst: dirty_children
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1736,1
    - Dst: dirty_children
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1740,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1719
    functionDepth: 1
    functionLinenumber: 1719
    functionLinenumberEnd: 1746
    functionName: dirty_children
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_get_field
    - gf_node_get_field_count
    - 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:1791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1786
    functionDepth: 0
    functionLinenumber: 1786
    functionLinenumberEnd: 1793
    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:1803,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: 1804
      start: 1795
    functionDepth: 0
    functionLinenumber: 1795
    functionLinenumberEnd: 1804
    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:1809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1806
    functionDepth: 0
    functionLinenumber: 1806
    functionLinenumberEnd: 1810
    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: 1818
      start: 1812
    functionDepth: 0
    functionLinenumber: 1812
    functionLinenumberEnd: 1818
    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: 1825
      start: 1820
    functionDepth: 0
    functionLinenumber: 1820
    functionLinenumberEnd: 1825
    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:1835,1
    - Dst: gf_node_dirty_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1838,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - node
    - reset_children
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1842
      start: 1828
    functionDepth: 2
    functionLinenumber: 1828
    functionLinenumberEnd: 1842
    functionName: gf_node_dirty_reset
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - dirty_children
    - gf_node_dirty_reset
    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:1850,1
    - Dst: gf_sg_vrml_node_init
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1858,1
    - Dst: gf_svg_node_init
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1862,1
    - Dst: GF_SceneGraph*::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1866,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1846
    functionDepth: 8
    functionLinenumber: 1846
    functionLinenumberEnd: 1867
    functionName: gf_node_init
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 5
    functionsReached:
    - GF_SceneGraph*::NodeCallback
    - gf_svg_node_init
    - gf_sg_vrml_node_init
    - gf_assert
    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:1876,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1880,1
    - Dst: GF_SceneGraph*::on_node_modified
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1881,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1888,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1893,1
    - Dst: gf_sg_vrml_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1900,1
    - Dst: gf_svg_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1904,1
    - Dst: GF_SceneGraph*::NodeCallback
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1911,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: 1912
      start: 1870
    functionDepth: 9
    functionLinenumber: 1870
    functionLinenumberEnd: 1912
    functionName: gf_node_changed_internal
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - GF_SceneGraph*::NodeCallback
    - GF_SceneGraph*::on_node_modified
    - gf_dom_event_fire
    - gf_assert
    - gf_sg_vrml_node_changed
    - gf_sg_vrml_is_sf_field
    - gf_svg_node_changed
    - memset
    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:1917,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1928,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1931
      start: 1914
    functionDepth: 10
    functionLinenumber: 1914
    functionLinenumberEnd: 1931
    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: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1936,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1939,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1940,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1941,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1945,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1947,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1949,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1950,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1953,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1954,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1955,1
    - Dst: gf_node_delete_attributes
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1960,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1962,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1963,1
    - Dst: gf_node_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1964,1
    - Dst: gf_sg_proto_del_instance
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1967,1
    - Dst: gf_sg_mpeg4_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1970,1
    - Dst: gf_sg_x3d_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1972,1
    - Dst: gf_svg_node_del
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1977,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1980
      start: 1933
    functionDepth: 6
    functionLinenumber: 1933
    functionLinenumberEnd: 1980
    functionName: gf_node_del
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_sg_command_del
    - gf_free
    - gf_node_delete_attributes
    - gf_sg_proto_del_instance
    - gf_sg_parent_reset
    - gf_list_del
    - gf_svg_node_del
    - gf_sg_mpeg4_node_del
    - gf_sg_x3d_node_del
    - gf_list_get
    - gf_node_free
    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:1985,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1989,1
    - Dst: gf_node_get_attribute_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:1992,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1995
      start: 1982
    functionDepth: 1
    functionLinenumber: 1982
    functionLinenumberEnd: 1995
    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_node_get_attribute_count
    - gf_assert
    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:2004,1
    - Dst: gf_sg_x3d_node_get_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2006,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2013,1
    - Dst: gf_sg_get_namespace_qname
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2015,1
    - Dst: snprintf
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2017,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2024
      start: 1997
    functionDepth: 1
    functionLinenumber: 1997
    functionLinenumberEnd: 2024
    functionName: gf_node_get_class_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 9
    functionsReached:
    - gf_sg_x3d_node_get_class_name
    - gf_sg_mpeg4_node_get_class_name
    - gf_sg_get_namespace_code
    - snprintf
    - gf_sg_get_namespace_qname
    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:2033,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2037,1
    - Dst: gf_xml_get_element_tag
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2044,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - name
    - ns
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2049
      start: 2027
    functionDepth: 1
    functionLinenumber: 2027
    functionLinenumberEnd: 2049
    functionName: gf_sg_node_get_tag_by_class_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_x3d_type_by_class_name
    - gf_xml_get_element_tag
    - 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:2060,1
    - Dst: gf_sg_mpeg4_node_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2062,1
    - Dst: gf_sg_x3d_node_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2064,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2069,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2072,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2076,1
    - Dst: gf_node_setup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2079,1
    - Dst: gf_svg_create_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2082,1
    - Dst: gf_sg_script_init
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2095,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - inScene
    - tag
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2101
      start: 2053
    functionDepth: 3
    functionLinenumber: 2053
    functionLinenumberEnd: 2101
    functionName: gf_node_new
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 13
    functionsReached:
    - gf_sg_mpeg4_node_new
    - gf_svg_create_node
    - gf_sg_script_init
    - gf_sg_new_base_node
    - GF_SAFEALLOC
    - gf_node_setup
    - gf_sg_x3d_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:2107,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2108,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2109,1
    - Dst: gf_sg_proto_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2114,1
    - Dst: gf_sg_script_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2116,1
    - Dst: gf_sg_script_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2119,1
    - Dst: gf_sg_mpeg4_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2121,1
    - Dst: gf_sg_x3d_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2123,1
    - Dst: gf_node_get_attribute_info
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - node
    - FieldIndex
    - info
    argTypes:
    - GF_Node*
    - u32
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2131
      start: 2104
    functionDepth: 2
    functionLinenumber: 2104
    functionLinenumberEnd: 2131
    functionName: gf_node_get_field
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 35
    functionsReached:
    - gf_sg_script_get_field
    - gf_sg_x3d_node_get_field
    - gf_node_get_attribute_info
    - gf_assert
    - gf_sg_mpeg4_node_get_field
    - memset
    - gf_sg_proto_get_field
    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: 2136
      start: 2133
    functionDepth: 0
    functionLinenumber: 2133
    functionLinenumberEnd: 2136
    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:2141,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2142,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2143,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2145,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - node
    - name
    - field
    argTypes:
    - GF_Node*
    - char*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2149
      start: 2138
    functionDepth: 3
    functionLinenumber: 2138
    functionLinenumberEnd: 2149
    functionName: gf_node_get_field_by_name_enum
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_get_field
    - gf_assert
    - strcmp
    - memset
    - gf_node_get_field_count
    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:2159,1
    - Dst: gf_node_get_field_by_name_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2162,1
    - Dst: gf_node_get_field_by_name_enum
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2165,1
    - Dst: gf_sg_mpeg4_node_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2167,1
    - Dst: gf_sg_x3d_node_get_field_index_by_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2169,1
    - Dst: gf_node_get_attribute_by_name
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2174,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2177,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - node
    - name
    - field
    argTypes:
    - GF_Node*
    - char*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2178
      start: 2151
    functionDepth: 4
    functionLinenumber: 2151
    functionLinenumberEnd: 2178
    functionName: gf_node_get_field_by_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 9
    functionsReached:
    - gf_node_get_field
    - gf_node_get_field_by_name_enum
    - gf_node_get_attribute_by_name
    - gf_sg_mpeg4_node_get_field_index_by_name
    - gf_sg_proto_get_field_index_by_name
    - gf_sg_x3d_node_get_field_index_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:2186,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - anim
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2192
      start: 2182
    functionDepth: 1
    functionLinenumber: 2182
    functionLinenumberEnd: 2192
    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:2208,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2210,1
    - Dst: SVGTimedAnimBaseElement*::timingp::runtime::evaluate
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2212,1
    - Dst: gf_node_deactivate_ex
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2222,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2227
      start: 2196
    functionDepth: 2
    functionLinenumber: 2196
    functionLinenumberEnd: 2227
    functionName: gf_node_deactivate_ex
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_node_deactivate_ex
    - gf_svg_is_timing_tag
    - gf_list_del_item
    - SVGTimedAnimBaseElement*::timingp::runtime::evaluate
    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:2231,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2234
      start: 2229
    functionDepth: 11
    functionLinenumber: 2229
    functionLinenumberEnd: 2234
    functionName: gf_node_deactivate
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_node_deactivate_ex
    - gf_node_changed
    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:2250,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2252,1
    - Dst: SVGTimedAnimBaseElement*::timingp::runtime::evaluate
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2255,1
    - Dst: gf_node_activate_ex
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2264,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2236
    functionDepth: 2
    functionLinenumber: 2236
    functionLinenumberEnd: 2269
    functionName: gf_node_activate_ex
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_svg_is_timing_tag
    - gf_node_activate_ex
    - SVGTimedAnimBaseElement*::timingp::runtime::evaluate
    - gf_list_add
    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:2274,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2275,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2277
      start: 2271
    functionDepth: 11
    functionLinenumber: 2271
    functionLinenumberEnd: 2277
    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:2286,1
    - Dst: gf_sg_xml_node_clone
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2293,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: 2297
      start: 2279
    functionDepth: 6
    functionLinenumber: 2279
    functionLinenumberEnd: 2297
    functionName: gf_node_clone
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    functionsReached:
    - gf_vrml_node_clone
    - gf_sg_xml_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:2301,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2302,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2303,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2304,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2305,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2306,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2307,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2299
    functionDepth: 0
    functionLinenumber: 2299
    functionLinenumberEnd: 2309
    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:2318,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2320,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2322,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2325,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2325,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2326,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2328,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2329,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - sg
    - name
    - qname
    argTypes:
    - GF_SceneGraph*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2330
      start: 2311
    functionDepth: 1
    functionLinenumber: 2311
    functionLinenumberEnd: 2330
    functionName: gf_sg_add_namespace
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - gf_crc_32
    - gf_xml_get_namespace_id
    - gf_list_new
    - GF_SAFEALLOC
    - strlen
    - gf_strdup
    - gf_list_insert
    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:2336,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2339,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2342,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2345,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2346,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2347,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2348,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2349,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: 2354
      start: 2332
    functionDepth: 1
    functionLinenumber: 2332
    functionLinenumberEnd: 2354
    functionName: gf_sg_remove_namespace
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - strcmp
    - gf_list_get
    - 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:2359,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2361,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2365,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2369,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 2
    argNames:
    - sg
    - qname
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2373
      start: 2356
    functionDepth: 1
    functionLinenumber: 2356
    functionLinenumberEnd: 2373
    functionName: gf_sg_get_namespace_code
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:2378,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2380,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2381,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2383,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 11
    argCount: 2
    argNames:
    - sg
    - name
    argTypes:
    - GF_SceneGraph*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2389
      start: 2375
    functionDepth: 1
    functionLinenumber: 2375
    functionLinenumberEnd: 2389
    functionName: gf_sg_get_namespace_code_from_name
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:2394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2396,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - sg
    - xmlns_id
    argTypes:
    - GF_SceneGraph*
    - GF_NamespaceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2391
    functionDepth: 1
    functionLinenumber: 2391
    functionLinenumberEnd: 2402
    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:2409,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2411,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - sg
    - xmlns_id
    argTypes:
    - GF_SceneGraph*
    - GF_NamespaceType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2416
      start: 2405
    functionDepth: 1
    functionLinenumber: 2405
    functionLinenumberEnd: 2416
    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:2423,1
    - Dst: gf_svg_dump_attribute
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2424,1
    - Dst: gf_node_vrml_dump_attribute
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2429,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - n
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2433
      start: 2420
    functionDepth: 3
    functionLinenumber: 2420
    functionLinenumberEnd: 2433
    functionName: gf_node_dump_attribute
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 4
    functionsReached:
    - gf_node_get_tag
    - gf_svg_dump_attribute
    - gf_node_vrml_dump_attribute
    linkageType: ''
    returnType: char
    signature: char *gf_node_dump_attribute(GF_Node *n, GF_FieldInfo *info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2465,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2475,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 4
    argNames:
    - node
    - container
    - pos
    - newNode
    argTypes:
    - GF_Node*
    - GF_ChildNodeItem**
    - s32
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2478
      start: 2438
    functionDepth: 3
    functionLinenumber: 2438
    functionLinenumberEnd: 2478
    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:2492,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2496,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2498,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2500,1
    - Dst: gf_node_parent_of
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2505,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 2
    argNames:
    - node
    - target
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2512
      start: 2481
    functionDepth: 3
    functionLinenumber: 2481
    functionLinenumberEnd: 2512
    functionName: gf_node_parent_of
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 2
    functionsReached:
    - gf_node_parent_of
    - gf_node_get_field
    - gf_node_get_field_count
    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: 2517
      start: 2514
    functionDepth: 0
    functionLinenumber: 2514
    functionLinenumberEnd: 2517
    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:2538,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2540,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2543,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2543,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2548,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2549,1
    - Dst: gf_sg_get_namespace_code
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2551,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2553,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2555,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2558,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2559,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2560,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2565,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2569,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2571,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2572,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2578,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2580,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2584,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2586,1
    - Dst: gf_sg_load_dom_node
      Src: /src/gpac/src/scenegraph/base_scenegraph.c:2587,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: 2594
      start: 2522
    functionDepth: 4
    functionLinenumber: 2522
    functionLinenumberEnd: 2594
    functionName: gf_sg_load_dom_node
    functionSourceFile: /src/gpac/src/scenegraph/base_scenegraph.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - strchr
    - gf_node_set_id
    - gf_node_list_add_child
    - GF_LOG
    - gf_list_get
    - stricmp
    - gf_svg_create_attribute_value
    - gf_sg_get_namespace_code
    - gf_node_new
    - GF_SAFEALLOC
    - gf_node_register
    - strlen
    - gf_strdup
    - gf_sg_get_max_node_id
    - gf_sg_load_dom_node
    - gf_dom_add_text_node
    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:2598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - document
    - root_node
    argTypes:
    - GF_SceneGraph*
    - GF_DOMXMLNODE
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2599
      start: 2596
    functionDepth: 5
    functionLinenumber: 2596
    functionLinenumberEnd: 2599
    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: 2605
      start: 2602
    functionDepth: 0
    functionLinenumber: 2602
    functionLinenumberEnd: 2605
    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_svg_get_modification_flags
    - gf_node_changed
    - gf_node_dirty_set
    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_NewObject
    - DEF_EXC
    - JS_NewInt32
    - JS_SetPropertyStr
    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_SetOpaque
    - GF_SceneGraph*::get_document_class
    - GF_SAFEALLOC
    - JS_DupValue
    - 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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - GF_SceneGraph*::get_document_class
    - GF_SAFEALLOC
    - JS_DupValue
    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_IsUndefined
    - JS_SetOpaque
    - html_media_element_js_init
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_node_register
    - gf_list_add
    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
    - dom_node_construct
    - gf_node_list_find_child
    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_JS_EXCEPTION
    - JS_SetOpaque
    - GF_SAFEALLOC
    - 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:
    - dom_unregister_node
    - gf_free
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - dom_node_construct
    - gf_node_list_get_child
    - JS_ToInt32
    - 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:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - JS_NewInt32
    - js_throw_err
    - 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
    - gf_list_del_item
    - JS_FreeValue
    - 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:
    - is_svg_element_class
    - gf_html_media_get_event_target
    - gf_dom_event_target_new
    - dom_get_doc
    - gf_mse_get_event_target
    - is_svg_document_class
    - gf_dom_event_get_category
    - JS_GetOpaque
    - dom_get_element
    - xhr_get_event_target
    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:
    - JS_ToCString
    - gf_free
    - JS_IsFunction
    - JS_GetPropertyStr
    - gf_dom_event_type_by_name
    - JS_FreeCString
    - JS_DupValue
    - JS_IsObject
    - gf_strdup
    - JS_CHECK_STRING
    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:
    - gf_node_get_attribute_by_tag
    - gf_strdup
    - gf_assert
    - JS_IsFunction
    - gf_node_new
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_node_register
    - gf_node_list_add_child
    - gf_list_add
    - gf_dom_add_text_node
    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_free
    - create_listener
    - sg_js_parse_event_args
    - gf_sg_listener_post_add
    - gf_sg_listener_associate
    - js_throw_err
    - 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_list_count
    - JS_ToCString
    - gf_free
    - gf_node_get_attribute_by_tag
    - gf_dom_listener_process_add
    - sg_js_parse_event_args
    - JS_IsNull
    - JS_FreeCString
    - strcmp
    - gf_list_get
    - gf_dom_listener_del
    - sg_js_get_event_target
    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:
    - JS_SetOpaque
    - dom_unregister_node
    - gf_list_del_item
    - gf_sg_js_dom_pre_destroy
    - JS_GetAnyOpaque
    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_dom_listener_build_ex
    - gf_node_init
    - gf_node_list_insert_child
    - gf_dom_event_fire
    - gf_node_activate
    - gf_node_get_parent
    - gf_node_register
    - gf_node_list_add_child
    - memset
    - gf_node_list_del_child
    - gf_node_unregister
    - dom_node_changed
    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:
    - check_dom_parents
    - GF_JS_EXCEPTION
    - gf_node_get_tag
    - JS_IsNull
    - dom_node_inserted
    - JS_DupValue
    - JS_IsObject
    - gf_node_list_find_child
    - dom_get_node
    - js_throw_err
    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:
    - check_dom_parents
    - GF_JS_EXCEPTION
    - gf_node_get_tag
    - dom_node_inserted
    - JS_DupValue
    - JS_IsObject
    - dom_get_node
    - js_throw_err
    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_JS_EXCEPTION
    - gf_node_get_tag
    - svg_mark_gc
    - gf_node_list_del_child
    - dom_node_inserted
    - JS_DupValue
    - JS_IsObject
    - gf_node_list_find_child
    - dom_get_node
    - gf_node_unregister
    - js_throw_err
    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_get_node
    - svg_mark_gc
    - JS_DupValue
    - JS_IsObject
    - gf_node_list_del_child
    - gf_node_unregister
    - js_throw_err
    - dom_node_changed
    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:
    - JS_ToBool
    - dom_node_construct
    - gf_node_clone
    - dom_get_node
    - js_throw_err
    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:
    - dom_get_node
    - gf_node_get_tag
    - 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:
    - dom_get_node
    - js_throw_err
    - JS_IsObject
    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:
    - gf_crc_32
    - gf_node_get_parent
    - strcmp
    - strlen
    - strncmp
    - node_lookup_namespace_by_tag
    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
    - get_namespace_code_by_prefix
    - strncmp
    - strcmp
    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_JS_EXCEPTION
    - gf_node_get_tag
    - gf_sg_get_namespace
    - gf_node_get_class_name
    - dom_node_construct
    - dom_get_node
    - dom_element_construct
    - node_get_local_name
    - gf_sg_get_namespace_qname
    - node_lookup_namespace_by_tag
    - JS_NewString
    - dom_node_get_sibling
    - dom_nodelist_construct
    - dom_document_construct
    - gf_node_get_parent
    - JS_NewInt32
    - gf_dom_flatten_textContent
    - gf_free
    - dom_get_doc
    - gf_sg_get_namespace_code
    - gf_node_list_get_child
    - gf_xml_get_element_namespace
    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:
    - memset
    - gf_node_changed
    - gf_dom_set_textContent
    - gf_node_dirty_set
    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_JS_EXCEPTION
    - gf_node_get_tag
    - gf_free
    - JS_ToCString
    - dom_node_set_textContent
    - JS_FreeCString
    - gf_strdup
    - dom_get_node
    - dom_node_changed
    - JS_CHECK_STRING
    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:
    - GF_JS_EXCEPTION
    - dom_element_construct
    - JS_GetGlobalObject
    - dom_get_doc
    - JS_FreeValue
    - JS_GetPropertyStr
    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
    - js_throw_err
    - dom_get_doc
    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
    - GF_JS_EXCEPTION
    - dom_element_construct
    - dom_get_doc
    - gf_xml_get_element_tag
    - gf_sg_get_namespace_code_from_name
    - gf_node_new
    - gf_sg_add_namespace
    - JS_FreeCString
    - gf_strdup
    - JS_CHECK_STRING
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - dom_get_doc
    - gf_node_new
    - JS_FreeCString
    - dom_text_construct
    - gf_strdup
    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:
    - xml_doc_gather_nodes
    - gf_node_get_class_name
    - gf_node_register
    - strcmp
    - 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_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - xml_doc_gather_nodes
    - dom_get_doc
    - JS_SetOpaque
    - GF_SAFEALLOC
    - JS_FreeCString
    - strcmp
    - JS_CHECK_STRING
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - dom_element_construct
    - dom_get_doc
    - JS_FreeCString
    - strcmp
    - JS_CHECK_STRING
    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_JS_EXCEPTION
    - JS_ToCString
    - strchr
    - gf_free
    - JS_NewString
    - gf_crc_32
    - gf_sg_get_namespace_code_from_name
    - gf_node_get_attribute_by_name
    - JS_FreeCString
    - gf_node_get_name
    - strcmp
    - strlen
    - strncmp
    - dom_get_node
    - gf_xml_get_element_namespace
    - gf_svg_dump_attribute
    - JS_CHECK_STRING
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_sg_get_namespace_code_from_name
    - gf_node_get_attribute_by_name
    - gf_sg_get_namespace_code
    - JS_FreeCString
    - strcmp
    - dom_get_node
    - JS_CHECK_STRING
    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_JS_EXCEPTION
    - JS_ToCString
    - strchr
    - gf_free
    - gf_sg_get_namespace_code_from_name
    - gf_xml_get_attribute_tag
    - gf_sg_get_namespace_code
    - JS_FreeCString
    - gf_svg_delete_attribute_value
    - strcmp
    - dom_get_node
    - dom_node_changed
    - JS_CHECK_STRING
    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_node_get_attribute_by_tag
    - gf_dom_listener_count
    - gf_assert
    - gf_dom_listener_get
    - gf_strdup
    - gf_dom_listener_build
    - gf_dom_add_text_node
    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
    - GF_LOG
    - gf_assert
    - gf_svg_create_attribute_value
    - GF_SAFEALLOC
    - strcmp
    - gf_strdup
    - dom_node_changed
    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:
    - strchr
    - gf_free
    - gf_node_get_attribute_by_tag
    - gf_svg_parse_attribute
    - GF_LOG
    - gf_node_get_attribute_by_name
    - gf_svg_parse_element_id
    - gf_sg_get_namespace_code
    - strcmp
    - gf_smil_anim_get_target
    - gf_strdup
    - gf_node_dirty_set
    - strstr
    - dom_node_changed
    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_sg_get_namespace_code_from_name
    - gf_xml_get_element_namespace
    - gf_svg_set_attributeNS
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - strchr
    - JS_IsBool
    - sprintf
    - JS_ToBool
    - JS_ToFloat64
    - gf_dom_full_set_attribute
    - JS_IsNumber
    - gf_dom_add_handler_listener
    - gf_svg_set_attribute
    - JS_ToInt32
    - gf_sg_add_namespace
    - JS_IsInteger
    - JS_FreeCString
    - gf_dom_event_type_by_name
    - dom_get_node
    - JS_CHECK_STRING
    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_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - xml_doc_gather_nodes
    - JS_SetOpaque
    - GF_SAFEALLOC
    - JS_FreeCString
    - strcmp
    - dom_get_node
    - JS_CHECK_STRING
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_node_set_id
    - gf_node_get_name_and_id
    - gf_node_remove_id
    - JS_FreeCString
    - gf_sg_get_max_node_id
    - dom_get_node
    - JS_CHECK_STRING
    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:
    - gather_text
    - gf_dynstrcat
    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_JS_EXCEPTION
    - gf_free
    - JS_NewString
    - gf_node_get_class_name
    - gather_text
    - 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:
    - GF_JS_EXCEPTION
    - JS_NewString
    - JS_NewInt32
    - strlen
    - dom_get_node
    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_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_FreeCString
    - gf_strdup
    - dom_get_node
    - dom_node_changed
    - JS_CHECK_STRING
    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:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:
    - OBJECT_TO_JSValue
    - JS_NewInt64
    - JS_NewFloat64
    - dom_element_construct
    - FIX2FLT
    - JS_NewString
    - dom_document_construct
    - JS_GetOpaque
    - gf_dom_event_get_name
    - gf_utf8_wcstombs
    - gf_dom_get_key_name
    - FIX2INT
    - JS_NewInt32
    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:
    - JS_GetRuntime
    - JS_GetGlobalObject
    - GF_LOG
    - define_dom_exception
    - JS_FreeValue
    - JS_NewInt32
    - GF_SAFEALLOC
    - SETUP_JSCLASS
    - gf_list_new
    - JS_SetPropertyStr
    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_list_count
    - gf_free
    - JS_IsUndefined
    - JS_SetOpaque
    - gf_list_del_item
    - JS_FreeValueRT
    - gf_list_get
    - dom_get_node
    - gf_node_unregister
    - html_media_element_js_finalize
    - 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_list_del
    - gf_free
    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_FreeValue
    - JS_GetGlobalObject
    - 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_xml_sax_del
    - gf_list_del
    - gf_xml_sax_parse_file
    - GF_SAFEALLOC
    - gf_xml_sax_new
    - gf_sg_new
    - gf_sg_del
    - gf_list_new
    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_sg_get_namespace
    - memset
    - gf_sg_add_namespace
    - gf_node_new
    - GF_SAFEALLOC
    - gf_node_get_name
    - gf_list_add
    - gf_sg_get_namespace_code_from_name
    - gf_node_list_add_child
    - gf_list_last
    - strcmp
    - gf_free
    - gf_node_set_id
    - GF_LOG
    - gf_dom_event_fire
    - stricmp
    - gf_sg_get_namespace_code
    - gf_node_register
    - gf_strdup
    - gf_sg_get_max_node_id
    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:
    - gf_list_last
    - strcmp
    - 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:
    - strchr
    - gf_free
    - gf_dom_event_fire
    - memset
    - strcmp
    - strlen
    - gf_strdup
    - gf_list_last
    - gf_dom_add_text_node
    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_xml_sax_del
    - gf_list_del
    - gf_xml_sax_parse_file
    - gf_xml_sax_new
    - gf_list_new
    - memset
    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_LOG
    - gf_node_get_scene_time
    - gf_node_get_log_name
    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: 1
    functionLinenumber: 48
    functionLinenumberEnd: 148
    functionName: gf_smil_timing_compute_active_duration
    functionSourceFile: /src/gpac/src/scenegraph/smil_timing.c
    functionUses: 0
    functionsReached:
    - MIN
    - gf_node_get_tag
    - 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: 2
    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_SMIL_TIME_IS_CLOCK
    - gf_list_get
    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_SMIL_TIME_IS_CLOCK
    - gf_list_count
    - gf_node_get_scene_time
    - gf_smil_timing_get_interval_end
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_node_get_log_name
    - gf_smil_timing_compute_active_duration
    - gf_list_get
    - memset
    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_SMIL_TIME_IS_CLOCK
    - gf_list_count
    - gf_node_get_scene_time
    - gf_smil_timing_get_interval_end
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_node_get_log_name
    - gf_smil_timing_compute_active_duration
    - gf_list_get
    - memset
    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_insert
    - gf_list_get
    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_add
    - gf_list_del_item
    - gf_list_find
    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_scene_time
    - gf_node_get_tag
    - gf_malloc
    - gf_node_get_attribute_by_tag
    - GF_LOG
    - gf_node_get_log_name
    - gf_smil_timing_add_to_sg
    - GF_SAFEALLOC
    - gf_svg_flatten_attributes
    - gf_smil_timing_get_next_interval
    - gf_smil_timing_get_first_interval
    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_dom_listener_del
    - gf_node_unregister
    - gf_list_get
    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_node_get_scene_time
    - gf_free
    - GF_LOG
    - gf_node_get_log_name
    - gf_list_del_item
    - gf_smil_timing_reset_time_list
    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_count
    - gf_node_get_scene_time
    - gf_node_dirty_parent_graph
    - gf_smil_timing_notify_time
    - gf_list_enum
    - gf_list_del_item
    - gf_smil_timing_add_to_sg
    - gf_list_get
    - gf_list_rem
    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_SMIL_TIME_IS_CLOCK
    - gf_node_replace
    - GF_LOG
    - gf_list_get
    - gf_node_get_log_name
    - gf_node_get_num_instances
    - gf_node_register
    - gf_smil_mark_modified
    - gf_node_unregister
    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_smil_anim_reset_variables
    - gf_list_add
    - gf_list_del_item
    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:
    - gf_node_get_scene_time
    - FLT2FIX
    - gf_smil_timing_get_normalized_simple_time
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_dom_event_fire
    - gf_node_get_log_name
    - gf_node_traverse
    - gf_smil_discard
    - gf_smil_reorder_anim
    - gf_svg_is_animation_tag
    - gf_list_del_item
    - gf_node_register
    - gf_smil_timing_get_next_interval
    - gf_smil_mark_modified
    - memset
    - gf_node_unregister
    - SMIL_Timing_RTI*::evaluate
    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:
    - floor
    - FLT2FIX
    - MIN
    - MAX
    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_node_get_scene_time
    - gf_smil_timing_get_interval_end
    - GF_LOG
    - gf_smil_timing_print_interval
    - gf_node_get_log_name
    - gf_smil_timing_get_next_interval
    - gf_smil_timing_compute_active_duration
    - 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_list_count
    - gf_free
    - GF_LOG
    - gf_list_get
    - GF_SAFEALLOC
    - gf_sg_find_node_by_name
    - 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_list_count
    - gf_free
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - 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:
    - JS_NewString
    - JS_NewError
    - JS_NewInt32
    - vsnprintf
    - va_end
    - JS_DefinePropertyValueStr
    - JS_IsException
    - va_start
    - JS_Throw
    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_NewError
    - JS_DefinePropertyValueStr
    - JS_IsException
    - JS_NewInt32
    - JS_Throw
    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:
    - gf_mulfix
    - gf_floor
    - FIX2INT
    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:
    - gf_divfix
    - MIN
    - MAX
    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:
    - JS_NewFloat64
    - ScriptAction
    - JS_GetContextOpaque
    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:
    - JS_NewFloat64
    - ScriptAction
    - JS_GetContextOpaque
    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:
    - JS_NewString
    - gf_free
    - ScriptAction
    - JS_GetContextOpaque
    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_JS_EXCEPTION
    - GF_LOG
    - JS_SetOpaque
    - NewJSField
    - gf_assert
    - JS_GetOpaque
    - GF_SAFEALLOC
    - gf_node_register
    - JS_IsObject
    - gf_list_new
    - gf_list_add
    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:
    - node_get_binding
    - JS_GetScriptStack
    - JS_DupValue
    - JS_GetContextOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_ToCString
    - JS_IsBool
    - JS_IsString
    - JS_GetContextOpaque
    - JS_FreeCString
    - JSScriptFromFile
    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:
    - node_get_binding
    - JS_GetScriptStack
    - JS_DupValue
    - JS_GetContextOpaque
    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
    - GF_JS_EXCEPTION
    - dom_element_construct
    - gf_sm_load_svg_from_string
    - JS_GetContextOpaque
    - 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
    - GF_JS_EXCEPTION
    - JS_IsString
    - JS_GetContextOpaque
    - node_get_binding
    - JS_FreeCString
    - JS_IsInteger
    - JS_DupValue
    - gf_sg_find_node_by_name
    - JS_ToInt32
    - JS_GetScriptStack
    - gf_sg_find_node
    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:
    - gf_node_get_scene_time
    - JS_IsUndefined
    - gf_node_get_private
    - js_dump_error
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_IsNull
    - do_js_gc
    - JS_IsException
    - memset
    - gf_sg_script_to_qjs_field
    - gf_js_lock
    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_JS_EXCEPTION
    - JS_GetScript
    - JS_IsString
    - gf_assert
    - GF_SAFEALLOC
    - JS_IsObject
    - JS_FreeAtom
    - gf_list_add
    - JS_AtomToCString
    - JS_ToCString
    - JS_IsFunction
    - JS_DupValue
    - gf_sg_script_field_new
    - gf_node_get_field
    - atoi
    - gf_sg_route_new
    - gf_list_enum
    - strnicmp
    - JS_FreeCString
    - gf_list_new
    - gf_free
    - GF_LOG
    - stricmp
    - JS_ValueToAtom
    - JS_GetOpaque
    - gf_strdup
    - gf_node_get_field_by_name
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_list_count
    - gf_node_get_field
    - atoi
    - gf_list_get
    - gf_sg_route_del
    - gf_list_enum
    - gf_assert
    - JS_IsString
    - JS_GetOpaque
    - strnicmp
    - JS_IsNull
    - JS_FreeCString
    - JS_FreeValue
    - JS_IsObject
    - strcmp
    - gf_node_get_field_by_name
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - ScriptAction
    - JS_IsString
    - JS_GetContextOpaque
    - JS_FreeCString
    - JS_IsObject
    - JS_GetAnyOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - ScriptAction
    - JS_IsString
    - JS_GetContextOpaque
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_list_count
    - gf_list_del
    - gf_node_unregister
    - JS_IsString
    - gf_sm_load_bt_from_string
    - JS_GetContextOpaque
    - JS_FreeCString
    - gf_list_get
    - memset
    - gf_sg_script_to_qjs_field
    - JS_GetScriptStack
    - gf_list_rem
    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_changed_internal
    - GF_FieldInfo*::on_event_in
    - gf_node_event_out
    - JS_GetScript
    - gf_list_enum
    - gf_node_event_out_proto
    - JS_GetContextOpaque
    - gf_sg_script_event_in
    - gf_sg_proto_propagate_event
    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_JS_EXCEPTION
    - gf_node_get_field
    - gf_sg_script_to_node_field
    - JS_GetScript
    - gf_list_enum
    - JS_GetScriptStack
    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:
    - sprintf
    - FIX2FLT
    - gf_dynstrcat
    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_IsUndefined
    - JS_SetOpaque
    - 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:
    - sprintf
    - JS_ToBool
    - JS_ToFloat64
    - JS_ToCString
    - gf_free
    - JS_NewString
    - JS_ToInt32
    - JS_FreeCString
    - gf_sg_vrml_is_sf_field
    - gf_dynstrcat
    - JS_IsObject
    - JS_GetAnyOpaque
    - sffield_toString
    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:
    - GF_JS_EXCEPTION
    - JS_GetScript
    - gf_node_x3d_type_by_class_name
    - JS_IsString
    - node_get_binding
    - gf_node_new
    - gf_node_unregister
    - JS_NewObjectClass
    - JS_ToCString
    - gf_sg_proto_create_instance
    - JS_DupValue
    - JS_IsException
    - atoi
    - strnicmp
    - JS_FreeCString
    - JS_GetScriptStack
    - gf_sg_proto_load_code
    - gf_node_mpeg4_type_by_class_name
    - gf_node_init
    - JS_SetOpaque
    - NewJSField
    - gf_sg_find_proto
    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
    - JS_ObjectDestroyed
    - GF_LOG
    - gf_node_get_class_name
    - JS_GetOpaque
    - gf_node_get_name
    - gf_node_unregister
    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: gf_strcat
      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:
    - GF_JS_EXCEPTION
    - gf_node_get_name_and_id
    - JS_NewString
    - gf_strcat
    - gf_node_get_class_name
    - JS_GetOpaque
    - snprintf
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - gf_node_get_scene_time
    - JS_GetOpaque
    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_JS_EXCEPTION
    - gf_node_get_field
    - FIX2FLT
    - JS_NewFloat64
    - atoi
    - ScriptAction
    - gf_assert
    - JS_GetOpaque
    - strnicmp
    - JS_FreeCString
    - gf_node_get_field_by_name
    - JS_DupValue
    - strcmp
    - JS_SetPropertyStr
    - gf_sg_script_to_qjs_field
    - JS_GetScriptStack
    - JS_AtomToCString
    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_sg_script_to_node_field
    - gf_node_get_field
    - JS_DefinePropertyValue
    - gf_node_get_tag
    - atoi
    - gf_sg_proto_mark_field_loaded
    - gf_assert
    - strnicmp
    - JS_GetOpaque
    - JS_FreeCString
    - JS_DupValue
    - gf_node_get_field_by_name
    - JS_AtomToCString
    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:
    - JS_ObjectDestroyed
    - JS_GetAnyOpaque
    - gf_free
    - 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:
    - gf_sg_vrml_field_pointer_new
    - gf_malloc
    - JS_SetOpaque
    - NewJSField
    - MIN
    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
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - JS_IsInteger
    - JS_IsObject
    - JS_IsException
    - SFImage_Create
    - JS_ToInt32
    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
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_NewInt32
    - JS_GetScriptStack
    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_JS_EXCEPTION
    - gf_free
    - gf_malloc
    - JS_GetOpaque
    - Script_FieldChanged
    - MAX
    - JS_ToInt32
    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:
    - JS_NewObjectClass
    - JS_ToFloat64
    - FLT2FIX
    - SFVec2f_Create
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - GF_LOG
    - JS_GetOpaque
    - 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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_NewFloat64
    - FIX2FLT
    - FLT2FIX
    - gf_divfix
    - JS_GetOpaque
    - gf_v2d_len
    - JS_IsObject
    - gf_mulfix
    - SFVec2f_Create
    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:
    - JS_NewObjectClass
    - JS_ToFloat64
    - FLT2FIX
    - SFVec3f_Create
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - GF_LOG
    - JS_GetOpaque
    - Script_FieldChanged
    linkageType: ''
    returnType: JSValue
    signature: JSValue vec3f_setProperty(JSContext *c, JSValueConst obj, JSValueConst
      value, int magic)
  - BBCount: 21
    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:1799,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1800,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 5
    argNames:
    - c
    - obj
    - argc
    - argv
    - op
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1805
      start: 1738
    functionDepth: 3
    functionLinenumber: 1738
    functionLinenumberEnd: 1805
    functionName: vec3f_operand
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_NewFloat64
    - FIX2FLT
    - FLT2FIX
    - gf_divfix
    - gf_vec_norm
    - gf_vec_dot
    - JS_GetOpaque
    - SFVec3f_Create
    - JS_IsObject
    - gf_vec_len
    - gf_mulfix
    - gf_vec_cross
    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:1809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1807
    functionDepth: 4
    functionLinenumber: 1807
    functionLinenumberEnd: 1810
    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:1813,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1814
      start: 1811
    functionDepth: 4
    functionLinenumber: 1811
    functionLinenumberEnd: 1814
    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:1817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1818
      start: 1815
    functionDepth: 4
    functionLinenumber: 1815
    functionLinenumberEnd: 1818
    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:1821,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1822
      start: 1819
    functionDepth: 4
    functionLinenumber: 1819
    functionLinenumberEnd: 1822
    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:1825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1826
      start: 1823
    functionDepth: 4
    functionLinenumber: 1823
    functionLinenumberEnd: 1826
    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:1829,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1830
      start: 1827
    functionDepth: 4
    functionLinenumber: 1827
    functionLinenumberEnd: 1830
    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:1833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1834
      start: 1831
    functionDepth: 4
    functionLinenumber: 1831
    functionLinenumberEnd: 1834
    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:1837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1838
      start: 1835
    functionDepth: 4
    functionLinenumber: 1835
    functionLinenumberEnd: 1838
    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:1841,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1842
      start: 1839
    functionDepth: 4
    functionLinenumber: 1839
    functionLinenumberEnd: 1842
    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:1850,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:1851,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1858,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: 1860
      start: 1846
    functionDepth: 2
    functionLinenumber: 1846
    functionLinenumberEnd: 1860
    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:1868,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1871,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1871,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1871,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1871,1
    - Dst: JS_IsNumber
      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: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1877,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1878,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1879,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1879,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1879,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1879,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1879,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1884,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1885,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1885,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1886,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1887,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/scenegraph/vrml_js.c:1890,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1891,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1892,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1892,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:1896,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:1897,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1898,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/scenegraph/vrml_js.c:1900,1
    - Dst: gf_vec_len
      Src: /src/gpac/src/scenegraph/vrml_js.c:1901,1
    - Dst: gf_divfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1902,1
    - Dst: gf_vec_dot
      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_atan2
      Src: /src/gpac/src/scenegraph/vrml_js.c:1903,1
    - Dst: gf_sqrt
      Src: /src/gpac/src/scenegraph/vrml_js.c:1903,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1903,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1904,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: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1905,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1905,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1906,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/scenegraph/vrml_js.c:1906,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1907,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: 1909
      start: 1862
    functionDepth: 3
    functionLinenumber: 1862
    functionLinenumberEnd: 1909
    functionName: SFRotationConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_divfix
    - gf_sqrt
    - JS_IsNumber
    - gf_vec_dot
    - JS_GetOpaque
    - JS_IsObject
    - gf_vec_len
    - gf_mulfix
    - SFRotation_Create
    - gf_atan2
    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:1913,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1914,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
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1923,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:1923,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1926
      start: 1911
    functionDepth: 1
    functionLinenumber: 1911
    functionLinenumberEnd: 1926
    functionName: rot_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    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:1933,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1934,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:1936,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:1937,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1943,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1948,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1953,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:1958,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:1965,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1967
      start: 1928
    functionDepth: 11
    functionLinenumber: 1928
    functionLinenumberEnd: 1967
    functionName: rot_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - GF_LOG
    - JS_GetOpaque
    - 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:1973,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1974,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1976,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1977,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1979
      start: 1969
    functionDepth: 3
    functionLinenumber: 1969
    functionLinenumberEnd: 1979
    functionName: rot_getAxis
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - SFVec3f_Create
    - JS_GetOpaque
    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:1984,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:1985,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:1987,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:1988,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1990
      start: 1980
    functionDepth: 3
    functionLinenumber: 1980
    functionLinenumberEnd: 1990
    functionName: rot_inverse
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - SFRotation_Create
    - JS_GetOpaque
    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: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:2000,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2001,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2003,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2004,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2007,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2008,1
    - Dst: gf_quat_multiply
      Src: /src/gpac/src/scenegraph/vrml_js.c:2009,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2010,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2012,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2013,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2015
      start: 1992
    functionDepth: 3
    functionLinenumber: 1992
    functionLinenumberEnd: 2015
    functionName: rot_multiply
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - SFRotation_Create
    - gf_quat_multiply
    - JS_GetOpaque
    - JS_IsObject
    - gf_quat_to_rotation
    - gf_quat_from_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:2023,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2024,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2026,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2027,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2030,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2031,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/scenegraph/vrml_js.c:2034,1
    - Dst: gf_mx_add_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2035,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/scenegraph/vrml_js.c:2036,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2037,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2038,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2017
    functionDepth: 3
    functionLinenumber: 2017
    functionLinenumberEnd: 2040
    functionName: rot_multVec
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - gf_mx_init
    - gf_mx_add_rotation
    - JS_GetOpaque
    - gf_mx_apply_vec
    - SFVec3f_Create
    - JS_IsObject
    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: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:2048,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2049,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2052,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2053,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2059,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2041
    functionDepth: 11
    functionLinenumber: 2041
    functionLinenumberEnd: 2061
    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: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:2072,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2073,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2076,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2077,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2080,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2080,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2082,1
    - Dst: gf_quat_from_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2083,1
    - Dst: gf_quat_slerp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2084,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2084,1
    - Dst: gf_quat_to_rotation
      Src: /src/gpac/src/scenegraph/vrml_js.c:2085,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2086,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2087,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2089
      start: 2062
    functionDepth: 3
    functionLinenumber: 2062
    functionLinenumberEnd: 2089
    functionName: rot_slerp
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_quat_slerp
    - SFRotation_Create
    - JS_GetOpaque
    - JS_IsObject
    - gf_quat_to_rotation
    - gf_quat_from_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:2096,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:2097,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2103,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: 2105
      start: 2092
    functionDepth: 2
    functionLinenumber: 2092
    functionLinenumberEnd: 2105
    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:2109,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2111,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2112,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2113,1
    - Dst: SFColor_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2114,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2114,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: 2116
      start: 2106
    functionDepth: 3
    functionLinenumber: 2106
    functionLinenumberEnd: 2116
    functionName: SFColorConstructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - SFColor_Create
    - JS_ToFloat64
    - FLT2FIX
    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:2119,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2120,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:2125,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2125,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2128,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2128,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2134
      start: 2117
    functionDepth: 1
    functionLinenumber: 2117
    functionLinenumberEnd: 2134
    functionName: color_getProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    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:2141,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2142,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:2145,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2151,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2156,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2161,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2168,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2170
      start: 2136
    functionDepth: 11
    functionLinenumber: 2136
    functionLinenumberEnd: 2170
    functionName: color_setProperty
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - GF_LOG
    - JS_GetOpaque
    - 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:2176,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2177,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: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2182,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2182,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2183,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2183,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2185,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2186,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2187,1
    - Dst: SFColor_fromHSV
      Src: /src/gpac/src/scenegraph/vrml_js.c:2188,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2189,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2190,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2192
      start: 2172
    functionDepth: 11
    functionLinenumber: 2172
    functionLinenumberEnd: 2192
    functionName: color_setHSV
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - SFColor_fromHSV
    - JS_GetOpaque
    - 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:2199,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2200,1
    - Dst: SFColor_toHSV
      Src: /src/gpac/src/scenegraph/vrml_js.c:2204,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/scenegraph/vrml_js.c:2205,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:2206,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
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2209,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2209,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2209,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2210,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2210,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2210,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2212
      start: 2194
    functionDepth: 2
    functionLinenumber: 2194
    functionLinenumberEnd: 2212
    functionName: color_getHSV
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_NewArray
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_IsException
    - SFColor_toHSV
    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:2218,1
    - Dst: NewJSField
      Src: /src/gpac/src/scenegraph/vrml_js.c:2219,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2222,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:2225,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:2229,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2229,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2230,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2232,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2235,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: 2240
      start: 2214
    functionDepth: 2
    functionLinenumber: 2214
    functionLinenumberEnd: 2240
    functionName: genmf_Constructor
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_SetOpaque
    - NewJSField
    - JS_GetOpaque
    - JS_DupValue
    - 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:2244,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: 2245
      start: 2242
    functionDepth: 3
    functionLinenumber: 2242
    functionLinenumberEnd: 2245
    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:2248,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: 2249
      start: 2246
    functionDepth: 3
    functionLinenumber: 2246
    functionLinenumberEnd: 2249
    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:2252,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: 2253
      start: 2250
    functionDepth: 3
    functionLinenumber: 2250
    functionLinenumberEnd: 2253
    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:2256,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: 2257
      start: 2254
    functionDepth: 3
    functionLinenumber: 2254
    functionLinenumberEnd: 2257
    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:2260,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: 2261
      start: 2258
    functionDepth: 3
    functionLinenumber: 2258
    functionLinenumberEnd: 2261
    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:2264,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: 2265
      start: 2262
    functionDepth: 3
    functionLinenumber: 2262
    functionLinenumberEnd: 2265
    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:2268,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: 2269
      start: 2266
    functionDepth: 3
    functionLinenumber: 2266
    functionLinenumberEnd: 2269
    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:2275,1
    - Dst: JS_ObjectDestroyed
      Src: /src/gpac/src/scenegraph/vrml_js.c:2277,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:2280,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/scenegraph/vrml_js.c:2285,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2286,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_js.c:2290,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:2293,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2295,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - rt
    - obj
    - is_js_call
    argTypes:
    - JSRuntime*
    - JSValue
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2296
      start: 2271
    functionDepth: 4
    functionLinenumber: 2271
    functionLinenumberEnd: 2296
    functionName: array_finalize_ex
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - JS_ObjectDestroyed
    - GF_LOG
    - JS_FreeValueRT
    - JS_GetAnyOpaque
    - gf_node_unregister_children
    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:2300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2301
      start: 2298
    functionDepth: 5
    functionLinenumber: 2298
    functionLinenumberEnd: 2301
    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:2308,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/scenegraph/vrml_js.c:2310,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2312,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2315,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2316,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2318,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2320,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:2320,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2322,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2324,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2325,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2327,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/vrml_js.c:2332,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2334,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:2334,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:2334,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2340,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 4
    argNames:
    - c
    - obj
    - atom
    - receiver
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2343
      start: 2304
    functionDepth: 3
    functionLinenumber: 2304
    functionLinenumberEnd: 2343
    functionName: array_getElement
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_NewCFunction
    - gf_node_list_get_child
    - node_get_binding
    - JS_FreeCString
    - JS_DupValue
    - strcmp
    - JS_NewInt32
    - JS_AtomIsArrayIndex
    - JS_GetAnyOpaque
    - JS_GetScriptStack
    - JS_AtomToCString
    - gf_node_list_get_count
    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:2351,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2353,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_js.c:2358,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:2361,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2365,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2367,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:2392,1
    - Dst: gf_node_list_del_child_idx
      Src: /src/gpac/src/scenegraph/vrml_js.c:2394,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:2395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:2399,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:2405,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_js.c:2406,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2411,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:2412,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2423,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2427,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2431,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scenegraph/vrml_js.c:2436,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 84
    argCount: 3
    argNames:
    - c
    - ptr
    - value
    argTypes:
    - JSContext*
    - GF_JSField*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2439
      start: 2346
    functionDepth: 4
    functionLinenumber: 2346
    functionLinenumberEnd: 2439
    functionName: array_setLength
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_NewFloat64
    - gf_free
    - JS_NewString
    - gf_node_list_del_child_idx
    - GF_LOG
    - gf_node_unregister
    - JS_FreeValue
    - JS_IsInteger
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_get_sf_type
    - JS_NewInt32
    - gf_realloc
    - gf_sg_vrml_mf_reset
    - JS_ToInt32
    - gf_node_unregister_children
    - gf_node_list_get_count
    - SFVec2f_Create
    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:2454,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/scenegraph/vrml_js.c:2457,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2459,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2460,1
    - Dst: array_setLength
      Src: /src/gpac/src/scenegraph/vrml_js.c:2461,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2463,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:2469,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:2471,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:2494,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2501,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2504,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2508,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2512,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2518,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2525,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2531,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2539,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:2545,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:2546,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2547,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:2549,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2550,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2552,1
    - Dst: JS_IsInteger
      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_IsNumber
      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_IsString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2562,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2573,1
    - Dst: gf_node_list_del_child_idx
      Src: /src/gpac/src/scenegraph/vrml_js.c:2579,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/vrml_js.c:2583,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_js.c:2584,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:2587,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:2587,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:2590,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2592,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2597,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2598,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2606,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2609,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2613,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2614,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2617,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2622,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2625,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2626,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2627,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2632,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2635,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2636,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2638,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2642,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2643,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2646,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2647,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2650,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2651,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:2654,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:2655,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2659,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: 2661
      start: 2442
    functionDepth: 11
    functionLinenumber: 2442
    functionLinenumberEnd: 2661
    functionName: array_setElement
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_IsString
    - node_get_binding
    - JS_IsNull
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_mf_insert
    - gf_node_unregister
    - JS_AtomToCString
    - JS_NewObjectClass
    - JS_ToCString
    - JS_FreeValue
    - Script_FieldChanged
    - JS_DupValue
    - JS_AtomIsArrayIndex
    - gf_realloc
    - gf_sg_vrml_field_copy
    - JS_ToBool
    - JS_ToFloat64
    - JS_IsBool
    - JS_NewString
    - JS_IsNumber
    - JS_FreeCString
    - strcmp
    - JS_NewInt32
    - JS_ToInt32
    - JS_GetScriptStack
    - gf_node_list_get_count
    - JS_NewBool
    - FLT2FIX
    - gf_free
    - JS_IsUndefined
    - gf_node_list_del_child_idx
    - gf_node_list_insert_child
    - array_setLength
    - JS_GetOpaque
    - JS_IsInteger
    - gf_node_register
    - gf_strdup
    - 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:2667,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: 2668
      start: 2665
    functionDepth: 3
    functionLinenumber: 2665
    functionLinenumberEnd: 2668
    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:2673,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: 2674
      start: 2671
    functionDepth: 3
    functionLinenumber: 2671
    functionLinenumberEnd: 2674
    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:2679,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: 2680
      start: 2677
    functionDepth: 3
    functionLinenumber: 2677
    functionLinenumberEnd: 2680
    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:2685,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: 2686
      start: 2683
    functionDepth: 3
    functionLinenumber: 2683
    functionLinenumberEnd: 2686
    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:2696,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2698,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2699,1
    - Dst: gf_sg_js_event_add_listener
      Src: /src/gpac/src/scenegraph/vrml_js.c:2701,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: 2702
      start: 2693
    functionDepth: 7
    functionLinenumber: 2693
    functionLinenumberEnd: 2702
    functionName: vrml_event_add_listener
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_assert
    - gf_sg_js_event_add_listener
    - JS_GetOpaque
    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:2707,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/scenegraph/vrml_js.c:2708,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2709,1
    - Dst: gf_sg_js_event_remove_listener
      Src: /src/gpac/src/scenegraph/vrml_js.c:2711,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: 2712
      start: 2704
    functionDepth: 6
    functionLinenumber: 2704
    functionLinenumberEnd: 2712
    functionName: vrml_event_remove_listener
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_sg_js_event_remove_listener
    - gf_assert
    - JS_GetOpaque
    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:2831,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:2833,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2834,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:2839,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2841,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2842,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:2848,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:2850,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2852
      start: 2828
    functionDepth: 1
    functionLinenumber: 2828
    functionLinenumberEnd: 2852
    functionName: field_gc_mark
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - gf_list_enum
    - gf_assert
    - JS_MarkValue
    - JS_GetAnyOpaque
    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: 2862
      start: 2854
    functionDepth: 0
    functionLinenumber: 2854
    functionLinenumberEnd: 2862
    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: 2880
      start: 2862
    functionDepth: 0
    functionLinenumber: 2862
    functionLinenumberEnd: 2880
    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:2882,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/vrml_js.c:2883,1
    - Dst: SETUP_JSCLASS_BASIC
      Src: /src/gpac/src/scenegraph/vrml_js.c:2885,1
    - Dst: SETUP_JSCLASS_BASIC
      Src: /src/gpac/src/scenegraph/vrml_js.c:2886,1
    - Dst: SETUP_JSCLASS_BASIC
      Src: /src/gpac/src/scenegraph/vrml_js.c:2887,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:2893,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: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: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2905,1
    - Dst: SETUP_JSCLASS
      Src: /src/gpac/src/scenegraph/vrml_js.c:2906,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_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2910,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2910,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2911,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2911,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:2914,1
    - Dst: JS_SetOpaque
      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:2918,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2919,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2920,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2921,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:2924,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/scenegraph/vrml_js.c:2925,1
    - Dst: countof
      Src: /src/gpac/src/scenegraph/vrml_js.c:2925,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:2926,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2930,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2931,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2933,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:2934,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 37
    argCount: 2
    argNames:
    - sc
    - script
    argTypes:
    - GF_ScriptPriv*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2936
      start: 2880
    functionDepth: 1
    functionLinenumber: 2880
    functionLinenumberEnd: 2936
    functionName: vrml_js_init_api
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_GetRuntime
    - JS_NewObjectClass
    - JS_NewCFunction
    - SETUP_JSCLASS_BASIC
    - JS_GetGlobalObject
    - countof
    - JS_NewObject
    - JS_SetOpaque
    - SETUP_JSCLASS
    - JS_SetPropertyStr
    - JS_SetPropertyFunctionList
    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:2952,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:2953,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:2958,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2959,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:2963,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2964,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2968,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:2969,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2970,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:2975,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2977,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2984,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:2987,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2988,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2989,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:2990,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2992,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:2996,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:2997,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:2998,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3000,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3001,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3006,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3007,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3009,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3011,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3012,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3013,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3016,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3017,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3018,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3019,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3021,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3026,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3027,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3028,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3029,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3031,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3032,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/scenegraph/vrml_js.c:3040,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3044,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3046,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3047,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3052,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3054,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3055,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3060,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3062,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3063,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3068,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3070,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3071,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3075,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3077,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3078,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:3085,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3089,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:3090,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3091,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_js.c:3095,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3096,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3103,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_js.c:3111,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3116,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scenegraph/vrml_js.c:3121,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/vrml_js.c:3122,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3124,1
    - Dst: JSScript_NodeModified
      Src: /src/gpac/src/scenegraph/vrml_js.c:3126,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3134,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3135,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3143,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3146,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3151,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scenegraph/vrml_js.c:3152,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3156,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3163,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:3164,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3165,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3166,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3169,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3175,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3176,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:3177,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3179,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3184,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3186,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3190,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3192,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3196,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3198,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3202,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3204,1
    - Dst: Script_FieldChanged
      Src: /src/gpac/src/scenegraph/vrml_js.c:3212,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: 3213
      start: 2940
    functionDepth: 11
    functionLinenumber: 2940
    functionLinenumberEnd: 3213
    functionName: gf_sg_script_to_node_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 2
    functionsReached:
    - JS_IsNull
    - gf_sg_vrml_mf_alloc
    - JS_IsObject
    - gf_node_unregister
    - JS_ToCString
    - Script_FieldChanged
    - JSScript_NodeModified
    - gf_sg_vrml_field_copy
    - JS_ToBool
    - JS_ToFloat64
    - JS_FreeCString
    - strcmp
    - JS_ToInt32
    - FLT2FIX
    - gf_free
    - JS_IsUndefined
    - JS_GetOpaque
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - JS_GetAnyOpaque
    - gf_node_unregister_children
    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:3220,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3222,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3228,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3234,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3242,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3250,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:3250,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3258,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3266,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:3276,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3277,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3279,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3296,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3297,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3298,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:3302,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3304,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3304,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3310,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3311,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3313,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3313,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3317,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3321,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:3321,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3326,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3326,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: 3332
      start: 3216
    functionDepth: 3
    functionLinenumber: 3216
    functionLinenumberEnd: 3332
    functionName: gf_sg_script_update_cached_object
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - sprintf
    - JS_NewFloat64
    - FIX2FLT
    - JS_NewString
    - GF_LOG
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - node_get_binding
    - JS_SetPropertyUint32
    - JS_DupValue
    - gf_sg_vrml_is_sf_field
    - JS_NewInt32
    - JS_ToInt32
    - JS_GetPropertyUint32
    - gf_node_list_get_count
    - JS_SetPropertyStr
    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: 3348
      start: 3341
    functionDepth: 0
    functionLinenumber: 3341
    functionLinenumberEnd: 3348
    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: 3360
      start: 3349
    functionDepth: 0
    functionLinenumber: 3349
    functionLinenumberEnd: 3360
    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:3372,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3374,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3376,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:3376,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3378,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3380,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:3386,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3387,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3389,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:3399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3410,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:3410,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:3410,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:3410,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3412,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3422,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3425,1
    - Dst: gf_sg_script_update_cached_object
      Src: /src/gpac/src/scenegraph/vrml_js.c:3437,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3438,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3446,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:3446,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: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3468,1
    - Dst: node_get_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:3474,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3475,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3479,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3487,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3489,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3491,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3498,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3500,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/scenegraph/vrml_js.c:3502,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3509,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3511,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3513,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_js.c:3513,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3520,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3522,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:3524,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3531,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3533,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3537,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3544,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3546,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_js.c:3550,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3551,1
    - Dst: JS_NewString
      Src: /src/gpac/src/scenegraph/vrml_js.c:3553,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3563,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3566,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3568,1
    - Dst: SFVec2f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3569,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3579,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3582,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3584,1
    - Dst: SFVec3f_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3585,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3595,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3598,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3600,1
    - Dst: SFRotation_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3601,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3611,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3614,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/scenegraph/vrml_js.c:3616,1
    - Dst: SFColor_Create
      Src: /src/gpac/src/scenegraph/vrml_js.c:3617,1
    - Dst: SETUP_MF_FIELD
      Src: /src/gpac/src/scenegraph/vrml_js.c:3627,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3628,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:3638,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3643,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3644,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3647,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3655,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:3659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3661,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scenegraph/vrml_js.c:3665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3667,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:3670,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:3672,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3677,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3678,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:3679,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3683,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:3684,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3686,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3686,1
    - Dst: get_sf_class
      Src: /src/gpac/src/scenegraph/vrml_js.c:3694,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3699,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scenegraph/vrml_js.c:3704,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_js.c:3705,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3711,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: 3712
      start: 3362
    functionDepth: 4
    functionLinenumber: 3362
    functionLinenumberEnd: 3712
    functionName: gf_sg_script_to_qjs_field
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - JS_NewFloat64
    - JS_GetScript
    - gf_node_get_log_name
    - gf_assert
    - node_get_binding
    - JS_IsNull
    - GF_SAFEALLOC
    - gf_node_get_name
    - gf_list_add
    - JS_NewObjectClass
    - FIX2FLT
    - JS_FreeValue
    - gf_list_find
    - SFVec3f_Create
    - JS_DupValue
    - gf_realloc
    - SFColor_Create
    - JS_NewString
    - gf_list_enum
    - gf_sg_script_update_cached_object
    - JS_NewInt32
    - gf_list_new
    - SFRotation_Create
    - SFVec2f_Create
    - JS_NewBool
    - sprintf
    - gf_free
    - GF_LOG
    - SETUP_MF_FIELD
    - JS_SetOpaque
    - JS_GetOpaque
    - JS_GetAnyOpaque
    - get_sf_class
    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:3716,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:3719,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scenegraph/vrml_js.c:3721,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:3722,1
    - Dst: array_finalize_ex
      Src: /src/gpac/src/scenegraph/vrml_js.c:3734,1
    - Dst: node_finalize_ex
      Src: /src/gpac/src/scenegraph/vrml_js.c:3736,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3740,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - priv
    argTypes:
    - GF_ScriptPriv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3742
      start: 3714
    functionDepth: 5
    functionLinenumber: 3714
    functionLinenumberEnd: 3742
    functionName: JS_ReleaseRootObjects
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - JS_FreeValue
    - array_finalize_ex
    - gf_js_get_rt
    - node_finalize_ex
    - gf_list_pop_back
    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:3750,1
    - Dst: gf_node_get_log_name
      Src: /src/gpac/src/scenegraph/vrml_js.c:3750,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3755,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3757,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3759,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3760,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3762,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3763,1
    - Dst: JS_ReleaseRootObjects
      Src: /src/gpac/src/scenegraph/vrml_js.c:3767,1
    - Dst: gf_sg_js_dom_pre_destroy
      Src: /src/gpac/src/scenegraph/vrml_js.c:3770,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/vrml_js.c:3770,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3773,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3776,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:3778,1
    - Dst: gf_fs_unload_js_api
      Src: /src/gpac/src/scenegraph/vrml_js.c:3784,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3788,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/scenegraph/vrml_js.c:3790,1
    - Dst: dom_js_unload
      Src: /src/gpac/src/scenegraph/vrml_js.c:3793,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:3796,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_js.c:3801,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3802
      start: 3744
    functionDepth: 6
    functionLinenumber: 3744
    functionLinenumberEnd: 3802
    functionName: JS_PreDestroy
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_ReleaseRootObjects
    - JS_GetRuntime
    - dom_js_unload
    - GF_LOG
    - gf_js_delete_context
    - gf_fs_unload_js_api
    - gf_list_del
    - gf_node_get_log_name
    - JS_FreeValue
    - gf_list_del_item
    - JS_GetContextOpaque
    - gf_sg_js_dom_pre_destroy
    - gf_js_lock
    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:3814,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3820,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/scenegraph/vrml_js.c:3824,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/scenegraph/vrml_js.c:3826,1
    - Dst: JS_DefinePropertyGetSet
      Src: /src/gpac/src/scenegraph/vrml_js.c:3827,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/scenegraph/vrml_js.c:3828,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3832,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3833,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3834,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - priv
    - sc
    argTypes:
    - GF_ScriptPriv*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3838
      start: 3805
    functionDepth: 5
    functionLinenumber: 3805
    functionLinenumberEnd: 3838
    functionName: JS_InitScriptFields
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_field
    - JS_DefinePropertyGetSet
    - JS_NewCFunction2
    - JS_NewAtom
    - gf_list_enum
    - JS_SetPropertyStr
    - JS_FreeAtom
    - gf_sg_script_to_qjs_field
    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:3849,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:3852,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3856,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/vrml_js.c:3857,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - node
    - priv
    argTypes:
    - GF_Node*
    - GF_ScriptPriv*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3862
      start: 3841
    functionDepth: 11
    functionLinenumber: 3841
    functionLinenumberEnd: 3862
    functionName: gf_js_vrml_flush_event_out
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_field
    - gf_node_changed
    - gf_list_enum
    - gf_node_event_out
    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:3879,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/vrml_js.c:3880,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3887,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3889,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:3890,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:3890,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:3890,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3891,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3892,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3896,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_js.c:3898,1
    - Dst: gf_sg_script_to_qjs_field
      Src: /src/gpac/src/scenegraph/vrml_js.c:3903,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:3905,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:3906,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:3907,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3910,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3911,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3912,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3913,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:3915,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:3916,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:3918,1
    - Dst: do_js_gc
      Src: /src/gpac/src/scenegraph/vrml_js.c:3920,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 2
    argNames:
    - node
    - in_field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3921
      start: 3864
    functionDepth: 12
    functionLinenumber: 3864
    functionLinenumberEnd: 3921
    functionName: JS_EventIn
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_node_get_scene_time
    - JS_IsUndefined
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetPropertyStr
    - JS_Call
    - JS_IsNull
    - js_std_loop
    - do_js_gc
    - JS_IsException
    - gf_list_get
    - gf_js_vrml_flush_event_out
    - memset
    - gf_sg_script_to_qjs_field
    - gf_js_lock
    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:3935,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/scenegraph/vrml_js.c:3940,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/scenegraph/vrml_js.c:3940,1
    - Dst: JS_Eval
      Src: /src/gpac/src/scenegraph/vrml_js.c:3951,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:3952,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:3954,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3957,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:3962,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:3963,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:3964,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:3965,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:3966,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:3968,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3969,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:3971,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:3973,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:3975,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: 3977
      start: 3923
    functionDepth: 12
    functionLinenumber: 3923
    functionLinenumberEnd: 3977
    functionName: vrml_js_load_script
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_file_load_data
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetPropertyStr
    - JS_Call
    - js_std_loop
    - JS_IsException
    - gf_opts_get_bool
    - JS_DetectModule
    - gf_js_vrml_flush_event_out
    - JS_Eval
    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:3999,1
    - Dst: vrml_js_load_script
      Src: /src/gpac/src/scenegraph/vrml_js.c:4005,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4007,1
    - Dst: svg_js_load_script
      Src: /src/gpac/src/scenegraph/vrml_js.c:4013,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:4019,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4020,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/scenegraph/vrml_js.c:4024,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4028,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scenegraph/vrml_js.c:4028,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4030
      start: 3994
    functionDepth: 13
    functionLinenumber: 3994
    functionLinenumberEnd: 4030
    functionName: async_script_sess_io
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_dm_sess_get_cache_name
    - GF_LOG
    - vrml_js_load_script
    - gf_dm_sess_del
    - JS_FreeValue
    - svg_js_load_script
    - gf_error_to_string
    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:4039,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:4044,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4046,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/scenegraph/vrml_js.c:4049,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: 4053
      start: 4033
    functionDepth: 1
    functionLinenumber: 4033
    functionLinenumberEnd: 4053
    functionName: vrml_svg_js_async_load
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_free
    - gf_dm_sess_process
    - gf_dm_sess_new
    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:4069,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4078,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4078,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/scenegraph/vrml_js.c:4079,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_js.c:4081,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4086,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4087,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scenegraph/vrml_js.c:4090,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4091,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4092,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4096,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4096,1
    - Dst: vrml_js_load_script
      Src: /src/gpac/src/scenegraph/vrml_js.c:4097,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4098,1
    - Dst: vrml_svg_js_async_load
      Src: /src/gpac/src/scenegraph/vrml_js.c:4103,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4104,1
    - Dst: ScriptAction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4112,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: 4114
      start: 4058
    functionDepth: 13
    functionLinenumber: 4058
    functionLinenumberEnd: 4114
    functionName: JSScriptFromFile
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - gf_file_ext_start
    - gf_free
    - vrml_svg_js_async_load
    - ScriptAction
    - gf_url_concatenate
    - vrml_js_load_script
    - strnicmp
    - gf_strdup
    - strstr
    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:4132,1
    - Dst: strchr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4137,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4139,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4140,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4141,1
    - Dst: strnicmp
      Src: /src/gpac/src/scenegraph/vrml_js.c:4142,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/scenegraph/vrml_js.c:4149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4151,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4155,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4157,1
    - Dst: vrml_js_init_api
      Src: /src/gpac/src/scenegraph/vrml_js.c:4158,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/scenegraph/vrml_js.c:4160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4162,1
    - Dst: dom_js_load
      Src: /src/gpac/src/scenegraph/vrml_js.c:4165,1
    - Dst: dom_js_define_event
      Src: /src/gpac/src/scenegraph/vrml_js.c:4167,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4168,1
    - Dst: qjs_module_init_xhr_global
      Src: /src/gpac/src/scenegraph/vrml_js.c:4172,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_js.c:4175,1
    - Dst: JS_InitScriptFields
      Src: /src/gpac/src/scenegraph/vrml_js.c:4178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4179,1
    - Dst: JSScriptFromFile
      Src: /src/gpac/src/scenegraph/vrml_js.c:4185,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4186,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4190,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/scenegraph/vrml_js.c:4192,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/scenegraph/vrml_js.c:4192,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/vrml_js.c:4192,1
    - Dst: JS_Eval
      Src: /src/gpac/src/scenegraph/vrml_js.c:4195,1
    - Dst: strlen
      Src: /src/gpac/src/scenegraph/vrml_js.c:4195,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:4196,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4197,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4198,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4198,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/scenegraph/vrml_js.c:4201,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/scenegraph/vrml_js.c:4201,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:4202,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:4203,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:4204,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4206,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4207,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4208,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/scenegraph/vrml_js.c:4210,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4212,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:4214,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4217,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:4218,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4220,1
    - Dst: do_js_gc
      Src: /src/gpac/src/scenegraph/vrml_js.c:4222,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 73
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4223
      start: 4117
    functionDepth: 14
    functionLinenumber: 4117
    functionLinenumberEnd: 4223
    functionName: JSScript_LoadVRML
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - dom_js_define_event
    - JS_Call
    - gf_list_add
    - gf_js_lock
    - JS_Eval
    - strchr
    - JS_InitScriptFields
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetPropertyStr
    - JS_DupValue
    - qjs_init_all_modules
    - qjs_module_init_xhr_global
    - JS_IsException
    - gf_js_vrml_flush_event_out
    - gf_js_create_context
    - gf_node_get_scene_time
    - js_std_loop
    - strnicmp
    - dom_js_load
    - JS_SetContextOpaque
    - gf_list_new
    - strlen
    - JSScriptFromFile
    - JS_IsUndefined
    - GF_LOG
    - do_js_gc
    - vrml_js_init_api
    - gf_opts_get_bool
    - JS_DetectModule
    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:4236,1
    - Dst: JSScript_LoadSVG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4241,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4247
      start: 4225
    functionDepth: 15
    functionLinenumber: 4225
    functionLinenumberEnd: 4247
    functionName: JSScript_Load
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - JSScript_LoadSVG
    - JSScript_LoadVRML
    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:4257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_js.c:4258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_js.c:4261,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:4262,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4278,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/vrml_js.c:4281,1
    - Dst: svg_free_node_binding
      Src: /src/gpac/src/scenegraph/vrml_js.c:4284,1
    - Dst: JS_VALUE_HAS_REF_COUNT
      Src: /src/gpac/src/scenegraph/vrml_js.c:4293,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/scenegraph/vrml_js.c:4294,1
    - Dst: JS_ObjectDestroyed
      Src: /src/gpac/src/scenegraph/vrml_js.c:4298,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/scenegraph/vrml_js.c:4298,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4299,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4300,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_js.c:4301,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/vrml_js.c:4303,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:4312,1
    - Dst: get_sf_class
      Src: /src/gpac/src/scenegraph/vrml_js.c:4320,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4326,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4334,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_js.c:4336,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_js.c:4346,1
    - Dst: JS_GetScript
      Src: /src/gpac/src/scenegraph/vrml_js.c:4356,1
    - Dst: gf_sg_script_update_cached_object
      Src: /src/gpac/src/scenegraph/vrml_js.c:4357,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:4357,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: 4363
      start: 4250
    functionDepth: 4
    functionLinenumber: 4250
    functionLinenumberEnd: 4363
    functionName: JSScript_NodeModified
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - JS_GetRuntime
    - gf_list_count
    - JS_ObjectDestroyed
    - JS_GetScript
    - gf_assert
    - gf_node_unregister
    - JS_VALUE_HAS_REF_COUNT
    - JS_FreeValue
    - gf_list_get
    - JS_VALUE_GET_PTR
    - gf_node_get_private
    - gf_list_enum
    - gf_sg_script_update_cached_object
    - JS_GetScriptStack
    - gf_free
    - JS_IsUndefined
    - gf_list_del_item
    - JS_GetOpaque
    - svg_free_node_binding
    - get_sf_class
    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:4382,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4386,1
    - Dst: JS_GetScriptStack
      Src: /src/gpac/src/scenegraph/vrml_js.c:4388,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4389,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4391,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4394,1
    - Dst: gf_dom_new_event
      Src: /src/gpac/src/scenegraph/vrml_js.c:4398,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4399,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:4399,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/vrml_js.c:4401,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4407,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4409,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4412,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:4414,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4414,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:4417,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4419,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/scenegraph/vrml_js.c:4420,1
    - Dst: JS_Call
      Src: /src/gpac/src/scenegraph/vrml_js.c:4421,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4425,1
    - Dst: JS_IsException
      Src: /src/gpac/src/scenegraph/vrml_js.c:4427,1
    - Dst: js_dump_error
      Src: /src/gpac/src/scenegraph/vrml_js.c:4428,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4430,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4431,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/scenegraph/vrml_js.c:4434,1
    - Dst: js_std_loop
      Src: /src/gpac/src/scenegraph/vrml_js.c:4436,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/scenegraph/vrml_js.c:4437,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: 4440
      start: 4366
    functionDepth: 2
    functionLinenumber: 4366
    functionLinenumberEnd: 4440
    functionName: gf_sg_handle_dom_event_for_vrml
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 0
    functionsReached:
    - gf_js_lock
    - JS_IsUndefined
    - GF_LOG
    - JS_SetOpaque
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - JS_Call
    - JS_GetPropertyStr
    - JS_IsNull
    - js_std_loop
    - JS_IsException
    - JS_GetAnyOpaque
    - JS_GetScriptStack
    - gf_dom_new_event
    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: 4460
      start: 4449
    functionDepth: 0
    functionLinenumber: 4449
    functionLinenumberEnd: 4460
    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:4468,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/scenegraph/vrml_js.c:4476,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/scenegraph/vrml_js.c:4477,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/scenegraph/vrml_js.c:4477,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/scenegraph/vrml_js.c:4478,1
    - Dst: dom_get_element
      Src: /src/gpac/src/scenegraph/vrml_js.c:4479,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - c
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4483
      start: 4464
    functionDepth: 2
    functionLinenumber: 4464
    functionLinenumberEnd: 4483
    functionName: gf_sg_js_get_node
    functionSourceFile: /src/gpac/src/scenegraph/vrml_js.c
    functionUses: 1
    functionsReached:
    - JS_IsUndefined
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsNull
    - dom_get_element
    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: 4495
      start: 4487
    functionDepth: 0
    functionLinenumber: 4487
    functionLinenumberEnd: 4495
    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_bifs_get_node_type
    - gf_x3d_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_unregister
    - gf_node_changed
    - GF_Node*::sgprivate::scenegraph::on_node_modified
    - gf_node_list_del_child
    - gf_node_unregister_children
    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:167,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_tools.c:168,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/vrml_tools.c:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - pNode
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 158
    functionDepth: 4
    functionLinenumber: 158
    functionLinenumberEnd: 170
    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:176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:177,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - scene
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 181
    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: 188
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 188
    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:197,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:200,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 208
    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:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sg
    - ID
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 214
    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:221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:224,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:227,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:229,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SceneGraph*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 233
    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:241,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/vrml_tools.c:243,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: 246
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 246
    functionName: gf_node_insert_child
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_node_list_add_child
    - gf_node_list_insert_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:251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - parent
    - toremove_child
    argTypes:
    - GF_Node*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 255
    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:261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 262
    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:270,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/vrml_tools.c:274,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:277,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:281,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:282,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:284,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - sg
    - ProtoID
    - name
    argTypes:
    - GF_SceneGraph*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 288
    functionName: gf_sg_find_proto
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 6
    functionsReached:
    - gf_list_count
    - stricmp
    - gf_list_enum
    - gf_assert
    - gf_list_get
    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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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:378,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 381
    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:384,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:385,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/vrml_tools.c:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 382
    functionDepth: 1
    functionLinenumber: 382
    functionLinenumberEnd: 388
    functionName: NewSFCommandBuffer
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    - gf_list_new
    linkageType: ''
    returnType: SFCommandBuffer
    signature: SFCommandBuffer *NewSFCommandBuffer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:391,1
    - Dst: memset
      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: 0
    functionLinenumber: 389
    functionLinenumberEnd: 394
    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:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 400
    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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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: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: 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:481,1
    - Dst: memset
      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: 0
    functionLinenumber: 479
    functionLinenumberEnd: 484
    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:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 490
    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:497,1
    - Dst: NewSFFloat
      Src: /src/gpac/src/scenegraph/vrml_tools.c:499,1
    - Dst: NewSFDouble
      Src: /src/gpac/src/scenegraph/vrml_tools.c:501,1
    - Dst: NewSFTime
      Src: /src/gpac/src/scenegraph/vrml_tools.c:503,1
    - Dst: NewSFInt32
      Src: /src/gpac/src/scenegraph/vrml_tools.c:505,1
    - Dst: NewSFString
      Src: /src/gpac/src/scenegraph/vrml_tools.c:507,1
    - Dst: NewSFVec3f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:509,1
    - Dst: NewSFVec2f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:511,1
    - Dst: NewSFVec3d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:513,1
    - Dst: NewSFVec2d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:515,1
    - Dst: NewSFColor
      Src: /src/gpac/src/scenegraph/vrml_tools.c:517,1
    - Dst: NewSFColorRGBA
      Src: /src/gpac/src/scenegraph/vrml_tools.c:519,1
    - Dst: NewSFRotation
      Src: /src/gpac/src/scenegraph/vrml_tools.c:521,1
    - Dst: NewSFImage
      Src: /src/gpac/src/scenegraph/vrml_tools.c:523,1
    - Dst: NewSFAttrRef
      Src: /src/gpac/src/scenegraph/vrml_tools.c:525,1
    - Dst: NewMFBool
      Src: /src/gpac/src/scenegraph/vrml_tools.c:527,1
    - Dst: NewMFFloat
      Src: /src/gpac/src/scenegraph/vrml_tools.c:529,1
    - Dst: NewMFTime
      Src: /src/gpac/src/scenegraph/vrml_tools.c:531,1
    - Dst: NewMFInt32
      Src: /src/gpac/src/scenegraph/vrml_tools.c:533,1
    - Dst: NewMFString
      Src: /src/gpac/src/scenegraph/vrml_tools.c:535,1
    - Dst: NewMFVec3f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:537,1
    - Dst: NewMFVec2f
      Src: /src/gpac/src/scenegraph/vrml_tools.c:539,1
    - Dst: NewMFVec3d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:541,1
    - Dst: NewMFVec2d
      Src: /src/gpac/src/scenegraph/vrml_tools.c:543,1
    - Dst: NewMFColor
      Src: /src/gpac/src/scenegraph/vrml_tools.c:545,1
    - Dst: NewMFColorRGBA
      Src: /src/gpac/src/scenegraph/vrml_tools.c:547,1
    - Dst: NewMFRotation
      Src: /src/gpac/src/scenegraph/vrml_tools.c:550,1
    - Dst: NewMFAttrRef
      Src: /src/gpac/src/scenegraph/vrml_tools.c:552,1
    - Dst: NewSFCommandBuffer
      Src: /src/gpac/src/scenegraph/vrml_tools.c:556,1
    - Dst: NewSFURL
      Src: /src/gpac/src/scenegraph/vrml_tools.c:559,1
    - Dst: NewMFURL
      Src: /src/gpac/src/scenegraph/vrml_tools.c:561,1
    - Dst: NewSFScript
      Src: /src/gpac/src/scenegraph/vrml_tools.c:564,1
    - Dst: NewMFScript
      Src: /src/gpac/src/scenegraph/vrml_tools.c:566,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 71
    argCount: 1
    argNames:
    - FieldType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 569
      start: 492
    functionDepth: 2
    functionLinenumber: 492
    functionLinenumberEnd: 569
    functionName: gf_sg_vrml_field_pointer_new
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 17
    functionsReached:
    - NewMFTime
    - NewSFBool
    - NewMFScript
    - NewMFRotation
    - NewMFString
    - NewMFInt32
    - NewSFTime
    - NewSFImage
    - NewSFInt32
    - NewSFRotation
    - NewSFColorRGBA
    - NewSFScript
    - NewMFVec2f
    - NewSFFloat
    - NewMFColor
    - NewMFAttrRef
    - NewSFColor
    - NewSFVec2f
    - NewMFFloat
    - NewMFVec3f
    - NewSFCommandBuffer
    - NewSFString
    - NewSFVec2d
    - NewMFBool
    - NewSFVec3d
    - NewSFURL
    - NewSFDouble
    - NewMFVec2d
    - NewMFURL
    - NewMFVec3d
    - NewMFColorRGBA
    - NewSFVec3f
    - NewSFAttrRef
    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:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFInt32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 573
    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:575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFFloat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 576
    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:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFDouble
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 579
    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:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFBool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 580
    functionDepth: 0
    functionLinenumber: 580
    functionLinenumberEnd: 582
    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:584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFColor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 583
    functionDepth: 0
    functionLinenumber: 583
    functionLinenumberEnd: 585
    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:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFColorRGBA
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 588
    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:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFRotation
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 591
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 591
    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:593,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFTime
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 592
    functionDepth: 0
    functionLinenumber: 592
    functionLinenumberEnd: 594
    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:596,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec2f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 597
    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:599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec2d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 600
    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:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec3f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 603
    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:605,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec3d
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 606
    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:608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFVec4f
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 609
    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:611,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFAttrRef
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 612
    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:614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - im
    argTypes:
    - SFImage
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 615
    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:617,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - par
    argTypes:
    - SFString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 618
    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:623,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:624,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:625,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:627,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:628,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cb
    argTypes:
    - SFCommandBuffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 629
    functionName: gf_sg_sfcommand_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_sg_command_del
    - gf_free
    - gf_list_del
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_sg_sfcommand_del(SFCommandBuffer cb)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:652,1
    - Dst: gf_sg_sfimage_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:655,1
    - Dst: gf_node_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:660,1
    - Dst: gf_sg_sfcommand_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:663,1
    - Dst: gf_sg_mfbool_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:667,1
    - Dst: gf_sg_mffloat_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:670,1
    - Dst: gf_sg_mfdouble_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:673,1
    - Dst: gf_sg_mftime_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:676,1
    - Dst: gf_sg_mfint32_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:679,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:682,1
    - Dst: gf_sg_mfvec3f_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:685,1
    - Dst: gf_sg_mfvec2f_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:688,1
    - Dst: gf_sg_mfvec3d_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:691,1
    - Dst: gf_sg_mfvec2d_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:694,1
    - Dst: gf_sg_mfcolor_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:697,1
    - Dst: gf_sg_mfcolorrgba_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:700,1
    - Dst: gf_sg_mfrotation_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:704,1
    - Dst: gf_sg_sfurl_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:707,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:710,1
    - Dst: gf_sg_mfattrref_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:713,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_tools.c:717,1
    - Dst: gf_sg_mfscript_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:720,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:724,1
    - Dst: gf_assert
      Src: /src/gpac/src/scenegraph/vrml_tools.c:728,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:732,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 95
    argCount: 2
    argNames:
    - field
    - FieldType
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 631
    functionDepth: 7
    functionLinenumber: 631
    functionLinenumberEnd: 733
    functionName: gf_sg_vrml_field_pointer_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 7
    functionsReached:
    - gf_sg_mfrotation_del
    - gf_sg_mfvec2f_del
    - gf_assert
    - gf_sg_mfvec3d_del
    - gf_sg_mfvec2d_del
    - gf_node_del
    - gf_sg_sfurl_del
    - gf_sg_mftime_del
    - gf_sg_mfbool_del
    - gf_sg_mffloat_del
    - gf_sg_mfurl_del
    - gf_sg_sfimage_del
    - gf_sg_mfdouble_del
    - gf_free
    - gf_sg_mfint32_del
    - gf_sg_mfvec3f_del
    - gf_sg_mfcolor_del
    - gf_sg_mfstring_del
    - gf_sg_mfcolorrgba_del
    - gf_sg_mfscript_del
    - gf_sg_mfattrref_del
    - gf_sg_sfcommand_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: 754
      start: 739
    functionDepth: 0
    functionLinenumber: 739
    functionLinenumberEnd: 754
    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: 842
      start: 756
    functionDepth: 0
    functionLinenumber: 756
    functionLinenumberEnd: 842
    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: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:854,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: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
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:871,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:872,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:873,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:874,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:875,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:876,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:877,1
    - Dst: stricmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:878,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 66
    argCount: 1
    argNames:
    - fieldType
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 881
    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:886,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - url
    argTypes:
    - SFURL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 885
    functionDepth: 0
    functionLinenumber: 885
    functionLinenumberEnd: 887
    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: 895
      start: 889
    functionDepth: 0
    functionLinenumber: 889
    functionLinenumberEnd: 895
    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:901,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:903,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - par
    argTypes:
    - MFString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 897
    functionDepth: 0
    functionLinenumber: 897
    functionLinenumberEnd: 904
    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:912,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:914,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - url
    argTypes:
    - MFURL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 907
    functionDepth: 1
    functionLinenumber: 907
    functionLinenumberEnd: 915
    functionName: gf_sg_mfurl_del
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 33
    functionsReached:
    - gf_sg_sfurl_del
    - gf_free
    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:920,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:922,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - sc
    argTypes:
    - MFScript
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 916
    functionDepth: 0
    functionLinenumber: 916
    functionLinenumberEnd: 923
    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:929,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:931,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:934,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - MFURL*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 926
    functionDepth: 1
    functionLinenumber: 926
    functionLinenumberEnd: 936
    functionName: gf_sg_vrml_copy_mfurl
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - 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: 996
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 996
    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: 1062
      start: 998
    functionDepth: 0
    functionLinenumber: 998
    functionLinenumberEnd: 1062
    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:1076,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1079,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1086,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1087,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1088,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1096,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1097,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1103,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1111,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1115,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1117,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: 1121
      start: 1069
    functionDepth: 1
    functionLinenumber: 1069
    functionLinenumberEnd: 1121
    functionName: gf_sg_vrml_mf_insert
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_get_sf_size
    - memset
    - gf_realloc
    - memcpy
    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:1131,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1132,1
    - Dst: gf_sg_mfstring_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1136,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1139,1
    - Dst: gf_sg_mfscript_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1142,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1145,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - mf
    - FieldType
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1152
      start: 1124
    functionDepth: 2
    functionLinenumber: 1124
    functionLinenumberEnd: 1152
    functionName: gf_sg_vrml_mf_reset
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 7
    functionsReached:
    - gf_free
    - gf_sg_mfstring_del
    - gf_sg_mfscript_del
    - gf_sg_mfurl_del
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_get_sf_size
    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:1163,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1167,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1174,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1176,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1177,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - mf
    - FieldType
    - NbItems
    argTypes:
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1181
      start: 1157
    functionDepth: 3
    functionLinenumber: 1157
    functionLinenumberEnd: 1181
    functionName: gf_sg_vrml_mf_alloc
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 6
    functionsReached:
    - gf_malloc
    - memset
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_get_sf_size
    - gf_sg_vrml_mf_reset
    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:1190,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1194,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: 1201
      start: 1183
    functionDepth: 1
    functionLinenumber: 1183
    functionLinenumberEnd: 1201
    functionName: gf_sg_vrml_mf_get_item
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 10
    functionsReached:
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_get_sf_size
    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:1209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - mf
    - FieldType
    - new_ptr
    argTypes:
    - void*
    - u32
    - void**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1210
      start: 1204
    functionDepth: 2
    functionLinenumber: 1204
    functionLinenumberEnd: 1210
    functionName: gf_sg_vrml_mf_append
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 3
    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:1222,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1230,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1231,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1237,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1242,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1245,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - mf
    - FieldType
    - RemoveFrom
    argTypes:
    - void*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1214
    functionDepth: 8
    functionLinenumber: 1214
    functionLinenumberEnd: 1249
    functionName: gf_sg_vrml_mf_remove
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - gf_malloc
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_get_sf_size
    - memcpy
    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:1266,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:1270,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1271,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1276,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1277,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1284,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1286,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1297,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1299,1
    - Dst: gf_sg_vrml_mf_alloc
      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:1302,1
    - Dst: VRML_FieldCopyCast
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1303,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1308,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1310,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1313,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1314,1
    - Dst: VRML_FieldCopyCast
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1315,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: 1318
      start: 1253
    functionDepth: 4
    functionLinenumber: 1253
    functionLinenumberEnd: 1318
    functionName: VRML_FieldCopyCast
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - sprintf
    - gf_free
    - gf_sg_vrml_mf_get_item
    - VRML_FieldCopyCast
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_mf_alloc
    - gf_strdup
    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: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: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1348,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1351,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1354,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1357,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1359,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1364,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1367,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1372,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1377,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1378,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1386,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1387,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1388,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1391,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1396,1
    - Dst: gf_sg_vrml_command_clone
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1397,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1398,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1406,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1409,1
    - Dst: gf_sg_vrml_get_sf_size
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1423,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1425,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1429,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1437,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1438,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1439,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1442,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1443,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1444,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: 1448
      start: 1320
    functionDepth: 4
    functionLinenumber: 1320
    functionLinenumberEnd: 1448
    functionName: gf_sg_vrml_field_clone
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 2
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_sg_vrml_get_sf_size
    - gf_sg_vrml_mf_get_item
    - gf_sg_vrml_command_clone
    - gf_list_add
    - gf_sg_vrml_mf_alloc
    - gf_sg_vrml_get_sf_type
    - gf_list_get
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - gf_realloc
    - memcpy
    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:1453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dest
    - orig
    - field_type
    argTypes:
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1450
    functionDepth: 5
    functionLinenumber: 1450
    functionLinenumberEnd: 1454
    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:1467,1
    - Dst: memcmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1478,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1500,1
    - Dst: strcmp
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1511,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1540,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1542,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1543,1
    - Dst: gf_sg_vrml_field_equal
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1544,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 107
    argCount: 3
    argNames:
    - dest
    - orig
    - field_type
    argTypes:
    - void*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1553
      start: 1456
    functionDepth: 2
    functionLinenumber: 1456
    functionLinenumberEnd: 1553
    functionName: gf_sg_vrml_field_equal
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 3
    functionsReached:
    - gf_sg_vrml_mf_get_item
    - memcmp
    - gf_sg_vrml_field_equal
    - gf_sg_vrml_get_sf_type
    - strcmp
    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: 1566
      start: 1557
    functionDepth: 0
    functionLinenumber: 1557
    functionLinenumberEnd: 1566
    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:1572,1
    - Dst: gf_sg_proto_get_num_fields
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1573,1
    - Dst: gf_sg_script_get_num_fields
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1575,1
    - Dst: gf_sg_script_get_num_fields
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1578,1
    - Dst: gf_sg_mpeg4_node_get_field_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1580,1
    - Dst: gf_sg_x3d_node_get_field_count
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1582,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - Node
    - IndexMode
    argTypes:
    - GF_Node*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1585
      start: 1569
    functionDepth: 2
    functionLinenumber: 1569
    functionLinenumberEnd: 1585
    functionName: gf_node_get_num_fields_in_mode
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 37
    functionsReached:
    - gf_sg_mpeg4_node_get_field_count
    - gf_sg_x3d_node_get_field_count
    - gf_sg_script_get_num_fields
    - gf_assert
    - 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:1624,1
    - Dst: InitCoordinateInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1629,1
    - Dst: InitCoordinateInterpolator2D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1631,1
    - Dst: InitNormalInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1636,1
    - Dst: InitOrientationInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1641,1
    - Dst: InitPositionInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1646,1
    - Dst: InitPositionInterpolator2D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1651,1
    - Dst: InitScalarInterpolator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1656,1
    - Dst: InitValuator
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1658,1
    - Dst: PA_Init
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1660,1
    - Dst: PA2D_Init
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1663,1
    - Dst: SA_Init
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1666,1
    - Dst: InitPositionInterpolator4D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1669,1
    - Dst: InitCoordinateInterpolator4D
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1671,1
    - Dst: InitBooleanFilter
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1680,1
    - Dst: InitBooleanSequencer
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1683,1
    - Dst: InitBooleanToggle
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1686,1
    - Dst: InitBooleanTrigger
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1689,1
    - Dst: InitIntegerSequencer
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1692,1
    - Dst: InitIntegerTrigger
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1695,1
    - Dst: InitTimeTrigger
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1698,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 66
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1703
      start: 1617
    functionDepth: 7
    functionLinenumber: 1617
    functionLinenumberEnd: 1703
    functionName: gf_sg_vrml_node_init
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - InitIntegerTrigger
    - InitTimeTrigger
    - InitColorInterpolator
    - InitBooleanSequencer
    - InitValuator
    - PA2D_Init
    - InitIntegerSequencer
    - InitBooleanToggle
    - PA_Init
    - SA_Init
    - InitPositionInterpolator
    - InitBooleanFilter
    - InitPositionInterpolator2D
    - InitNormalInterpolator
    - InitOrientationInterpolator
    - InitScalarInterpolator
    - InitCoordinateInterpolator2D
    - InitPositionInterpolator4D
    - InitBooleanTrigger
    - InitCoordinateInterpolator
    - InitCoordinateInterpolator4D
    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:1741,1
    - Dst: PA2D_Modified
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1744,1
    - Dst: SA_Modified
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 43
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1751
      start: 1705
    functionDepth: 2
    functionLinenumber: 1705
    functionLinenumberEnd: 1751
    functionName: gf_sg_vrml_node_changed
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - PA2D_Modified
    - SA_Modified
    - PA_Modified
    linkageType: ''
    returnType: Bool
    signature: Bool gf_sg_vrml_node_changed(GF_Node *node, GF_FieldInfo *field)
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      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: 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: 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: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1775,1
    - Dst: FIX2FLT
      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: 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: 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: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1785,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1787,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1787,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1787,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1787,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1788,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1790,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1790,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1790,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1790,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1790,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1791,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1793,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1793,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1793,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1793,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1793,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1794,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1796,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1797,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1801,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1803,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1804,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1815,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1817,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1822,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1826,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1830,1
    - Dst: sprintf
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1834,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1838,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 81
    argCount: 2
    argNames:
    - n
    - info
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1847
      start: 1754
    functionDepth: 1
    functionLinenumber: 1754
    functionLinenumberEnd: 1847
    functionName: gf_node_vrml_dump_attribute
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - sprintf
    - FIX2FLT
    - gf_malloc
    - gf_strcat
    - gf_strdup
    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:1858,1
    - Dst: gf_node_in_table_by_tag
      Src: /src/gpac/src/scenegraph/vrml_tools.c:1861,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - node
    - NDTType
    argTypes:
    - GF_Node*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1853
    functionDepth: 4
    functionLinenumber: 1853
    functionLinenumberEnd: 1865
    functionName: gf_node_in_table
    functionSourceFile: /src/gpac/src/scenegraph/vrml_tools.c
    functionUses: 1
    functionsReached:
    - gf_node_in_table_by_tag
    - gf_sg_proto_get_root_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_list_count
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - gf_list_del
    - gf_node_unregister_children
    - gf_list_get
    - GF_ScriptPriv*::JS_PreDestroy
    - gf_node_unregister
    - 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_list_enum
    - gf_sg_mpeg4_node_get_field_count
    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_x3d_node_get_field
    - gf_node_get_private
    - gf_sg_mpeg4_node_get_field
    - gf_list_get
    - script_get_nb_static_field
    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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - script_get_nb_static_field
    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_sg_vrml_field_pointer_new
    - gf_list_count
    - GF_LOG
    - gf_node_get_private
    - gf_list_add
    - GF_SAFEALLOC
    - gf_strdup
    - script_get_nb_static_field
    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:
    - assert
    - SMJS_GET_PRIVATE
    - JS_GetGlobalObject
    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:
    - mediasource_get_scenegraph
    - SMJS_GET_PRIVATE
    - GF_JS_InstanceOf
    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:
    - JS_NewObject
    - SMJS_SET_PRIVATE
    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_CHARS
    - BOOLEAN_TO_JSVAL
    - SMJS_SET_RVAL
    - mediasource_get_scenegraph
    - GF_SceneGraph*::script_action
    - gf_term_is_type_supported
    - SMJS_FREE
    - strlen
    - assert
    - JSVAL_CHECK_STRING
    - dom_throw_exception
    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_CHARS
    - gf_mse_mediasource_add_source_buffer
    - GF_JS_InstanceOf
    - mediasource_sourceBuffer_initjs
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - gf_mse_source_buffer_new
    - gf_mse_source_buffer_load_parser
    - SMJS_FREE
    - OBJECT_TO_JSVAL
    - gf_mse_source_buffer_del
    - strlen
    - assert
    - JSVAL_CHECK_STRING
    - dom_throw_exception
    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:
    - GF_JS_InstanceOf
    - SMJS_GET_PRIVATE
    - gf_mse_remove_source_buffer
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - JSVAL_IS_OBJECT
    - dom_throw_exception
    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:
    - SMJS_CHARS
    - gf_list_count
    - GF_JS_InstanceOf
    - SMJS_GET_PRIVATE
    - SMJS_FREE
    - strcmp
    - gf_list_get
    - gf_mse_mediasource_end
    - JSVAL_CHECK_STRING
    - dom_throw_exception
    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:
    - GF_JS_InstanceOf
    - SMJS_OBJ_CONSTRUCTOR
    - JS_NewObject
    - SMJS_SET_RVAL
    - SMJS_SET_PRIVATE
    - gf_mse_media_source_new
    - OBJECT_TO_JSVAL
    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_mediasource_open
    - GF_JS_InstanceOf
    - SMJS_GET_PRIVATE
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - gf_mse_source_buffer_append_arraybuffer
    - JSVAL_IS_OBJECT
    - dom_throw_exception
    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_mse_source_buffer_abort
    - gf_list_find
    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
    - gf_mse_remove
    - JSVAL_IS_NUMBER
    - JS_ValueToNumber
    - dom_throw_exception
    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:
    - sprintf
    - GF_JS_InstanceOf
    - SMJS_SET_RVAL
    - SMJS_GET_PRIVATE
    - JSVAL_TO_OBJECT
    - JSVAL_IS_NULL
    - STRING_TO_JSVAL
    - gf_strdup
    - JSVAL_IS_OBJECT
    - 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
    - JS_GetParent
    - xhr_del_array_buffer
    - gf_free
    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_JS_InstanceOf
    - gf_malloc
    - JSVAL_TO_INT
    - SMJS_OBJ_CONSTRUCTOR
    - JSVAL_IS_NULL
    - gf_arraybuffer_js_new
    - JSVAL_IS_INT
    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_LOG
    - SMJS_FUNCTION_SPEC
    - JS_SETUP_CLASS
    - GF_JS_InitClass
    linkageType: ''
    returnType: void
    signature: void html_media_source_init_js_api(JSContext *js_ctx, JSObject *global,
      GF_HTML_MediaRuntime *_html_media_rt)
  - BBCount: 5
    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:45,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:46,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/commands.c:48,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - graph
    - tag
    argTypes:
    - GF_SceneGraph*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 50
    functionName: gf_sg_command_new
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 17
    functionsReached:
    - gf_list_add
    - GF_SAFEALLOC
    - gf_list_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sg_command_new(GF_SceneGraph *graph, u32 tag)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/commands.c:62,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:66,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:67,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:68,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:72,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:80,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:82,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scenegraph/commands.c:88,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:90,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:93,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:98,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:99,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:100,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:103,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:109,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:111,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/scenegraph/commands.c:114,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:116,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:120,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/commands.c:124,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:125,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:127,1
    - Dst: gf_node_try_destroy
      Src: /src/gpac/src/scenegraph/commands.c:131,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:134,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:135,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:136,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:137,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:138,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 70
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_Command*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 52
    functionDepth: 8
    functionLinenumber: 52
    functionLinenumberEnd: 139
    functionName: gf_sg_command_del
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 8
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - gf_list_del
    - gf_list_del_item
    - gf_list_enum
    - gf_sg_proto_del
    - gf_svg_delete_attribute_value
    - gf_list_get
    - gf_node_try_destroy
    - gf_list_rem
    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:145,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scenegraph/commands.c:148,1
    - Dst: gf_sg_script_event_in
      Src: /src/gpac/src/scenegraph/commands.c:149,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/commands.c:153,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:157,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - node
    - field
    argTypes:
    - GF_Node*
    - GF_FieldInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 141
    functionDepth: 14
    functionLinenumber: 141
    functionLinenumberEnd: 158
    functionName: SG_CheckFieldChange
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - GF_FieldInfo*::on_event_in
    - gf_node_event_out
    - gf_sg_script_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:165,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/commands.c:166,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - container
    - child
    argTypes:
    - GF_Node*
    - GF_ChildNodeItem*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 161
    functionDepth: 12
    functionLinenumber: 161
    functionLinenumberEnd: 171
    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:199,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:201,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:202,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:206,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:207,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/commands.c:209,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:213,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:215,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/commands.c:222,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:225,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:226,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:227,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/commands.c:228,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:238,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:239,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/commands.c:250,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:251,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/commands.c:258,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:260,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/commands.c:264,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:270,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:278,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scenegraph/commands.c:291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:294,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scenegraph/commands.c:295,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:296,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:299,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/scenegraph/commands.c:304,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:305,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:307,1
    - Dst: gf_sg_vrml_command_clone
      Src: /src/gpac/src/scenegraph/commands.c:308,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:309,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:317,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/commands.c:318,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:321,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/commands.c:323,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:327,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scenegraph/commands.c:336,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:337,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:344,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:345,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/commands.c:355,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/commands.c:358,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:360,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:361,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:364,1
    - Dst: gf_sg_route_find
      Src: /src/gpac/src/scenegraph/commands.c:372,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:373,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:374,1
    - Dst: gf_sg_route_del
      Src: /src/gpac/src/scenegraph/commands.c:380,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/commands.c:382,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scenegraph/commands.c:383,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scenegraph/commands.c:385,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:386,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:393,1
    - Dst: gf_sg_route_del_by_id
      Src: /src/gpac/src/scenegraph/commands.c:398,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:403,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:405,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:407,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:410,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:411,1
    - Dst: gf_sg_vrml_mf_remove
      Src: /src/gpac/src/scenegraph/commands.c:418,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:421,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:426,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:427,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scenegraph/commands.c:429,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:430,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/scenegraph/commands.c:432,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:433,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:440,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:441,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scenegraph/commands.c:443,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scenegraph/commands.c:444,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scenegraph/commands.c:446,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:447,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:455,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:456,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:457,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scenegraph/commands.c:463,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/scenegraph/commands.c:465,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:468,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:469,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/commands.c:473,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/commands.c:475,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:477,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:480,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:485,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:486,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:487,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scenegraph/commands.c:488,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:489,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scenegraph/commands.c:498,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:499,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:505,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:506,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:507,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scenegraph/commands.c:509,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:519,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:522,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:526,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:530,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:533,1
    - Dst: floor
      Src: /src/gpac/src/scenegraph/commands.c:543,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scenegraph/commands.c:543,1
    - Dst: floor
      Src: /src/gpac/src/scenegraph/commands.c:546,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/commands.c:556,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:558,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:563,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:565,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:576,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:577,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scenegraph/commands.c:588,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/scenegraph/commands.c:591,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scenegraph/commands.c:593,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scenegraph/commands.c:594,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scenegraph/commands.c:603,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:605,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scenegraph/commands.c:609,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:615,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:623,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scenegraph/commands.c:630,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scenegraph/commands.c:631,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/scenegraph/commands.c:634,1
    - Dst: strstr
      Src: /src/gpac/src/scenegraph/commands.c:636,1
    - Dst: SG_CheckFieldChange
      Src: /src/gpac/src/scenegraph/commands.c:641,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:662,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:663,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:664,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:667,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/commands.c:668,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:670,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:671,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:675,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/commands.c:679,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/scenegraph/commands.c:681,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:683,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:684,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:685,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scenegraph/commands.c:688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:693,1
    - Dst: gf_node_unregister_children_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:699,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scenegraph/commands.c:701,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:702,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:703,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scenegraph/commands.c:705,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:706,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scenegraph/commands.c:709,1
    - Dst: gf_node_replace_child
      Src: /src/gpac/src/scenegraph/commands.c:710,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:711,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:712,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:713,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:716,1
    - Dst: gf_node_unregister_children_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:720,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:726,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:729,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:730,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:737,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:743,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:744,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scenegraph/commands.c:749,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/scenegraph/commands.c:753,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/commands.c:754,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:759,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:760,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:761,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:765,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:766,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:767,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:770,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:778,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:780,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/commands.c:783,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:783,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:786,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/commands.c:793,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/scenegraph/commands.c:798,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/scenegraph/commands.c:799,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:804,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:805,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:806,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/scenegraph/commands.c:809,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/scenegraph/commands.c:810,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/scenegraph/commands.c:811,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:814,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/scenegraph/commands.c:816,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/commands.c:820,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/scenegraph/commands.c:822,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/scenegraph/commands.c:825,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:828,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:833,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:834,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scenegraph/commands.c:835,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:837,1
    - Dst: gf_free
      Src: /src/gpac/src/scenegraph/commands.c:845,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:847,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/scenegraph/commands.c:850,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:850,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scenegraph/commands.c:853,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/scenegraph/commands.c:855,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/scenegraph/commands.c:857,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:860,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/scenegraph/commands.c:867,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/scenegraph/commands.c:870,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scenegraph/commands.c:871,1
    - Dst: memset
      Src: /src/gpac/src/scenegraph/commands.c:876,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/scenegraph/commands.c:881,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:893,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:894,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scenegraph/commands.c:895,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scenegraph/commands.c:896,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scenegraph/commands.c:898,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: 904
      start: 175
    functionDepth: 15
    functionLinenumber: 175
    functionLinenumberEnd: 904
    functionName: gf_sg_command_apply
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_init
    - gf_list_count
    - gf_node_get_attribute_by_tag
    - gf_sg_route_del
    - gf_mx2d_add_scale
    - memset
    - gf_sg_vrml_mf_alloc
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_mf_insert
    - gf_sg_vrml_field_clone
    - gf_list_add
    - gf_node_unregister
    - strstr
    - FIX2FLT
    - gf_sg_vrml_mf_remove
    - gf_malloc
    - gf_mx2d_add_translation
    - gf_sg_route_find
    - gf_sg_route_del_by_id
    - gf_svg_attributes_add
    - gf_sg_script_load
    - gf_sg_vrml_mf_get_item
    - gf_node_activate
    - gf_sg_vrml_command_clone
    - gf_strdup
    - gf_node_get_graph
    - SG_CheckFieldChange
    - gf_list_get
    - gf_node_list_add_child
    - gf_list_rem
    - gf_node_replace_child
    - gf_node_changed
    - gf_sg_route_set_id
    - gf_mx2d_decompose
    - gf_sg_vrml_field_copy
    - gf_node_replace
    - gf_node_get_field
    - gf_node_event_out
    - gf_sg_route_new
    - gf_list_enum
    - gf_node_unregister_children_deactivate
    - gf_node_insert_child
    - gf_svg_attributes_copy
    - gf_list_new
    - floor
    - gf_node_dirty_set
    - gf_dom_add_text_node
    - gf_node_deactivate
    - gf_sg_command_del
    - gf_free
    - gf_sg_route_set_name
    - GF_LOG
    - gf_list_del
    - gf_node_list_insert_child
    - gf_dom_event_fire
    - gf_list_del_item
    - gf_sg_vrml_mf_append
    - gf_node_register
    - gf_sg_vrml_get_sf_type
    - gf_node_list_get_child
    - gf_sg_vrml_mf_reset
    - gf_node_get_field_by_name
    - gf_node_unregister_children
    - gf_sg_find_proto
    - gf_mx2d_add_rotation
    - gf_sg_find_node
    - gf_sg_proto_del
    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:910,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scenegraph/commands.c:912,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 906
    functionDepth: 1
    functionLinenumber: 906
    functionLinenumberEnd: 914
    functionName: GF_CommandField *gf_sg_command_field_new(GF_Command *com)
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_add
    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:923,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/src/scenegraph/commands.c:924,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: 928
      start: 917
    functionDepth: 16
    functionLinenumber: 917
    functionLinenumberEnd: 928
    functionName: gf_sg_command_apply_list
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_apply
    - gf_list_enum
    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:937,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scenegraph/commands.c:938,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/commands.c:944,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:947,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scenegraph/commands.c:951,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:965,1
    - Dst: memcpy
      Src: /src/gpac/src/scenegraph/commands.c:966,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scenegraph/commands.c:968,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scenegraph/commands.c:970,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scenegraph/commands.c:971,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scenegraph/commands.c:979,1
    - Dst: gf_sg_vrml_field_clone
      Src: /src/gpac/src/scenegraph/commands.c:980,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/commands.c:985,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:988,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scenegraph/commands.c:997,1
    - Dst: gf_node_clone
      Src: /src/gpac/src/scenegraph/commands.c:999,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scenegraph/commands.c:1002,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: 1014
      start: 931
    functionDepth: 7
    functionLinenumber: 931
    functionLinenumberEnd: 1014
    functionName: gf_sg_vrml_command_clone
    functionSourceFile: /src/gpac/src/scenegraph/commands.c
    functionUses: 2
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - gf_list_count
    - gf_sg_command_field_new
    - gf_sg_command_new
    - gf_malloc
    - gf_strdup
    - gf_node_register
    - gf_list_get
    - gf_node_clone
    - gf_sg_vrml_field_clone
    - memcpy
    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
    - ABS
    - gf_assert
    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:
    - Interpolate
    - gf_node_event_out
    - gf_sg_vrml_mf_alloc
    - GetInterpolateFraction
    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:
    - Interpolate
    - gf_sg_vrml_mf_alloc
    - GetInterpolateFraction
    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_node_event_out
    - CI_SetFraction
    - gf_vec_norm
    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:
    - Interpolate
    - gf_node_event_out
    - GetInterpolateFraction
    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:
    - Interpolate
    - gf_node_event_out
    - GetInterpolateFraction
    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:
    - Interpolate
    - gf_node_event_out
    - GetInterpolateFraction
    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:
    - Interpolate
    - gf_node_event_out
    - GetInterpolateFraction
    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:
    - gf_sg_sfrotation_interpolate
    - gf_node_event_out
    - GetInterpolateFraction
    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:
    - Interpolate
    - gf_node_event_out
    - gf_sg_vrml_mf_alloc
    - GetInterpolateFraction
    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:
    - Interpolate
    - gf_node_event_out
    - GetInterpolateFraction
    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_node_get_private
    - gf_free
    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_node_get_private
    - gf_free
    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_get_scene_time
    - gf_node_event_out
    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:
    - gf_js_call_gc
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_FreeValue
    - gf_node_unregister
    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:
    - GF_LOG
    - struct __tag_svg_script_ctx*::handler_execute
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - ScriptAction
    - JS_GetOpaque
    - 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_element_construct
    - dom_get_doc
    - gf_sm_load_svg_from_string
    - JS_FreeCString
    - JS_IsObject
    - js_throw_err
    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_NewObject
    - DEFCONST
    - JS_SetPropertyStr
    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:
    - GF_JS_EXCEPTION
    - JS_DupValue
    - JS_GetOpaque
    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
    - strchr
    - stricmp
    - JS_FreeCString
    - strlen
    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
    - get_corresponding_use
    - gf_list_get
    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
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - gf_malloc
    - gf_node_get_scene_time
    - dom_element_construct
    - ScriptAction
    - JS_NewString
    - get_corresponding_use
    - JS_SetOpaque
    - gf_node_get_parent
    - gf_node_get_name
    - dom_get_element
    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_JS_EXCEPTION
    - JS_ToCString
    - gf_node_set_id
    - gf_node_get_attribute_by_tag
    - gf_node_get_id
    - gf_free
    - JS_ToFloat64
    - FLT2FIX
    - ScriptAction
    - gf_strdup
    - gf_sg_get_next_available_node_id
    - JS_FreeCString
    - dom_get_element
    - JSVAL_CHECK_STRING
    - js_throw_err
    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_JS_EXCEPTION
    - JS_ToFloat64
    - gf_node_get_scene_time
    - gf_list_count
    - GF_SMIL_TIME_IS_CLOCK
    - gf_list_insert
    - GF_SAFEALLOC
    - gf_list_get
    - svg_udom_smil_check_instance
    - gf_node_changed
    - js_throw_err
    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_JS_EXCEPTION
    - gf_node_get_tag
    - gf_smil_timing_pause
    - ScriptAction
    - gf_svg_is_animation_tag
    - dom_get_element
    - gf_svg_is_timing_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_JS_EXCEPTION
    - gf_node_get_tag
    - ScriptAction
    - gf_svg_is_animation_tag
    - gf_smil_timing_resume
    - dom_get_element
    - gf_svg_is_timing_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_JS_EXCEPTION
    - gf_node_get_tag
    - 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_JS_EXCEPTION
    - JS_ToFloat64
    - gf_node_get_tag
    - FLT2FIX
    - ScriptAction
    - dom_get_element
    - memset
    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_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_NewString
    - JS_FreeCString
    - strcmp
    - dom_get_element
    - gf_node_get_field_by_name
    - JSVAL_CHECK_STRING
    - gf_svg_dump_attribute
    - gf_dom_flatten_textContent
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewFloat64
    - FIX2FLT
    - gf_node_get_attribute_by_name
    - JS_IsString
    - JS_FreeCString
    - dom_get_element
    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_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_mx2d_init
    - gf_malloc
    - JS_SetOpaque
    - JS_IsString
    - gf_mx2d_copy
    - JS_FreeCString
    - dom_get_element
    - gf_node_get_field_by_name
    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_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - FIX2FLT
    - JS_SetOpaque
    - JS_IsString
    - JS_FreeCString
    - GF_SAFEALLOC
    - dom_get_element
    - gf_node_get_field_by_name
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_IsString
    - JS_FreeCString
    - svg_new_path_object
    - dom_get_element
    - gf_node_get_field_by_name
    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_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - FIX2FLT
    - JS_SetOpaque
    - JS_IsString
    - JS_FreeCString
    - GF_SAFEALLOC
    - dom_get_element
    - gf_node_get_field_by_name
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - dom_node_set_textContent
    - gf_svg_parse_attribute
    - JS_FreeCString
    - strcmp
    - dom_get_element
    - gf_node_get_field_by_name
    - JSVAL_CHECK_STRING
    - js_throw_err
    - dom_node_changed
    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:
    - dom_node_changed
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToCString
    - FLT2FIX
    - gf_list_count
    - gf_free
    - JS_IsNumber
    - JS_IsString
    - gf_list_add
    - JS_FreeCString
    - GF_SAFEALLOC
    - gf_list_get
    - dom_get_element
    - gf_node_get_field_by_name
    - js_throw_err
    - gf_list_rem
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - gf_mx2d_copy
    - JS_IsNull
    - JS_FreeCString
    - JS_IsObject
    - dom_get_element
    - gf_node_get_field_by_name
    - dom_node_changed
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - FLT2FIX
    - JS_IsString
    - JS_GetOpaque
    - JS_IsNull
    - JS_FreeCString
    - JS_IsObject
    - dom_get_element
    - gf_node_get_field_by_name
    - dom_node_changed
    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_JS_EXCEPTION
    - JS_ToCString
    - gf_list_count
    - gf_free
    - gf_malloc
    - FLT2FIX
    - JS_IsString
    - JS_GetOpaque
    - gf_list_add
    - JS_IsNull
    - JS_FreeCString
    - JS_IsObject
    - gf_list_get
    - dom_get_element
    - gf_node_get_field_by_name
    - dom_node_changed
    - gf_list_rem
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - FLT2FIX
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_IsObject
    - dom_get_element
    - gf_node_get_field_by_name
    - dom_node_changed
    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
    - GF_JS_EXCEPTION
    - FIX2FLT
    - gf_malloc
    - ScriptAction
    - JS_SetOpaque
    - dom_get_element
    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_JS_EXCEPTION
    - gf_malloc
    - ScriptAction
    - JS_SetOpaque
    - gf_mx2d_from_mx
    - dom_get_element
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_SetOpaque
    - GF_SAFEALLOC
    - dom_get_element
    - js_throw_err
    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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - GF_SAFEALLOC
    - dom_get_element
    - js_throw_err
    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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - GF_SAFEALLOC
    - dom_get_element
    - js_throw_err
    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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - GF_SAFEALLOC
    - dom_get_element
    - js_throw_err
    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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - GF_SAFEALLOC
    - dom_get_element
    - JS_ToInt32
    - js_throw_err
    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_JS_EXCEPTION
    - FIX2FLT
    - JS_NewFloat64
    - gf_path_iterator_get_length
    - gf_path_iterator_del
    - dom_get_element
    - gf_node_get_field_by_name
    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:
    - GF_JS_EXCEPTION
    - ScriptAction
    - JS_IsObject
    - dom_get_element
    - JS_ToInt32
    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
    - GF_JS_EXCEPTION
    - JS_IsObject
    - ScriptAction
    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
    - GF_JS_EXCEPTION
    - dom_element_construct
    - ScriptAction
    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_JS_EXCEPTION
    - JS_NewFloat64
    - gf_node_get_scene_time
    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:
    - JS_GetAnyOpaque
    - gf_free
    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:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - FIX2FLT
    - JS_NewFloat64
    - ScriptAction
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - FIX2FLT
    - JS_NewFloat64
    - ScriptAction
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - ScriptAction
    - JS_GetOpaque
    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_JS_EXCEPTION
    - gf_list_count
    - FIX2FLT
    - gf_malloc
    - JS_SetOpaque
    - GF_SAFEALLOC
    - gf_list_get
    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:
    - gf_free
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_NewInt32
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - JS_NewInt32
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - JS_GetOpaque
    - JS_IsInteger
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - svg_path_realloc_pts
    - JS_GetOpaque
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - svg_path_realloc_pts
    - JS_GetOpaque
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - svg_path_realloc_pts
    - JS_GetOpaque
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - svg_path_realloc_pts
    - JS_GetOpaque
    - 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:
    - GF_JS_EXCEPTION
    - gf_realloc
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - gf_mx2d_add_matrix
    - JS_DupValue
    - JS_GetOpaque
    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:
    - gf_mx2d_inverse
    - GF_JS_EXCEPTION
    - JS_DupValue
    - JS_GetOpaque
    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:
    - gf_mx2d_init
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx2d_pre_multiply
    - JS_GetOpaque
    - JS_DupValue
    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:
    - gf_mx2d_init
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx2d_pre_multiply
    - JS_GetOpaque
    - JS_DupValue
    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:
    - gf_mx2d_init
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx2d_pre_multiply
    - JS_GetOpaque
    - JS_DupValue
    - gf_mulfix
    - 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:
    - gf_assert
    - html_get_element_class
    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:
    - JS_GetRuntime
    - JS_NewObjectClass
    - JS_NewCFunction
    - dom_js_get_document_proto
    - JS_GetGlobalObject
    - dom_js_get_element_proto
    - JS_NewObject
    - JS_SetOpaque
    - dom_js_define_event
    - JS_FreeValue
    - JS_NewInt32
    - svg_define_udom_exception
    - dom_js_load
    - SETUP_JSCLASS
    - qjs_module_init_xhr_global
    - JS_SetPropertyStr
    - dom_js_define_document
    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: gf_strcpy
      Src: /src/gpac/src/scenegraph/svg_js.c:2279,1
    - Dst: gf_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:
    - gf_strcpy
    - strchr
    - gf_js_call_gc
    - gf_strcat
    - JS_SetOpaque
    - js_dump_error
    - JS_FreeValue
    - js_std_loop
    - JS_LookupProperty
    - JS_IsException
    - strlen
    - dom_get_evt_private
    - gf_js_lock
    - JS_Eval
    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:
    - JS_GetRuntime
    - html_media_js_api_del
    - gf_free
    - gf_js_delete_context
    - gf_sg_js_dom_pre_destroy
    - dom_js_unload
    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:
    - JS_GetRuntime
    - gf_sg_js_dom_pre_destroy
    - gf_svg_script_context_del
    - gf_list_del_item
    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:
    - html_media_init_js_api
    - gf_free
    - svg_init_js_api
    - GF_SAFEALLOC
    - gf_js_lock
    - gf_js_create_context
    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
    - gf_js_call_gc
    - gf_file_exists
    - gf_file_load_data
    - JS_Eval
    - js_dump_error
    - gf_dom_listener_process_add
    - JS_FreeValue
    - GF_SceneGraph*::script_action
    - strnicmp
    - JS_IsException
    - gf_opts_get_bool
    - JS_DetectModule
    - gf_js_lock
    - gf_dom_add_text_node
    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_node_get_attribute_by_tag
    - JSScript_CreateSVGContext
    - svg_get_text_child
    - gf_list_add
    - strstr
    - JS_Eval
    - vrml_svg_js_async_load
    - js_dump_error
    - gf_dom_listener_process_add
    - JS_FreeValue
    - JS_IsException
    - ScriptAction
    - js_std_loop
    - strnicmp
    - svg_js_load_script
    - strlen
    - gf_free
    - gf_opts_get_bool
    - JS_DetectModule
    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:
    - fprintf
    - JS_GetRuntime
    - JS_Call
    - svg_get_text_child
    - gf_js_lock
    - JS_ToCString
    - dom_element_construct
    - js_dump_error
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsException
    - dom_get_evt_private
    - svg_script_execute
    - JS_EvalThis
    - js_std_loop
    - gf_log_tool_level_on
    - JS_FreeCString
    - strlen
    - JS_GetGlobalObject
    - gf_js_call_gc
    - JS_IsUndefined
    - GF_LOG
    - JS_SetOpaque
    - JS_DumpNamedRoots
    - gf_dom_new_event
    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_IsUndefined
    - GF_LOG
    - JS_SetOpaque
    - js_dump_error
    - JS_FreeValue
    - JS_Call
    - JS_GetPropertyStr
    - JS_IsException
    - gf_js_lock
    - 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_del
    - gf_malloc
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_odf_delete_command
    - gf_bs_del
    - gf_list_get
    - gf_list_rem
    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_count
    - gf_bs_align
    - gf_odf_delete_command
    - gf_list_enum
    - gf_bs_new
    - gf_bs_del
    - gf_list_get
    - gf_list_rem
    - gf_list_reset
    - gf_odf_write_command
    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_count
    - gf_bs_align
    - gf_odf_delete_command
    - gf_odf_size_field_size
    - gf_odf_parse_command
    - gf_bs_del
    - gf_list_get
    - gf_list_add
    - gf_bs_available
    - gf_list_rem
    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_rem
    - gf_list_get
    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: 43
    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_rem
    - gf_list_get
    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: 17
    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_bs_del
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    - gf_bs_new
    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: 3
    functionsReached:
    - gf_bs_get_content
    - gf_bs_del
    - gf_odf_desc_write_bs
    - gf_bs_new
    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_odf_desc_write
    - gf_free
    - 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:
    - AddDescriptorToIOD
    - AddDescriptorToIsomIOD
    - AddDescriptorToIsomOD
    - AddDescriptorToOD
    - AddDescriptorToESD
    - gf_list_new
    - gf_list_add
    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_parse_descriptor
    - gf_odf_size_field_size
    - gf_bs_new
    - 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_bs_get_content
    - gf_bs_del
    - gf_odf_write_descriptor_list
    - gf_bs_new
    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_count
    - gf_odf_desc_del
    - gf_odf_com_del
    - gf_list_enum
    - gf_list_add
    - gf_odf_desc_copy
    - gf_list_get
    - gf_odf_com_new
    - gf_list_pop_back
    - gf_list_transfer
    - 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_delete_command
    - gf_odf_size_field_size
    - gf_odf_read_command
    - gf_bs_read_int
    - gf_odf_create_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_align
    - gf_bs_read_int
    - gf_malloc
    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_odf_size_od_remove
    - gf_bs_write_int
    - gf_bs_align
    - 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_malloc
    - gf_list_new
    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_list_count
    - gf_odf_delete_descriptor
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_list_add
    - gf_odf_delete_descriptor
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err AddToODUpdate(GF_ODUpdate *odUp, GF_Descriptor *desc)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_command.c:248,1
    - 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:252,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:254,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:257,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - bs
    - odUp
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_ODUpdate*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 260
    functionName: gf_odf_read_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_odf_parse_descriptor
    - gf_bs_align
    - gf_odf_size_field_size
    - AddToODUpdate
    - gf_bs_available
    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:269,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_command.c:270,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:271,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - odUp
    - outSize
    argTypes:
    - GF_ODUpdate*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 274
    functionName: gf_odf_size_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_odf_size_field_size
    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:282,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:284,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:288,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_command.c:289,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:293,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - odUp
    argTypes:
    - GF_BitStream*
    - GF_ODUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 295
    functionName: gf_odf_write_od_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_odf_write_descriptor
    - gf_list_enum
    - gf_odf_size_od_update
    - gf_odf_write_base_descriptor
    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:300,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_command.c:303,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:305,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 310
    functionName: gf_odf_new_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    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:316,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_command.c:317,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:318,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_command.c:320,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_command.c:323,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:324,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ESDUpdate
    argTypes:
    - GF_ESDUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 326
    functionName: gf_odf_del_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_odf_delete_descriptor
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:336,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:339,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - esdUp
    - desc
    argTypes:
    - GF_ESDUpdate*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 342
    functionName: AddToESDUpdate
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_odf_delete_descriptor
    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:351,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_command.c:355,1
    - Dst: AddToESDUpdate
      Src: /src/gpac/src/odf/odf_command.c:357,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:359,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:368,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: 371
      start: 344
    functionDepth: 2
    functionLinenumber: 344
    functionLinenumberEnd: 371
    functionName: gf_odf_read_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_odf_parse_descriptor
    - gf_bs_align
    - gf_odf_size_field_size
    - gf_bs_read_int
    - AddToESDUpdate
    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:384,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_command.c:385,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:386,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - esdUp
    - outSize
    argTypes:
    - GF_ESDUpdate*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 375
    functionDepth: 1
    functionLinenumber: 375
    functionLinenumberEnd: 393
    functionName: gf_odf_size_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_odf_size_field_size
    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:401,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:403,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:406,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:408,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_command.c:409,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:413,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - esdUp
    argTypes:
    - GF_BitStream*
    - GF_ESDUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 394
    functionDepth: 2
    functionLinenumber: 394
    functionLinenumberEnd: 415
    functionName: gf_odf_write_esd_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_odf_write_descriptor
    - gf_bs_write_int
    - gf_odf_size_esd_update
    - gf_list_enum
    - gf_odf_write_base_descriptor
    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:420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 426
    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:431,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:432,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ESDRemove
    argTypes:
    - GF_ESDRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 434
    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: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:442,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:443,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_command.c:454,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_command.c:458,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:462,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:465,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 3
    argNames:
    - bs
    - esdRem
    - gf_odf_size_command
    argTypes:
    - GF_BitStream*
    - GF_ESDRemove*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 467
    functionName: gf_odf_read_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_bs_read_int
    - gf_malloc
    - gf_bs_available
    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: 474
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 474
    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:481,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:483,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:486,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:487,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:489,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:492,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - bs
    - esdRem
    argTypes:
    - GF_BitStream*
    - GF_ESDRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 475
    functionDepth: 1
    functionLinenumber: 475
    functionLinenumberEnd: 494
    functionName: gf_odf_write_esd_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_esd_remove
    - gf_bs_write_int
    - gf_bs_align
    - gf_odf_write_base_descriptor
    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:500,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 506
    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:511,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:512,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - IPMPDRemove
    argTypes:
    - GF_IPMPRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 514
    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:526,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_command.c:530,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:533,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: 535
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 535
    functionName: gf_odf_read_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - gf_bs_read_int
    - gf_malloc
    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: 543
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 543
    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:550,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:552,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_command.c:556,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:559,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - ipmpRem
    argTypes:
    - GF_BitStream*
    - GF_IPMPRemove*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 561
    functionName: gf_odf_write_ipmp_remove
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_bs_align
    - gf_odf_size_ipmp_remove
    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:565,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_command.c:567,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:569,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 574
    functionName: gf_odf_new_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    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:580,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_command.c:581,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:582,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_command.c:584,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_command.c:587,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_command.c:588,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - IPMPDUpdate
    argTypes:
    - GF_IPMPUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 576
    functionDepth: 1
    functionLinenumber: 576
    functionLinenumberEnd: 590
    functionName: gf_odf_del_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_odf_delete_descriptor
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:599,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_command.c:601,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ipmpUp
    - desc
    argTypes:
    - GF_IPMPUpdate*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 604
    functionName: AddToIPMPDUpdate
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_odf_delete_descriptor
    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:614,1
    - Dst: AddToIPMPDUpdate
      Src: /src/gpac/src/odf/odf_command.c:616,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:618,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:621,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: 624
      start: 606
    functionDepth: 2
    functionLinenumber: 606
    functionLinenumberEnd: 624
    functionName: gf_odf_read_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - AddToIPMPDUpdate
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    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:635,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_command.c:636,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_command.c:637,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ipmpUp
    - outSize
    argTypes:
    - GF_IPMPUpdate*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 627
    functionDepth: 1
    functionLinenumber: 627
    functionLinenumberEnd: 640
    functionName: gf_odf_size_ipmp_update
    functionSourceFile: /src/gpac/src/odf/odf_command.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_odf_size_field_size
    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:648,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_command.c:650,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_command.c:654,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_command.c:655,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/odf_command.c:659,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - ipmpUp
    argTypes:
    - GF_BitStream*
    - GF_IPMPUpdate*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 641
    functionDepth: 2
    functionLinenumber: 641
    functionLinenumberEnd: 661
    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_list_enum
    - gf_odf_size_ipmp_update
    - gf_odf_write_base_descriptor
    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_malloc
    - gf_list_new
    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_list_count
    - gf_odf_delete_descriptor
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:
    - gf_list_add
    - OCI_IsOCIDesc
    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_malloc
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_oci_event_del
    - gf_list_rem
    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_count
    - gf_bs_align
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_odf_write_descriptor_list
    - gf_list_enum
    - gf_bs_new
    - gf_odf_size_descriptor_list
    - gf_bs_del
    - gf_bs_write_data
    - WriteSevenBitLength
    - gf_list_get
    - gf_oci_event_del
    - gf_list_rem
    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_oci_event_new
    - gf_list_count
    - gf_odf_delete_descriptor
    - gf_odf_parse_descriptor
    - OCI_IsOCIDesc
    - gf_odf_size_field_size
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gf_list_get
    - gf_list_add
    - gf_oci_event_del
    - 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_rem
    - gf_list_get
    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: 14
    argCount: 4
    argNames:
    - bs
    - string
    - isUTF8
    - read
    argTypes:
    - GF_BitStream*
    - char**
    - Bool
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 46
    functionName: OD_ReadUTF8String
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    - gf_bs_available
    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:50,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - string
    - isUTF8
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 52
    functionName: OD_SizeUTF8String
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_utf8_wcslen
    - strlen
    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:58,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:59,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:60,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:62,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:63,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - bs
    - string
    - isUTF8
    argTypes:
    - GF_BitStream*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 66
    functionName: OD_WriteUTF8String
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_utf8_wcslen
    - gf_bs_write_data
    - strlen
    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:80,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:85,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:90,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:92,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - string
    - readBytes
    argTypes:
    - GF_BitStream*
    - char**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 96
    functionName: gf_odf_read_url_string
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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:104,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:107,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:110,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:112,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - string
    argTypes:
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 116
    functionName: gf_odf_write_url_string
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_bs_write_data
    - 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:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - string
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 123
    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:127,1
    - Dst: memset
      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
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 135
    functionName: gf_odf_new_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    - gf_list_new
    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:142,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:145,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:149,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:153,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:157,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:161,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:165,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:169,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:171,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:173,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:175,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 1
    argNames:
    - esd
    argTypes:
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 138
    functionDepth: 1
    functionLinenumber: 138
    functionLinenumberEnd: 177
    functionName: gf_odf_del_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_free
    - 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:196,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:219,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:223,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:234,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 2
    argNames:
    - esd
    - desc
    argTypes:
    - GF_ESD*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 240
    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: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:255,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:259,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:264,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:269,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:275,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:280,1
    - Dst: AddDescriptorToESD
      Src: /src/gpac/src/odf/odf_code.c:285,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:287,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:290,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 49
    argCount: 3
    argNames:
    - bs
    - esd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ESD*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 299
    functionName: gf_odf_read_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    - 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:311,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:315,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:317,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:320,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:322,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:325,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:327,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:330,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:332,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:335,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:337,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:340,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:342,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:345,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:347,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:349,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 54
    argCount: 2
    argNames:
    - esd
    - outSize
    argTypes:
    - GF_ESD*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 301
    functionDepth: 1
    functionLinenumber: 301
    functionLinenumberEnd: 350
    functionName: gf_odf_size_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_size_url_string
    - gf_odf_size_descriptor_list
    - gf_odf_size_field_size
    - 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:358,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:360,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:367,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:370,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:373,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:379,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:382,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:386,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:390,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:394,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:398,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:400,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:403,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:407,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:410,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 2
    argNames:
    - bs
    - esd
    argTypes:
    - GF_BitStream*
    - GF_ESD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 411
    functionName: gf_odf_write_esd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_descriptor
    - gf_bs_write_int
    - gf_odf_write_descriptor_list
    - gf_odf_size_descriptor
    - gf_odf_write_url_string
    - gf_odf_write_base_descriptor
    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:415,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:417,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:421,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 413
    functionDepth: 1
    functionLinenumber: 413
    functionLinenumberEnd: 426
    functionName: gf_odf_new_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    - gf_list_new
    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:432,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:433,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:435,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:437,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:439,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:441,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:442,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - iod
    argTypes:
    - GF_InitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 428
    functionDepth: 1
    functionLinenumber: 428
    functionLinenumberEnd: 444
    functionName: gf_odf_del_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_free
    - 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:452,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:458,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:462,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:469,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:470,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 2
    argNames:
    - iod
    - desc
    argTypes:
    - GF_InitialObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 446
    functionDepth: 2
    functionLinenumber: 446
    functionLinenumberEnd: 472
    functionName: AddDescriptorToIOD
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 1
    functionsReached:
    - gf_odf_desc_del
    - gf_list_add
    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: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_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:484,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:488,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_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:496,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:502,1
    - Dst: AddDescriptorToIOD
      Src: /src/gpac/src/odf/odf_code.c:505,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:507,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:510,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 3
    argNames:
    - bs
    - iod
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_InitialObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 474
    functionDepth: 3
    functionLinenumber: 474
    functionLinenumberEnd: 514
    functionName: gf_odf_read_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - AddDescriptorToIOD
    - gf_odf_delete_descriptor
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    - gf_bs_read_int
    - 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:524,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:527,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:529,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:531,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:535,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:539,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:541,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - iod
    - outSize
    argTypes:
    - GF_InitialObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 544
    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_list
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    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:552,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:554,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:560,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:563,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:569,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:570,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:572,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:574,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:576,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:579,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:583,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 2
    argNames:
    - bs
    - iod
    argTypes:
    - GF_BitStream*
    - GF_InitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 546
    functionDepth: 2
    functionLinenumber: 546
    functionLinenumberEnd: 584
    functionName: gf_odf_write_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_descriptor
    - gf_bs_write_int
    - gf_odf_write_descriptor_list
    - gf_odf_size_descriptor
    - gf_odf_write_url_string
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list_filter
    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:591,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
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:598,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 588
    functionDepth: 1
    functionLinenumber: 588
    functionLinenumberEnd: 602
    functionName: gf_odf_new_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:608,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:609,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:611,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:613,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:615,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:617,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - od
    argTypes:
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 604
    functionDepth: 1
    functionLinenumber: 604
    functionLinenumberEnd: 619
    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:628,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:634,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:641,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:646,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - od
    - desc
    argTypes:
    - GF_ObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 651
    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:660,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:661,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:662,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:667,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:674,1
    - Dst: AddDescriptorToOD
      Src: /src/gpac/src/odf/odf_code.c:677,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:679,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:682,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - bs
    - od
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 653
    functionDepth: 2
    functionLinenumber: 653
    functionLinenumberEnd: 686
    functionName: gf_odf_read_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_odf_parse_descriptor
    - AddDescriptorToOD
    - gf_odf_size_field_size
    - 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:695,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:697,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:699,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:701,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:704,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - od
    - outSize
    argTypes:
    - GF_ObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 688
    functionDepth: 1
    functionLinenumber: 688
    functionLinenumberEnd: 705
    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:713,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:715,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:720,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:723,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:725,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:727,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:729,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:731,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:734,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 2
    argNames:
    - bs
    - od
    argTypes:
    - GF_BitStream*
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 707
    functionDepth: 2
    functionLinenumber: 707
    functionLinenumberEnd: 735
    functionName: gf_odf_write_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_descriptor_list
    - gf_odf_size_descriptor
    - gf_odf_write_url_string
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list_filter
    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:739,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:741,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
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 757
      start: 737
    functionDepth: 1
    functionLinenumber: 737
    functionLinenumberEnd: 757
    functionName: gf_odf_new_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_malloc
    - gf_list_new
    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:763,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:764,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:766,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:768,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:770,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:772,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:774,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:775,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - iod
    argTypes:
    - GF_IsomInitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 759
    functionDepth: 1
    functionLinenumber: 759
    functionLinenumberEnd: 777
    functionName: gf_odf_del_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_free
    - 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:789,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:790,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:794,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:795,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:800,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:804,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:812,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:814,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 2
    argNames:
    - iod
    - desc
    argTypes:
    - GF_IsomInitialObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 779
    functionDepth: 2
    functionLinenumber: 779
    functionLinenumberEnd: 816
    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: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_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:828,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:833,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_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:841,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:847,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:849,1
    - Dst: AddDescriptorToIsomIOD
      Src: /src/gpac/src/odf/odf_code.c:853,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/odf/odf_code.c:855,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:858,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 3
    argNames:
    - bs
    - iod
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IsomInitialObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 818
    functionDepth: 3
    functionLinenumber: 818
    functionLinenumberEnd: 862
    functionName: gf_odf_read_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - AddDescriptorToIsomIOD
    - gf_odf_desc_del
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    - 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:871,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:874,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:876,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:878,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:880,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:885,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:887,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:889,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 2
    argNames:
    - iod
    - outSize
    argTypes:
    - GF_IsomInitialObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 864
    functionDepth: 1
    functionLinenumber: 864
    functionLinenumberEnd: 890
    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_list
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    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:898,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:900,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:906,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:909,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:915,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:916,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:918,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:920,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:922,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:924,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:927,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:931,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 2
    argNames:
    - bs
    - iod
    argTypes:
    - GF_BitStream*
    - GF_IsomInitialObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 892
    functionDepth: 2
    functionLinenumber: 892
    functionLinenumberEnd: 934
    functionName: gf_odf_write_isom_iod
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_descriptor
    - gf_bs_write_int
    - gf_odf_write_descriptor_list
    - gf_odf_size_descriptor
    - gf_odf_write_url_string
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list_filter
    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:939,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
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:947,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 937
    functionDepth: 1
    functionLinenumber: 937
    functionLinenumberEnd: 951
    functionName: gf_odf_new_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_list_new
    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:957,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:958,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:960,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:962,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:964,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:966,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:968,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - od
    argTypes:
    - GF_IsomObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 953
    functionDepth: 1
    functionLinenumber: 953
    functionLinenumberEnd: 970
    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:979,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:985,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:994,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:995,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:999,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:1000,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:1005,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - od
    - desc
    argTypes:
    - GF_IsomObjectDescriptor*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 972
    functionDepth: 1
    functionLinenumber: 972
    functionLinenumberEnd: 1010
    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:1019,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1020,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1021,1
    - Dst: gf_odf_read_url_string
      Src: /src/gpac/src/odf/odf_code.c:1026,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1033,1
    - Dst: AddDescriptorToIsomOD
      Src: /src/gpac/src/odf/odf_code.c:1036,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1038,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:1041,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - bs
    - od
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IsomObjectDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1012
    functionDepth: 2
    functionLinenumber: 1012
    functionLinenumberEnd: 1045
    functionName: gf_odf_read_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_odf_parse_descriptor
    - AddDescriptorToIsomOD
    - gf_odf_size_field_size
    - gf_bs_read_int
    - 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:1054,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1056,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1058,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1060,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1062,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1065,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - od
    - outSize
    argTypes:
    - GF_IsomObjectDescriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1047
    functionDepth: 1
    functionLinenumber: 1047
    functionLinenumberEnd: 1066
    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:1074,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1076,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1081,1
    - Dst: gf_odf_write_url_string
      Src: /src/gpac/src/odf/odf_code.c:1084,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1086,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1088,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1090,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:1092,1
    - Dst: gf_odf_write_descriptor_list_filter
      Src: /src/gpac/src/odf/odf_code.c:1094,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1097,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 2
    argNames:
    - bs
    - od
    argTypes:
    - GF_BitStream*
    - GF_IsomObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1100
      start: 1068
    functionDepth: 2
    functionLinenumber: 1068
    functionLinenumberEnd: 1100
    functionName: gf_odf_write_isom_od
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_descriptor_list
    - gf_odf_size_descriptor
    - gf_odf_write_url_string
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor_list_filter
    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:1107,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:1110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1113
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1113
    functionName: gf_odf_new_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:1120,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1124,1
    - Dst: gf_odf_delete_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1127,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1129,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - dcd
    argTypes:
    - GF_DecoderConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1131
      start: 1115
    functionDepth: 1
    functionLinenumber: 1115
    functionLinenumberEnd: 1131
    functionName: gf_odf_del_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_free
    - 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: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_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1145,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1150,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1156,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:1163,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1165,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1173,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1178,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:1181,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 3
    argNames:
    - bs
    - dcd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_DecoderConfig*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1133
    functionDepth: 1
    functionLinenumber: 1133
    functionLinenumberEnd: 1185
    functionName: gf_odf_read_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_delete_descriptor
    - gf_odf_parse_descriptor
    - gf_odf_size_field_size
    - gf_bs_read_int
    - gf_list_add
    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:1198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/odf_code.c:1201,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/odf/odf_code.c:1201,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/odf/odf_code.c:1201,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1211,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:1213,1
    - Dst: gf_odf_size_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1215,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - dcd
    - outSize
    argTypes:
    - GF_DecoderConfig*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1189
    functionDepth: 1
    functionLinenumber: 1189
    functionLinenumberEnd: 1218
    functionName: gf_odf_size_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_codecid_name
    - GF_LOG
    - gf_odf_size_field_size
    - gf_odf_size_descriptor
    - gf_codecid_oti
    - gf_odf_size_descriptor_list
    - gf_4cc_to_str
    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:1228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/odf_code.c:1231,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/odf/odf_code.c:1231,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/odf/odf_code.c:1231,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1235,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1237,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1246,1
    - Dst: gf_odf_write_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1249,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:1252,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - bs
    - dcd
    argTypes:
    - GF_BitStream*
    - GF_DecoderConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1220
    functionDepth: 1
    functionLinenumber: 1220
    functionLinenumberEnd: 1254
    functionName: gf_odf_write_dcd
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_codecid_name
    - gf_odf_write_base_descriptor
    - gf_odf_write_descriptor
    - GF_LOG
    - gf_bs_write_int
    - gf_odf_write_descriptor_list
    - gf_odf_size_descriptor
    - gf_codecid_oti
    - gf_4cc_to_str
    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:1259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1267
      start: 1257
    functionDepth: 0
    functionLinenumber: 1257
    functionLinenumberEnd: 1267
    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:1273,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1274,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - dd
    argTypes:
    - GF_DefaultDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1269
    functionDepth: 0
    functionLinenumber: 1269
    functionLinenumberEnd: 1276
    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:1286,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:1288,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1293,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - dd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_DefaultDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1299
      start: 1278
    functionDepth: 1
    functionLinenumber: 1278
    functionLinenumberEnd: 1299
    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: 1306
      start: 1301
    functionDepth: 0
    functionLinenumber: 1301
    functionLinenumberEnd: 1306
    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:1314,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1316,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:1320,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - dd
    argTypes:
    - GF_BitStream*
    - GF_DefaultDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1323
      start: 1308
    functionDepth: 1
    functionLinenumber: 1308
    functionLinenumberEnd: 1323
    functionName: gf_odf_write_default
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_base_descriptor
    - gf_bs_write_data
    - gf_odf_size_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:1327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1332
      start: 1325
    functionDepth: 0
    functionLinenumber: 1325
    functionLinenumberEnd: 1332
    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:1337,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - esd_inc
    argTypes:
    - GF_ES_ID_Inc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1339
      start: 1334
    functionDepth: 0
    functionLinenumber: 1334
    functionLinenumberEnd: 1339
    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:1345,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: 1349
      start: 1340
    functionDepth: 1
    functionLinenumber: 1340
    functionLinenumberEnd: 1349
    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: 1355
      start: 1350
    functionDepth: 0
    functionLinenumber: 1350
    functionLinenumberEnd: 1355
    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:1362,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1364,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1366,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: 1368
      start: 1356
    functionDepth: 1
    functionLinenumber: 1356
    functionLinenumberEnd: 1368
    functionName: gf_odf_write_esd_inc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:1372,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1377
      start: 1370
    functionDepth: 0
    functionLinenumber: 1370
    functionLinenumberEnd: 1377
    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:1382,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - esd_ref
    argTypes:
    - GF_ES_ID_Ref*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1379
    functionDepth: 0
    functionLinenumber: 1379
    functionLinenumberEnd: 1384
    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:1390,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: 1394
      start: 1385
    functionDepth: 1
    functionLinenumber: 1385
    functionLinenumberEnd: 1394
    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: 1401
      start: 1396
    functionDepth: 0
    functionLinenumber: 1396
    functionLinenumberEnd: 1401
    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:1408,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1410,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1413,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: 1415
      start: 1402
    functionDepth: 1
    functionLinenumber: 1402
    functionLinenumberEnd: 1415
    functionName: gf_odf_write_esd_ref
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:1421,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1419
    functionDepth: 0
    functionLinenumber: 1419
    functionLinenumberEnd: 1427
    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:1433,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1434,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sd
    argTypes:
    - GF_Segment*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1436
      start: 1429
    functionDepth: 0
    functionLinenumber: 1429
    functionLinenumberEnd: 1436
    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:1443,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/odf/odf_code.c:1444,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1446,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1449,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:1451,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - sd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Segment*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1457
      start: 1438
    functionDepth: 1
    functionLinenumber: 1438
    functionLinenumberEnd: 1457
    functionName: gf_odf_read_segment
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    - gf_bs_read_double
    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:1463,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - sd
    - outSize
    argTypes:
    - GF_Segment*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1465
      start: 1459
    functionDepth: 0
    functionLinenumber: 1459
    functionLinenumberEnd: 1465
    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:1472,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1474,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/odf/odf_code.c:1476,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/odf/odf_code.c:1477,1
    - Dst: gf_bs_write_int
      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_data
      Src: /src/gpac/src/odf/odf_code.c:1480,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:1480,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1482,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - sd
    argTypes:
    - GF_BitStream*
    - GF_Segment*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1467
    functionDepth: 1
    functionLinenumber: 1467
    functionLinenumberEnd: 1485
    functionName: gf_odf_write_segment
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_bs_write_double
    - gf_bs_write_data
    - strlen
    - gf_odf_write_base_descriptor
    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:1492,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1496
      start: 1489
    functionDepth: 1
    functionLinenumber: 1489
    functionLinenumberEnd: 1496
    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:1501,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1502,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ld
    argTypes:
    - GF_Language*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1504
      start: 1498
    functionDepth: 0
    functionLinenumber: 1498
    functionLinenumberEnd: 1504
    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:1511,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - ld
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Language*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1515
      start: 1506
    functionDepth: 1
    functionLinenumber: 1506
    functionLinenumberEnd: 1515
    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: 1522
      start: 1517
    functionDepth: 0
    functionLinenumber: 1517
    functionLinenumberEnd: 1522
    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:1530,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1532,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1534,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - ld
    argTypes:
    - GF_BitStream*
    - GF_Language*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1536
      start: 1524
    functionDepth: 1
    functionLinenumber: 1524
    functionLinenumberEnd: 1536
    functionName: gf_odf_write_lang
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:1543,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1547
      start: 1540
    functionDepth: 1
    functionLinenumber: 1540
    functionLinenumberEnd: 1547
    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:1552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ld
    argTypes:
    - GF_AuxVideoDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1554
      start: 1549
    functionDepth: 0
    functionLinenumber: 1549
    functionLinenumberEnd: 1554
    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: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:1563,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:1568,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:1575,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1580,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - bs
    - ld
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_AuxVideoDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1584
      start: 1556
    functionDepth: 1
    functionLinenumber: 1556
    functionLinenumberEnd: 1584
    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: 1601
      start: 1586
    functionDepth: 0
    functionLinenumber: 1586
    functionLinenumberEnd: 1601
    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:1608,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1610,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:1615,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:1619,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
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1625,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - bs
    - ld
    argTypes:
    - GF_BitStream*
    - GF_AuxVideoDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1629
      start: 1603
    functionDepth: 1
    functionLinenumber: 1603
    functionLinenumberEnd: 1629
    functionName: gf_odf_write_auxvid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:1635,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1640
      start: 1633
    functionDepth: 0
    functionLinenumber: 1633
    functionLinenumberEnd: 1640
    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: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
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1650,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - mi
    argTypes:
    - GF_MuxInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1642
    functionDepth: 0
    functionLinenumber: 1642
    functionLinenumberEnd: 1652
    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: 1658
      start: 1654
    functionDepth: 0
    functionLinenumber: 1654
    functionLinenumberEnd: 1658
    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: 1662
      start: 1659
    functionDepth: 0
    functionLinenumber: 1659
    functionLinenumberEnd: 1662
    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:1666,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1668,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1671
      start: 1664
    functionDepth: 0
    functionLinenumber: 1664
    functionLinenumberEnd: 1671
    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:1675,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1676,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_ElementaryMask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1673
    functionDepth: 0
    functionLinenumber: 1673
    functionLinenumberEnd: 1678
    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:1682,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1684,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1687
      start: 1680
    functionDepth: 0
    functionLinenumber: 1680
    functionLinenumberEnd: 1687
    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:1692,1
    - Dst: gf_list_get
      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_free
      Src: /src/gpac/src/odf/odf_code.c:1696,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:1698,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1700,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_BIFSConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1689
    functionDepth: 1
    functionLinenumber: 1689
    functionLinenumberEnd: 1702
    functionName: gf_odf_del_bifs_cfg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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:1706,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1711
      start: 1704
    functionDepth: 0
    functionLinenumber: 1704
    functionLinenumberEnd: 1711
    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:1715,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_LASERConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1713
    functionDepth: 0
    functionLinenumber: 1713
    functionLinenumberEnd: 1717
    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:1721,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1723,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1719
    functionDepth: 0
    functionLinenumber: 1719
    functionLinenumberEnd: 1726
    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:1730,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1731,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1732,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - desc
    argTypes:
    - GF_UIConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1734
      start: 1728
    functionDepth: 0
    functionLinenumber: 1728
    functionLinenumberEnd: 1734
    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:1740,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1738
    functionDepth: 0
    functionLinenumber: 1738
    functionLinenumberEnd: 1746
    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:1750,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - mt
    argTypes:
    - GF_MediaTime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1747
    functionDepth: 0
    functionLinenumber: 1747
    functionLinenumberEnd: 1752
    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:1756,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - bs
    - mt
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_MediaTime*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1758
      start: 1753
    functionDepth: 1
    functionLinenumber: 1753
    functionLinenumberEnd: 1758
    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: 1764
      start: 1759
    functionDepth: 0
    functionLinenumber: 1759
    functionLinenumberEnd: 1764
    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:1770,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1772,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/odf/odf_code.c:1774,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - mt
    argTypes:
    - GF_BitStream*
    - GF_MediaTime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1776
      start: 1765
    functionDepth: 1
    functionLinenumber: 1765
    functionLinenumberEnd: 1776
    functionName: gf_odf_write_mediatime
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_double
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:1780,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1789
      start: 1778
    functionDepth: 0
    functionLinenumber: 1778
    functionLinenumberEnd: 1789
    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:1794,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1795,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ccd
    argTypes:
    - GF_CCDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1797
      start: 1791
    functionDepth: 0
    functionLinenumber: 1791
    functionLinenumberEnd: 1797
    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:1804,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1805,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1810,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:1812,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - bs
    - ccd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_CCDescriptor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1817
      start: 1799
    functionDepth: 1
    functionLinenumber: 1799
    functionLinenumberEnd: 1817
    functionName: gf_odf_read_cc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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: 1824
      start: 1819
    functionDepth: 0
    functionLinenumber: 1819
    functionLinenumberEnd: 1824
    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:1832,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1834,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1836,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1837,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:1838,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - ccd
    argTypes:
    - GF_BitStream*
    - GF_CCDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1840
      start: 1826
    functionDepth: 1
    functionLinenumber: 1826
    functionLinenumberEnd: 1840
    functionName: gf_odf_write_cc
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_bs_write_data
    - gf_odf_size_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:1844,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:1846,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1849
      start: 1842
    functionDepth: 0
    functionLinenumber: 1842
    functionLinenumberEnd: 1849
    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:1855,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - cdd
    argTypes:
    - GF_CC_Date*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1857
      start: 1852
    functionDepth: 0
    functionLinenumber: 1852
    functionLinenumberEnd: 1857
    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:1864,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: 1868
      start: 1859
    functionDepth: 1
    functionLinenumber: 1859
    functionLinenumberEnd: 1868
    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: 1875
      start: 1870
    functionDepth: 0
    functionLinenumber: 1870
    functionLinenumberEnd: 1875
    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:1883,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1885,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:1888,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - cdd
    argTypes:
    - GF_BitStream*
    - GF_CC_Date*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1877
    functionDepth: 1
    functionLinenumber: 1877
    functionLinenumberEnd: 1890
    functionName: gf_odf_write_cc_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_base_descriptor
    - gf_bs_write_data
    - gf_odf_size_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:1894,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:1897,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1904
      start: 1892
    functionDepth: 1
    functionLinenumber: 1892
    functionLinenumberEnd: 1904
    functionName: gf_odf_new_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    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:1913,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1914,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1915,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:1917,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1918,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - cnd
    argTypes:
    - GF_CC_Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1920
      start: 1906
    functionDepth: 1
    functionLinenumber: 1906
    functionLinenumberEnd: 1920
    functionName: gf_odf_del_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - gf_list_enum
    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:1928,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:1931,1
    - Dst: memset
      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: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:1936,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:1939,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:1941,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:1945,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: 1950
      start: 1922
    functionDepth: 2
    functionLinenumber: 1922
    functionLinenumberEnd: 1950
    functionName: gf_odf_read_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - OD_ReadUTF8String
    - gf_bs_read_int
    - memset
    - gf_list_add
    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:1960,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:1961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - cnd
    - outSize
    argTypes:
    - GF_CC_Name*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1952
    functionDepth: 2
    functionLinenumber: 1952
    functionLinenumberEnd: 1964
    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:1973,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:1975,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1977,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:1977,1
    - Dst: gf_list_enum
      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: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:1983,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:1984,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - cnd
    argTypes:
    - GF_BitStream*
    - GF_CC_Name*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1987
      start: 1966
    functionDepth: 2
    functionLinenumber: 1966
    functionLinenumberEnd: 1987
    functionName: gf_odf_write_cc_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - OD_WriteUTF8String
    - gf_bs_write_int
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    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:1992,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 1990
    functionDepth: 0
    functionLinenumber: 1990
    functionLinenumberEnd: 2004
    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:2011,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2012,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cid
    argTypes:
    - GF_CIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2014
      start: 2007
    functionDepth: 0
    functionLinenumber: 2007
    functionLinenumberEnd: 2014
    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:2022,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:2028,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2032,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2036,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2038,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2041,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - bs
    - cid
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_CIDesc*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2046
      start: 2017
    functionDepth: 1
    functionLinenumber: 2017
    functionLinenumberEnd: 2046
    functionName: gf_odf_read_ci
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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:2056,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - cid
    - outSize
    argTypes:
    - GF_CIDesc*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2058
      start: 2048
    functionDepth: 0
    functionLinenumber: 2048
    functionLinenumberEnd: 2058
    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:2066,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2068,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:2075,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2078,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2082,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2083,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - bs
    - cid
    argTypes:
    - GF_BitStream*
    - GF_CIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 2060
    functionDepth: 1
    functionLinenumber: 2060
    functionLinenumberEnd: 2086
    functionName: gf_odf_write_ci
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_bs_write_data
    - gf_odf_size_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:2090,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2093,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2095,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2098,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2100,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2109
      start: 2088
    functionDepth: 1
    functionLinenumber: 2088
    functionLinenumberEnd: 2109
    functionName: gf_odf_new_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    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:2115,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2116,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2118,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2119,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2121,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2123,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2125,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2126,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2128,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2129,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2131,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2133,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2135,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2136,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - etd
    argTypes:
    - GF_ExpandedTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2138
      start: 2111
    functionDepth: 1
    functionLinenumber: 2111
    functionLinenumberEnd: 2138
    functionName: gf_odf_del_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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: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_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2150,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2156,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2159,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2161,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2164,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2169,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2172,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2174,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2178,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2183,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2190,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2192,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 53
    argCount: 3
    argNames:
    - bs
    - etd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ExpandedTextual*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2197
      start: 2140
    functionDepth: 2
    functionLinenumber: 2140
    functionLinenumberEnd: 2197
    functionName: gf_odf_read_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - OD_ReadUTF8String
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_list_add
    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:2206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2208,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2210,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2211,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2212,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2213,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2218,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:2220,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - etd
    - outSize
    argTypes:
    - GF_ExpandedTextual*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2239
      start: 2200
    functionDepth: 2
    functionLinenumber: 2200
    functionLinenumberEnd: 2239
    functionName: gf_odf_size_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_utf8_wcslen
    - 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:2247,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2247,1
    - Dst: gf_odf_size_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2249,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2251,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2259,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2261,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2262,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2263,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2264,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2268,1
    - Dst: gf_utf8_wcslen
      Src: /src/gpac/src/odf/odf_code.c:2270,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2278,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2282,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2283,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 2
    argNames:
    - bs
    - etd
    argTypes:
    - GF_BitStream*
    - GF_ExpandedTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2285
      start: 2241
    functionDepth: 2
    functionLinenumber: 2241
    functionLinenumberEnd: 2285
    functionName: gf_odf_write_exp_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - OD_WriteUTF8String
    - gf_bs_write_int
    - gf_utf8_wcslen
    - gf_odf_size_descriptor
    - gf_bs_write_data
    - gf_list_get
    - strlen
    - gf_odf_write_base_descriptor
    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:2289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2300
      start: 2287
    functionDepth: 0
    functionLinenumber: 2287
    functionLinenumberEnd: 2300
    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:2306,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pld
    argTypes:
    - GF_PLExt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2308
      start: 2302
    functionDepth: 0
    functionLinenumber: 2302
    functionLinenumberEnd: 2308
    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: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
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - bs
    - pld
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_PLExt*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2326
      start: 2310
    functionDepth: 1
    functionLinenumber: 2310
    functionLinenumberEnd: 2326
    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: 2334
      start: 2328
    functionDepth: 0
    functionLinenumber: 2328
    functionLinenumberEnd: 2334
    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:2342,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2344,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
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2353,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - pld
    argTypes:
    - GF_BitStream*
    - GF_PLExt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2355
      start: 2336
    functionDepth: 1
    functionLinenumber: 2336
    functionLinenumberEnd: 2355
    functionName: gf_odf_write_pl_ext
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:2359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2364
      start: 2357
    functionDepth: 0
    functionLinenumber: 2357
    functionLinenumberEnd: 2364
    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:2369,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ipid
    argTypes:
    - GF_IPIPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2371
      start: 2366
    functionDepth: 0
    functionLinenumber: 2366
    functionLinenumberEnd: 2371
    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:2378,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - bs
    - ipid
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IPIPtr*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2382
      start: 2373
    functionDepth: 1
    functionLinenumber: 2373
    functionLinenumberEnd: 2382
    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: 2389
      start: 2384
    functionDepth: 0
    functionLinenumber: 2384
    functionLinenumberEnd: 2389
    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:2396,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2398,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2400,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - ipid
    argTypes:
    - GF_BitStream*
    - GF_IPIPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2391
    functionDepth: 1
    functionLinenumber: 2391
    functionLinenumberEnd: 2402
    functionName: gf_odf_write_ipi_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:2407,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2413
      start: 2404
    functionDepth: 1
    functionLinenumber: 2404
    functionLinenumberEnd: 2413
    functionName: gf_odf_new_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:2417,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2420,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2421,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2422,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/odf/odf_code.c:2423,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2426,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2427,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ipmp
    argTypes:
    - GF_IPMP_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2429
      start: 2414
    functionDepth: 1
    functionLinenumber: 2414
    functionLinenumberEnd: 2429
    functionName: gf_odf_del_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_ipmpx_data_del
    - gf_list_del
    - gf_list_get
    - 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:2437,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2438,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2446,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/odf/odf_code.c:2447,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2448,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2449,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2452,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_code.c:2459,1
    - Dst: gf_ipmpx_data_parse
      Src: /src/gpac/src/odf/odf_code.c:2460,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2462,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/odf_code.c:2463,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2468,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2470,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2479,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2481,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: 2486
      start: 2431
    functionDepth: 1
    functionLinenumber: 2431
    functionLinenumberEnd: 2486
    functionName: gf_odf_read_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_ipmpx_data_parse
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_list_add
    - gf_bs_available
    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:2501,1
    - Dst: gf_ipmpx_data_full_size
      Src: /src/gpac/src/odf/odf_code.c:2502,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2508,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - ipmp
    - outSize
    argTypes:
    - GF_IPMP_Descriptor*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2513
      start: 2488
    functionDepth: 1
    functionLinenumber: 2488
    functionLinenumberEnd: 2513
    functionName: gf_odf_size_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_ipmpx_data_full_size
    - 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:2521,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2523,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:2526,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2530,1
    - Dst: gf_bs_write_data
      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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2533,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2536,1
    - Dst: gf_ipmpx_data_write
      Src: /src/gpac/src/odf/odf_code.c:2537,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2542,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2542,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2544,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - bs
    - ipmp
    argTypes:
    - GF_BitStream*
    - GF_IPMP_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2547
      start: 2515
    functionDepth: 1
    functionLinenumber: 2515
    functionLinenumberEnd: 2547
    functionName: gf_odf_write_ipmp
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_data_write
    - gf_bs_write_int
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_bs_write_data
    - strlen
    - gf_odf_write_base_descriptor
    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:2552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2556
      start: 2549
    functionDepth: 1
    functionLinenumber: 2549
    functionLinenumberEnd: 2556
    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:2560,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ipmpd
    argTypes:
    - GF_IPMPPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2562
      start: 2557
    functionDepth: 0
    functionLinenumber: 2557
    functionLinenumberEnd: 2562
    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:2568,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2571,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2572,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - bs
    - ipmpd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_IPMPPtr*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2577
      start: 2564
    functionDepth: 1
    functionLinenumber: 2564
    functionLinenumberEnd: 2577
    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: 2584
      start: 2578
    functionDepth: 0
    functionLinenumber: 2578
    functionLinenumberEnd: 2584
    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:2591,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2593,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2595,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2597,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2598,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - bs
    - ipmpd
    argTypes:
    - GF_BitStream*
    - GF_IPMPPtr*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2601
      start: 2585
    functionDepth: 1
    functionLinenumber: 2585
    functionLinenumberEnd: 2601
    functionName: gf_odf_write_ipmp_ptr
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:2605,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2608,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2610,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2603
    functionDepth: 1
    functionLinenumber: 2603
    functionLinenumberEnd: 2617
    functionName: gf_odf_new_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    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:2623,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:2624,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2626,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:2628,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2629,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2632,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2633,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - kwd
    argTypes:
    - GF_KeyWord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2635
      start: 2619
    functionDepth: 1
    functionLinenumber: 2619
    functionLinenumberEnd: 2635
    functionName: gf_odf_del_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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: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_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2646,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2650,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2652,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:2655,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2660,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2661,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2664,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2666,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 3
    argNames:
    - bs
    - kwd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_KeyWord*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2637
    functionDepth: 2
    functionLinenumber: 2637
    functionLinenumberEnd: 2672
    functionName: gf_odf_read_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - OD_ReadUTF8String
    - gf_bs_read_int
    - gf_list_add
    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:2683,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2684,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - kwd
    - outSize
    argTypes:
    - GF_KeyWord*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2687
      start: 2675
    functionDepth: 2
    functionLinenumber: 2675
    functionLinenumberEnd: 2687
    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:2695,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2697,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_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2703,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2703,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/odf/odf_code.c:2706,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2707,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - kwd
    argTypes:
    - GF_BitStream*
    - GF_KeyWord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2688
    functionDepth: 2
    functionLinenumber: 2688
    functionLinenumberEnd: 2710
    functionName: gf_odf_write_kw
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - OD_WriteUTF8String
    - gf_bs_write_int
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    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:2714,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:2716,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2719
      start: 2712
    functionDepth: 0
    functionLinenumber: 2712
    functionLinenumberEnd: 2719
    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:2724,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ocd
    argTypes:
    - GF_OCI_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2726
      start: 2721
    functionDepth: 0
    functionLinenumber: 2721
    functionLinenumberEnd: 2726
    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:2733,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: 2737
      start: 2728
    functionDepth: 1
    functionLinenumber: 2728
    functionLinenumberEnd: 2737
    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: 2744
      start: 2739
    functionDepth: 0
    functionLinenumber: 2739
    functionLinenumberEnd: 2744
    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:2752,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2754,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2756,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - ocd
    argTypes:
    - GF_BitStream*
    - GF_OCI_Data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2746
    functionDepth: 1
    functionLinenumber: 2746
    functionLinenumberEnd: 2758
    functionName: gf_odf_write_oci_date
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_base_descriptor
    - gf_bs_write_data
    - gf_odf_size_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:2762,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:2765,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2767,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2772
      start: 2760
    functionDepth: 1
    functionLinenumber: 2760
    functionLinenumberEnd: 2772
    functionName: gf_odf_new_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    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:2780,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2781,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2782,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:2784,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2785,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ocn
    argTypes:
    - GF_OCICreators*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2787
      start: 2773
    functionDepth: 1
    functionLinenumber: 2773
    functionLinenumberEnd: 2787
    functionName: gf_odf_del_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - gf_list_enum
    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:2796,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2799,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: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2803,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2805,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2807,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:2811,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 3
    argNames:
    - bs
    - ocn
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_OCICreators*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2816
      start: 2789
    functionDepth: 2
    functionLinenumber: 2789
    functionLinenumberEnd: 2816
    functionName: gf_odf_read_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - OD_ReadUTF8String
    - gf_bs_read_int
    - gf_list_add
    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:2826,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2827,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ocn
    - outSize
    argTypes:
    - GF_OCICreators*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2830
      start: 2818
    functionDepth: 2
    functionLinenumber: 2818
    functionLinenumberEnd: 2830
    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:2840,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2842,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2844,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:2844,1
    - Dst: gf_list_enum
      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: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2851,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:2851,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:2852,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 2
    argNames:
    - bs
    - ocn
    argTypes:
    - GF_BitStream*
    - GF_OCICreators*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2832
    functionDepth: 2
    functionLinenumber: 2832
    functionLinenumberEnd: 2855
    functionName: gf_odf_write_oci_name
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - OD_WriteUTF8String
    - gf_bs_write_int
    - gf_list_enum
    - gf_odf_size_descriptor
    - strlen
    - gf_odf_write_base_descriptor
    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:2860,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2858
    functionDepth: 0
    functionLinenumber: 2858
    functionLinenumberEnd: 2865
    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:2870,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - plid
    argTypes:
    - GF_PL_IDX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2872
      start: 2867
    functionDepth: 0
    functionLinenumber: 2867
    functionLinenumberEnd: 2872
    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:2879,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: 2883
      start: 2874
    functionDepth: 1
    functionLinenumber: 2874
    functionLinenumberEnd: 2883
    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: 2889
      start: 2884
    functionDepth: 0
    functionLinenumber: 2884
    functionLinenumberEnd: 2889
    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:2895,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2897,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2899,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - plid
    argTypes:
    - GF_BitStream*
    - GF_PL_IDX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2901
      start: 2890
    functionDepth: 1
    functionLinenumber: 2890
    functionLinenumberEnd: 2901
    functionName: gf_odf_write_pl_idx
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_odf_size_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:2906,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2915
      start: 2904
    functionDepth: 0
    functionLinenumber: 2904
    functionLinenumberEnd: 2915
    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:2921,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2922,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - rd
    argTypes:
    - GF_Rating*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2917
    functionDepth: 0
    functionLinenumber: 2917
    functionLinenumberEnd: 2924
    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:2931,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:2932,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2937,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2939,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - bs
    - rd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Rating*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2943
      start: 2926
    functionDepth: 1
    functionLinenumber: 2926
    functionLinenumberEnd: 2943
    functionName: gf_odf_read_rating
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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: 2951
      start: 2945
    functionDepth: 0
    functionLinenumber: 2945
    functionLinenumberEnd: 2951
    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:2958,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:2960,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2962,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:2963,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:2964,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - rd
    argTypes:
    - GF_BitStream*
    - GF_Rating*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2966
      start: 2953
    functionDepth: 1
    functionLinenumber: 2953
    functionLinenumberEnd: 2966
    functionName: gf_odf_write_rating
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_bs_write_data
    - gf_odf_size_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:2971,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2978
      start: 2969
    functionDepth: 0
    functionLinenumber: 2969
    functionLinenumberEnd: 2978
    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:2984,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:2985,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - reg
    argTypes:
    - GF_Registration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2987
      start: 2980
    functionDepth: 0
    functionLinenumber: 2980
    functionLinenumberEnd: 2987
    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:2994,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:2997,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:2999,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - bs
    - reg
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_Registration*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3003
      start: 2989
    functionDepth: 1
    functionLinenumber: 2989
    functionLinenumberEnd: 3003
    functionName: gf_odf_read_reg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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: 3012
      start: 3006
    functionDepth: 0
    functionLinenumber: 3006
    functionLinenumberEnd: 3012
    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:3020,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3022,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3025,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:3026,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - reg
    argTypes:
    - GF_BitStream*
    - GF_Registration*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3028
      start: 3014
    functionDepth: 1
    functionLinenumber: 3014
    functionLinenumberEnd: 3028
    functionName: gf_odf_write_reg
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_odf_write_base_descriptor
    - gf_bs_write_data
    - gf_odf_size_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:3032,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3041
      start: 3030
    functionDepth: 0
    functionLinenumber: 3030
    functionLinenumberEnd: 3041
    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:3047,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3048,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3049,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - std
    argTypes:
    - GF_ShortTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3051
      start: 3043
    functionDepth: 0
    functionLinenumber: 3043
    functionLinenumberEnd: 3051
    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:3059,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3060,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3061,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3064,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3067,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - bs
    - std
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_ShortTextual*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3072
      start: 3053
    functionDepth: 2
    functionLinenumber: 3053
    functionLinenumberEnd: 3072
    functionName: gf_odf_read_short_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - OD_ReadUTF8String
    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:3078,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3078,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - std
    - outSize
    argTypes:
    - GF_ShortTextual*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3080
      start: 3074
    functionDepth: 2
    functionLinenumber: 3074
    functionLinenumberEnd: 3080
    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:3088,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3090,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: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3094,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3095,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3096,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - bs
    - std
    argTypes:
    - GF_BitStream*
    - GF_ShortTextual*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3082
    functionDepth: 2
    functionLinenumber: 3082
    functionLinenumberEnd: 3098
    functionName: gf_odf_write_short_text
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - OD_WriteUTF8String
    - gf_odf_write_base_descriptor
    - gf_odf_size_descriptor
    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:3102,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:3105,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3113
      start: 3100
    functionDepth: 1
    functionLinenumber: 3100
    functionLinenumberEnd: 3113
    functionName: gf_odf_new_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_new
    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:3122,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3123,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:3125,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3126,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - cpd
    argTypes:
    - GF_SMPTECamera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3128
      start: 3115
    functionDepth: 1
    functionLinenumber: 3115
    functionLinenumberEnd: 3128
    functionName: gf_odf_del_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - gf_list_enum
    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:3135,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3136,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3140,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3142,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3143,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:3145,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - bs
    - cpd
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_SMPTECamera*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3150
      start: 3129
    functionDepth: 1
    functionLinenumber: 3129
    functionLinenumberEnd: 3150
    functionName: gf_odf_read_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_malloc
    - gf_list_add
    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:3155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - cpd
    - outSize
    argTypes:
    - GF_SMPTECamera*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3157
      start: 3152
    functionDepth: 1
    functionLinenumber: 3152
    functionLinenumberEnd: 3157
    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:3166,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3168,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3170,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3171,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/odf_code.c:3171,1
    - Dst: gf_list_enum
      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
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3176,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - cpd
    argTypes:
    - GF_BitStream*
    - GF_SMPTECamera*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3179
      start: 3159
    functionDepth: 1
    functionLinenumber: 3159
    functionLinenumberEnd: 3179
    functionName: gf_odf_write_smpte_camera
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_int
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_odf_write_base_descriptor
    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:3183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3190
      start: 3181
    functionDepth: 0
    functionLinenumber: 3181
    functionLinenumberEnd: 3190
    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:3196,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3197,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3198,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - scid
    argTypes:
    - GF_SCIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3200
      start: 3192
    functionDepth: 0
    functionLinenumber: 3192
    functionLinenumberEnd: 3200
    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:3208,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3210,1
    - Dst: OD_ReadUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3213,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - bs
    - scid
    - DescSize
    argTypes:
    - GF_BitStream*
    - GF_SCIDesc*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3202
    functionDepth: 2
    functionLinenumber: 3202
    functionLinenumberEnd: 3218
    functionName: gf_odf_read_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - OD_ReadUTF8String
    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:3224,1
    - Dst: OD_SizeUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - scid
    - outSize
    argTypes:
    - GF_SCIDesc*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3226
      start: 3221
    functionDepth: 2
    functionLinenumber: 3221
    functionLinenumberEnd: 3226
    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:3232,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3234,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3236,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3237,1
    - Dst: OD_WriteUTF8String
      Src: /src/gpac/src/odf/odf_code.c:3238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - scid
    argTypes:
    - GF_BitStream*
    - GF_SCIDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3240
      start: 3227
    functionDepth: 2
    functionLinenumber: 3227
    functionLinenumberEnd: 3240
    functionName: gf_odf_write_sup_cid
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - OD_WriteUTF8String
    - gf_odf_write_base_descriptor
    - gf_odf_size_descriptor
    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:3246,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/odf_code.c:3248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3251
      start: 3244
    functionDepth: 1
    functionLinenumber: 3244
    functionLinenumberEnd: 3251
    functionName: gf_odf_new_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_list_new
    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:3257,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/odf_code.c:3258,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/odf_code.c:3259,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3260,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/odf_code.c:3262,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3263,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ipmptl
    argTypes:
    - GF_IPMP_ToolList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3265
      start: 3253
    functionDepth: 1
    functionLinenumber: 3253
    functionLinenumberEnd: 3265
    functionName: gf_odf_del_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_odf_delete_descriptor
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:3276,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/odf_code.c:3279,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:3281,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: 3285
      start: 3267
    functionDepth: 1
    functionLinenumber: 3267
    functionLinenumberEnd: 3285
    functionName: gf_odf_read_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_odf_parse_descriptor
    - 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:3292,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ipmptl
    - outSize
    argTypes:
    - GF_IPMP_ToolList*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3293
      start: 3288
    functionDepth: 1
    functionLinenumber: 3288
    functionLinenumberEnd: 3293
    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:3300,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3302,1
    - Dst: gf_odf_write_descriptor_list
      Src: /src/gpac/src/odf/odf_code.c:3304,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - ipmptl
    argTypes:
    - GF_BitStream*
    - GF_IPMP_ToolList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3305
      start: 3295
    functionDepth: 1
    functionLinenumber: 3295
    functionLinenumberEnd: 3305
    functionName: gf_odf_write_ipmp_tool_list
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_odf_write_base_descriptor
    - gf_odf_size_descriptor
    - gf_odf_write_descriptor_list
    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:3309,1
    - Dst: memset
      Src: /src/gpac/src/odf/odf_code.c:3311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3314
      start: 3307
    functionDepth: 0
    functionLinenumber: 3307
    functionLinenumberEnd: 3314
    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:3319,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/odf_code.c:3320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ipmpt
    argTypes:
    - GF_IPMP_Tool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3322
      start: 3316
    functionDepth: 0
    functionLinenumber: 3316
    functionLinenumberEnd: 3322
    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: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:3332,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/odf/odf_code.c:3337,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:3343,1
    - Dst: gf_ipmpx_array_size
      Src: /src/gpac/src/odf/odf_code.c:3353,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/odf_code.c:3357,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/odf_code.c:3358,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: 3366
      start: 3324
    functionDepth: 1
    functionLinenumber: 3324
    functionLinenumberEnd: 3366
    functionName: gf_odf_read_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_array_size
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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:3376,1
    - Dst: gf_odf_size_field_size
      Src: /src/gpac/src/odf/odf_code.c:3377,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ipmpt
    - outSize
    argTypes:
    - GF_IPMP_Tool*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3380
      start: 3369
    functionDepth: 1
    functionLinenumber: 3369
    functionLinenumberEnd: 3380
    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:3387,1
    - Dst: gf_odf_write_base_descriptor
      Src: /src/gpac/src/odf/odf_code.c:3389,1
    - Dst: gf_bs_write_data
      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:3395,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/odf/odf_code.c:3399,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/odf_code.c:3400,1
    - Dst: gf_ipmpx_write_array
      Src: /src/gpac/src/odf/odf_code.c:3402,1
    - Dst: strlen
      Src: /src/gpac/src/odf/odf_code.c:3402,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - bs
    - ipmpt
    argTypes:
    - GF_BitStream*
    - GF_IPMP_Tool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3404
      start: 3382
    functionDepth: 1
    functionLinenumber: 3382
    functionLinenumberEnd: 3404
    functionName: gf_odf_write_ipmp_tool
    functionSourceFile: /src/gpac/src/odf/odf_code.c
    functionUses: 0
    functionsReached:
    - gf_ipmpx_write_array
    - gf_bs_write_int
    - gf_odf_size_descriptor
    - gf_bs_write_data
    - strlen
    - gf_odf_write_base_descriptor
    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_odf_slc_set_pref
    - gf_bs_read_long_int
    - gf_bs_read_int
    - gf_bs_available
    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_write_base_descriptor
    - gf_bs_write_long_int
    - gf_odf_size_descriptor
    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_align
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_write_long_int
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_data
    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_get_position
    - gf_bs_align
    - gf_bs_read_long_int
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - memset
    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_add
    - gf_list_enum
    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_bs_write_int
    - gf_odf_size_qos_qual
    - gf_bs_write_data
    - gf_bs_write_float
    - gf_odf_write_base_descriptor
    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_malloc
    - gf_odf_delete_qos_qual
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_float
    - gf_bs_available
    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_malloc
    - gf_list_new
    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_list_count
    - gf_free
    - gf_odf_delete_qos_qual
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_bs_read_int
    - gf_odf_parse_qos
    - gf_list_add
    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_odf_size_qos_qual
    - gf_list_enum
    - gf_odf_size_field_size
    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_bs_write_int
    - gf_list_enum
    - gf_odf_size_descriptor
    - gf_odf_write_qos_qual
    - gf_odf_write_base_descriptor
    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_fprintf
    - GF_IPMPX_FORMAT_INDENT
    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_fprintf
    - GF_IPMPX_FORMAT_INDENT
    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_fprintf
    - GF_IPMPX_FORMAT_INDENT
    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_fprintf
    - GF_IPMPX_FORMAT_INDENT
    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_fprintf
    - GF_IPMPX_FORMAT_INDENT
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - DumpInt
    - EndElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - StartElement
    - DumpData
    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
    - StartElement
    - EndLeafAttribute
    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:
    - gf_ipmpx_dump_BaseData
    - EndElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - StartElement
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - DumpLargeInt
    - EndElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - StartElement
    - DumpBool
    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:
    - gf_ipmpx_dump_BaseData
    - gf_ipmpx_dump_data
    - EndElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - StartElement
    - DumpBool
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    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_count
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - DumpBin128
    - StartList
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - EndElement
    - EndList
    - StartElement
    - DumpDate
    - gf_list_get
    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_count
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - gf_ipmpx_dump_data
    - StartList
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - gf_list_get
    - EndList
    - StartElement
    - EndElement
    - DumpBool
    - gf_fprintf
    - DumpData
    - StartAttribute
    - gf_ipmpx_dump_AUTH
    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:
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    - DumpDescList
    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_count
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - StartList
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - EndList
    - StartElement
    - gf_list_get
    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_BaseData
    - gf_ipmpx_dump_data
    - EndElement
    - EndAttributes
    - StartElement
    - 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:
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    - DumpBool
    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:
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    - gf_odf_dump_desc
    - StartAttribute
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - EndAttribute
    - StartElement
    - gf_fprintf
    - 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_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - EndAttribute
    - StartElement
    - gf_fprintf
    - 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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    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:
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    - DumpBool
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - StartElement
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    - DumpData
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - StartElement
    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_count
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - DumpBin128
    - StartList
    - gf_ipmpx_dump_ByteArray
    - EndAttributes
    - EndElement
    - EndList
    - StartElement
    - DumpData_16
    - gf_list_get
    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:
    - DumpInt
    - gf_ipmpx_dump_BaseData
    - EndElement
    - EndAttributes
    - StartElement
    - DumpBool
    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_CanProcess
    - gf_ipmpx_dump_ToolParamCapabilitiesResponse
    - gf_ipmpx_dump_AddToolNotificationListener
    - gf_ipmpx_dump_NotifyToolEvent
    - gf_ipmpx_dump_WatermarkingInit
    - gf_ipmpx_dump_SelectiveDecryptionInit
    - gf_ipmpx_dump_MutualAuthentication
    - gf_ipmpx_dump_ParametricDescription
    - gf_ipmpx_dump_GetToolsResponse
    - gf_ipmpx_dump_ToolAPI_Config
    - gf_ipmpx_dump_SendWatermark
    - gf_ipmpx_dump_ConnectTool
    - gf_ipmpx_dump_ToolParamCapabilitiesQuery
    - gf_ipmpx_dump_OpaqueData
    - gf_ipmpx_dump_TrustSecurityMetadata
    - gf_ipmpx_dump_InitAuthentication
    - gf_ipmpx_dump_RemoveToolNotificationListener
    - gf_ipmpx_dump_ISMACryp
    - gf_ipmpx_dump_SecureContainer
    - gf_ipmpx_dump_KeyData
    - gf_ipmpx_dump_DisconnectTool
    - gf_ipmpx_dump_GetToolContext
    - gf_ipmpx_dump_GetToolContextResponse
    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_read_descriptor
    - gf_odf_delete_descriptor
    - GF_LOG
    - gf_odf_size_field_size
    - gf_odf_create_descriptor
    - gf_bs_read_int
    - gf_bs_available
    - gf_bs_skip_bytes
    - gf_error_to_string
    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_list_del
    - gf_odf_delete_descriptor
    - gf_list_enum
    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_odf_size_field_size
    - gf_odf_size_descriptor
    - gf_list_get
    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_odf_write_descriptor
    - gf_list_get
    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_odf_write_descriptor
    - gf_list_get
    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_int
    - gf_bs_write_data
    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_bs_get_position
    - gf_bs_align
    - gf_odf_New_ElemMask
    - GF_LOG
    - gf_bs_get_size
    - gf_bs_new
    - gf_bs_read_int
    - gf_odf_desc_new
    - gf_bs_del
    - gf_list_new
    - gf_list_add
    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_read_int
    - gf_bs_del
    - memset
    - 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_malloc
    - stricmp
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - memset
    - gf_bs_available
    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_write_int
    - gf_bs_get_content
    - stricmp
    - gf_bs_new
    - gf_bs_del
    - gf_odf_desc_new
    - gf_bs_write_data
    - 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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_count
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_avcc_use_extensions
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    - 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_bs_del
    - gf_bs_new
    - gf_odf_avc_cfg_write_bs
    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_malloc
    - GF_LOG
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - GF_SAFEALLOC
    - gf_avcc_use_extensions
    - gf_odf_avc_cfg_del
    - gf_list_new
    - gf_list_add
    - gf_bs_available
    - gf_odf_avc_cfg_new
    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_bs_read_u8
    - gpp_read_box
    - gf_malloc
    - gf_odf_new_tx3g
    - gf_bs_new
    - gpp_read_style
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gpp_read_rgba
    - gf_bs_read_u16
    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:
    - gpp_write_style
    - gpp_write_rgba
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - gpp_write_box
    - strlen
    - gf_bs_write_u8
    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_malloc
    - gf_list_new
    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_count
    - gf_list_get
    - memset
    - gf_odf_del_tx3g
    - 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_list_del
    - ResetTextConfig
    - gf_free
    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_isom_box_del
    - gf_malloc
    - gf_isom_box_parse
    - gf_bs_new
    - gf_bs_read_int
    - ResetTextConfig
    - gf_bs_del
    - gf_strdup
    - gf_list_add
    - gf_bs_available
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_count
    - gf_bs_write_int
    - gf_bs_write_long_int
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    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_bs_del
    - gf_odf_hevc_cfg_write_bs
    - gf_bs_new
    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_malloc
    - gf_odf_hevc_cfg_del
    - GF_LOG
    - gf_bs_read_long_int
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_odf_hevc_cfg_new
    - gf_list_new
    - gf_list_add
    - gf_bs_available
    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_bs_del
    - gf_bs_new
    - gf_odf_hevc_cfg_read_bs
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_count
    - gf_bs_write_int
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    - 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_bs_del
    - gf_odf_vvc_cfg_write_bs
    - gf_bs_new
    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_bs_read_u8
    - gf_odf_vvc_cfg_new
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_bs_available
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_list_new
    - gf_bs_read_u32
    - gf_list_add
    - gf_bs_read_u16
    - gf_odf_vvc_cfg_del
    - 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_bs_del
    - gf_odf_vvc_cfg_read_bs
    - gf_bs_new
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_count
    - gf_bs_write_int
    - gf_assert
    - gf_bs_write_data
    - gf_list_get
    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_bs_del
    - gf_odf_av1_cfg_write_bs
    - gf_bs_new
    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_bs_del
    - gf_bs_new
    - gf_odf_vp_cfg_write_bs
    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_LOG
    - gf_bs_read_int
    - gf_odf_vp_cfg_new
    - gf_odf_vp_cfg_del
    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_del
    - gf_bs_new
    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_bs_get_position
    - gf_odf_av1_cfg_new
    - gf_free
    - gf_malloc
    - gf_bs_align
    - GF_LOG
    - gf_av1_parse_obu
    - gf_assert
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_av1_init_state
    - gf_av1_reset_state
    - gf_bs_seek
    - gf_odf_av1_cfg_del
    - gf_list_add
    - av1_is_obu_header
    - gf_bs_available
    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_del
    - gf_bs_new
    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_int
    - gf_bs_write_data
    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_bs_del
    - gf_bs_new
    - gf_odf_avs3v_cfg_write_bs
    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_odf_avs3v_cfg_new
    - gf_malloc
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_odf_avs3v_cfg_del
    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_del
    - gf_bs_new
    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_u8
    - GF_LOG
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_bs_read_u32
    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_u32
    - gf_bs_write_int
    - gf_bs_write_u8
    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_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_odf_ac3_cfg_write_bs
    - 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_read_u8
    - gf_odf_ac3_cfg_parse_bs
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - 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
    - MIN
    - GF_ARRAY_LENGTH
    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_AC4_SSS
    - gf_odf_ac4_cfg_content_type
    - gf_odf_ac4_cfg_substream_dsi
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    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_alternative_info
    - GF_ARRAY_LENGTH
    - GF_AC4_SSS
    - gf_bs_write_int
    - gf_odf_ac4_cfg_substream_group_dsi
    - gf_list_new
    - GF_AC4_ALLIGN
    - GF_SAFEALLOC
    - gf_bs_read_int
    - gf_odf_ac4_cfg_bitrate_dsi
    - gf_list_get
    - gf_list_add
    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_bs_get_position
    - gf_odf_ac4_cfg_presentation_v1_dsi
    - GF_AC4_SSS
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - GF_AC4_ALLIGN
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_list_add
    - gf_odf_ac4_cfg_bitrate_dsi
    - gf_list_get
    - gf_bs_read_int
    - gf_bs_write_data
    - gf_list_new
    - gf_free
    - GF_LOG
    - gf_odf_ac4_presentation_deep_copy
    - gf_bs_available
    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_odf_ac4_cfg_write_bs
    - gf_bs_get_content
    - 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:2406,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/descriptors.c:2409,1
    - Dst: gf_odf_ac4_cfg_dsi_v1
      Src: /src/gpac/src/odf/descriptors.c:2410,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - cfg
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2414
      start: 2398
    functionDepth: 5
    functionLinenumber: 2398
    functionLinenumberEnd: 2414
    functionName: gf_odf_ac4_cfg_parse_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - gf_bs_read_int
    - gf_odf_ac4_cfg_dsi_v1
    - gf_bs_seek
    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:2422,1
    - Dst: gf_odf_ac4_cfg_parse_bs
      Src: /src/gpac/src/odf/descriptors.c:2423,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2424,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - dsi
    - dsi_len
    - cfg
    argTypes:
    - u8*
    - u32
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2426
      start: 2416
    functionDepth: 6
    functionLinenumber: 2416
    functionLinenumberEnd: 2426
    functionName: gf_odf_ac4_cfg_parse
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_odf_ac4_cfg_parse_bs
    - gf_bs_new
    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:2434,1
    - Dst: gf_odf_ac4_cfg_dsi_v1
      Src: /src/gpac/src/odf/descriptors.c:2437,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2428
    functionDepth: 5
    functionLinenumber: 2428
    functionLinenumberEnd: 2440
    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:2453,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2459,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2460,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2461,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2463,1
    - Dst: gf_odf_ac4_presentation_deep_copy
      Src: /src/gpac/src/odf/descriptors.c:2464,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2465,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - GF_AC4Config*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2467
      start: 2442
    functionDepth: 1
    functionLinenumber: 2442
    functionLinenumberEnd: 2467
    functionName: gf_odf_ac4_cfg_deep_copy
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_new
    - GF_SAFEALLOC
    - gf_odf_ac4_presentation_deep_copy
    - gf_list_get
    - gf_list_add
    - memcpy
    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:2479,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2485,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2486,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2487,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2489,1
    - Dst: memcpy
      Src: /src/gpac/src/odf/descriptors.c:2490,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2491,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2497,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2498,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2499,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2501,1
    - Dst: memcpy
      Src: /src/gpac/src/odf/descriptors.c:2502,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2503,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 2
    argNames:
    - pres_dst
    - pres_src
    argTypes:
    - GF_AC4PresentationV1*
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2506
      start: 2469
    functionDepth: 1
    functionLinenumber: 2469
    functionLinenumberEnd: 2506
    functionName: gf_odf_ac4_presentation_deep_copy
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - memcpy
    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:2522,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/odf/descriptors.c:2524,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/odf/descriptors.c:2528,1
    - Dst: gf_list_find
      Src: /src/gpac/src/odf/descriptors.c:2530,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2531,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2534,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2537,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/odf/descriptors.c:2540,1
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2543,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2544,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2549,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2551,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2554,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2557,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2559,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2562
      start: 2508
    functionDepth: 1
    functionLinenumber: 2508
    functionLinenumberEnd: 2562
    functionName: gf_odf_ac4_cfg_clean_list
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_find
    - gf_list_new
    - gf_list_add
    - gf_list_pop_back
    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:2568,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2570
      start: 2564
    functionDepth: 2
    functionLinenumber: 2564
    functionLinenumberEnd: 2570
    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:2575,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2576,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2577,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2578,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/odf/descriptors.c:2579,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2580,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2581,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2583,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2584,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:2585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - cfg
    argTypes:
    - GF_BitStream*
    - GF_OpusConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2588
      start: 2572
    functionDepth: 1
    functionLinenumber: 2572
    functionLinenumberEnd: 2588
    functionName: gf_odf_opus_cfg_parse_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_u32_le
    - gf_bs_read_data
    - memset
    - gf_bs_read_u16_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:2596,1
    - Dst: gf_odf_opus_cfg_parse_bs
      Src: /src/gpac/src/odf/descriptors.c:2597,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2598,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - dsi
    - dsi_len
    - cfg
    argTypes:
    - u8*
    - u32
    - GF_OpusConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2600
      start: 2590
    functionDepth: 2
    functionLinenumber: 2590
    functionLinenumberEnd: 2600
    functionName: gf_odf_opus_cfg_parse
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_bs_new
    - gf_odf_opus_cfg_parse_bs
    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:2606,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2607,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2608,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/odf/descriptors.c:2609,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/odf/descriptors.c:2610,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2611,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2613,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2614,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:2615,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_OpusConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2618
      start: 2602
    functionDepth: 1
    functionLinenumber: 2602
    functionLinenumberEnd: 2618
    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_u8
    - gf_bs_write_data
    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:2623,1
    - Dst: gf_odf_opus_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:2624,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:2626,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2627,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - cfg
    - data
    - size
    argTypes:
    - GF_OpusConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2629
      start: 2620
    functionDepth: 2
    functionLinenumber: 2620
    functionLinenumberEnd: 2629
    functionName: gf_odf_opus_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 3
    functionsReached:
    - gf_odf_opus_cfg_write_bs
    - gf_bs_get_content
    - gf_bs_del
    - gf_bs_new
    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:2635,1
    - Dst: gf_list_new
      Src: /src/gpac/src/odf/descriptors.c:2639,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2641,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2645
      start: 2631
    functionDepth: 1
    functionLinenumber: 2631
    functionLinenumberEnd: 2645
    functionName: GF_IAConfig *gf_odf_iamf_cfg_new()
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_free
    - gf_list_new
    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:2654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2656,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2660,1
    - Dst: gf_odf_iamf_cfg_new
      Src: /src/gpac/src/odf/descriptors.c:2662,1
    - Dst: gf_iamf_init_state
      Src: /src/gpac/src/odf/descriptors.c:2663,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/odf/descriptors.c:2665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2667,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/odf/descriptors.c:2668,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2669,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/odf/descriptors.c:2674,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2682,1
    - Dst: gf_iamf_parse_obu
      Src: /src/gpac/src/odf/descriptors.c:2684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2685,1
    - Dst: gf_assert
      Src: /src/gpac/src/odf/descriptors.c:2688,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/odf/descriptors.c:2688,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2689,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/odf/descriptors.c:2691,1
    - Dst: gf_malloc
      Src: /src/gpac/src/odf/descriptors.c:2693,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2695,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/odf/descriptors.c:2698,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/odf/descriptors.c:2699,1
    - Dst: gf_list_add
      Src: /src/gpac/src/odf/descriptors.c:2702,1
    - Dst: GF_LOG
      Src: /src/gpac/src/odf/descriptors.c:2705,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/odf/descriptors.c:2711,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/odf/descriptors.c:2712,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2713,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2718
      start: 2647
    functionDepth: 1
    functionLinenumber: 2647
    functionLinenumberEnd: 2718
    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_bs_read_u8
    - gf_bs_get_position
    - gf_free
    - gf_iamf_init_state
    - gf_iamf_parse_obu
    - gf_malloc
    - gf_bs_align
    - GF_LOG
    - gf_odf_iamf_cfg_del
    - gf_assert
    - gf_odf_iamf_cfg_new
    - gf_av1_leb128_read
    - GF_SAFEALLOC
    - gf_bs_read_data
    - gf_bs_seek
    - gf_list_add
    - gf_iamf_reset_state
    - gf_bs_available
    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:2722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2723
      start: 2720
    functionDepth: 0
    functionLinenumber: 2720
    functionLinenumberEnd: 2723
    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:2728,1
    - Dst: gf_odf_iamf_cfg_read_bs
      Src: /src/gpac/src/odf/descriptors.c:2729,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2732
      start: 2725
    functionDepth: 1
    functionLinenumber: 2725
    functionLinenumberEnd: 2732
    functionName: GF_IAConfig *gf_odf_iamf_cfg_read(u8 *dsi, u32 dsi_size)
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_odf_iamf_cfg_read_bs
    - gf_bs_new
    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:2738,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2739,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2740,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/odf/descriptors.c:2741,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2742,1
    - Dst: gf_list_del
      Src: /src/gpac/src/odf/descriptors.c:2744,1
    - Dst: gf_free
      Src: /src/gpac/src/odf/descriptors.c:2745,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_IAConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2734
    functionDepth: 1
    functionLinenumber: 2734
    functionLinenumberEnd: 2746
    functionName: gf_odf_iamf_cfg_del
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_iamf_cfg_del(GF_IAConfig *cfg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/odf/descriptors.c:2755,1
    - Dst: gf_list_get
      Src: /src/gpac/src/odf/descriptors.c:2756,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/odf/descriptors.c:2757,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_IAConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2761
      start: 2748
    functionDepth: 1
    functionLinenumber: 2748
    functionLinenumberEnd: 2761
    functionName: gf_odf_iamf_cfg_write_obus
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_data
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odf_iamf_cfg_write_obus(GF_IAConfig *cfg, GF_BitStream
      *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/odf/descriptors.c:2769,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/odf/descriptors.c:2770,1
    - Dst: gf_odf_iamf_cfg_write_obus
      Src: /src/gpac/src/odf/descriptors.c:2771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - cfg
    - bs
    argTypes:
    - GF_IAConfig*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2774
      start: 2763
    functionDepth: 2
    functionLinenumber: 2763
    functionLinenumberEnd: 2774
    functionName: gf_odf_iamf_cfg_write_bs
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_av1_leb128_write
    - gf_odf_iamf_cfg_write_obus
    - 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:2779,1
    - Dst: gf_odf_iamf_cfg_write_bs
      Src: /src/gpac/src/odf/descriptors.c:2782,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/odf/descriptors.c:2784,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/odf/descriptors.c:2786,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - cfg
    - outData
    - outSize
    argTypes:
    - GF_IAConfig*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2788
      start: 2776
    functionDepth: 3
    functionLinenumber: 2776
    functionLinenumberEnd: 2788
    functionName: gf_odf_iamf_cfg_write
    functionSourceFile: /src/gpac/src/odf/descriptors.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_content
    - gf_bs_del
    - gf_odf_iamf_cfg_write_bs
    - gf_bs_new
    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:2797,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_IAConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2803
      start: 2790
    functionDepth: 1
    functionLinenumber: 2790
    functionLinenumberEnd: 2803
    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_esd_remove
    - gf_odf_dump_od_remove
    - gf_odf_dump_ipmp_update
    - gf_odf_dump_base_command
    - gf_odf_dump_esd_update
    - gf_odf_dump_ipmp_remove
    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_del
    - gf_odf_codec_get_com
    - gf_odf_codec_decode
    - gf_odf_com_del
    - gf_odf_dump_com
    - gf_odf_codec_new
    - gf_odf_codec_set_au
    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_odf_dump_com
    - gf_list_enum
    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_sup_cid
    - gf_odf_dump_esd_inc
    - gf_odf_dump_ci
    - gf_odf_dump_oci_name
    - gf_odf_dump_aux_vid
    - gf_odf_dump_segment
    - gf_odf_dump_dcd
    - gf_odf_dump_ipmp_ptr
    - gf_odf_dump_ipmp_tool_list
    - gf_odf_dump_rating
    - gf_odf_dump_esd_ref
    - gf_odf_dump_pl_ext
    - gf_odf_dump_cc
    - gf_odf_dump_reg
    - gf_odf_dump_ipmp
    - gf_odf_dump_txtcfg
    - gf_odf_dump_isom_iod
    - gf_odf_dump_od
    - gf_odf_dump_mediatime
    - gf_odf_dump_ipmp_tool
    - gf_odf_dump_ui_cfg
    - gf_odf_dump_pl_idx
    - gf_odf_dump_qos
    - gf_odf_dump_esd
    - gf_odf_dump_kw
    - gf_odf_dump_muxinfo
    - gf_odf_dump_slc
    - gf_odf_dump_cc_name
    - gf_odf_dump_ipi_ptr
    - gf_odf_dump_laser_cfg
    - gf_odf_dump_exp_text
    - gf_odf_dump_short_text
    - gf_odf_dump_smpte_camera
    - gf_odf_dump_lang
    - gf_odf_dump_isom_od
    - gf_odf_dump_default
    - gf_odf_dump_iod
    - gf_odf_dump_bifs_cfg
    - gf_odf_dump_oci_date
    - gf_odf_dump_cc_date
    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:
    - gf_fprintf
    - OD_FORMAT_INDENT
    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:
    - gf_fprintf
    - OD_FORMAT_INDENT
    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:
    - gf_fprintf
    - OD_FORMAT_INDENT
    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:
    - gf_fprintf
    - OD_FORMAT_INDENT
    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:
    - gf_fprintf
    - OD_FORMAT_INDENT
    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:
    - gf_fprintf
    - OD_FORMAT_INDENT
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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:
    - gf_fprintf
    - EndAttribute
    - StartAttribute
    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_count
    - OD_FORMAT_INDENT
    - EndElement
    - StartElement
    - gf_odf_dump_desc
    - gf_list_get
    - gf_fprintf
    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_count
    - EndElement
    - gf_list_get
    - StartElement
    - gf_odf_dump_desc
    - OD_FORMAT_INDENT
    - gf_fprintf
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - DumpDescListFilter
    - EndElement
    - EndAttributes
    - EndAttribute
    - StartSubElement
    - StartElement
    - gf_odf_dump_desc
    - EndDescDump
    - DumpDescList
    - DumpBool
    - gf_fprintf
    - DumpString
    - StartAttribute
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndElement
    - EndAttributes
    - EndAttribute
    - StartSubElement
    - StartElement
    - gf_odf_dump_desc
    - EndDescDump
    - gf_list_enum
    - DumpDescList
    - gf_fprintf
    - gf_list_insert
    - DumpString
    - StartAttribute
    - 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_count
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - gf_list_get
    - EndDescDump
    - DumpBool
    - DumpString
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - EndDescDump
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - DumpBool
    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: gf_strcpy
      Src: /src/gpac/src/odf/odf_dump.c:799,1
    - Dst: gf_strcat
      Src: /src/gpac/src/odf/odf_dump.c:800,1
    - Dst: gf_strcat
      Src: /src/gpac/src/odf/odf_dump.c:801,1
    - Dst: gf_strcat
      Src: /src/gpac/src/odf/odf_dump.c:802,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_list_count
    - StartDescDump
    - DumpInt
    - EndElement
    - gf_strcat
    - gf_list_get
    - DumpIntHex
    - EndDescDump
    - StartElement
    - DumpString
    - OD_FORMAT_INDENT
    - gf_fprintf
    - 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:
    - StartDescDump
    - EndAttributes
    - EndAttribute
    - EndDescDump
    - stricmp
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gf_fprintf
    - DumpString
    - StartAttribute
    - DumpData
    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_get_position
    - StartDescDump
    - EndAttributes
    - EndAttribute
    - EndDescDump
    - stricmp
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gf_fprintf
    - DumpString
    - StartAttribute
    - DumpData
    - gf_bs_available
    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:
    - gf_odf_get_text_config
    - gf_odf_desc_del
    - gf_odf_dump_desc
    - gf_odf_desc_new
    - DumpRawBIFSConfig
    - DumpRawUIConfig
    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:
    - StartDescDump
    - DumpInt
    - DumpIntForce
    - EndElement
    - EndAttributes
    - EndDescDump
    - StartElement
    - gf_odf_dump_desc
    - DumpDescList
    - OD_DumpDSI
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndElement
    - EndAttributes
    - StartSubElement
    - EndDescDump
    - DumpBool
    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:
    - StartDescDump
    - EndSubElement
    - EndDescDump
    - DumpString
    - DumpData
    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:
    - EndAttributes
    - StartDescDump
    - DumpInt
    - EndDescDump
    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:
    - EndAttributes
    - StartDescDump
    - DumpInt
    - EndDescDump
    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:
    - StartDescDump
    - DumpInt
    - EndAttributes
    - EndDescDump
    - DumpData
    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:
    - EndAttributes
    - StartDescDump
    - EndDescDump
    - 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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - StartSubElement
    - gf_list_enum
    - EndDescDump
    - DumpBool
    - DumpString
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - StartSubElement
    - EndDescDump
    - DumpBool
    - DumpString
    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_count
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - gf_list_get
    - StartSubElement
    - EndDescDump
    - DumpBool
    - DumpString
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    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_count
    - StartDescDump
    - DumpInt
    - DumpBin128
    - gf_ipmpx_dump_data
    - EndElement
    - EndAttributes
    - DumpIntHex
    - EndDescDump
    - StartElement
    - gf_list_get
    - DumpString
    - DumpData
    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:
    - StartDescDump
    - DumpInt
    - EndDescDump
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - StartSubElement
    - gf_list_enum
    - EndDescDump
    - DumpBool
    - DumpString
    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:
    - StartDescDump
    - EndDescDump
    - DumpString
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - DumpIntHex
    - EndDescDump
    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_list_count
    - StartDescDump
    - DumpInt
    - EndSubElement
    - DumpDescListFilter
    - EndElement
    - EndAttributes
    - EndAttribute
    - StartSubElement
    - StartElement
    - gf_odf_dump_desc
    - EndDescDump
    - DumpDescList
    - DumpBool
    - gf_fprintf
    - DumpString
    - StartAttribute
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - DumpDescListFilter
    - EndElement
    - EndAttributes
    - EndAttribute
    - StartSubElement
    - StartElement
    - EndDescDump
    - DumpDescList
    - gf_fprintf
    - DumpString
    - StartAttribute
    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:
    - gf_list_count
    - StartDescDump
    - DumpInt
    - EndSubElement
    - DumpDescListFilter
    - EndElement
    - EndAttributes
    - EndAttribute
    - StartSubElement
    - StartElement
    - EndDescDump
    - DumpDescList
    - gf_fprintf
    - DumpString
    - StartAttribute
    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:
    - StartDescDump
    - DumpString
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - StartSubElement
    - gf_list_enum
    - EndDescDump
    - DumpBool
    - DumpString
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - DumpFloat
    - StartSubElement
    - gf_list_enum
    - EndDescDump
    - DumpData
    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:
    - StartDescDump
    - DumpInt
    - DumpData
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - DumpData
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - StartSubElement
    - EndDescDump
    - DumpBool
    - DumpString
    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:
    - StartDescDump
    - DumpInt
    - EndSubElement
    - EndAttributes
    - StartSubElement
    - gf_list_enum
    - EndDescDump
    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:
    - StartDescDump
    - DumpInt
    - DumpString
    - EndSubElement
    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:
    - StartDescDump
    - EndSubElement
    - EndDescDump
    - DumpDouble
    - DumpString
    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:
    - StartDescDump
    - DumpDouble
    - EndSubElement
    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:
    - StartDescDump
    - DumpInt
    - gf_url_get_absolute_path
    - gf_free
    - EndSubElement
    - EndElement
    - EndAttributes
    - EndDescDump
    - DumpBool
    - DumpString
    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:
    - EndAttributes
    - StartDescDump
    - EndDescDump
    - DumpDescList
    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:
    - StartDescDump
    - gf_ipmpx_dump_data
    - DumpBin128
    - EndElement
    - EndAttributes
    - EndDescDump
    - StartElement
    - DumpString
    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:
    - EndAttributes
    - StartDescDump
    - EndDescDump
    - DumpDescList
    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:
    - StartDescDump
    - EndSubElement
    - EndAttribute
    - OD_FORMAT_INDENT
    - gf_fprintf
    - StartAttribute
    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:
    - StartDescDump
    - EndAttributes
    - EndAttribute
    - EndDescDump
    - DumpDescList
    - OD_FORMAT_INDENT
    - gf_fprintf
    - StartAttribute
    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:
    - StartDescDump
    - EndSubElement
    - EndAttribute
    - OD_FORMAT_INDENT
    - gf_fprintf
    - StartAttribute
    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:
    - EndAttributes
    - StartDescDump
    - EndDescDump
    - DumpDescList
    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:
    - StartDescDump
    - EndSubElement
    - EndAttribute
    - gf_fprintf
    - StartAttribute
    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
    - DumpData
    - EndSubElement
    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_oci_event_get_desc
    - StartDescDump
    - DumpInt
    - gf_oci_event_get_start_time
    - EndElement
    - EndAttribute
    - EndDescDump
    - StartElement
    - gf_odf_dump_desc
    - gf_oci_event_get_duration
    - gf_oci_event_get_id
    - gf_oci_event_get_desc_count
    - DumpBool
    - gf_fprintf
    - StartAttribute
    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_decode
    - gf_oci_codec_get_event
    - gf_oci_codec_new
    - gf_oci_codec_del
    - gf_oci_dump_event
    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
    - gf_malloc
    - strlen
    - memcpy
    - sscanf
    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:
    - atoi
    - gf_bs_write_int
    - gf_bs_new
    - strnicmp
    - gf_bs_del
    - strlen
    - sscanf
    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:
    - atoi
    - gf_bs_write_int
    - gf_bs_new
    - strnicmp
    - gf_bs_del
    - strlen
    - memcpy
    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:
    - sscanf
    - strnicmp
    - 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
    - strnicmp
    - strlen
    - gf_realloc
    - sscanf
    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:
    - GF_IPMPX_ParseEventType
    - GET_U32
    - GET_U8
    - GET_U16
    - GF_IPMPX_ParseBin128
    - GET_U64
    - stricmp
    - GF_IPMPX_ParseBinData
    - gf_ipmpx_data_parse_16
    - GET_BOOL
    - GF_IPMPX_ParseDate
    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_IPMPX_AUTH_Delete
    - gf_list_add
    - stricmp
    - gf_ipmpx_data_del
    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_free
    - gf_malloc
    - stricmp
    - strlen
    - gf_list_add
    - memcpy
    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:
    - sscanf
    - gf_free
    - gf_malloc
    - 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: gf_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:
    - atof
    - strlwr
    - GET_DOUBLE
    - gf_stream_type_by_name
    - strstr
    - GET_U32
    - gf_malloc
    - GET_U16
    - GET_BOOL
    - gf_realloc
    - gf_strcpy
    - GET_U8
    - GET_S16
    - strnicmp
    - strlen
    - gf_bin128_parse
    - sscanf
    - OD_ParseUIConfig
    - gf_file_load_data
    - GET_U64
    - stricmp
    - GET_S32
    - gf_strdup
    - OD_ParseBinData
    - GET_STRING
    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_get_position
    - gf_token_get
    - gf_bs_write_int
    - gf_bs_get_content
    - stricmp
    - gf_bs_new
    - strnicmp
    - gf_bs_del
    - gf_bs_write_data
    - strlen
    - gf_bs_seek
    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_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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_free
    - GF_IPMPX_DELETE_ARRAY
    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_IPMPX_WriteByteArray
    - gf_bs_write_int
    - GF_IPMPX_AUTH_Size
    - 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_malloc
    - GF_IPMPX_GetByteArray
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    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:
    - gf_ipmpx_data_size
    - get_field_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_bs_read_int
    - gf_ipmpx_data_new
    - GF_IPMPX_ReadData
    - gf_ipmpx_data_del
    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
    - gf_ipmpx_data_size
    - write_var_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_IPMPX_DATA_ALLOC
    - gf_list_new
    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_IPMPX_AUTH_Delete
    - gf_list_count
    - gf_list_del
    - gf_list_get
    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_list_count
    - gf_free
    - gf_ipmpx_data_del
    - gf_list_del
    - GF_IPMPX_DELETE_ARRAY
    - gf_list_get
    - GF_IPMPX_AUTH_Delete
    - delete_algo_list
    - 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_data_parse
    - GF_IPMPX_GetByteArray
    - gf_bs_read_int
    - gf_list_add
    - GF_IPMPX_AUTH_Parse
    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_IPMPX_AUTH_FullSize
    - gf_list_count
    - gf_ipmpx_data_full_size
    - GF_IPMPX_GetByteArraySize
    - gf_list_get
    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_count
    - gf_ipmpx_data_write
    - GF_IPMPX_WriteByteArray
    - WriteGF_IPMPX_AUTH
    - gf_bs_write_int
    - gf_list_get
    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_IPMPX_DATA_ALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - GF_IPMPX_DELETE_ARRAY
    - gf_list_get
    - 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_malloc
    - GF_IPMPX_GetByteArray
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_list_new
    - memset
    - gf_list_add
    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_IPMPX_GetByteArraySize
    - gf_list_get
    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_count
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_list_get
    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_free
    - GF_IPMPX_DELETE_ARRAY
    - 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_bs_read_int
    - GF_IPMPX_GetByteArray
    - gf_ipmpx_data_parse
    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_bs_write_int
    - gf_ipmpx_data_write
    - GF_IPMPX_WriteByteArray
    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_IPMPX_DATA_ALLOC
    - gf_list_new
    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_list_count
    - gf_odf_desc_del
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_bs_get_position
    - gf_list_add
    - gf_odf_parse_descriptor
    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_odf_write_descriptor
    - gf_list_get
    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_IPMPX_DATA_ALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - GF_IPMPX_DELETE_ARRAY
    - gf_list_get
    - 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_bs_read_int
    - gf_malloc
    - GF_IPMPX_GetByteArray
    - gf_list_add
    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_IPMPX_GetByteArraySize
    - gf_list_get
    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_bs_write_int
    - gf_list_count
    - GF_IPMPX_WriteByteArray
    - 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_odf_desc_del
    - gf_free
    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_bs_read_int
    - GF_ARRAY_LENGTH
    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_bs_read_int
    - GF_ARRAY_LENGTH
    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_free
    - GF_IPMPX_DELETE_ARRAY
    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_free
    - GF_IPMPX_DELETE_ARRAY
    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_bs_read_int
    - GF_IPMPX_GetByteArray
    - gf_bs_read_long_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_bs_write_int
    - gf_bs_write_long_int
    - GF_IPMPX_WriteByteArray
    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_IPMPX_DATA_ALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - GF_IPMPX_DELETE_ARRAY
    - gf_list_get
    - 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_malloc
    - GF_IPMPX_GetByteArray
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_list_add
    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_IPMPX_GetByteArraySize
    - gf_list_get
    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_count
    - GF_IPMPX_WriteByteArray
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_list_get
    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_bs_read_data
    - gf_bs_read_int
    - gf_malloc
    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_int
    - gf_bs_write_data
    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_free
    - GF_IPMPX_DELETE_ARRAY
    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_bs_read_int
    - GF_IPMPX_GetByteArray
    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_bs_write_int
    - GF_IPMPX_WriteByteArray
    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_free
    - GF_IPMPX_DELETE_ARRAY
    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_bs_read_int
    - GF_IPMPX_GetByteArray
    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_bs_write_int
    - GF_IPMPX_WriteByteArray
    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_GetToolContextResponse
    - NewGF_IPMPX_RemoveToolNotificationListener
    - gf_malloc
    - NewGF_IPMPX_NotifyToolEvent
    - NewGF_IPMPX_TrustSecurityMetadata
    - NewGF_IPMPX_DisconnectTool
    - NewGF_IPMPX_SelectiveDecryptionInit
    - NewGF_IPMPX_ToolParamCapabilitiesQuery
    - NewGF_IPMPX_CanProcess
    - NewGF_IPMPX_MutualAuthentication
    - NewGF_IPMPX_InitAuthentication
    - GF_IPMPX_DATA_ALLOC
    - NewGF_IPMPX_SecureContainer
    - NewGF_IPMPX_OpaqueData
    - NewGF_IPMPX_WatermarkingInit
    - NewGF_IPMPX_KeyData
    - NewGF_IPMPX_AddToolNotificationListener
    - NewGF_IPMPX_GetToolsResponse
    - gf_list_new
    - NewGF_IPMPX_ParametricDescription
    - NewGF_IPMPX_GetToolContext
    - NewGF_IPMPX_ConnectTool
    - NewGF_IPMPX_SendWatermark
    - NewGF_IPMPX_ToolParamCapabilitiesResponse
    - NewGF_IPMPX_ISMACryp
    - NewGF_IPMPX_ToolAPI_Config
    - memset
    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:
    - DelGF_IPMPX_ToolParamCapabilitiesResponse
    - gf_list_count
    - DelGF_IPMPX_MutualAuthentication
    - DelGF_IPMPX_NotifyToolEvent
    - GF_IPMPX_AUTH_Delete
    - DelGF_IPMPX_RemoveToolNotificationListener
    - DelGF_IPMPX_ParametricDescription
    - DelGF_IPMPX_CanProcess
    - gf_list_get
    - DelGF_IPMPX_TrustSecurityMetadata
    - DelGF_IPMPX_DisconnectTool
    - DelGF_IPMPX_KeyData
    - DelGF_IPMPX_WatermarkingInit
    - DelGF_IPMPX_GetToolsResponse
    - DelGF_IPMPX_InitAuthentication
    - gf_ipmpx_data_del
    - DelGF_IPMPX_GetToolContextResponse
    - DelGF_IPMPX_GetToolContext
    - DelGF_IPMPX_ToolParamCapabilitiesQuery
    - DelGF_IPMPX_ConnectTool
    - DelGF_IPMPX_AddToolNotificationListener
    - DelGF_IPMPX_SecureContainer
    - gf_free
    - DelGF_IPMPX_OpaqueData
    - gf_list_del
    - DelGF_IPMPX_ISMACryp
    - GF_IPMPX_DELETE_ARRAY
    - DelGF_IPMPX_SendWatermark
    - DelGF_IPMPX_SelectiveDecryptionInit
    - DelGF_IPMPX_ToolAPI_Config
    - gf_list_rem
    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_TrustSecurityMetadata
    - ReadGF_IPMPX_GetToolContextResponse
    - ReadGF_IPMPX_SecureContainer
    - ReadGF_IPMPX_InitAuthentication
    - ReadGF_IPMPX_ISMACryp
    - ReadGF_IPMPX_ParametricDescription
    - ReadGF_IPMPX_KeyData
    - ReadGF_IPMPX_ToolParamCapabilitiesQuery
    - ReadGF_IPMPX_CanProcess
    - ReadGF_IPMPX_NotifyToolEvent
    - ReadGF_IPMPX_OpaqueData
    - ReadGF_IPMPX_SelectiveDecryptionInit
    - ReadGF_IPMPX_MutualAuthentication
    - ReadGF_IPMPX_WatermarkingInit
    - ReadGF_IPMPX_AddToolNotificationListener
    - ReadGF_IPMPX_ToolAPI_Config
    - ReadGF_IPMPX_GetToolContext
    - ReadGF_IPMPX_ToolParamCapabilitiesResponse
    - ReadGF_IPMPX_ConnectTool
    - ReadGF_IPMPX_SendWatermark
    - ReadGF_IPMPX_RemoveToolNotificationListener
    - ReadGF_IPMPX_DisconnectTool
    - ReadGF_IPMPX_GetToolsResponse
    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_OpaqueData
    - SizeGF_IPMPX_RemoveToolNotificationListener
    - SizeGF_IPMPX_WatermarkingInit
    - SizeGF_IPMPX_CanProcess
    - SizeGF_IPMPX_MutualAuthentication
    - SizeGF_IPMPX_ToolParamCapabilitiesResponse
    - SizeGF_IPMPX_TrustSecurityMetadata
    - SizeGF_IPMPX_ISMACryp
    - SizeGF_IPMPX_SendWatermark
    - SizeGF_IPMPX_ConnectTool
    - SizeGF_IPMPX_SelectiveDecryptionInit
    - SizeGF_IPMPX_ToolAPI_Config
    - SizeGF_IPMPX_AddToolNotificationListener
    - SizeGF_IPMPX_ToolParamCapabilitiesQuery
    - SizeGF_IPMPX_GetToolContext
    - SizeGF_IPMPX_InitAuthentication
    - SizeGF_IPMPX_DisconnectTool
    - SizeGF_IPMPX_GetToolContextResponse
    - SizeGF_IPMPX_KeyData
    - SizeGF_IPMPX_SecureContainer
    - SizeGF_IPMPX_GetToolsResponse
    - SizeGF_IPMPX_NotifyToolEvent
    - SizeGF_IPMPX_ParametricDescription
    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_SendWatermark
    - WriteGF_IPMPX_WatermarkingInit
    - WriteGF_IPMPX_AddToolNotificationListener
    - WriteGF_IPMPX_RemoveToolNotificationListener
    - WriteGF_IPMPX_ToolAPI_Config
    - WriteGF_IPMPX_ConnectTool
    - WriteGF_IPMPX_TrustSecurityMetadata
    - WriteGF_IPMPX_ToolParamCapabilitiesResponse
    - WriteGF_IPMPX_MutualAuthentication
    - WriteGF_IPMPX_SelectiveDecryptionInit
    - WriteGF_IPMPX_GetToolContext
    - WriteGF_IPMPX_GetToolContextResponse
    - WriteGF_IPMPX_NotifyToolEvent
    - WriteGF_IPMPX_ToolParamCapabilitiesQuery
    - WriteGF_IPMPX_InitAuthentication
    - GF_IPMPX_WriteBase
    - WriteGF_IPMPX_OpaqueData
    - WriteGF_IPMPX_ParametricDescription
    - WriteGF_IPMPX_ISMACryp
    - WriteGF_IPMPX_CanProcess
    - WriteGF_IPMPX_SecureContainer
    - WriteGF_IPMPX_KeyData
    - WriteGF_IPMPX_GetToolsResponse
    - WriteGF_IPMPX_DisconnectTool
    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_dcd
    - gf_odf_new_od
    - gf_odf_new_bifs_cfg
    - gf_odf_new_ipi_ptr
    - gf_odf_new_rating
    - gf_odf_new_oci_name
    - gf_odf_new_muxinfo
    - gf_odf_new_reg
    - gf_odf_new_cc_name
    - gf_odf_new_pl_idx
    - gf_odf_new_esd_inc
    - gf_odf_new_default
    - gf_odf_New_ElemMask
    - gf_odf_new_short_text
    - gf_odf_new_tx3g
    - gf_odf_new_text_cfg
    - gf_odf_new_qos
    - gf_odf_new_esd
    - gf_odf_new_ci
    - gf_odf_new_auxvid
    - gf_odf_new_kw
    - gf_odf_new_segment
    - gf_odf_new_isom_od
    - gf_odf_new_sup_cid
    - gf_odf_new_ipmp
    - gf_odf_new_cc_date
    - gf_odf_new_ipmp_tool
    - gf_odf_new_exp_text
    - gf_odf_new_laser_cfg
    - gf_odf_new_ui_cfg
    - gf_odf_new_ipmp_tool_list
    - gf_odf_new_iod
    - gf_odf_new_slc
    - gf_odf_new_lang
    - gf_odf_new_cc
    - gf_odf_new_smpte_camera
    - gf_odf_new_oci_date
    - gf_odf_new_esd_ref
    - gf_odf_new_mediatime
    - gf_odf_new_ipmp_ptr
    - gf_odf_new_pl_ext
    - gf_odf_new_isom_iod
    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_iod
    - gf_odf_del_ipmp
    - gf_odf_del_bifs_cfg
    - gf_odf_del_sup_cid
    - gf_odf_del_segment
    - gf_odf_del_od
    - gf_odf_del_qos
    - gf_odf_del_rating
    - gf_odf_del_ui_cfg
    - gf_odf_del_isom_od
    - gf_odf_del_ElemMask
    - gf_odf_del_mediatime
    - gf_odf_del_kw
    - gf_odf_del_cc_name
    - gf_odf_del_dcd
    - gf_odf_del_esd
    - gf_odf_del_ipi_ptr
    - gf_odf_del_lang
    - gf_odf_del_isom_iod
    - gf_odf_del_default
    - gf_odf_del_text_cfg
    - gf_odf_del_oci_name
    - gf_odf_del_auxvid
    - gf_odf_del_short_text
    - gf_odf_del_ipmp_tool
    - gf_odf_del_slc
    - gf_odf_del_ipmp_tool_list
    - gf_odf_del_cc_date
    - gf_odf_del_esd_ref
    - gf_odf_del_pl_ext
    - gf_odf_del_pl_idx
    - gf_odf_del_exp_text
    - gf_odf_del_smpte_camera
    - gf_odf_del_muxinfo
    - gf_odf_del_ipmp_ptr
    - gf_odf_del_ci
    - gf_odf_del_reg
    - gf_odf_del_oci_date
    - gf_odf_del_laser_cfg
    - gf_odf_del_esd_inc
    - gf_odf_del_cc
    - gf_odf_del_tx3g
    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_rating
    - gf_odf_read_smpte_camera
    - gf_odf_read_default
    - gf_odf_read_isom_od
    - gf_odf_read_qos
    - gf_odf_read_oci_name
    - gf_odf_read_esd_ref
    - gf_odf_read_ipmp_tool
    - gf_odf_read_exp_text
    - gf_odf_read_kw
    - gf_odf_read_esd
    - gf_odf_read_ipmp
    - gf_odf_read_ipi_ptr
    - gf_odf_read_cc
    - gf_odf_read_ci
    - gf_odf_read_ipmp_tool_list
    - gf_odf_read_short_text
    - gf_odf_read_reg
    - gf_odf_read_pl_idx
    - gf_odf_read_mediatime
    - gf_odf_read_isom_iod
    - gf_odf_read_dcd
    - gf_odf_read_od
    - gf_odf_read_auxvid
    - gf_odf_read_slc
    - gf_odf_read_cc_name
    - gf_odf_read_pl_ext
    - GF_LOG
    - gf_odf_read_esd_inc
    - gf_odf_read_oci_date
    - gf_odf_read_iod
    - gf_odf_read_ipmp_ptr
    - gf_odf_read_cc_date
    - gf_odf_read_sup_cid
    - gf_odf_read_lang
    - gf_odf_read_segment
    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_qos
    - gf_odf_size_reg
    - gf_odf_size_cc
    - gf_odf_size_esd_ref
    - gf_odf_size_ci
    - gf_odf_size_ipmp_ptr
    - gf_odf_size_short_text
    - gf_odf_size_kw
    - gf_odf_size_esd
    - gf_odf_size_ipmp_tool_list
    - gf_odf_size_lang
    - gf_odf_size_ipmp_tool
    - gf_odf_size_ipmp
    - gf_odf_size_cc_date
    - gf_odf_size_isom_od
    - gf_odf_size_cc_name
    - gf_odf_size_smpte_camera
    - gf_odf_size_pl_ext
    - gf_odf_size_exp_text
    - gf_odf_size_rating
    - gf_odf_size_segment
    - gf_odf_size_default
    - gf_odf_size_slc
    - gf_odf_size_pl_idx
    - gf_odf_size_auxvid
    - gf_odf_size_iod
    - gf_odf_size_esd_inc
    - gf_odf_size_od
    - gf_odf_size_muxinfo
    - gf_odf_size_oci_date
    - gf_odf_size_oci_name
    - gf_odf_size_ipi_ptr
    - gf_odf_size_sup_cid
    - gf_odf_size_mediatime
    - gf_odf_size_dcd
    - gf_odf_size_isom_iod
    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_smpte_camera
    - gf_odf_write_oci_name
    - gf_odf_write_isom_od
    - gf_odf_write_ipmp_ptr
    - gf_odf_write_ci
    - gf_odf_write_iod
    - gf_odf_write_ipmp_tool
    - gf_odf_write_ipmp
    - gf_odf_write_kw
    - gf_odf_write_cc
    - gf_odf_write_exp_text
    - gf_odf_write_pl_idx
    - gf_odf_write_rating
    - gf_odf_write_ipmp_tool_list
    - gf_odf_write_oci_date
    - gf_odf_write_cc_name
    - gf_odf_write_lang
    - gf_odf_write_sup_cid
    - gf_odf_write_default
    - gf_odf_write_dcd
    - gf_odf_write_esd
    - gf_odf_write_esd_ref
    - gf_odf_write_qos
    - gf_odf_write_reg
    - gf_odf_write_cc_date
    - gf_odf_write_segment
    - gf_odf_write_od
    - gf_odf_write_pl_ext
    - gf_odf_write_isom_iod
    - gf_odf_write_mediatime
    - gf_odf_write_ipi_ptr
    - gf_odf_write_slc
    - gf_odf_write_muxinfo
    - gf_odf_write_short_text
    - gf_odf_write_auxvid
    - gf_odf_write_esd_inc
    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_esd_update
    - gf_odf_new_esd_remove
    - gf_odf_new_base_command
    - gf_odf_new_ipmp_update
    - gf_odf_new_ipmp_remove
    - gf_odf_new_od_update
    - gf_odf_new_od_remove
    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_esd_remove
    - gf_odf_del_ipmp_update
    - gf_odf_del_od_update
    - gf_odf_del_od_remove
    - gf_odf_del_ipmp_remove
    - gf_odf_del_base_command
    - gf_odf_del_esd_update
    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_base_command
    - gf_odf_read_esd_update
    - gf_odf_read_ipmp_update
    - gf_odf_read_od_update
    - gf_odf_read_esd_remove
    - gf_odf_read_ipmp_remove
    - gf_odf_read_od_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_esd_update
    - gf_odf_write_base_command
    - gf_odf_write_od_update
    - gf_odf_write_esd_remove
    - gf_odf_write_ipmp_update
    - gf_odf_write_od_remove
    - gf_odf_write_ipmp_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:
    - mesh_free
    - gf_list_count
    - gf_free
    - gf_path_del
    - gf_list_get
    - 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_SAFEALLOC
    - gf_list_add
    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_path_add_quadratic_to
    - gf_node_get_field
    - gf_path_close
    - gf_list_count
    - gf_path_get_bounds
    - gf_path_add_move_to
    - gf_path_add_cubic_to
    - new_fs_item
    - SFCOL_MAKE_ARGB
    - gf_list_get
    - gf_rect_union
    - gf_path_add_line_to
    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_list_count
    - visual_2d_draw_path
    - drawable_del
    - gf_free
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - new_mesh
    - gf_list_del
    - gf_node_get_private
    - clean_paths
    - visual_3d_draw_2d_with_aspect
    - drawable_init_context_mpeg4
    - mesh_from_path
    - gf_list_get
    - memset
    - build_shape
    - drawable_finalize_sort
    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_LOG
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_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:
    - visual_2d_texture_path
    - GF_TraverseState*::visual::DrawBitmap
    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: 1
    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_get_bounds
    - gf_divfix
    - gf_rect_equal
    - drawable_mark_modified
    - gf_node_dirty_clear
    - INT2FIX
    - gf_svg_flatten_attributes
    - gf_mulfix
    - drawable_reset_path
    - gf_path_add_rect_center
    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_sc_texture_stop_no_unregister
    - gf_svg_flatten_attributes
    - 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:
    - compositor_3d_draw_bitmap
    - gf_mx2d_init
    - drawable_finalize_sort
    - gf_node_dirty_get
    - INT2FIX
    - gf_sc_texture_destroy
    - gf_node_unregister
    - gf_mx2d_apply_rect
    - gf_path_add_rect_center
    - drawable_del
    - gf_node_dirty_clear
    - gf_sc_get_mfurl_from_xlink
    - svg_play_texture
    - compositor_svg_traverse_base
    - svg_traverse_audio_ex
    - mesh_from_path
    - drawable_reset_path
    - SVG_Build_Bitmap_Graph
    - memcpy
    - GF_COL_ARGB
    - gf_node_get_private
    - gf_mx2d_copy
    - gf_sg_mfurl_del
    - gf_mx2d_add_rotation
    - svg_audio_smil_evaluate_ex
    - compositor_svg_apply_local_transformation
    - compositor_svg_restore_parent_transformation
    - gf_free
    - new_mesh
    - gf_path_get_bounds
    - gf_mo_url_changed
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - drawable_init_context_svg
    - FIX2INT
    - svg_video_get_transform_behavior
    - SVG_Draw_bitmap
    - svg_drawable_pick
    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_play_from_to
    - gf_node_get_private
    - gf_sc_texture_update_frame
    - gf_sc_invalidate
    - gf_node_dirty_parents
    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_LOG
    - gf_sc_texture_setup
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_node_dirty_set
    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:
    - gf_sc_texture_stop_no_unregister
    - gf_node_get_attribute_by_tag
    - gf_node_get_private
    - svg_play_texture
    - gf_sc_texture_update_frame
    - svg_open_texture
    - gf_sc_invalidate
    - compositor_init_svg_audio
    - gf_svg_attributes_copy
    - gf_node_new
    - gf_node_get_graph
    - gf_node_register
    - gf_mo_has_audio
    - gf_smil_timing_is_active
    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: 3
    functionLinenumber: 512
    functionLinenumberEnd: 543
    functionName: svg_video_smil_evaluate
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_mo_get_duration
    - gf_smil_get_element
    - gf_sc_texture_restart
    - gf_node_get_private
    - gf_smil_get_media_duration
    - svg_play_texture
    - svg_audio_smil_evaluate_ex
    - gf_smil_set_media_duration
    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_smil_set_evaluation_callback
    - GF_LOG
    - gf_sc_texture_setup
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_node_dirty_set
    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_pause
    - gf_mo_resume
    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_node_dirty_get
    - gf_node_get_private
    - gf_node_dirty_set
    - gf_sc_texture_stop
    - svg_audio_smil_evaluate_ex
    - gf_sc_next_frame_state
    - gf_sg_vrml_mf_reset
    - gf_node_unregister
    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: 3
    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_mo_get_duration
    - gf_node_get_private
    - gf_smil_get_media_duration
    - gf_sc_audio_restart
    - gf_mo_set_speed
    - gf_sc_audio_stop
    - gf_sc_audio_open
    - gf_svg_flatten_attributes
    - gf_sc_audio_unregister
    - gf_smil_set_media_duration
    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: 4
    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_node_dirty_get
    - gf_node_dirty_clear
    - gf_sc_get_mfurl_from_xlink
    - gf_node_get_private
    - gf_sc_audio_register
    - gf_sc_audio_stop
    - gf_mo_set_speed
    - gf_sc_audio_open
    - gf_sg_mfurl_del
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - gf_sc_audio_predestroy
    - compositor_svg_is_display_off
    - gf_sc_audio_unregister
    - memcpy
    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_smil_set_evaluation_callback
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_node_dirty_set
    - gf_sc_audio_setup
    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_pause
    - gf_mo_resume
    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: 3
    functionLinenumber: 798
    functionLinenumberEnd: 825
    functionName: svg_updates_smil_evaluate
    functionSourceFile: /src/gpac/src/compositor/svg_media.c
    functionUses: 0
    functionsReached:
    - gf_smil_get_element
    - gf_mo_get_duration
    - gf_mo_set_flag
    - gf_node_get_private
    - gf_mo_play
    - gf_smil_get_media_duration
    - gf_mo_is_done
    - gf_mo_restart
    - gf_mo_stop
    - gf_smil_set_media_duration
    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_mo_unregister
    - gf_mo_set_flag
    - gf_node_dirty_get
    - gf_sc_get_mfurl_from_xlink
    - gf_node_get_private
    - gf_mo_play
    - gf_node_dirty_clear
    - gf_mo_register
    - gf_sg_mfurl_del
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - memcpy
    - gf_mo_stop
    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_smil_set_evaluation_callback
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_node_dirty_set
    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:
    - mesh_free
    - gf_list_count
    - gf_free
    - drawable_del
    - gf_list_del
    - gf_node_get_private
    - gf_sc_texture_destroy
    - gf_list_get
    - PreDestroyBindable
    - gf_list_rem
    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_mx2d_init
    - GF_LOG
    - GF_COL_ARGB_FIXED
    - GF_SAFEALLOC
    - gf_list_add
    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_reset
    - back_use_texture
    - gf_node_get_private
    - GF_TraverseState*::visual::DrawBitmap
    - compositor_2d_hybgl_clear_surface
    - visual_2d_texture_path
    - GF_TraverseState*::visual::ClearSurface
    - gf_path_add_rect_center
    - gf_irect_intersect
    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_set_blend_mode
    - gf_sc_texture_is_transparent
    - back_use_texture
    - gf_sc_invalidate
    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:
    - gf_tan
    - visual_3d_clear
    - back_texture_enabled
    - visual_3d_set_material_2d
    - visual_3d_set_state
    - gf_mx_init
    - gf_muldiv
    - gf_sc_texture_disable
    - gf_sc_texture_enable
    - mesh_set_triangle
    - visual_3d_set_background_state
    - gf_mulfix
    - gf_mx_add_translation
    - visual_3d_mesh_paint
    - new_mesh
    - gf_mx_add_matrix
    - gf_mx_copy
    - gf_mx_add_scale
    - mesh_set_vertex
    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:
    - DrawBackground2D_2D
    - M_Background2D*::on_set_bind
    - back_use_texture
    - Bindable_SetIsBound
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_private
    - b2d_get_status
    - gf_sc_texture_play
    - gf_list_find
    - gf_sc_invalidate
    - GF_COL_ARGB_FIXED
    - DrawBackground2D_3D
    - FIX2INT
    - gf_list_get
    - b2D_new_status
    - gf_list_add
    - DestroyBackground2D
    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:
    - Bindable_OnSetBind
    - gf_node_get_private
    - Background2DStack*::txh::compositor::video_out::Blit
    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:
    - gf_node_get_private
    - b2d_get_status
    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_LOG
    - gf_sc_texture_setup
    - GF_SAFEALLOC
    - gf_node_set_private
    - drawable_stack_new
    - gf_list_new
    - gf_node_set_callback_function
    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_check_url_change
    - gf_node_get_private
    - gf_sc_texture_play
    - gf_sc_invalidate
    - gf_sc_texture_stop
    - gf_node_dirty_set
    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_private
    - gf_node_get_tag
    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_LOG
    - gf_mo_register
    - gf_node_get_class_name
    - 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:
    - compositor_init_sound2d
    - compositor_init_fog
    - compositor_init_svg_filter
    - compositor_init_box
    - compositor_init_audiobuffer
    - compositor_init_non_linear_deformer
    - compositor_init_polyline2d
    - compositor_init_switch
    - compositor_init_afx_node
    - compositor_init_svg_ellipse
    - compositor_init_disk2d
    - compositor_init_svg_font
    - compositor_init_imagetexture
    - compositor_init_indexed_face_set2d
    - compositor_init_svg_tbreak
    - compositor_init_lod
    - compositor_init_pixeltexture
    - compositor_init_svg_rect
    - compositor_init_svg_tspan
    - compositor_init_svg_animation
    - compositor_init_svg_textarea
    - compositor_init_svg_switch
    - compositor_init_svg_g
    - compositor_init_cylinder_sensor
    - compositor_init_viewport
    - compositor_init_cylinder
    - compositor_init_anchor
    - compositor_init_compositetexture3d
    - compositor_init_svg_text
    - compositor_init_static_group
    - compositor_init_svg_stop
    - compositor_init_svg_linearGradient
    - compositor_init_disc_sensor
    - compositor_init_sphere
    - gf_node_get_class_name
    - compositor_init_layout
    - compositor_init_colortransform
    - compositor_init_background
    - compositor_init_indexed_triangle_fan_set
    - compositor_init_layer2d
    - compositor_init_transformmatrix2d
    - compositor_init_ifs
    - compositor_init_svg_svg
    - compositor_init_point_set
    - compositor_init_triangle_set
    - compositor_init_envtest
    - compositor_init_elevation_grid
    - compositor_init_extrusion
    - compositor_init_rectangle
    - compositor_init_triangle_fan_set
    - compositor_init_point_light
    - compositor_init_animationstream
    - compositor_init_transform2d
    - compositor_init_audioclip
    - compositor_init_proximity_sensor
    - compositor_init_compositetexture2d
    - compositor_init_directional_light
    - compositor_init_plane_sensor2d
    - compositor_init_cone
    - compositor_init_svg_defs
    - compositor_init_sphere_sensor
    - gf_node_get_tag
    - compositor_init_svg_line
    - compositor_init_svg_clip_path
    - compositor_init_triangle_strip_set
    - compositor_init_indexed_line_set2d
    - compositor_init_orderedgroup
    - compositor_init_curve2d
    - compositor_init_form
    - compositor_init_polypoint2d
    - compositor_init_svg_polygon
    - compositor_init_svg_updates
    - compositor_init_svg_polyline
    - compositor_init_svg_image
    - compositor_init_svg_foreign_object
    - compositor_init_svg_a
    - compositor_init_circle
    - compositor_init_visibility_sensor
    - compositor_init_group
    - compositor_init_lineset
    - compositor_init_collision
    - compositor_init_svg_font_face_uri
    - compositor_init_lineprops
    - compositor_init_transform
    - compositor_init_layer3d
    - compositor_init_radial_gradient
    - compositor_init_proximity_sensor2d
    - compositor_init_bitmap
    - compositor_init_navigation_info
    - compositor_init_svg_audio
    - compositor_init_svg_use
    - compositor_init_timesensor
    - compositor_init_audiosource
    - compositor_init_spot_light
    - compositor_init_billboard
    - compositor_init_plane_sensor
    - compositor_init_svg_video
    - compositor_init_pointset2d
    - compositor_init_ellipse
    - compositor_init_shape
    - gf_sc_init_hardcoded_proto
    - compositor_init_path_layout
    - compositor_init_svg_solidColor
    - compositor_init_background2d
    - compositor_init_triangle_set2d
    - compositor_init_indexed_triangle_strip_set
    - compositor_init_touch_sensor
    - compositor_init_arc2d
    - compositor_init_svg_path
    - compositor_init_svg_radialGradient
    - compositor_init_indexed_triangle_set
    - compositor_init_linear_gradient
    - compositor_init_text
    - compositor_init_sound
    - compositor_init_mattetexture
    - compositor_init_ils
    - GF_LOG
    - compositor_init_svg_glyph
    - compositor_init_svg_circle
    - compositor_init_movietexture
    - compositor_init_viewpoint
    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_envtest_modified
    - compositor_audiobuffer_modified
    - compositor_audioclip_modified
    - compositor_layout_modified
    - compositor_background_modified
    - compositor_audiosource_modified
    - compositor_movietexture_modified
    - compositor_svg_video_modified
    - compositor_imagetexture_modified
    - gf_sc_next_frame_state
    - compositor_animationstream_modified
    - gf_node_dirty_set
    - compositor_timesensor_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_path_close
    - gf_malloc
    - gf_font_manager_set_font
    - gf_path_add_move_to
    - GF_LOG
    - gf_module_load
    - GF_SAFEALLOC
    - GF_FontReader*::init_font_engine
    - gf_opts_get_bool
    - gf_path_new
    - gf_path_add_line_to
    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_count
    - gf_list_del
    - gf_list_get
    - gf_node_dirty_set
    - gf_list_rem
    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_font_predestroy
    - gf_path_del
    - gf_free
    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_path_del
    - gf_modules_close_interface
    - 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_FontManager*::reader::set_font
    - GF_Font*::get_alias
    - stricmp
    - GF_SAFEALLOC
    - GF_FontManager*::reader::get_font_info
    - ABS
    - strlen
    - gf_strdup
    - gf_opts_get_key
    - strncmp
    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_path_close
    - gf_path_add_move_to
    - GF_FontManager*::reader::load_glyph
    - INT2FIX
    - GF_SAFEALLOC
    - gf_path_new
    - GF_Font*::load_glyph
    - gf_path_add_line_to
    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_list_add
    - strlen
    - GF_SAFEALLOC
    - reader::get_glyphs
    - memset
    - gf_realloc
    - get_glyphs
    - gf_font_get_glyph
    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:
    - mesh_free
    - gf_free
    - gf_path_del
    - gf_list_del_item
    - gf_sc_texture_destroy
    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_init
    - gf_rect_center
    - gf_mx2d_add_rotation
    - gf_mulfix
    - gf_rect_union
    - gf_mx2d_apply_rect
    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_init
    - gf_mx2d_add_translation
    - gf_mx2d_apply_point
    - gf_divfix
    - gf_mx2d_add_scale
    - INT2FIX
    - gf_mulfix
    - gf_path_new
    - gf_mx2d_add_rotation
    - gf_path_add_subpath
    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_update_bounds
    - new_mesh
    - mesh_set_triangle
    - span_alloc_extensions
    - mesh_set_vertex
    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:
    - mesh_free
    - gf_mx2d_init
    - gf_path_add_move_to
    - gf_mx2d_add_scale
    - INT2FIX
    - gf_sc_texture_destroy
    - GF_SAFEALLOC
    - gf_font_span_create_path
    - span_alloc_extensions
    - gf_evg_stencil_new
    - gf_path_add_line_to
    - gf_mx2d_add_translation
    - gf_sc_texture_set_blend_mode
    - gf_malloc
    - span_build_mesh
    - gf_sc_texture_setup
    - gf_path_new
    - gf_evg_stencil_delete
    - gf_evg_surface_new
    - gf_sc_texture_release
    - gf_path_close
    - gf_sc_texture_set_data
    - gf_divfix
    - gf_evg_surface_set_matrix
    - gf_evg_surface_delete
    - gf_path_del
    - gf_evg_surface_set_path
    - gf_ceil
    - MAX
    - gf_mulfix
    - gf_evg_surface_set_raster_level
    - gf_evg_surface_fill
    - gf_sc_texture_set_stencil
    - gf_evg_stencil_set_brush_color
    - gf_free
    - gf_sc_texture_get_stencil
    - gf_evg_stencil_set_texture
    - MIN
    - gf_evg_surface_attach_to_texture
    - gf_sc_texture_allocate
    - FIX2INT
    - memset
    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:
    - visual_3d_mesh_paint
    - new_mesh
    - gf_path_del
    - gf_font_span_create_path
    - span_alloc_extensions
    - mesh_from_path
    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:
    - visual_3d_mesh_paint
    - gf_mesh_tesselate_path
    - new_mesh
    - visual_3d_mesh_strike
    - gf_path_del
    - gf_path_get_outline
    - gf_font_span_create_path
    - span_alloc_extensions
    - mesh_get_outline
    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:
    - span_setup_texture
    - INT2FIX
    - GF_COL_R
    - GF_COL_G
    - drawable_compute_line_scale
    - visual_3d_setup_texture
    - visual_3d_set_2d_strike
    - gf_list_get
    - visual_3d_set_state
    - span_fill_3d
    - GF_COL_ARGB
    - gf_divfix
    - visual_3d_disable_texture
    - gf_sc_texture_disable
    - gf_list_enum
    - visual_3d_setup_appearance
    - gf_sc_texture_enable
    - visual_3d_fill_rect
    - visual_3d_set_material_2d_argb
    - visual_3d_enable_antialias
    - span_strike_3d
    - visual_3d_mesh_paint
    - GF_COL_A
    - gf_sg_sfcolor_to_rgba
    - memset
    - GF_COL_B
    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:
    - visual_2d_draw_path
    - gf_divfix
    - gf_mx2d_copy
    - gf_mx2d_inverse
    - visual_2d_texture_path_extended
    - visual_2d_draw_path_extended
    - gf_mulfix
    - gf_mx2d_add_rotation
    - gf_mx2d_add_matrix
    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_init
    - gf_mx2d_add_translation
    - gf_mx2d_pre_multiply
    - visual_2d_draw_path
    - gf_mx2d_add_scale
    - 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_ARGB
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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_init
    - gf_rect_overlaps
    - font_get_sel_rect
    - visual_2d_fill_rect
    - gf_mx2d_copy
    - gf_mulfix
    - gf_realloc
    - gf_mx2d_add_rotation
    - gf_mx2d_add_matrix
    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_font_spans_select
    - gf_list_get
    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_list_count
    - GF_COL_ARGB
    - visual_2d_texture_path_text
    - gf_font_underline_span
    - span_setup_texture
    - visual_2d_fill_rect
    - gf_font_span_draw_2d
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - gf_font_spans_select
    - gf_list_get
    - memset
    - GF_COL_B
    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
    - gf_mx2d_apply_coords
    - gf_mx_inverse
    - INT2FIX
    - compositor_is_composite_texture
    - gf_list_add
    - drawable_get_aspect_2d_svg
    - gf_mx_from_mx2d
    - gf_mx2d_inverse
    - gf_sc_next_frame_state
    - gf_list_get
    - gf_divfix
    - compositor_get_2d_plane_intersection
    - gf_mx2d_copy
    - gf_node_dirty_set
    - gf_path_get_bounds
    - gf_mx_copy
    - svg_drawable_is_over
    - gf_mx_apply_ray
    - memset
    - gf_list_reset
    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_GET_COLOR
    - MESH_GET_NORMAL
    - gf_mulfix
    - gf_list_add
    - mesh_set_vertex
    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:
    - gluNewTess
    - gf_list_count
    - gluTessEndContour
    - gf_list_add
    - gluTessCallback
    - FIX2FLT
    - gf_malloc
    - gluTessProperty
    - mesh_tess_error
    - gf_list_get
    - gf_bbox_refresh
    - gluTessVertex
    - gluTessBeginContour
    - gf_path_flatten
    - gf_divfix
    - gluTessNormal
    - gluTessBeginPolygon
    - gf_list_new
    - gf_free
    - gf_path_get_bounds
    - mesh_reset
    - gf_list_del
    - gluTessEndPolygon
    - gf_sys_is_cov_mode
    - gluDeleteTess
    - memset
    - mesh_set_vertex
    - gf_list_rem
    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:
    - ConvCompare
    - ConvGetPointDelta
    - GetPoint2D
    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:
    - gluNewTess
    - gf_list_count
    - MESH_GET_NORMAL
    - gluTessEndContour
    - gf_list_add
    - mesh_set_vertex_vx
    - gluTessCallback
    - polygon_check_convexity
    - FIX2FLT
    - gf_malloc
    - gf_list_get
    - gluTessVertex
    - gluTessBeginContour
    - mesh_set_triangle
    - gluTessBeginPolygon
    - ABS
    - gf_list_new
    - gf_free
    - gf_list_del
    - gluTessEndPolygon
    - gluDeleteTess
    - memset
    - 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:
    - gluNewTess
    - gf_list_count
    - gluTessEndContour
    - gf_list_add
    - mesh_set_vertex_vx
    - gluTessCallback
    - FIX2FLT
    - gf_malloc
    - gf_list_get
    - gluTessVertex
    - gluTessBeginContour
    - gluTessBeginPolygon
    - gf_list_new
    - gf_free
    - gf_list_del
    - gluTessEndPolygon
    - gluDeleteTess
    - memset
    - 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:
    - drawable_del
    - gf_free
    - BindableStackDelete
    - gf_node_get_private
    - gf_sc_texture_destroy
    - ostgl_delete_context
    - visual_del
    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_node_event_out
    - gf_node_traverse
    - gf_node_register
    - gf_list_get
    - gf_node_unregister
    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:
    - visual_2d_texture_path
    - GF_TraverseState*::visual::DrawBitmap
    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_list_count
    - gf_node_dirty_get
    - l3d_CheckBindables
    - DestroyLayer3D
    - gf_mx_inverse
    - INT2FIX
    - visual_3d_clear_all_lights
    - visual_3d_check_collisions
    - gf_mx_apply_vec
    - gf_bbox_from_rect
    - gf_mx2d_apply_rect
    - gf_mx_from_mx2d
    - layer3d_setup_clip
    - FIX2FLT
    - gf_node_dirty_clear
    - drawable_init_context_mpeg4
    - gf_rect_center
    - gf_sc_invalidate
    - group_3d_traverse
    - visual_3d_projection_matrix_modified
    - memcpy
    - visual_2d_flush_hybgl_canvas
    - layer3d_draw_2d
    - gf_mx_apply_rect
    - gf_mx_init
    - visual_3d_remove_last_light
    - gf_node_get_private
    - gf_sc_copy_to_stencil
    - gf_muldiv
    - gf_divfix
    - compositor_get_2d_plane_intersection
    - gf_ray
    - gf_mx2d_copy
    - visual_3d_set_viewport
    - gf_mulfix
    - gf_list_new
    - visual_3d_init_draw
    - gf_node_dirty_set
    - gf_sc_texture_set_stencil
    - visual_3d_setup_projection
    - gf_sc_texture_get_stencil
    - gf_mx_copy
    - GF_LOG
    - gf_list_del
    - gf_sc_pick_in_clipper
    - visual_3d_flush_contexts
    - visual_get_size_info
    - gf_get_tinygl_depth
    - drawable_finalize_sort
    - gf_mx_apply_vec_4x4
    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_LOG
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - camera_invalidate
    - 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:
    - Bindable_SetSetBind
    - gf_node_get_private
    - gf_list_get
    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_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_path_add_move_to
    - drawable_reset_path
    - 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_evg_stencil_set_vertex_path
    - gf_path_add_move_to
    - INT2FIX
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_new
    - gf_evg_stencil_set_gradient_interpolation
    - gf_path_add_line_to
    - visual_2d_draw_path
    - gf_malloc
    - gf_evg_stencil_set_linear_gradient
    - gf_path_new
    - gf_evg_stencil_set_matrix
    - gf_evg_stencil_delete
    - gf_path_reset
    - gf_path_del
    - gf_evg_stencil_set_vertex_colors
    - gf_evg_stencil_set_auto_matrix
    - gf_free
    - GF_COL_A
    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_finalize_sort
    - new_mesh
    - ils2d_check_changes
    - ILS2D_Draw
    - mesh_new_ils
    - visual_3d_mesh_strike
    - gf_path_get_bounds
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - vrml_drawable_pick
    - memset
    - drawable_get_aspect_2d_mpeg4
    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_SetCoordIndex
    - gf_sys_is_cov_mode
    - drawable_stack_new
    - gf_node_set_callback_function
    - ILS2D_SetColorIndex
    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_SAFEALLOC
    - gf_list_new
    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
    - MS_Stop
    - gf_list_rem_last
    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_odm_reset_media_control
    - gf_list_count
    - gf_odf_desc_del
    - gf_free
    - gf_input_sensor_delete
    - gf_filter_pid_set_udta
    - gf_list_del
    - gf_sema_del
    - gf_list_pop_back
    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_filter_pid_get_property
    - gf_odm_setup_object
    - GF_SAFEALLOC
    - gf_list_new
    - 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_FEVT_INIT
    - gf_mo_event_target_count
    - gf_filter_forward_gf_event
    - gf_scene_disconnect
    - gf_mo_event_target_get
    - gf_event_target_get_node
    - gf_odm_stop
    - gf_scene_reset_addon
    - InputSensorModified
    - gf_scene_ns_del
    - gf_list_enum
    - gf_scene_get_root_scene
    - gf_list_del_item
    - gf_odm_del
    - gf_sc_send_event
    - gf_scene_del
    - gf_filter_pid_exec_event
    - gf_scene_remove_object
    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
    - gf_scene_ns_connect_object
    - gf_scene_new
    - strnicmp
    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_filter_pid_get_property
    - gf_odm_set_timeshift_depth
    - GF_FEVT_INIT
    - gf_assert
    - gf_scene_select_object
    - gf_filter_pid_send_event
    - strstr
    - gf_filter_pid_is_sparse
    - strchr
    - gf_filter_forward_gf_event
    - gf_mo_event_target_get
    - gf_event_target_get_node
    - gf_odm_stop
    - atoi
    - gf_filter_pid_get_name
    - strcmp
    - gf_odm_start
    - gf_error_to_string
    - gf_scene_setup_object
    - GF_LOG
    - gf_sc_send_event
    - gf_odm_setup_pid
    - gf_filter_pid_exec_event
    - gf_odm_should_auto_select
    - strncmp
    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_filter_pid_get_property
    - gf_list_count
    - gf_clock_attach
    - gf_scene_get_root_scene
    - gf_filter_pid_get_statistics
    - GF_LOG
    - gf_sys_is_cov_mode
    - gf_fatal_assert
    - gf_list_get
    - gf_odm_update_duration
    - gf_filter_pid_get_packet_count
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_odm_setup_pid(GF_ObjectManager *odm, GF_FilterPid *pid)
  - BBCount: 5
    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
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:755,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/object_manager.c:758,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - odm
    - pid
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 730
    functionDepth: 1
    functionLinenumber: 730
    functionLinenumberEnd: 761
    functionName: gf_odm_update_duration
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_release_property
    - gf_filter_pid_get_info
    - gf_scene_set_duration
    - gf_clock_reset
    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:772,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/object_manager.c:775,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:778,1
    - Dst: gf_odm_play
      Src: /src/gpac/src/compositor/object_manager.c:786,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 765
    functionDepth: 1
    functionLinenumber: 765
    functionLinenumberEnd: 787
    functionName: gf_odm_start
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_odm_play
    - gf_odm_find_segment
    - strrchr
    - gf_assert
    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:807,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:810,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:812,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/object_manager.c:820,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/object_manager.c:821,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/object_manager.c:831,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:837,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/object_manager.c:855,1
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/object_manager.c:871,1
    - Dst: gf_clock_time_absolute
      Src: /src/gpac/src/compositor/object_manager.c:875,1
    - Dst: gf_scene_adjust_time_for_addon
      Src: /src/gpac/src/compositor/object_manager.c:879,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/object_manager.c:893,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:903,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:903,1
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/object_manager.c:907,1
    - Dst: MC_GetRange
      Src: /src/gpac/src/compositor/object_manager.c:915,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/object_manager.c:919,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:920,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:920,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/object_manager.c:929,1
    - Dst: ceil
      Src: /src/gpac/src/compositor/object_manager.c:963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:967,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:967,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:967,1
    - Dst: gf_clock_buffer_on
      Src: /src/gpac/src/compositor/object_manager.c:977,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/object_manager.c:983,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/object_manager.c:984,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:987,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:990,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:992,1
    - Dst: gf_clock_buffer_on
      Src: /src/gpac/src/compositor/object_manager.c:1001,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/object_manager.c:1004,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/object_manager.c:1005,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1008,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1024,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1025,1
    - Dst: gf_odm_pause
      Src: /src/gpac/src/compositor/object_manager.c:1035,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 171
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 789
    functionDepth: 1
    functionLinenumber: 789
    functionLinenumberEnd: 1037
    functionName: gf_odm_play
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_clock_time_absolute
    - GF_FEVT_INIT
    - gf_odm_pause
    - gf_clock_time
    - gf_clock_set_speed
    - gf_clock_media_time
    - gf_filter_pid_send_event
    - gf_list_add
    - FIX2FLT
    - ceil
    - gf_clock_is_started
    - gf_list_find
    - gf_list_get
    - gf_scene_adjust_time_for_addon
    - gf_clock_reset
    - gf_clock_buffer_on
    - gf_filter_pck_unref
    - gf_odm_get_mediacontrol
    - gf_filter_pid_get_name
    - ABS
    - gf_odm_get_media_clock
    - gf_odm_shares_clock
    - GF_LOG
    - gf_odm_service_media_event
    - MC_GetRange
    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:1069,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/object_manager.c:1070,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1078,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1078,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1078,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1080,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/object_manager.c:1081,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1083,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/object_manager.c:1087,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1088,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/object_manager.c:1096,1
    - Dst: gf_clock_buffer_off
      Src: /src/gpac/src/compositor/object_manager.c:1099,1
    - Dst: gf_scene_buffering_info
      Src: /src/gpac/src/compositor/object_manager.c:1103,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1107,1
    - Dst: gf_clock_reset
      Src: /src/gpac/src/compositor/object_manager.c:1111,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1118,1
    - Dst: MS_Stop
      Src: /src/gpac/src/compositor/object_manager.c:1119,1
    - Dst: gf_odm_get_mediacontrol
      Src: /src/gpac/src/compositor/object_manager.c:1122,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 2
    argNames:
    - odm
    - force_close
    argTypes:
    - GF_ObjectManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1126
      start: 1039
    functionDepth: 1
    functionLinenumber: 1039
    functionLinenumberEnd: 1126
    functionName: gf_odm_stop
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 3
    functionsReached:
    - gf_odm_stop
    - GF_LOG
    - gf_odm_service_media_event
    - GF_FEVT_INIT
    - gf_odm_get_mediacontrol
    - gf_list_enum
    - gf_filter_pid_get_name
    - gf_list_del_item
    - gf_clock_time
    - gf_assert
    - gf_clock_buffer_off
    - gf_filter_pid_send_event
    - gf_scene_buffering_info
    - gf_clock_reset
    - MS_Stop
    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:1133,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1143,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/compositor/object_manager.c:1159,1
    - Dst: gf_scene_mpeg4_inline_check_restart
      Src: /src/gpac/src/compositor/object_manager.c:1164,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1168,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1172,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/compositor/object_manager.c:1175,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/compositor/object_manager.c:1177,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1183,1
    - Dst: gf_filter_pid_exec_event
      Src: /src/gpac/src/compositor/object_manager.c:1185,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/compositor/object_manager.c:1187,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1190,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/compositor/object_manager.c:1191,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/compositor/object_manager.c:1194,1
    - Dst: gf_odm_signal_eos_reached
      Src: /src/gpac/src/compositor/object_manager.c:1199,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 49
    argCount: 2
    argNames:
    - odm
    - pid
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1128
    functionDepth: 1
    functionLinenumber: 1128
    functionLinenumberEnd: 1201
    functionName: gf_odm_on_eos
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_udta
    - gf_odm_service_media_event
    - GF_FEVT_INIT
    - gf_filter_release_property
    - gf_odm_check_segment_switch
    - gf_filter_remove_src
    - gf_odm_signal_eos_reached
    - gf_odm_check_buffering
    - gf_scene_mpeg4_inline_check_restart
    - gf_filter_pid_get_info
    - gf_filter_pid_exec_event
    - gf_list_get
    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:1205,1
    - Dst: gf_scene_check_clocks
      Src: /src/gpac/src/compositor/object_manager.c:1209,1
    - Dst: gf_sc_is_over
      Src: /src/gpac/src/compositor/object_manager.c:1213,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1216,1
    - Dst: gf_sc_check_end_of_scene
      Src: /src/gpac/src/compositor/object_manager.c:1220,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1223,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1203
    functionDepth: 1
    functionLinenumber: 1203
    functionLinenumberEnd: 1226
    functionName: gf_odm_signal_eos_reached
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_odm_service_media_event
    - gf_sc_send_event
    - gf_scene_is_root
    - gf_sc_check_end_of_scene
    - gf_sc_is_over
    - gf_scene_check_clocks
    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:1239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - odm
    - stream_timeshift
    argTypes:
    - GF_ObjectManager*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1229
    functionDepth: 1
    functionLinenumber: 1229
    functionLinenumberEnd: 1240
    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: 1250
      start: 1243
    functionDepth: 0
    functionLinenumber: 1243
    functionLinenumberEnd: 1250
    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: 1257
      start: 1253
    functionDepth: 0
    functionLinenumber: 1253
    functionLinenumberEnd: 1257
    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:1280,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1280,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/object_manager.c:1284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1286,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1286,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1286,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1288,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/object_manager.c:1289,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1292,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1296,1
    - Dst: gf_clock_pause
      Src: /src/gpac/src/compositor/object_manager.c:1297,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1304,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1316,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/object_manager.c:1319,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1260
    functionDepth: 5
    functionLinenumber: 1260
    functionLinenumberEnd: 1324
    functionName: gf_odm_pause
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_scene_get_root_scene
    - gf_node_event_out
    - GF_LOG
    - GF_FEVT_INIT
    - gf_clock_pause
    - gf_list_enum
    - gf_filter_pid_get_name
    - gf_clock_time
    - gf_filter_pid_send_event
    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:1349,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1352,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/compositor/object_manager.c:1352,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1352,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1354,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1359,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1359,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:1364,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1367,1
    - Dst: gf_clock_resume
      Src: /src/gpac/src/compositor/object_manager.c:1368,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1373,1
    - Dst: gf_clock_set_speed
      Src: /src/gpac/src/compositor/object_manager.c:1379,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1384,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/object_manager.c:1387,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1326
    functionDepth: 5
    functionLinenumber: 1326
    functionLinenumberEnd: 1391
    functionName: gf_odm_resume
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_node_event_out
    - GF_LOG
    - gf_odm_get_mediacontrol
    - GF_FEVT_INIT
    - gf_list_enum
    - gf_filter_pid_get_name
    - gf_clock_time
    - gf_clock_set_speed
    - ABS
    - gf_filter_pid_send_event
    - gf_clock_resume
    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:1404,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/compositor/object_manager.c:1406,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/object_manager.c:1409,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1410,1
    - Dst: ABS
      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
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1416,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/object_manager.c:1419,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: 1421
      start: 1393
    functionDepth: 1
    functionLinenumber: 1393
    functionLinenumberEnd: 1421
    functionName: gf_odm_set_speed
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - FIX2FLT
    - GF_FEVT_INIT
    - gf_list_enum
    - gf_clock_set_speed
    - ABS
    - gf_filter_pid_send_event
    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:1428,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/object_manager.c:1430,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - odm
    - descName
    argTypes:
    - GF_ObjectManager*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1423
    functionDepth: 1
    functionLinenumber: 1423
    functionLinenumberEnd: 1433
    functionName: gf_odm_find_segment
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - stricmp
    - gf_list_enum
    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:1440,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/object_manager.c:1443,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/object_manager.c:1447,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: 1448
      start: 1435
    functionDepth: 1
    functionLinenumber: 1435
    functionLinenumberEnd: 1448
    functionName: gf_odm_insert_segment
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_list_insert
    - gf_list_add
    - gf_list_enum
    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:1461,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1464,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/object_manager.c:1466,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1467,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1469,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1470,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1472,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/object_manager.c:1475,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/object_manager.c:1477,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1478,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/object_manager.c:1484,1
    - Dst: gf_odm_insert_segment
      Src: /src/gpac/src/compositor/object_manager.c:1486,1
    - Dst: gf_odm_insert_segment
      Src: /src/gpac/src/compositor/object_manager.c:1490,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1492,1
    - Dst: gf_odm_insert_segment
      Src: /src/gpac/src/compositor/object_manager.c:1498,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 46
    argCount: 3
    argNames:
    - odm
    - list
    - url
    argTypes:
    - GF_ObjectManager*
    - GF_List*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1501
      start: 1451
    functionDepth: 2
    functionLinenumber: 1451
    functionLinenumberEnd: 1501
    functionName: gf_odm_init_segments
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_odm_find_segment
    - gf_list_enum
    - gf_odm_insert_segment
    - strstr
    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:1508,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/compositor/object_manager.c:1511,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/compositor/object_manager.c:1513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1517,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/compositor/object_manager.c:1522,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1528,1
    - Dst: gf_filter_pid_first_packet_is_blocking_ref
      Src: /src/gpac/src/compositor/object_manager.c:1535,1
    - Dst: gf_clock_buffer_off
      Src: /src/gpac/src/compositor/object_manager.c:1548,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/compositor/object_manager.c:1549,1
    - Dst: gf_clock_buffer_off
      Src: /src/gpac/src/compositor/object_manager.c:1564,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: 1567
      start: 1505
    functionDepth: 1
    functionLinenumber: 1505
    functionLinenumberEnd: 1567
    functionName: odm_update_buffer
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_timescale
    - GF_LOG
    - gf_filter_pid_first_packet_is_blocking_ref
    - gf_filter_pid_has_seen_eos
    - gf_filter_pid_drop_packet
    - gf_clock_buffer_off
    - gf_clock_set_time
    - gf_filter_pid_get_first_packet_cts
    - 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: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_odm_check_clock_mediatime
      Src: /src/gpac/src/compositor/object_manager.c:1590,1
    - Dst: gf_filter_pid_first_packet_is_empty
      Src: /src/gpac/src/compositor/object_manager.c:1596,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/compositor/object_manager.c:1597,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/compositor/object_manager.c:1600,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1604,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1608,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/compositor/object_manager.c:1608,1
    - Dst: gf_filter_pid_first_packet_is_blocking_ref
      Src: /src/gpac/src/compositor/object_manager.c:1610,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1613,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1620,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1622,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1623,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1631,1
    - Dst: odm_update_buffer
      Src: /src/gpac/src/compositor/object_manager.c:1636,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/compositor/object_manager.c:1638,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:1639,1
    - Dst: gf_clock_buffer_on
      Src: /src/gpac/src/compositor/object_manager.c:1641,1
    - Dst: gf_scene_buffering_info
      Src: /src/gpac/src/compositor/object_manager.c:1650,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1660,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/compositor/object_manager.c:1664,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1667,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:1671,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/compositor/object_manager.c:1673,1
    - Dst: gf_timestamp_to_clocktime
      Src: /src/gpac/src/compositor/object_manager.c:1675,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1678,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/object_manager.c:1678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1680,1
    - Dst: ABS
      Src: /src/gpac/src/compositor/object_manager.c:1684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1696,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1698,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1700,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1707,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/compositor/object_manager.c:1709,1
    - Dst: gf_clock_to_media_time
      Src: /src/gpac/src/compositor/object_manager.c:1714,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:1716,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:1721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/object_manager.c:1725,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/object_manager.c:1725,1
    - Dst: gf_odm_service_media_event
      Src: /src/gpac/src/compositor/object_manager.c:1729,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 121
    argCount: 2
    argNames:
    - odm
    - pid
    argTypes:
    - GF_ObjectManager*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1732
      start: 1570
    functionDepth: 2
    functionLinenumber: 1570
    functionLinenumberEnd: 1732
    functionName: gf_odm_check_buffering
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_filter_pid_get_timescale
    - gf_clock_time
    - gf_clock_to_media_time
    - odm_update_buffer
    - gf_filter_pid_first_packet_is_empty
    - gf_timestamp_to_clocktime
    - gf_timestamp_rescale
    - gf_list_get
    - gf_filter_pid_first_packet_is_blocking_ref
    - gf_clock_set_time
    - gf_scene_buffering_info
    - gf_filter_pid_get_first_packet_cts
    - gf_clock_buffer_on
    - gf_filter_pid_get_clock_info
    - gf_list_enum
    - ABS
    - gf_filter_pid_query_buffer_duration
    - GF_LOG
    - gf_odm_service_media_event
    - gf_filter_pid_has_seen_eos
    - gf_odm_check_clock_mediatime
    - FIX2INT
    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:1751,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1760,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:1762,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: 1770
      start: 1735
    functionDepth: 1
    functionLinenumber: 1735
    functionLinenumberEnd: 1770
    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:1782,1
    - Dst: gf_mo_event_target_count
      Src: /src/gpac/src/compositor/object_manager.c:1791,1
    - Dst: memset
      Src: /src/gpac/src/compositor/object_manager.c:1799,1
    - Dst: gf_odm_collect_buffer_info
      Src: /src/gpac/src/compositor/object_manager.c:1813,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/object_manager.c:1817,1
    - Dst: gf_odm_collect_buffer_info
      Src: /src/gpac/src/compositor/object_manager.c:1819,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/object_manager.c:1831,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1844,1
    - Dst: gf_sc_queue_dom_event_on_target
      Src: /src/gpac/src/compositor/object_manager.c:1846,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/object_manager.c:1849,1
    - Dst: gf_sc_queue_dom_event
      Src: /src/gpac/src/compositor/object_manager.c:1850,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: 1853
      start: 1773
    functionDepth: 2
    functionLinenumber: 1773
    functionLinenumberEnd: 1853
    functionName: gf_odm_service_media_event_with_download
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_sc_queue_dom_event_on_target
    - gf_odm_collect_buffer_info
    - gf_list_enum
    - gf_sg_get_root_node
    - INT2FIX
    - gf_sc_queue_dom_event
    - gf_list_get
    - memset
    - 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:1857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - odm
    - event_type
    argTypes:
    - GF_ObjectManager*
    - GF_EventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1858
      start: 1855
    functionDepth: 3
    functionLinenumber: 1855
    functionLinenumberEnd: 1858
    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:1869,1
    - Dst: gf_odm_stop
      Src: /src/gpac/src/compositor/object_manager.c:1872,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1860
    functionDepth: 4
    functionLinenumber: 1860
    functionLinenumberEnd: 1874
    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:1880,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: 1896
      start: 1877
    functionDepth: 1
    functionLinenumber: 1877
    functionLinenumberEnd: 1896
    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:1908,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/object_manager.c:1927,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/compositor/object_manager.c:1929,1
    - Dst: gf_filter_pid_set_rt_stats
      Src: /src/gpac/src/compositor/object_manager.c:1930,1
    - Dst: gf_filter_pid_share_origin
      Src: /src/gpac/src/compositor/object_manager.c:1931,1
    - Dst: gf_filter_pid_first_pid_for_source
      Src: /src/gpac/src/compositor/object_manager.c:1933,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1937,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:1939,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:1940,1
    - Dst: gf_filter_pid_first_pid_for_source
      Src: /src/gpac/src/compositor/object_manager.c:1942,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:1946,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:1948,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/object_manager.c:1964,1
    - Dst: gf_clock_media_time
      Src: /src/gpac/src/compositor/object_manager.c:1971,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/object_manager.c:1988,1
    - Dst: gf_clock_is_started
      Src: /src/gpac/src/compositor/object_manager.c:1996,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/compositor/object_manager.c:2004,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2010,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/compositor/object_manager.c:2017,1
    - Dst: gf_filter_pid_get_filter_name
      Src: /src/gpac/src/compositor/object_manager.c:2028,1
    - Dst: gf_filter_pid_get_buffer_occupancy
      Src: /src/gpac/src/compositor/object_manager.c:2031,1
    - Dst: get_codec_stats
      Src: /src/gpac/src/compositor/object_manager.c:2033,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2035,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2038,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/object_manager.c:2044,1
    - Dst: gf_mo_get_visual_info
      Src: /src/gpac/src/compositor/object_manager.c:2048,1
    - Dst: gf_mo_get_audio_info
      Src: /src/gpac/src/compositor/object_manager.c:2051,1
    - Dst: gf_mo_get_visual_info
      Src: /src/gpac/src/compositor/object_manager.c:2055,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2062,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
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2070,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2072,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 159
    argCount: 2
    argNames:
    - odm
    - info
    argTypes:
    - GF_ObjectManager*
    - GF_MediaInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 1898
    functionDepth: 2
    functionLinenumber: 1898
    functionLinenumberEnd: 2082
    functionName: gf_odm_get_object_info
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_share_origin
    - gf_list_count
    - gf_filter_pid_get_property
    - gf_filter_get_name
    - gf_clock_media_time
    - gf_sg_get_scene_size_info
    - gf_mo_get_visual_info
    - gf_clock_is_started
    - gf_filter_pid_first_pid_for_source
    - gf_filter_pid_set_rt_stats
    - gf_list_get
    - gf_mo_get_audio_info
    - gf_filter_pid_query_buffer_duration
    - gf_filter_pid_get_buffer_occupancy
    - gf_odm_get_media_clock
    - get_codec_stats
    - gf_filter_pid_get_statistics
    - gf_sys_is_cov_mode
    - gf_filter_pid_get_filter_name
    - memset
    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:2095,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/compositor/object_manager.c:2098,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/compositor/object_manager.c:2101,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/compositor/object_manager.c:2103,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/compositor/object_manager.c:2107,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/object_manager.c:2116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/object_manager.c:2117,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - odm
    argTypes:
    - GF_ObjectManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2120
      start: 2085
    functionDepth: 1
    functionLinenumber: 2085
    functionLinenumberEnd: 2120
    functionName: gf_odm_check_clock_mediatime
    functionSourceFile: /src/gpac/src/compositor/object_manager.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_filter_pck_get_property
    - gf_filter_pid_get_timescale
    - gf_timestamp_rescale
    - gf_filter_pck_get_cts
    - gf_list_get
    - gf_filter_pid_get_packet
    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:
    - ra_union_rect
    - gf_evg_surface_clear
    - INT2FIX
    - GF_COL_R
    - GF_COL_A
    - visual_3d_clear
    - GF_COL_G
    - GF_COL_B
    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:
    - visual_3d_mesh_paint
    - gf_sc_texture_set_data
    - gf_sc_texture_set_blend_mode
    - gf_divfix
    - gf_mx_init
    - gf_sc_texture_disable
    - INT2FIX
    - gf_sc_texture_enable
    - mesh_new_rectangle
    - memset
    - visual_3d_set_state
    - visual_3d_enable_antialias
    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_enable
    - visual_3d_mesh_paint
    - gf_sc_texture_disable
    - mesh_new_rectangle
    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:
    - mesh_free
    - gf_sc_texture_release
    - gf_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:
    - glViewport
    - INT2FIX
    - visual_3d_projection_matrix_modified
    - visual_3d_setup
    - 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_release
    - gf_sc_texture_set_data
    - new_mesh
    - gf_sc_texture_allocate
    - INT2FIX
    - GF_SAFEALLOC
    - mesh_new_rectangle
    - gf_evg_surface_attach_to_buffer
    - memset
    - gf_realloc
    - compositor_2d_setup_opengl
    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_Compositor*::video_out::LockBackBuffer
    - GF_LOG
    - gf_evg_surface_attach_to_buffer
    - gf_pixel_fmt_name
    - 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_VisualManager*::compositor::video_out::Blit
    - GF_COL_R
    - GF_COL_G
    - memset
    - GF_COL_B
    - visual_2d_clear_surface
    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::LockOSContext
    - GF_Compositor*::video_out::LockBackBuffer
    - compositor_2d_hybgl_flush_video
    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_mo_get_object_time
    - gf_sys_clock
    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:
    - ROUND_FIX
    - gf_divfix
    - INT2FIX
    - FIX2INT
    - CEILING
    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_init_raster
    - visual_2d_get_drawable_context
    - GF_VisualManager*::compositor::video_out::LockBackBuffer
    - GF_SAFEALLOC
    - store_blit_times
    - gf_pixel_fmt_is_yuv
    - GF_VisualManager*::ClearSurface
    - compositor_texture_rectangles
    - gf_stretch_bits
    - gf_sc_next_frame_state
    - GF_TextureHandler*::frame_ifce::get_plane
    - gf_sys_clock
    - visual_2d_release_raster
    - gf_error_to_string
    - GF_VisualManager*::compositor::video_out::Blit
    - gf_sc_texture_check_pause_on_first_load
    - GF_LOG
    - GF_VisualManager*::compositor::video_out::Flush
    - gf_pixel_get_size_info
    - memset
    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:
    - compositor_2d_draw_bitmap_ex
    - GF_VisualManager*::compositor::video_out::BlitTexture
    - GF_COL_A
    - gf_sc_set_option
    - gf_irect_intersect
    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:
    - gf_divfix
    - GF_LOG
    - gf_opengl_init
    - INT2FIX
    - gf_sc_send_event
    - compositor_2d_set_aspect_ratio
    - compositor_set_ar_scale
    - FIX2INT
    - GF_Compositor*::video_out::ProcessEvent
    - memset
    - gf_error_to_string
    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_sg_get_scene_size_info
    - gf_node_get_tag
    - gf_dom_event_fire
    - gf_list_enum
    - gf_sg_get_root_node
    - INT2FIX
    - memset
    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_init
    - gf_mx2d_add_translation
    - FIX2FLT
    - gf_divfix
    - GF_LOG
    - gf_mx2d_add_scale
    - compositor_send_resize_event
    - INT2FIX
    - gf_mulfix
    - gf_sc_next_frame_state
    - gf_sc_lock
    - gf_mx2d_add_rotation
    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_mx_apply_rect
    - gf_mx_copy
    - gf_mx_inverse
    - gf_mx2d_inverse
    - gf_mx2d_copy
    - gf_mx2d_apply_rect
    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_overlaps
    - ra_union_rect
    - gf_irect_inside
    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:
    - compositor_2d_draw_bitmap_ex
    - call_drawable_draw
    - ra_refresh
    - gf_irect_overlaps
    - gf_irect_inside
    - gf_irect_intersect
    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_VisualManager*::compositor::video_out::Blit
    - gf_free
    - ra_del
    - GF_LOG
    - memset
    - gf_error_to_string
    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: 1
    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: 1
    functionLinenumber: 71
    functionLinenumberEnd: 117
    functionName: gf_sc_set_viewpoint
    functionSourceFile: /src/gpac/src/compositor/mpeg4_viewport.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - stricmp
    - Bindable_GetIsBound
    - gf_list_get
    - Bindable_SetSetBind
    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
    - gf_sc_get_compositor
    - gf_list_del
    - gf_node_get_private
    - VPCHANGED
    - PreDestroyBindable
    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_sc_get_compositor
    - gf_node_get_private
    - gf_sc_invalidate
    - Bindable_OnSetBind
    - VPCHANGED
    - gf_node_dirty_set
    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_mx2d_init
    - Bindable_SetIsBound
    - gf_mx2d_add_scale
    - gf_inline_is_default_viewpoint
    - gf_list_add
    - gf_mx_from_mx2d
    - gf_mx2d_add_translation
    - gf_mx2d_pre_multiply
    - gf_node_dirty_clear
    - gf_rect_center
    - gf_list_find
    - gf_sc_invalidate
    - Bindable_SetSetBindEx
    - gf_list_get
    - DestroyViewStack
    - gf_divfix
    - gf_node_get_private
    - gf_muldiv
    - gf_mulfix
    - gf_mx_add_matrix
    - VPCHANGED
    - 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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - 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_sc_get_compositor
    - gf_node_get_private
    - gf_sc_invalidate
    - Bindable_OnSetBind
    - VPCHANGED
    - gf_node_dirty_set
    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
    - Bindable_SetIsBound
    - gf_inline_is_default_viewpoint
    - gf_mx_equal
    - gf_mx_apply_vec
    - Bindable_SetSetBind
    - gf_list_add
    - gf_node_dirty_clear
    - gf_list_find
    - gf_sc_invalidate
    - gf_mx_decompose
    - gf_list_get
    - DestroyViewStack
    - gf_node_get_private
    - visual_3d_viewpoint_change
    - gf_node_dirty_set
    - gf_mx_add_translation
    - gf_mx_copy
    - gf_mx_add_rotation
    - VPCHANGED
    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_mx_init
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - 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_get_compositor
    - gf_sc_invalidate
    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:
    - gf_mx_copy
    - Bindable_SetIsBound
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_private
    - stricmp
    - gf_list_find
    - gf_sc_invalidate
    - gf_mx_equal
    - gf_mx_apply_vec
    - gf_vec_len
    - MAX
    - gf_mulfix
    - gf_list_get
    - gf_vec_diff
    - gf_list_add
    - gf_node_dirty_set
    - DestroyViewStack
    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_LOG
    - navinfo_set_bind
    - gf_sys_is_cov_mode
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - gf_node_set_callback_function
    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_get_compositor
    - gf_sc_invalidate
    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:
    - gf_invfix
    - gf_mx_copy
    - Bindable_SetIsBound
    - gf_node_get_private
    - gf_list_find
    - gf_sc_invalidate
    - gf_mx_apply_vec
    - gf_vec_len
    - visual_3d_set_fog
    - gf_list_get
    - gf_vec_diff
    - gf_list_add
    - DestroyViewStack
    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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - 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_rotation
    - gf_mx_add_translation
    - 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
    - camera_changed
    - gf_mx_apply_vec
    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:
    - camera_get_right_dir
    - gf_vec_norm
    - gf_mx_apply_vec
    - gf_mx_rotation_matrix
    - gf_vec_cross
    - camera_get_pos_dir
    - camera_changed
    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
    - camera_changed
    - gf_mx_apply_vec
    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:
    - camera_get_right_dir
    - gf_vec_norm
    - gf_mx_apply_vec
    - gf_mx_rotation_matrix
    - gf_vec_cross
    - camera_get_pos_dir
    - camera_changed
    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_vec_norm
    - gf_mx_apply_vec
    - gf_mx_rotation_matrix
    - gf_vec_diff
    - gf_vec_add
    - camera_get_pos_dir
    - camera_changed
    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_norm
    - camera_get_right_dir
    - gf_vec_cross
    - camera_get_pos_dir
    - 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
    - update_pan_up
    - gf_mx_apply_vec
    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
    - gf_vec_scale
    - camera_changed
    - 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
    - gf_vec_scale
    - camera_changed
    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:
    - camera_get_target_dir
    - gf_vec_scale
    - gf_mulfix
    - gf_vec_add
    - camera_changed
    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:
    - camera_changed
    - gf_divfix
    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_list_count
    - gf_node_dirty_get
    - camera_set_vectors
    - camera_stop_anim
    - gf_vec_diff
    - gf_mx_v
    - gf_divfix
    - gf_mx_init
    - gf_vec_scale
    - gf_sg_get_root_node
    - gf_node_traverse
    - gf_mx_p
    - camera_move_to
    - gf_vec_len
    - camera_changed
    - gf_sin
    - memset
    - gf_vec_add
    - camera_get_pos_dir
    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_exam_x
    - view_orbit_y
    - view_exam_y
    - view_translate_x
    - view_pan_x
    - view_orbit_x
    - view_pan_y
    - view_translate_z
    - view_translate_y
    - gf_mulfix
    - ABS
    - view_roll
    - view_zoom
    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:
    - nav_set_zoom_trans_2d
    - view_exam_y
    - view_translate_x
    - INT2FIX
    - gf_mx_apply_vec
    - view_roll
    - view_exam_x
    - view_orbit_y
    - FIX2FLT
    - compositor_layer3d_get_camera
    - gf_sc_invalidate
    - compositor_3d_reset_camera
    - view_orbit_x
    - update_pan_up
    - gf_atan2
    - handle_mouse_move_3d
    - gf_sc_fit_world_to_screen
    - gf_divfix
    - gf_mx_init
    - camera_jump
    - view_translate_z
    - ABS
    - gf_mulfix
    - camera_get_orientation
    - view_zoom
    - camera_changed
    - gf_mx_get_yaw_pitch_roll
    - FLT2FIX
    - gf_mx_add_rotation
    - GF_LOG
    - view_pan_x
    - view_pan_y
    - view_translate_y
    - gf_sc_reset_graphics
    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:
    - gf_asin
    - nav_set_zoom_trans_2d
    - MIN
    - INT2FIX
    - ABS
    - gf_mulfix
    - gf_sc_reset_graphics
    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:
    - handle_mouse_move_3d
    - compositor_layer3d_get_camera
    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_mx_del
    - gf_free
    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_clock_del
    - gf_list_enum
    - 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_ck_resolve_clock_dep
    - gf_list_add
    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: 3
    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_sc_get_clock
    - gf_timestamp_rescale
    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_sc_get_clock
    - gf_mx_p
    - gf_mx_v
    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_sc_get_clock
    - gf_mx_p
    - gf_mx_v
    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:
    - gf_sc_get_clock
    - FIX2INT
    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_to_media_time
    - gf_clock_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_clock_pause
    - gf_mx_p
    - gf_mx_v
    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_sc_get_clock
    - gf_clock_time
    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_divfix
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_dot
    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
    - gf_node_dirty_clear
    - visual_3d_vrml_drawable_collide
    - gf_node_traverse
    - visual_3d_register_context
    - drawable_compute_line_scale
    - 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:
    - drawable_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_path_add_ellipse
    - drawable_reset_path
    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:
    - new_mesh
    - mesh_new_ellipse
    - gf_path_get_bounds
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - vrml_drawable_pick
    - drawable_finalize_sort
    - circle_check_changes
    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:
    - drawable_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_path_add_ellipse
    - drawable_reset_path
    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:
    - new_mesh
    - mesh_new_ellipse
    - gf_path_get_bounds
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - ellipse_check_changes
    - vrml_drawable_pick
    - drawable_finalize_sort
    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_path_get_bounds
    - GF_TraverseState*::visual::DrawBitmap
    - gf_rect_pixelize
    - visual_2d_texture_path
    - gf_mx2d_apply_rect
    - gf_irect_intersect
    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:
    - drawable_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - drawable_reset_path
    - gf_path_add_rect_center
    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_sc_texture_stop_no_unregister
    - gf_sc_texture_get_handler
    - gf_mo_get_srd_info
    - gf_mo_hint_quality_degradation
    - gf_mo_hint_gaze
    - GF_LOG
    - gf_sc_texture_play
    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:
    - compositor_2d_draw_rectangle
    - new_mesh
    - gf_path_get_bounds
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - vrml_drawable_pick
    - GF_COL_A
    - mesh_new_rectangle
    - rectangle_check_changes
    - rectangle_check_adaptation
    - drawable_finalize_sort
    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_quadratic_to
    - gf_path_close
    - gf_path_add_bezier
    - drawable_mark_modified
    - gf_node_dirty_clear
    - gf_path_add_move_to
    - gf_path_add_cubic_to
    - CHECK_VALID_C2D
    - drawable_reset_path
    - gf_path_add_arc_to
    - GET_IDX
    - gf_path_add_line_to
    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:
    - new_mesh
    - gf_path_get_bounds
    - gf_node_dirty_get
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - curve2d_check_changes
    - vrml_drawable_pick
    - mesh_from_path
    - drawable_finalize_sort
    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:
    - gf_v2d_len
    - FLT2FIX
    - 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_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - get_point_size
    - drawable_reset_path
    - gf_path_add_rect
    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:
    - visual_2d_draw_path
    - gf_path_reset
    - gf_path_del
    - get_point_size
    - INT2FIX
    - GF_COL_ARGB_FIXED
    - GF_COL_A
    - gf_path_new
    - gf_path_add_rect_center
    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:
    - visual_3d_mesh_paint
    - drawable_finalize_sort
    - new_mesh
    - gf_path_get_bounds
    - mesh_new_ps
    - visual_3d_set_material_2d_argb
    - gf_node_get_private
    - drawable_init_context_mpeg4
    - drawable_node_del
    - PointSet2D_Draw
    - pointset2d_check_changes
    - memset
    - drawable_get_aspect_2d_mpeg4
    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_get_private
    - TraverseBitWrapper
    - gf_sys_is_cov_mode
    - gf_node_set_private
    - gf_node_set_callback_function
    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_list_count
    - gf_odm_disconnect
    - gf_scene_get_root_scene
    - gf_filter_send_gf_event
    - GF_LOG
    - gf_odm_service_media_event
    - gf_scene_ns_del
    - gf_scene_message
    - gf_fatal_assert
    - snprintf
    - gf_list_get
    - gf_scene_remove_object
    - gf_scene_notify_event
    - gf_error_to_string
    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_filter_pid_get_property
    - gf_list_count
    - gf_sc_set_fps
    - strchr
    - gf_filter_pid_is_sparse
    - atoi
    - gf_filter_pid_set_udta
    - GF_LOG
    - gf_odm_setup_object
    - gf_odm_register_pid
    - gf_sc_send_event
    - strnicmp
    - strrchr
    - gf_odm_new
    - gf_list_get
    - gf_filter_pid_is_filter_in_parents
    - gf_list_add
    - strstr
    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:
    - strchr
    - gf_scene_get_root_scene
    - GF_LOG
    - gf_url_concatenate
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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_list_count
    - gf_free
    - gf_list_del
    - gf_filter_remove_src
    - gf_list_del_item
    - gf_clock_del
    - gf_list_pop_back
    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_list_count
    - gf_odm_disconnect
    - gf_opts_del_section
    - gf_filter_remove
    - gf_assert
    - gf_opts_get_key
    - gf_opts_get_section_count
    - strchr
    - gf_filter_connect_source
    - gf_list_get
    - gf_dynstrcat
    - gf_filter_post_task
    - gf_filter_set_source_restricted
    - strcmp
    - gf_filter_set_setup_failure_callback
    - gf_filter_get_id
    - sscanf
    - gf_scene_notify_event
    - gf_opts_get_section_name
    - gf_filter_get_sep
    - sprintf
    - gf_free
    - gf_odm_service_media_event
    - stricmp
    - gf_net_get_ntp
    - gf_scene_message
    - gf_file_delete
    - gf_strdup
    - gf_filter_lock_all
    - gf_scene_ns_new
    - strncmp
    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_list_find
    - gf_sc_invalidate
    - gf_sg_get_private
    - gf_node_set_private
    - gf_node_get_graph
    - gf_sg_vrml_mf_reset
    - gf_list_add
    - gf_scene_get_media_object_ex
    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_odm_disconnect
    - gf_odm_stop_or_destroy
    - gf_mo_is_same_url
    - gf_mo_del
    - gf_node_get_private
    - gf_list_del_item
    - gf_node_dirty_parents
    - gf_mo_event_target_remove_by_node
    - gf_node_set_private
    - gf_node_get_parent
    - gf_sg_vrml_mf_reset
    - gf_mo_get_od_id
    - gf_inline_set_scene
    - gf_scene_notify_event
    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_list_count
    - gf_clock_time_absolute
    - gf_odm_get_media_clock
    - gf_odm_check_segment_switch
    - gf_sc_invalidate
    - MC_GetRange
    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_inline_check_restart
    - gf_sc_invalidate
    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_odm_stop
    - gf_scene_disconnect
    - gf_odm_start
    - gf_scene_restart_dynamic
    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_odm_disconnect
    - gf_sc_traverse_subscene
    - gf_mo_event_target_remove_by_node
    - gf_node_dirty_clear
    - gf_scene_disconnect
    - gf_sc_invalidate
    - gf_sg_get_private
    - gf_node_get_graph
    - gf_odm_reset_media_control
    - gf_odm_stop
    - gf_inline_on_modified
    - gf_inline_check_restart
    - gf_scene_mpeg4_inline_restart
    - gf_mo_del
    - gf_node_get_private
    - strlen
    - gf_node_dirty_set
    - gf_inline_set_scene
    - gf_scene_notify_event
    - gf_list_del_item
    - gf_sg_vrml_mf_reset
    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_list_count
    - gf_free
    - gf_malloc
    - gf_inline_is_hardcoded_proto
    - gf_mo_is_same_url
    - gf_mo_del
    - gf_mo_play
    - gf_list_del_item
    - gf_list_enum
    - gf_url_concatenate
    - stricmp
    - strcmp
    - gf_scene_get_media_object
    - gf_sg_vrml_mf_reset
    - gf_list_add
    - gf_list_pop_back
    - gf_mo_get_od_id
    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
    - gf_sg_get_private
    - strrchr
    - gf_node_get_graph
    - gf_node_get_name
    - strcmp
    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: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:514,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:516,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:517,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/compositor/mpeg4_inline.c:519,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/mpeg4_inline.c:519,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:520,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/mpeg4_inline.c:522,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:526,1
    - Dst: gf_strcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:527,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:529,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - storage
    argTypes:
    - M_Storage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 506
    functionDepth: 2
    functionLinenumber: 506
    functionLinenumberEnd: 530
    functionName: storage_get_section
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - gf_free
    - gf_strcat
    - gf_node_get_private
    - gf_sha1_csum
    - gf_dynstrcat
    - strlen
    - gf_strdup
    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:537,1
    - 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: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:547,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:550,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:551,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:552,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:555,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:556,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:557,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/mpeg4_inline.c:558,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:561,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:562,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 3
    argNames:
    - ptr
    - fieldType
    - opt
    argTypes:
    - void*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 567
    functionName: storage_parse_sf
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - FLT2FIX
    - sscanf
    - gf_free
    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:575,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:578,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:579,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:582,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/compositor/mpeg4_inline.c:583,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:584,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:586,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:587,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:591,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:593,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:594,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:600,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:601,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:604,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:606,1
    - Dst: storage_parse_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:607,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/compositor/mpeg4_inline.c:609,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/compositor/mpeg4_inline.c:612,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:614,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/mpeg4_inline.c:615,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/compositor/mpeg4_inline.c:619,1
    - Dst: storage_parse_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:620,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/compositor/mpeg4_inline.c:625,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:627,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 49
    argCount: 1
    argNames:
    - storage
    argTypes:
    - M_Storage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 569
    functionDepth: 11
    functionLinenumber: 569
    functionLinenumberEnd: 628
    functionName: gf_storage_load
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_node_get_field
    - gf_free
    - strchr
    - gf_opts_del_section
    - gf_opts_get_key_count
    - storage_parse_sf
    - gf_net_get_ntp
    - gf_node_changed
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_sg_vrml_mf_reset
    - gf_opts_get_key
    - sscanf
    - storage_get_section
    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:635,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:636,1
    - 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: FIX2FLT
      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: 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: 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: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inline.c:653,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 2
    argNames:
    - ptr
    - fieldType
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 630
    functionDepth: 1
    functionLinenumber: 630
    functionLinenumberEnd: 659
    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: 9
    BranchProfiles: []
    Callsites:
    - Dst: storage_get_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:665,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/compositor/mpeg4_inline.c:668,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/compositor/mpeg4_inline.c:673,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:675,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:676,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:678,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:684,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:687,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/compositor/mpeg4_inline.c:689,1
    - Dst: storage_serialize_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:690,1
    - Dst: gf_sg_vrml_mf_get_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:697,1
    - Dst: storage_serialize_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:698,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:700,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:701,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/mpeg4_inline.c:702,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:703,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/compositor/mpeg4_inline.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inline.c:711,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 40
    argCount: 1
    argNames:
    - storage
    argTypes:
    - M_Storage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 712
      start: 661
    functionDepth: 3
    functionLinenumber: 661
    functionLinenumberEnd: 712
    functionName: gf_storage_save
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_node_get_field
    - storage_serialize_sf
    - gf_free
    - gf_opts_del_section
    - gf_sg_vrml_mf_get_item
    - gf_net_get_ntp
    - storage_get_section
    - gf_sg_vrml_is_sf_field
    - gf_dynstrcat
    - gf_opts_set_key
    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:718,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inline.c:725,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - n
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 715
    functionDepth: 2
    functionLinenumber: 715
    functionLinenumberEnd: 727
    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:731,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - n
    - _route
    argTypes:
    - GF_Node*
    - struct _route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 729
    functionDepth: 12
    functionLinenumber: 729
    functionLinenumberEnd: 732
    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:735,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - n
    - _route
    argTypes:
    - GF_Node*
    - struct _route*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 733
    functionDepth: 4
    functionLinenumber: 733
    functionLinenumberEnd: 736
    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:743,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inline.c:748,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inline.c:749,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inline.c:758,1
    - Dst: gf_storage_load
      Src: /src/gpac/src/compositor/mpeg4_inline.c:759,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/compositor/mpeg4_inline.c:762,1
    - Dst: on_force_save
      Src: /src/gpac/src/compositor/mpeg4_inline.c:764,1
    - Dst: on_force_restore
      Src: /src/gpac/src/compositor/mpeg4_inline.c:765,1
    - Dst: storage_parse_sf
      Src: /src/gpac/src/compositor/mpeg4_inline.c:766,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 738
    functionDepth: 13
    functionLinenumber: 738
    functionLinenumberEnd: 770
    functionName: gf_scene_init_storage
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - on_force_save
    - storage_parse_sf
    - gf_sys_is_cov_mode
    - gf_node_set_private
    - on_force_restore
    - strlen
    - gf_node_set_callback_function
    - gf_list_add
    - gf_storage_load
    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:780,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inline.c:782,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inline.c:784,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inline.c:786,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - sg
    - sensor
    argTypes:
    - GF_SceneGraph*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 776
    functionDepth: 1
    functionLinenumber: 776
    functionLinenumberEnd: 791
    functionName: gf_scene_get_keynav
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inline.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_private
    - gf_list_count
    - gf_list_get
    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_set_blend_mode
    - gf_sc_texture_is_transparent
    - back_use_texture
    - gf_sc_invalidate
    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:
    - mesh_free
    - gf_free
    - gf_list_del
    - gf_node_get_private
    - gf_sc_texture_destroy
    - gf_sg_vrml_mf_reset
    - PreDestroyBindable
    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:
    - mesh_update_bounds
    - gf_cos
    - gf_divfix
    - gf_sqrt
    - gf_vec_norm
    - gf_vec_scale
    - gf_sin
    - COL_TO_RGBA
    - MESH_SET_NORMAL
    - mesh_set_triangle
    - gf_mulfix
    - MESH_MAKE_COL
    - mesh_set_vertex_vx
    - mesh_reset
    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_enable
    - visual_3d_mesh_paint
    - gf_sc_texture_disable
    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:
    - back_use_texture
    - Bindable_SetIsBound
    - gf_sc_texture_play
    - INT2FIX
    - GF_COL_R
    - visual_3d_clear
    - GF_COL_G
    - gf_list_add
    - back_gf_sc_texture_enabled
    - gf_node_dirty_clear
    - gf_list_find
    - gf_sc_invalidate
    - gf_list_get
    - back_draw_texture
    - gf_divfix
    - gf_mx_init
    - gf_node_get_private
    - back_build_dome
    - DestroyBackground
    - visual_3d_set_background_state
    - gf_mx_add_translation
    - visual_3d_enable_antialias
    - visual_3d_mesh_paint
    - new_mesh
    - gf_mx_add_matrix
    - gf_mx_copy
    - gf_mx_add_scale
    - GF_COL_B
    - gf_mx_apply_vec_4x4
    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:
    - mesh_update_bounds
    - new_mesh
    - gf_mx_init
    - GF_LOG
    - gf_sc_texture_setup
    - mesh_set_triangle
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - gf_node_set_callback_function
    - mesh_set_vertex
    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
    - back_check_gf_sc_texture_change
    - gf_node_get_private
    - gf_sg_vrml_field_equal
    - gf_sc_invalidate
    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_node_get_private
    - gf_free
    - gf_sc_unregister_time_node
    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_node_event_out
    - gf_assert
    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:
    - gf_node_get_scene_time
    - FLT2FIX
    - gf_node_event_out
    - timesensor_deactivate
    - gf_node_get_private
    - fmod
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_private
    - timesensor_update_time
    - gf_sc_register_time_node
    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_node_get_private
    - gf_mx2d_apply_coords
    - gf_node_traverse
    - gf_mx_apply_vec
    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_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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:
    - FIX2FLT
    - FLT2FIX
    - gf_divfix
    - gf_sqrt
    - ABS
    - gf_mulfix
    - pow
    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_mx_copy
    - gf_divfix
    - gf_vec_norm
    - gf_sqrt
    - gf_node_get_private
    - gf_acos
    - gf_mx_inverse
    - gf_node_traverse
    - gf_vec_dot
    - gf_mx_apply_vec
    - gf_vec_equal
    - gf_sin
    - snd_compute_gain
    - gf_mulfix
    - gf_vec_len
    - gf_vec_diff
    - gf_vec_cross
    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_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_count
    - gf_font_manager_delete_span
    - gf_list_get
    - drawable_reset_path
    - 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_font_manager_create_span
    - gf_malloc
    - gf_font_manager_set_font
    - gf_divfix
    - gf_font_manager_delete_span
    - parent_node_end_text_group
    - INT2FIX
    - strcmp
    - strlen
    - gf_list_add
    - memcpy
    - strstr
    - parent_node_start_group
    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_font_manager_create_span
    - gf_list_count
    - gf_rect_union
    - gf_font_manager_delete_span
    - gf_font_manager_set_font
    - gf_divfix
    - gf_list_get
    - gf_muldiv
    - INT2FIX
    - gf_mulfix
    - strlen
    - strcmp
    - gf_list_add
    - strstr
    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:
    - strchr
    - strstr
    - strnicmp
    - strlen
    - sscanf
    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: 1
    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:
    - gf_font_spans_draw_3d
    - text_is_3d_material
    - 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:
    - gf_font_spans_draw_2d
    - gf_node_get_private
    - text_get_draw_opt
    - GF_COL_A
    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:
    - drawable_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - INT2FIX
    - build_text
    - 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_node_dirty_get
    - text_clean_paths
    - build_text_split
    - gf_node_dirty_clear
    - text_draw_3d
    - text_check_changes
    - drawable_init_context_mpeg4
    - gf_list_get
    - gf_font_spans_get_selection
    - gf_font_spans_pick
    - text_draw_2d
    - gf_node_get_private
    - gf_list_enum
    - gf_free
    - gf_sc_get_compositor
    - gf_list_del
    - drawable_del_ex
    - GF_COL_A
    - drawable_finalize_sort
    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_LOG
    - GF_SAFEALLOC
    - drawable_init_ex
    - gf_node_set_private
    - gf_list_new
    - 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:
    - mesh_update_bounds
    - gf_list_count
    - gf_mesh_build_aabbtree
    - mesh_extrude_path_ext
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_path_del
    - gf_node_get_private
    - gf_list_get
    - gf_font_span_create_path
    - drawable_reset_path
    - build_text
    - text_clean_paths
    - mesh_reset
    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:
    - memset
    - gf_list_find
    - gf_list_insert
    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_release
    - gf_list_del_item
    - gf_sc_texture_stop
    - gf_mx_v
    - gf_mx_try_lock
    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_release_data
    - gf_mo_stop
    - 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_release_data
    - gf_mo_stop
    - gf_mo_unregister
    - gf_sc_invalidate
    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_sc_texture_release_stream
    - gf_mo_restart
    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_sc_texture_configure_conversion
    - gf_mo_get_visual_info
    - gf_pixel_get_size_info
    - 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_stop_no_unregister
    - gf_sc_texture_release
    - gf_sc_texture_set_data
    - GF_LOG
    - gf_mo_release_data
    - gf_sys_clock
    - gf_sc_invalidate
    - gf_clock_time
    - setup_texture_object
    - gf_mo_fetch_data
    - gf_filter_pid_query_buffer_duration
    - gf_mo_is_muted
    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:
    - compositor_svg_get_gradient_texture
    - it_get_texture
    - gf_node_get_tag
    - mt_get_texture
    - gf_sc_texture_get_handler
    - compositor_mpeg4_get_gradient_texture
    - gf_sc_hardcoded_proto_get_texture_handler
    - compositor_svg_get_image_texture
    - pt_get_texture
    - compositor_get_composite_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_malloc
    - gf_mx_new
    - gf_list_new
    - memset
    - 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_list_del
    - gf_mx_del
    - gf_free
    - gf_mixer_remove_all
    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_mixer_lock
    - gf_list_count
    - gf_free
    - gf_list_get
    - 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_mixer_lock
    - GF_LOG
    - gf_mixer_is_src_present
    - GF_SAFEALLOC
    - gf_list_add
    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_mixer_lock
    - gf_list_count
    - gf_free
    - gf_list_get
    - 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:
    - swap_64
    - TRUNC_FLT_DBL
    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:
    - swap_64
    - TRUNC_FLT_DBL
    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:
    - swap_64
    - TRUNC_FLT_DBL
    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_LOG
    - gf_audio_fmt_bit_depth
    - gf_audio_fmt_sname
    - gf_audio_fmt_is_planar
    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_mixer_lock
    - gf_list_count
    - MixerInput*::src::GetConfig
    - gf_mixer_set_config
    - gf_am_configure_source
    - gf_assert
    - gf_list_get
    - memset
    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
    - get_channel_out_pos
    - gf_assert
    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*::get_sample
    - MIN
    - MixerInput*::src::FetchFrame
    - FIX2INT
    - memset
    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_mixer_lock
    - gf_list_count
    - src::GetConfig
    - gf_assert
    - gf_mixer_reconfig
    - gf_mixer_fetch_input
    - src::GetSpeed
    - src::ReleaseFrame
    - gf_list_get
    - gf_realloc
    - memcpy
    - swap_64
    - src::IsMuted
    - MixerInput*::src::ReleaseFrame
    - swap_32
    - src::GetChannelVolume
    - MixerInput*::src::GetConfig
    - GF_LOG
    - gf_am_configure_source
    - MixerInput*::src::IsMuted
    - src::FetchFrame
    - swap_16
    - MixerInput*::src::GetChannelVolume
    - memset
    - MixerInput*::src::GetSpeed
    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_list_count
    - gf_node_get_tag
    - gf_node_dirty_get
    - gf_assert
    - gf_list_add
    - gf_node_dirty_clear
    - compositor_mpeg4_get_sensor_handler_ex
    - gf_sc_anchor_get_handler
    - gf_sys_clock
    - gf_node_traverse
    - gf_list_new
    - gf_rect_union
    - gf_node_list_get_count
    - group_2d_cache_traverse
    - gf_rect_from_bbox
    - drawable_reset_group_highlight
    - drawable_check_focus_highlight
    - gf_list_reset
    - 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_list_count
    - gf_node_get_tag
    - gf_rect_union
    - group_2d_cache_evaluate
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_sc_anchor_get_handler
    - gf_sys_clock
    - gf_node_traverse
    - drawable_reset_group_highlight
    - drawable_check_focus_highlight
    - gf_list_new
    - gf_node_list_get_child
    - gf_list_add
    - gf_node_list_get_count
    - group_2d_cache_traverse
    - compositor_mpeg4_get_sensor_handler_ex
    - gf_rect_from_bbox
    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_node_get_private
    - gf_free
    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_SAFEALLOC
    - gf_node_set_private
    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: 1
    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_list_count
    - gf_node_get_tag
    - gf_node_dirty_get
    - gf_bbox_from_rect
    - gf_list_add
    - gf_malloc
    - gf_node_dirty_clear
    - get_light_type
    - gf_bbox_union
    - gf_list_get
    - group_3d_traverse
    - memcpy
    - gf_node_traverse
    - gf_list_new
    - gf_node_list_get_count
    - gf_free
    - visual_3d_node_cull
    - gf_list_del
    - GF_SensorHandler*::IsEnabled
    - drawable3d_check_focus_highlight
    - compositor_mpeg4_get_sensor_handler_ex
    - 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:
    - gf_list_del
    - parent_node_reset
    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_list_rem
    - gf_free
    - gf_list_get
    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_last
    - GF_SAFEALLOC
    - gf_list_add
    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:
    - parent_node_end_group
    - gf_node_get_tag
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_list_del
    - parent_node_start_group
    - gf_node_traverse
    - gf_list_new
    - gf_list_add
    - compositor_mpeg4_get_sensor_handler_ex
    - gf_rect_from_bbox
    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_init
    - gf_mx2d_add_translation
    - gf_mx_copy
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_mx_add_translation
    - gf_mx2d_add_matrix
    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_mx_add_matrix
    - gf_mx2d_pre_multiply
    - gf_mx_copy
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_mx_from_mx2d
    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:
    - get_sync_reference
    - gf_node_get_attribute_by_tag
    - gf_scene_get_media_object
    - gf_sg_find_node_by_name
    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_sg_get_private
    - gf_node_get_graph
    - gf_scene_get_media_object_ex
    - get_sync_reference
    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_malloc
    - gf_list_new
    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
    - gf_mo_update_caps
    - compositor_get_srdmap_size
    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_mo_update_caps
    - gf_filter_pid_get_packet
    - GF_LOG
    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_filter_pid_get_property
    - gf_list_count
    - compositor_get_srdmap_size
    - GF_LOG
    - gf_sg_reset
    - gf_prop_matrix_decompose
    - memset
    - gf_sc_send_event
    - gf_audio_fmt_bit_depth
    - gf_list_get
    - UPDATE_CAP
    - gf_scene_regenerate
    - gf_audio_fmt_is_planar
    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_timestamp_to_clocktime
    - gf_scene_adjust_timestamp_for_addon
    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_filter_pck_enum_properties
    - atoi
    - gf_bs_read_u64
    - GF_4CC
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - strlen
    - gf_bs_read_u32
    - memset
    - gf_scene_register_associated_media
    - strncmp
    - gf_scene_notify_associated_media_timeline
    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_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: 123
    EdgeCount: 123
    ICount: 328
    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_try_pull
    - gf_filter_pck_get_duration
    - gf_clock_time
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - gf_clock_to_media_time
    - gf_net_get_ntp_diff_ms
    - gf_filter_pid_first_packet_is_empty
    - gf_clock_is_started
    - gf_clock_diff
    - gf_odm_on_eos
    - gf_timestamp_rescale
    - gf_odm_check_buffering
    - gf_filter_pck_get_data
    - gf_net_get_utc
    - gf_fatal_assert
    - gf_filter_pid_get_first_packet_cts
    - gf_filter_pck_unref
    - mediasensor_update_timing
    - gf_filter_pck_ref
    - gf_filter_pck_get_cts
    - gf_filter_pid_get_info_str
    - convert_ts_to_ms
    - ABS
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet_count
    - check_temi
    - gf_scene_notify_event
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_odm_signal_eos_reached
    - gf_filter_release_property
    - gf_filter_pck_get_timescale
    - gf_odm_check_clock_mediatime
    - FIX2INT
    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: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/compositor/media_object.c:1054,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:1058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/media_object.c:1060,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:1060,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 3
    argNames:
    - mo
    - nb_bytes
    - drop_mode
    argTypes:
    - GF_MediaObject*
    - u32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1017
    functionDepth: 3
    functionLinenumber: 1017
    functionLinenumberEnd: 1065
    functionName: gf_mo_release_data
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_filter_pck_is_blocking_ref
    - 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:1073,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:1075,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - mo
    - obj_time
    argTypes:
    - GF_MediaObject*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1067
    functionDepth: 3
    functionLinenumber: 1067
    functionLinenumberEnd: 1081
    functionName: gf_mo_get_object_time
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_clock_real_time
    - gf_clock_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:1118,1
    - Dst: gf_odm_start
      Src: /src/gpac/src/compositor/media_object.c:1120,1
    - Dst: mediacontrol_restart
      Src: /src/gpac/src/compositor/media_object.c:1124,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: 1129
      start: 1083
    functionDepth: 2
    functionLinenumber: 1083
    functionLinenumberEnd: 1129
    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:1146,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/compositor/media_object.c:1152,1
    - Dst: gf_odm_stop_or_destroy
      Src: /src/gpac/src/compositor/media_object.c:1155,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 1
    argNames:
    - _mo
    argTypes:
    - GF_MediaObject**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1164
      start: 1131
    functionDepth: 5
    functionLinenumber: 1131
    functionLinenumberEnd: 1164
    functionName: gf_mo_stop
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 4
    functionsReached:
    - gf_odm_disconnect
    - gf_filter_pck_unref
    - gf_odm_stop_or_destroy
    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:1172,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/media_object.c:1176,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/media_object.c:1176,1
    - Dst: mediacontrol_restart
      Src: /src/gpac/src/compositor/media_object.c:1185,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1166
    functionDepth: 1
    functionLinenumber: 1166
    functionLinenumberEnd: 1186
    functionName: gf_mo_restart
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_odm_shares_clock
    - gf_odm_get_mediacontrol
    - gf_odm_get_media_clock
    - mediacontrol_restart
    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:1204,1
    - Dst: strnicmp
      Src: /src/gpac/src/compositor/media_object.c:1207,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/media_object.c:1209,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/media_object.c:1211,1
    - Dst: sscanf
      Src: /src/gpac/src/compositor/media_object.c:1218,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/media_object.c:1222,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1223,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/media_object.c:1225,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 45
    argCount: 1
    argNames:
    - url
    argTypes:
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1188
    functionDepth: 0
    functionLinenumber: 1188
    functionLinenumberEnd: 1242
    functionName: gf_mo_get_od_id
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - sprintf
    - gf_free
    - stricmp
    - strnicmp
    - strlen
    - gf_strdup
    - sscanf
    linkageType: ''
    returnType: u32
    signature: u32 gf_mo_get_od_id(MFURL *url)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/media_object.c:1253,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/media_object.c:1255,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/media_object.c:1268,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1271,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/media_object.c:1277,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/media_object.c:1277,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/media_object.c:1283,1
    - Dst: gf_odm_find_segment
      Src: /src/gpac/src/compositor/media_object.c:1287,1
    - Dst: gf_scene_get_root_scene
      Src: /src/gpac/src/compositor/media_object.c:1292,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/media_object.c:1294,1
    - Dst: gf_filter_is_supported_source
      Src: /src/gpac/src/compositor/media_object.c:1296,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1308,1
    - Dst: strncmp
      Src: /src/gpac/src/compositor/media_object.c:1310,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/media_object.c:1317,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/compositor/media_object.c:1321,1
    - Dst: strrchr
      Src: /src/gpac/src/compositor/media_object.c:1322,1
    - Dst: stricmp
      Src: /src/gpac/src/compositor/media_object.c:1324,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: 1327
      start: 1245
    functionDepth: 2
    functionLinenumber: 1245
    functionLinenumberEnd: 1327
    functionName: gf_mo_is_same_url
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_strcpy
    - gf_sg_find_node_by_name
    - gf_odm_find_segment
    - gf_filter_is_supported_source
    - gf_scene_get_root_scene
    - stricmp
    - gf_list_enum
    - strrchr
    - strlen
    - strncmp
    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:1335,1
    - Dst: gf_mo_is_same_url
      Src: /src/gpac/src/compositor/media_object.c:1337,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - mo
    - url
    argTypes:
    - GF_MediaObject*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1346
      start: 1329
    functionDepth: 3
    functionLinenumber: 1329
    functionLinenumberEnd: 1346
    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:1353,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1348
    functionDepth: 1
    functionLinenumber: 1348
    functionLinenumberEnd: 1355
    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:1362,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1357
    functionDepth: 1
    functionLinenumber: 1357
    functionLinenumberEnd: 1364
    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:1385,1
    - Dst: gf_odm_set_speed
      Src: /src/gpac/src/compositor/media_object.c:1394,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 2
    argNames:
    - mo
    - speed
    argTypes:
    - GF_MediaObject*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1366
    functionDepth: 2
    functionLinenumber: 1366
    functionLinenumberEnd: 1395
    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: 1401
      start: 1397
    functionDepth: 0
    functionLinenumber: 1397
    functionLinenumberEnd: 1401
    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: 1407
      start: 1403
    functionDepth: 0
    functionLinenumber: 1403
    functionLinenumberEnd: 1407
    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: 1412
      start: 1408
    functionDepth: 0
    functionLinenumber: 1408
    functionLinenumberEnd: 1412
    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: 1417
      start: 1414
    functionDepth: 0
    functionLinenumber: 1414
    functionLinenumberEnd: 1417
    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:1429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - mo
    - in_speed
    argTypes:
    - GF_MediaObject*
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1419
    functionDepth: 1
    functionLinenumber: 1419
    functionLinenumberEnd: 1435
    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:1448,1
    - Dst: gf_odm_get_media_clock
      Src: /src/gpac/src/compositor/media_object.c:1453,1
    - Dst: gf_odm_shares_clock
      Src: /src/gpac/src/compositor/media_object.c:1454,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - mo
    - in_loop
    argTypes:
    - GF_MediaObject*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1437
    functionDepth: 1
    functionLinenumber: 1437
    functionLinenumberEnd: 1464
    functionName: gf_mo_get_loop
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 2
    functionsReached:
    - gf_odm_shares_clock
    - gf_odm_get_mediacontrol
    - gf_odm_get_media_clock
    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: 1472
      start: 1466
    functionDepth: 0
    functionLinenumber: 1466
    functionLinenumberEnd: 1472
    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:1491,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1474
    functionDepth: 1
    functionLinenumber: 1474
    functionLinenumberEnd: 1503
    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: 1513
      start: 1505
    functionDepth: 0
    functionLinenumber: 1505
    functionLinenumberEnd: 1513
    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:1518,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1520
      start: 1515
    functionDepth: 1
    functionLinenumber: 1515
    functionLinenumberEnd: 1520
    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:1539,1
    - Dst: gf_clock_time
      Src: /src/gpac/src/compositor/media_object.c:1540,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1522
    functionDepth: 3
    functionLinenumber: 1522
    functionLinenumberEnd: 1544
    functionName: gf_mo_is_done
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_odm_get_media_clock
    - gf_clock_time
    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:1552,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - mo
    - ms_drift
    argTypes:
    - GF_MediaObject*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1553
      start: 1547
    functionDepth: 1
    functionLinenumber: 1547
    functionLinenumberEnd: 1553
    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: 1564
      start: 1555
    functionDepth: 0
    functionLinenumber: 1555
    functionLinenumberEnd: 1564
    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:1579,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:1581,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:1582,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/media_object.c:1589,1
    - Dst: strcmp
      Src: /src/gpac/src/compositor/media_object.c:1590,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1596
      start: 1566
    functionDepth: 1
    functionLinenumber: 1566
    functionLinenumberEnd: 1596
    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: 1603
      start: 1598
    functionDepth: 0
    functionLinenumber: 1598
    functionLinenumberEnd: 1603
    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:1612,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/media_object.c:1613,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1606
    functionDepth: 3
    functionLinenumber: 1606
    functionLinenumberEnd: 1618
    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_dom_event_get_target_from_node
    - gf_list_add
    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:1623,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - mo
    - i
    argTypes:
    - GF_MediaObject*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1625
      start: 1620
    functionDepth: 1
    functionLinenumber: 1620
    functionLinenumberEnd: 1625
    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:1631,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - mo
    - i
    argTypes:
    - GF_MediaObject*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1635
      start: 1627
    functionDepth: 1
    functionLinenumber: 1627
    functionLinenumberEnd: 1635
    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:1640,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:1642,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - mo
    - node
    argTypes:
    - GF_MediaObject*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1637
    functionDepth: 1
    functionLinenumber: 1637
    functionLinenumberEnd: 1648
    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:1654,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/media_object.c:1656,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/media_object.c:1658,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - mo
    - node
    argTypes:
    - GF_MediaObject*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1650
    functionDepth: 1
    functionLinenumber: 1650
    functionLinenumberEnd: 1665
    functionName: gf_mo_event_target_remove_by_node
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_list_del_item
    - gf_list_get
    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: 1674
      start: 1667
    functionDepth: 0
    functionLinenumber: 1667
    functionLinenumberEnd: 1674
    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:1679,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1681
      start: 1676
    functionDepth: 1
    functionLinenumber: 1676
    functionLinenumberEnd: 1681
    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:1685,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1683
    functionDepth: 1
    functionLinenumber: 1683
    functionLinenumberEnd: 1686
    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:1691,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1692
      start: 1688
    functionDepth: 1
    functionLinenumber: 1688
    functionLinenumberEnd: 1692
    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:1696,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/media_object.c:1696,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/media_object.c:1697,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/compositor/media_object.c:1698,1
    - Dst: gf_sg_mfurl_del
      Src: /src/gpac/src/compositor/media_object.c:1699,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/media_object.c:1700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - mo
    argTypes:
    - GF_MediaObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1701
      start: 1694
    functionDepth: 2
    functionLinenumber: 1694
    functionLinenumberEnd: 1701
    functionName: gf_mo_del
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_pck_unref
    - gf_list_del
    - gf_assert
    - gf_sg_mfurl_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:1710,1
    - Dst: gf_sg_get_scene_size_info
      Src: /src/gpac/src/compositor/media_object.c:1723,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - mo
    - vr_info
    argTypes:
    - GF_MediaObject*
    - GF_MediaObjectVRInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1728
      start: 1704
    functionDepth: 1
    functionLinenumber: 1704
    functionLinenumberEnd: 1728
    functionName: gf_mo_get_srd_info
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_sg_get_scene_size_info
    - memset
    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:1738,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/media_object.c:1740,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - mo
    - quality_degradation
    argTypes:
    - GF_MediaObject*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1744
      start: 1731
    functionDepth: 1
    functionLinenumber: 1731
    functionLinenumberEnd: 1744
    functionName: gf_mo_hint_quality_degradation
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    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:1754,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/media_object.c:1765,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: 1767
      start: 1746
    functionDepth: 1
    functionLinenumber: 1746
    functionLinenumberEnd: 1767
    functionName: gf_mo_hint_visible_rect
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    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:1777,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/compositor/media_object.c:1785,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: 1787
      start: 1769
    functionDepth: 1
    functionLinenumber: 1769
    functionLinenumberEnd: 1787
    functionName: gf_mo_hint_gaze
    functionSourceFile: /src/gpac/src/compositor/media_object.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    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_ui_event
    - gf_filter_send_gf_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_node_get_attribute_by_tag
    - gf_url_concatenate
    - gf_sg_get_private
    - gf_node_get_parent
    - gf_node_get_graph
    - gf_strdup
    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_url_concatenate
    - gf_scene_resolve_xlink
    - gf_clock_set_speed
    - gf_clock_resume
    - gf_opts_set_key
    - gf_filter_send_gf_event
    - gf_scene_restart_dynamic
    - gf_sg_get_private
    - gf_node_get_graph
    - gf_filter_get_download_manager
    - gf_filter_relocate_url
    - gf_node_get_private
    - gf_clock_pause
    - gf_sg_get_root_node
    - gf_scene_message_ex
    - gf_scene_get_root_scene
    - gf_sc_script_action
    - gf_strdup
    - gf_opts_get_key
    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_set_private
    - gf_sg_set_proto_loader
    - gf_assert
    - GF_SAFEALLOC
    - gf_sg_new
    - gf_list_new
    - gf_sg_new_subscene
    - gf_sg_set_node_callback
    - gf_sg_set_script_action
    - gf_sg_set_scene_time_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_list_count
    - gf_free
    - gf_sc_node_destroy
    - gf_list_del
    - gf_mo_del
    - gf_scene_ns_del
    - gf_assert
    - gf_node_set_private
    - gf_scene_reset_urls
    - gf_sg_del
    - gf_list_get
    - gf_sg_vrml_mf_reset
    - gf_list_pop_back
    - 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_list_count
    - gf_node_get_tag
    - gf_sc_node_destroy
    - gf_odm_disconnect
    - gf_mo_event_target_reset
    - gf_node_set_private
    - gf_sc_set_scene
    - gf_mo_event_target_count
    - gf_mo_event_target_get
    - gf_list_get
    - gf_event_target_get_node
    - gf_scene_reset_addons
    - InputSensorModified
    - gf_sg_reset
    - gf_mo_del
    - gf_list_enum
    - gf_storage_save
    - gf_free
    - GF_LOG
    - gf_scene_reset_urls
    - gf_mo_event_target_remove_by_index
    - gf_sg_vrml_mf_reset
    - gf_list_rem
    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_LOG
    - stricmp
    - gf_odm_setup_remote_object
    - gf_odm_new
    - gf_list_add
    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_filter_pck_unref
    - GF_LOG
    - gf_mo_del
    - gf_list_enum
    - gf_list_del_item
    - stricmp
    - gf_sc_mo_destroyed
    - gf_scene_reinsert_object
    - gf_mo_event_target_get
    - gf_node_set_private
    - gf_event_target_get_node
    - gf_sg_vrml_mf_reset
    - gf_list_rem
    - gf_mo_stop
    - gf_mo_event_target_count
    - gf_mo_event_target_remove_by_index
    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_list_enum
    - gf_filter_pid_query_buffer_duration
    - gf_odm_service_media_event_with_download
    - gf_sc_send_event
    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_sg_get_scene_size_info
    - gf_node_get_tag
    - gf_dom_event_fire
    - gf_sg_get_root_node
    - INT2FIX
    - gf_mo_event_target_get
    - gf_event_target_get_node
    - memset
    - gf_mo_event_target_count
    - gf_sc_queue_dom_event
    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_sg_get_scene_size_info
    - gf_event_target_get_node
    - strchr
    - gf_free
    - gf_sc_set_size
    - gf_sg_get_root_node
    - gf_sc_invalidate
    - gf_node_dirty_parents
    - gf_mo_event_target_get
    - gf_sc_set_scene
    - gf_strdup
    - gf_mo_event_target_count
    - gf_scene_notify_event
    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:
    - is_match_obj_type
    - gf_list_count
    - gf_mo_is_same_url
    - gf_mo_event_target_add_node
    - gf_mo_new
    - gf_mo_event_target_reset
    - gf_mo_del
    - gf_list_enum
    - gf_scene_insert_object
    - gf_list_find
    - gf_list_del_item
    - gf_sg_get_private
    - gf_mo_event_target_find_by_node
    - gf_node_get_graph
    - gf_list_get
    - gf_list_add
    - gf_mo_get_od_id
    - gf_sg_vrml_copy_mfurl
    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_sc_set_size
    - gf_odm_disconnect
    - gf_scene_force_size_to_video
    - gf_mo_new
    - GF_LOG
    - gf_list_enum
    - gf_sc_invalidate
    - gf_odm_set_speed
    - gf_scene_get_video_size
    - gf_mo_update_caps
    - gf_list_add
    - gf_odm_start
    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_odm_get_media_clock
    - gf_node_event_out
    - gf_odm_shares_clock
    - gf_list_enum
    - gf_sc_send_event
    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_odm_shares_clock
    - gf_list_enum
    - gf_odm_get_media_clock
    - gf_scene_notify_event
    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:
    - stricmp
    - gf_list_enum
    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_del_item
    - gf_list_find
    - gf_list_add
    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:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_scene_force_size
    - INT2FIX
    - gf_scene_get_video_size
    - gf_sg_find_node_by_name
    - gf_node_changed
    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:
    - gf_sg_get_scene_size_info
    - gf_scene_set_addon_layout_info
    - gf_divfix
    - INT2FIX
    - IS_CheckExistingObject
    - gf_scene_get_video_size
    - gf_sg_find_node_by_name
    - gf_node_dirty_set
    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_new
    - gf_node_set_id
    - gf_sg_get_next_available_node_id
    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_filter_pid_get_property
    - gf_list_count
    - gf_odm_stop
    - gf_scene_force_size
    - gf_free
    - gf_sg_vrml_mf_reset
    - gf_sg_vrml_mf_append
    - gf_scene_get_video_size
    - gf_list_get
    - gf_strdup
    - strcmp
    - gf_node_changed
    - gf_sg_set_scene_size_info
    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_count
    - gf_sg_find_node_by_name
    - GF_FEVT_INIT
    - gf_filter_pid_get_property_str
    - FIX2INT
    - gf_list_get
    - 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_set_id
    - gf_malloc
    - GF_LOG
    - gf_node_init
    - gf_sg_get_next_available_node_id
    - gf_sg_proto_create_instance
    - gf_sg_proto_new
    - gf_strdup
    - gf_sg_proto_get_extern_url
    - gf_sg_find_proto
    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:
    - is_create_node
    - transform2d_set_untransform
    - 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_list_count
    - gf_assert
    - INT2FIX
    - gf_sc_set_scene
    - gf_scene_get_time
    - gf_sg_get_scene_size_info
    - gf_sg_set_root_node
    - create_movie
    - gf_sc_invalidate
    - gf_list_get
    - gf_sg_find_node_by_name
    - gf_node_list_add_child
    - IS_UpdateVideoPos
    - set_media_url
    - gf_list_enum
    - gf_sg_get_root_node
    - load_vr_proto_node
    - gf_sg_route_new_to_callback
    - gf_scene_notify_event
    - sprintf
    - gf_free
    - is_create_node
    - GF_LOG
    - gf_sc_send_event
    - gf_node_register
    - gf_strdup
    - memset
    - gf_node_changed
    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_vrml_mf_reset
    - gf_sg_find_node_by_name
    - memset
    - gf_scene_register_associated_media
    - 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_node_get_scene_time
    - gf_free
    - gf_sg_vrml_mf_reset
    - gf_node_get_field_by_name
    - gf_node_changed
    - is_odm_url
    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_sg_vrml_mf_append
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - gf_node_get_field_by_name
    - 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_odm_disconnect
    - GF_LOG
    - gf_odm_setup_object
    - gf_list_enum
    - gf_assert
    - gf_clock_media_time
    - gf_scene_regenerate
    - gf_sc_lock
    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_filter_pid_get_property
    - gf_odm_stop
    - gf_sg_vrml_field_copy
    - gf_free
    - gf_scene_force_size_to_video
    - GF_FEVT_INIT
    - gf_strdup
    - gf_filter_pid_send_event
    - check_odm_deactivate
    - gf_clock_media_time
    - gf_sg_vrml_mf_alloc
    - gf_sg_find_node_by_name
    - gf_scene_set_service_id
    - gf_odm_play
    - gf_node_changed
    - gf_scene_get_time
    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:
    - gf_sg_vrml_field_copy
    - gf_scene_regenerate
    - gf_sys_clock
    - memset
    - odm_activate
    - gf_clock_media_time
    - gf_sg_find_node_by_name
    - gf_sg_vrml_mf_reset
    - odm_deactivate
    - gf_node_changed
    - gf_scene_notify_event
    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:
    - INT2FIX
    - IS_CheckExistingObject
    - gf_scene_get_video_size
    - gf_sg_find_node_by_name
    - gf_node_dirty_set
    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_clock_time_absolute
    - gf_list_count
    - gf_clock_time
    - gf_scene_get_time
    - gf_list_add
    - gf_scene_restart_dynamic
    - gf_sg_find_node_by_name
    - gf_clock_set_time
    - gf_clock_reset
    - gf_odm_stop
    - gf_sys_clock
    - gf_list_enum
    - gf_list_new
    - gf_odm_start
    - gf_odm_shares_clock
    - GF_LOG
    - gf_list_del
    - gf_scene_select_main_addon
    - gf_node_changed
    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_filter_pid_get_property
    - gf_sc_set_size
    - gf_sg_get_scene_size_info
    - gf_sg_use_pixel_metrics
    - gf_sc_set_scene_size
    - GF_LOG
    - memset
    - INT2FIX
    - MAX
    - gf_sc_set_scene
    - gf_sg_find_node_by_name
    - IS_UpdateVideoPos
    - gf_filter_get_ipid
    - gf_scene_regenerate
    - gf_node_changed
    - gf_sg_set_scene_size_info
    - gf_scene_notify_event
    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_filter_ui_event
    - stricmp
    - gf_sg_get_private
    - gf_node_get_graph
    - gf_sg_vrml_mf_alloc
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - gf_mo_event_target_enum_node
    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_sg_get_private
    - gf_node_get_graph
    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_sg_get_private
    - gf_node_get_graph
    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_strdup
    - gf_sg_get_private
    - gf_free
    - gf_node_get_graph
    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_private
    - gf_node_get_tag
    - gf_sg_get_root_node
    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_scene_check_clocks
    - gf_list_enum
    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_sg_get_private
    - gf_scene_is_over
    - gf_list_count
    - gf_list_get
    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_sg_get_private
    - gf_list_enum
    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:
    - is_create_node
    - gf_sc_node_destroy
    - gf_sg_set_root_node
    - gf_sg_reset
    - gf_sg_vrml_mf_reset
    - gf_url_concatenate
    - gf_sc_send_event
    - gf_url_colon_suffix
    - gf_scene_attach_to_compositor
    - gf_sg_vrml_mf_append
    - gf_node_register
    - gf_sc_set_option
    - gf_node_list_add_child
    - gf_scene_get_time
    - strstr
    - gf_sg_set_scene_size_info
    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:
    - strchr
    - is_create_node
    - gf_sc_node_destroy
    - gf_sg_set_root_node
    - gf_sqrt
    - gf_sg_reset
    - gf_url_concatenate
    - INT2FIX
    - gf_sc_send_event
    - gf_scene_attach_to_compositor
    - gf_sg_vrml_mf_append
    - gf_ceil
    - gf_node_register
    - gf_node_list_add_child
    - gf_sg_vrml_mf_reset
    - strstr
    - gf_sg_set_scene_size_info
    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_odm_disconnect
    - gf_free
    - gf_scene_remove_object
    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_scene_reset_addon
    - gf_list_rem_last
    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_get_media_object_ex
    - gf_scene_select_object
    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_list_count
    - gf_odm_disconnect
    - GF_SAFEALLOC
    - gf_scene_get_time
    - gf_list_add
    - load_associated_media
    - gf_list_get
    - gf_sys_is_test_mode
    - gf_scene_reset_addon
    - strcmp
    - strlen
    - gf_scene_toggle_addons
    - gf_scene_notify_event
    - gf_free
    - GF_LOG
    - gf_sc_send_event
    - gf_strdup
    - memset
    - gf_scene_remove_object
    - 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_count
    - gf_scene_reset_addon
    - GF_LOG
    - GF_FEVT_INIT
    - gf_assert
    - gf_scene_set_timeshift_depth
    - gf_list_get
    - gf_filter_pid_send_event
    - load_associated_media
    - 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_odm_stop
    - GF_LOG
    - gf_list_del
    - gf_list_enum
    - gf_assert
    - gf_list_new
    - gf_list_add
    - gf_odm_start
    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_filter_pid_send_event
    - gf_scene_switch_quality
    - GF_FEVT_INIT
    - gf_list_enum
    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_node_get_private
    - group_2d_traverse
    - gf_free
    - 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_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    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:
    - gf_node_get_private
    - group_3d_delete
    - group_3d_traverse
    - 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:
    - gf_node_set_callback_function
    - group_3d_new
    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:
    - gf_node_set_callback_function
    - group_3d_new
    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:
    - gf_node_get_scene_time
    - gf_node_event_out
    - gf_node_get_private
    - group_3d_delete
    - gf_node_traverse
    - gf_sc_check_focus_upon_destroy
    - 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:
    - gf_node_set_callback_function
    - group_3d_new
    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_node_get_private
    - gf_free
    - 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_SAFEALLOC
    - gf_node_set_private
    - gf_mx_init
    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_mx_apply_bbox
    - DestroyTransform
    - gf_mx_add_matrix
    - gf_node_dirty_get
    - gf_mx_copy
    - gf_mx_init
    - gf_mx_add_rotation
    - gf_node_get_private
    - gf_mx_add_scale
    - group_3d_traverse
    - gf_mx_add_translation
    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:
    - gf_node_set_callback_function
    - NewTransformStack
    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_acos
    - gf_mx_inverse
    - gf_mx_apply_vec
    - gf_vec_rev
    - gf_vec_diff
    - gf_vec_cross
    - group_3d_traverse
    - gf_mx_init
    - gf_node_get_private
    - gf_vec_scale
    - gf_mx_rotation_matrix_from_vectors
    - gf_vec_len
    - gf_mx_rotate_vector
    - DestroyTransform
    - gf_mx_add_matrix
    - gf_mx_copy
    - gf_vec_norm
    - gf_mx_add_rotation
    - gf_vec_dot
    - gf_vec_add
    - gf_mx_apply_bbox
    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:
    - gf_node_set_callback_function
    - NewTransformStack
    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_node_get_tag
    - gf_free
    - gf_mx_copy
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_private
    - gf_mx_inverse
    - gf_node_traverse
    - gf_node_list_get_child
    - gf_sc_check_focus_upon_destroy
    - gf_mx_apply_vec
    - gf_vec_len
    - gf_vec_diff
    - gf_node_list_get_count
    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_callback_function
    - gf_node_set_private
    - 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_list_enum
    - gf_list_del_item
    - compositor_compositetexture_sensor_delete
    - gf_node_get_graph
    - gf_sg_unregister_event_type
    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_node_get_graph
    - gf_sg_register_event_type
    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_node_get_tag
    - gf_free
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_list_del
    - gf_node_get_private
    - group_2d_traverse
    - gf_sc_check_focus_upon_destroy
    - mpeg4_sensor_deleted
    - strlen
    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_scene_process_anchor
    - gf_node_get_graph
    - gf_sg_find_node_by_name
    - Bindable_SetSetBind
    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_node_get_private
    - gf_sc_send_event
    - strlen
    - anchor_activation
    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:
    - gf_node_get_private
    - anchor_activation
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_private
    - mpeg4_sensor_deleted
    - gf_free
    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_mx_copy
    - gf_node_get_private
    - gf_mx_apply_ray
    - compositor_get_2d_plane_intersection
    - gf_atan2
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_private
    - mpeg4_sensor_deleted
    - gf_free
    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_sg_use_pixel_metrics
    - gf_node_event_out
    - gf_mx_copy
    - gf_divfix
    - gf_node_get_private
    - gf_mx_apply_ray
    - compositor_get_2d_plane_intersection
    - INT2FIX
    - gf_node_get_graph
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_private
    - mpeg4_sensor_deleted
    - gf_free
    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_node_get_scene_time
    - gf_node_event_out
    - prox2D_is_in_sensor
    - gf_node_get_private
    - gf_assert
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_private
    - mpeg4_sensor_deleted
    - gf_free
    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_get_scene_time
    - gf_node_event_out
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_scene_time
    - gf_mx_copy
    - gf_node_event_out
    - gf_mx_inverse
    - gf_mx_apply_vec
    - gf_vec_diff
    - gf_vec_add
    - camera_get_orientation
    - gf_bbox_refresh
    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_node_get_private
    - mpeg4_sensor_deleted
    - gf_free
    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_sg_use_pixel_metrics
    - gf_plane_intersect_line
    - gf_node_event_out
    - gf_mx_copy
    - gf_divfix
    - gf_node_get_private
    - gf_vec_dot
    - gf_mx_apply_ray
    - INT2FIX
    - gf_node_get_graph
    - gf_vec_diff
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_private
    - mpeg4_sensor_deleted
    - gf_free
    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_plane_intersect_line
    - gf_node_event_out
    - gf_mx_copy
    - gf_vec_norm
    - fabs
    - gf_node_get_private
    - gf_acos
    - gf_vec_dot
    - gf_mx_apply_ray
    - gf_mx_apply_vec
    - ABS
    - gf_mulfix
    - gf_vec_len
    - gf_vec_diff
    - gf_vec_cross
    - gf_vec_add
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_private
    - mpeg4_sensor_deleted
    - gf_free
    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_invfix
    - gf_asin
    - gf_ray_hit_sphere
    - gf_node_event_out
    - gf_vec_norm
    - gf_node_get_private
    - gf_vec_cross
    - gf_vec_scale
    - gf_mx_apply_ray
    - gf_vec_dot
    - gf_mx_apply_vec
    - gf_quat_multiply
    - gf_vec_len
    - gf_closest_point_to_line
    - gf_quat_to_rotation
    - gf_quat_from_rotation
    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_LOG
    - GF_SAFEALLOC
    - 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_node_get_scene_time
    - visual_3d_node_cull
    - gf_node_event_out
    - gf_vec_scale
    - gf_vec_diff
    - gf_vec_add
    - gf_bbox_refresh
    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:
    - sphere_get_handler
    - gf_node_get_tag
    - touch_sensor_get_handler
    - gf_sc_anchor_get_handler
    - GF_SensorHandler*::IsEnabled
    - cylinder_sensor_get_handler
    - proximity_sensor2d_get_handler
    - plane_sensor2d_get_handler
    - disc_sensor_get_handler
    - plane_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: gf_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: gf_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: gf_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: gf_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: gf_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_strcpy
    - sprintf
    - gf_free
    - gf_node_event_out
    - gf_node_get_private
    - strcmp
    - gf_strdup
    - gf_opts_get_key
    - sscanf
    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
    - envtest_evaluate
    - gf_list_get
    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:
    - compositor_envtest_modified
    - gf_sys_is_cov_mode
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_list_add
    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_is_started
    - gf_mo_is_buffering
    - GF_LOG
    - gf_mo_adjust_clock
    - gf_mo_release_data
    - gf_mo_get_object_time
    - gf_sc_invalidate
    - ABS
    - gf_mo_fetch_data
    - FIX2INT
    - gf_mo_get_current_speed
    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_unregister
    - gf_sc_audio_stop
    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_mixer_lock
    - gf_mo_unregister
    - gf_mo_stop
    - gf_assert
    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_sc_ar_remove_src
    - gf_sc_invalidate
    - GF_TraverseState*::audio_parent::add_source
    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_ar_remove_src
    - gf_sc_invalidate
    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:
    - glGetString
    - glGetIntegerv
    - GF_LOG
    - gf_file_exists
    - memset
    - gf_opts_get_key
    - CHECK_GL_EXT
    - gf_opts_set_key
    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:
    - glGetShaderiv
    - gf_free
    - gf_malloc
    - GF_LOG
    - glShaderSource
    - glGetInfoLogARB
    - glGetShaderInfoLog
    - strlen
    - glCompileShader
    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
    - gf_file_load_data
    - GF_LOG
    - glDeleteShader
    - glCreateShader
    - visual_3d_compile_shader
    - gf_error_to_string
    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:417,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:420,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:421,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:425,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:429,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:434,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:435,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:440,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:443,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:449,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:452,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:452,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:456,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:459,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:461,1
    - Dst: gf_gl_txw_insert_fragment_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:464,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:469,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:472,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:474,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:476,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:477,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:481,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:482,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:483,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 4
    argNames:
    - src_path
    - shader_type
    - flags
    - pixfmt
    argTypes:
    - char*
    - u32
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 412
    functionDepth: 2
    functionLinenumber: 412
    functionLinenumberEnd: 486
    functionName: visual_3d_shader_with_flags
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_gl_txw_insert_fragment_shader
    - gf_free
    - gf_file_load_data
    - GF_LOG
    - glDeleteShader
    - glCreateShader
    - gf_dynstrcat
    - gf_strdup
    - strstr
    - visual_3d_compile_shader
    - gf_error_to_string
    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:496,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:500,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:501,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:506,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:507,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:510,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:511,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:518,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:519,1
    - Dst: glCreateShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:522,1
    - Dst: visual_3d_compile_shader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:523,1
    - Dst: visual_3d_shader_from_source_file
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:527,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:534,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:535,1
    - Dst: glLinkProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:536,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:538,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:542,1
    - Dst: glGetProgramInfoLog
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:544,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:547,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:551,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 58
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 488
    functionDepth: 3
    functionLinenumber: 488
    functionLinenumberEnd: 555
    functionName: visual_3d_init_stereo_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - visual_3d_shader_from_source_file
    - GL_CHECK_ERR
    - glAttachShader
    - glGetProgramiv
    - GF_LOG
    - glLinkProgram
    - glCreateProgram
    - glCreateShader
    - glGetProgramInfoLog
    - visual_3d_compile_shader
    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: 558
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 558
    functionName: DEL_SHADER
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    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: 559
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 559
    functionName: DEL_PROGRAM
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_PROGRAM(_a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - glsl_program
    - uniform_name
    argTypes:
    - GF_SHADERID
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 570
    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:577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:579,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - glsl_program
    - attrib_name
    argTypes:
    - GF_SHADERID
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 575
    functionDepth: 1
    functionLinenumber: 575
    functionLinenumberEnd: 582
    functionName: gf_glGetAttribLocation
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGetAttribLocation
    - GF_LOG
    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:590,1
    - Dst: glValidateProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:591,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:592,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:593,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:594,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:595,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:596,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:597,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:598,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:599,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - progObj
    argTypes:
    - GF_SHADERID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 587
    functionDepth: 1
    functionLinenumber: 587
    functionLinenumberEnd: 601
    functionName: gf_glQueryProgram
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - printf
    - glValidateProgram
    - GL_CHECK_ERR
    - 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:608,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:610,1
    - Dst: glGetUniformfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:613,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:614,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:616,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - progObj
    - name
    - index
    argTypes:
    - GF_SHADERID
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 603
    functionDepth: 1
    functionLinenumber: 603
    functionLinenumberEnd: 617
    functionName: gf_glQueryUniform
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - glGetUniformfv
    - 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:625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:627,1
    - Dst: glGetVertexAttribfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:633,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: 634
      start: 620
    functionDepth: 1
    functionLinenumber: 620
    functionLinenumberEnd: 634
    functionName: gf_glQueryAttrib
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGetAttribLocation
    - glGetVertexAttribfv
    - GF_LOG
    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:643,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:644,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:645,1
    - Dst: glGetActiveUniform
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:651,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:653,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:654,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:657,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:660,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:663,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:666,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:669,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:679,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:682,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:685,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:688,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:692,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 47
    argCount: 1
    argNames:
    - progObj
    argTypes:
    - GF_SHADERID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 636
    functionDepth: 0
    functionLinenumber: 636
    functionLinenumberEnd: 693
    functionName: gf_glQueryUniforms
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - printf
    - glGetProgramiv
    - glGetUniformLocation
    - glGetActiveUniform
    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:702,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:703,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:704,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:705,1
    - Dst: glGetActiveAttrib
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:711,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:713,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:714,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:717,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:720,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:723,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:726,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:729,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:739,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:742,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:745,1
    - Dst: printf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:748,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:752,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 1
    argNames:
    - progObj
    argTypes:
    - GF_SHADERID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 753
    functionName: gf_glQueryAttributes
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - printf
    - glGetProgramiv
    - glGetAttribLocation
    - glGetActiveAttrib
    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:761,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:766,1
    - Dst: glCreateProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:767,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:769,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:770,1
    - Dst: visual_3d_shader_with_flags
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:773,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:775,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:776,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:777,1
    - Dst: visual_3d_shader_with_flags
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:785,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:786,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:787,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:788,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:791,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:792,1
    - Dst: glAttachShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:793,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:794,1
    - Dst: glLinkProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:796,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:797,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:799,1
    - Dst: glGetProgramiv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:803,1
    - Dst: glGetProgramInfoLog
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:805,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:806,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:807,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:808,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:809,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:812,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 50
    argCount: 3
    argNames:
    - visual
    - flags
    - pix_fmt
    argTypes:
    - GF_VisualManager*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 756
    functionDepth: 3
    functionLinenumber: 756
    functionLinenumberEnd: 814
    functionName: visual_3d_build_program
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GL_CHECK_ERR
    - gf_free
    - glGetError
    - visual_3d_shader_with_flags
    - GF_LOG
    - glAttachShader
    - glGetProgramiv
    - glLinkProgram
    - glCreateProgram
    - GF_SAFEALLOC
    - DEL_SHADER
    - glGetProgramInfoLog
    - DEL_PROGRAM
    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:819,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:821,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:823,1
    - Dst: visual_3d_build_program
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:827,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:830,1
    - Dst: glDeleteShader
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:831,1
    - Dst: glDeleteProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:832,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:833,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 816
    functionDepth: 4
    functionLinenumber: 816
    functionLinenumberEnd: 835
    functionName: visual_3d_init_generic_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_file_exists
    - glDeleteProgram
    - glDeleteShader
    - visual_3d_build_program
    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:847,1
    - Dst: gf_sc_reset_graphics
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:853,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:855,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 837
    functionDepth: 5
    functionLinenumber: 837
    functionLinenumberEnd: 858
    functionName: visual_3d_init_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - visual_3d_init_generic_shaders
    - gf_sc_reset_graphics
    - 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:869,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:870,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:871,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:874,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:875,1
    - Dst: mesh_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:879,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:883,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:884,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:885,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:886,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:887,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:888,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 863
    functionDepth: 1
    functionLinenumber: 863
    functionLinenumberEnd: 891
    functionName: visual_3d_reset_graphics
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - mesh_free
    - gf_list_count
    - gf_free
    - glDeleteTextures
    - DEL_SHADER
    - DEL_PROGRAM
    - gf_list_pop_back
    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:899,1
    - Dst: glScissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:916,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:918,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 921
    functionName: visual_3d_set_clipper_scissor
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glScissor
    - glDisable
    - 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:934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:936,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:939,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:942,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:943,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:945,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:947,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - program
    - mat
    - name
    argTypes:
    - GF_SHADERID
    - Fixed*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 926
    functionDepth: 1
    functionLinenumber: 926
    functionLinenumberEnd: 948
    functionName: visual_3d_load_matrix_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GL_CHECK_ERR
    - FIX2FLT
    - GF_LOG
    - glUniformMatrix4fv
    - glGetUniformLocation
    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:960,1
    - Dst: glGenTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:961,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:985,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:986,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:987,1
    - Dst: mesh_new_rectangle
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:988,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:992,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1004,1
    - Dst: visual_3d_init_stereo_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1006,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 952
    functionDepth: 4
    functionLinenumber: 952
    functionLinenumberEnd: 1010
    functionName: visual_3d_init_autostereo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - new_mesh
    - gf_malloc
    - GF_LOG
    - visual_3d_init_stereo_shaders
    - INT2FIX
    - glGenTextures
    - mesh_new_rectangle
    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:1021,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1023,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1026,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1029,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1032,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1033,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1034,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1035,1
    - Dst: glTexEnvf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1036,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1037,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1039,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1040,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1041,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1042,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1043,1
    - Dst: glCopyTexImage2D
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1046,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1047,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1050,1
    - Dst: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1053,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1054,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1057,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1058,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1061,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1062,1
    - Dst: glViewport
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1065,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1071,1
    - Dst: gf_mx_ortho
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1074,1
    - Dst: visual_3d_load_matrix_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1075,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1080,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1081,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1085,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1087,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1088,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1090,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1093,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1096,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1097,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1099,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1103,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1104,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1107,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1110,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1111,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1112,1
    - Dst: glTexParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1113,1
    - Dst: glTexEnvf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1114,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1117,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1119,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1121,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1123,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1125,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1130,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1132,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1135,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1140,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1141,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1142,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1144,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1148,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1149,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1151,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1152,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1155,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 82
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1012
    functionDepth: 2
    functionLinenumber: 1012
    functionLinenumberEnd: 1158
    functionName: visual_3d_end_auto_stereo_pass
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGetUniformLocation
    - INT2FIX
    - glFlush
    - glActiveTexture
    - glUniform1i
    - gf_mx_ortho
    - glEnable
    - glGetAttribLocation
    - glDrawElements
    - glClear
    - glDisable
    - GL_CHECK_ERR
    - glTexEnvf
    - glUseProgram
    - glTexParameterf
    - glPixelStorei
    - glVertexAttribPointer
    - glViewport
    - sprintf
    - glCopyTexImage2D
    - visual_3d_load_matrix_shaders
    - glEnableVertexAttribArray
    - glDisableVertexAttribArray
    - glTexParameteri
    - glBindTexture
    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:1166,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1167,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1168,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1170,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1173,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1174,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1175,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1177,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1182,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1185,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1187,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1190,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1192,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1198
      start: 1161
    functionDepth: 0
    functionLinenumber: 1161
    functionLinenumberEnd: 1198
    functionName: visual_3d_setup_quality
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glHint
    - glDisable
    - glEnable
    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:1205,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1210,1
    - Dst: glDepthFunc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1211,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1213,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1214,1
    - Dst: glCullFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1215,1
    - Dst: glClearDepthx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1218,1
    - Dst: glLightModelx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1219,1
    - Dst: glMaterialx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1220,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1220,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1221,1
    - Dst: glClearDepthf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1223,1
    - Dst: glClearDepth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1225,1
    - Dst: glLightModeli
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1226,1
    - Dst: glLightModeli
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1227,1
    - Dst: glMaterialf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1228,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1233,1
    - Dst: glShadeModel
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1234,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1235,1
    - Dst: glGetIntegerv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1240,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1245,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1246,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1247,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1248,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1249,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1250,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1251,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1255,1
    - Dst: visual_3d_setup_quality
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1258,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: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1268,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 44
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1200
    functionDepth: 1
    functionLinenumber: 1200
    functionLinenumberEnd: 1269
    functionName: visual_3d_setup
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - glLightModeli
    - glShadeModel
    - glCullFace
    - FLT2FIX
    - glEnable
    - glMaterialx
    - visual_3d_setup_quality
    - glBlendFunc
    - glClearDepth
    - glMaterialf
    - glClearDepthf
    - glLightModelx
    - glFrontFace
    - glClearDepthx
    - glClear
    - glDisable
    - glDepthFunc
    - glGetIntegerv
    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:1275,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1276,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1277,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1279,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1281,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1283,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1284,1
    - Dst: visual_3d_setup_quality
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1286,1
    - Dst: visual_3d_enable_depth_buffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 2
    argNames:
    - visual
    - 'on'
    argTypes:
    - GF_VisualManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1291
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1291
    functionName: visual_3d_set_background_state
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 2
    functionsReached:
    - visual_3d_enable_depth_buffer
    - glHint
    - glDisable
    - visual_3d_setup_quality
    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:1300,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1303,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1305,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1308,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - visual
    - bOn
    argTypes:
    - GF_VisualManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1295
    functionDepth: 0
    functionLinenumber: 1295
    functionLinenumberEnd: 1324
    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:1329,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1331,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - visual
    - 'on'
    argTypes:
    - GF_VisualManager*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1333
      start: 1326
    functionDepth: 0
    functionLinenumber: 1326
    functionLinenumberEnd: 1333
    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:1337,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1337,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1337,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1337,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - visual
    - vp
    argTypes:
    - GF_VisualManager*
    - GF_Rect
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1335
    functionDepth: 1
    functionLinenumber: 1335
    functionLinenumberEnd: 1338
    functionName: visual_3d_set_viewport
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - glViewport
    - FIX2INT
    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:1344,1
    - Dst: glScissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1345,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1345,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1345,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1345,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1345,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - visual
    - vp
    argTypes:
    - GF_VisualManager*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1350
      start: 1340
    functionDepth: 1
    functionLinenumber: 1340
    functionLinenumberEnd: 1350
    functionName: visual_3d_set_scissor
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glScissor
    - glDisable
    - glEnable
    - FIX2INT
    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:1354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1352
    functionDepth: 0
    functionLinenumber: 1352
    functionLinenumberEnd: 1355
    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:1366,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1371,1
    - Dst: gf_plane_get_distance
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1376,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1385,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1386,1
    - Dst: PTR_TO_U_CAST
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1398,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1402,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1404,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: 1407
      start: 1357
    functionDepth: 1
    functionLinenumber: 1357
    functionLinenumberEnd: 1407
    functionName: visual_3d_draw_aabb_node
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - PTR_TO_U_CAST
    - gf_bbox_get_vertices
    - glDrawElements
    - visual_3d_draw_aabb_node
    - gf_plane_get_distance
    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:1419,1
    - Dst: glLoadMatrixx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1423,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1425,1
    - Dst: glLoadMatrixf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1426,1
    - Dst: glLoadMatrixf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1428,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - visual
    - mat
    argTypes:
    - GF_VisualManager*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1411
    functionDepth: 1
    functionLinenumber: 1411
    functionLinenumberEnd: 1430
    functionName: visual_3d_matrix_load
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glLoadMatrixf
    - FIX2FLT
    - glLoadMatrixx
    - glLoadIdentity
    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:1438,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1439,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1440,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1443,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1444,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1445,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1446
      start: 1432
    functionDepth: 2
    functionLinenumber: 1432
    functionLinenumberEnd: 1446
    functionName: visual_3d_update_matrices
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - visual_3d_matrix_load
    - gf_mx_add_matrix
    - 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:1458,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1459,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1472,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1474,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1476,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1478,1
    - Dst: glClipPlanex
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1486,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1488,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1489,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1490,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1491,1
    - Dst: glClipPlanef
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1494,1
    - Dst: glClipPlane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1496,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1500,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1503,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1449
    functionDepth: 3
    functionLinenumber: 1449
    functionLinenumberEnd: 1509
    functionName: visual_3d_set_clippers
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - FIX2FLT
    - gf_mx_add_matrix
    - gf_mx_copy
    - glEnable
    - gf_mx_inverse
    - gf_mx_apply_plane
    - visual_3d_update_matrices
    - glClipPlanef
    - glClipPlanex
    - visual_3d_matrix_load
    - glClipPlane
    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:1516,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1511
    functionDepth: 0
    functionLinenumber: 1511
    functionLinenumberEnd: 1519
    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:1527,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1529,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1530
      start: 1522
    functionDepth: 0
    functionLinenumber: 1522
    functionLinenumberEnd: 1530
    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:1549,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1551,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1552,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1554,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1556,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1567,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1568,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1569,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1570,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1572,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1573,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1574,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1575,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1576,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1578,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1580,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1581,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1582,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1583,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1583,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1585,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1586,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1588,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1589,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1590,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1592,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1593,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1594,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1595,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1597,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1598,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:1601,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1603,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1605,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1606,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1607,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1608,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1616,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1617,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1618,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1619,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1627,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1632,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1633,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1634,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1635,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1636,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1637,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1638,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1640,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1641,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1642,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1643,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1644,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1646,1
    - Dst: gf_cos
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1651,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1654,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1655,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1655,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1657,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1658,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1659,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1661,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1662,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1663,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1664,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1666,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1667,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1667,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1668,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1668,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1669,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1669,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1670,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: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1674,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: cos
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1686,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1689,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1690,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1690,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1702,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1703,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1704,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1705,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1706,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1707,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1708,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1710,1
    - Dst: glLightxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1711,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1712,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1713,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1714,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:1718,1
    - Dst: glLightx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1719,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1719,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1721,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1722,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1724,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1725,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1726,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1728,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1729,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1729,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1730,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1730,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1731,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1731,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1732,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1733,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1734,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1736,1
    - Dst: glLightfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1737,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:1744,1
    - Dst: glLightf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1745,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1751,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 181
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1753
      start: 1533
    functionDepth: 2
    functionLinenumber: 1533
    functionLinenumberEnd: 1753
    functionName: visual_3d_set_lights
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glLightx
    - FIX2FLT
    - gf_mx_add_matrix
    - gf_cos
    - glEnable
    - gf_mx_copy
    - gf_mx_init
    - glLightf
    - gf_divfix
    - cos
    - glLightfv
    - INT2FIX
    - gf_mulfix
    - visual_3d_matrix_load
    - glLightxv
    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:1762,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1763,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1764,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1765,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1766,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1767,1
    - Dst: glFogx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1768,1
    - Dst: glFogxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1773,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1774,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1777,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1780,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1781,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1782,1
    - Dst: glFogi
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1784,1
    - Dst: glFogi
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1785,1
    - Dst: glFogi
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1786,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1789,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1789,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1790,1
    - Dst: glFogf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1791,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1791,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1792,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1793,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1794,1
    - Dst: glFogfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1796,1
    - Dst: glHint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1797,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 1755
    functionDepth: 1
    functionLinenumber: 1755
    functionLinenumberEnd: 1802
    functionName: visual_3d_enable_fog
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glFogx
    - FIX2FLT
    - glFogxv
    - glFogfv
    - glEnable
    - glFogf
    - glHint
    - glFogi
    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:1829,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1838,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1840,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1850,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1851,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1854,1
    - Dst: gf_plane_get_p_vertex_idx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1855,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1858,1
    - Dst: visual_3d_draw_aabb_node
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1859,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1863,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1865
      start: 1807
    functionDepth: 2
    functionLinenumber: 1807
    functionLinenumberEnd: 1865
    functionName: visual_3d_do_draw_mesh
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_copy
    - gf_plane_get_p_vertex_idx
    - gf_mx_inverse
    - glDrawElements
    - glBindBuffer
    - gf_mx_apply_plane
    - visual_3d_draw_aabb_node
    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:1881,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1883,1
    - Dst: glBufferData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1884,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1890,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1892,1
    - Dst: glBufferData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1893,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1901,1
    - Dst: glBufferSubData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1907,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1910,1
    - Dst: glBufferData
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1911,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1913,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: 1919
      start: 1867
    functionDepth: 0
    functionLinenumber: 1867
    functionLinenumberEnd: 1919
    functionName: visual_3d_bind_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glBufferSubData
    - glBufferData
    - glBindBuffer
    - glGenBuffers
    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:1930,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1934,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1935,1
    - Dst: visual_3d_load_matrix_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1936,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1924
    functionDepth: 2
    functionLinenumber: 1924
    functionLinenumberEnd: 1937
    functionName: visual_3d_update_matrices_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_add_matrix
    - gf_mx_copy
    - 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:1950,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1952,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1953,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1958,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1960,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1961,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1966,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1967,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1968,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1969,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1972,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1973,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1980,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1983,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1984,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1987,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1988,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1991,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:1993,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2000,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2001,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2002,1
    - Dst: gf_vec_norm
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2003,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2005,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2006,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2007,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2009,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2010,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2012,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2016,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2017,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2018,1
    - Dst: gf_mx_apply_vec
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2022,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2023,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2024,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2025,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2028,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2029,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2031,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:2039,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2040,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2041,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2042,1
    - Dst: glUniform3fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2044,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2046,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2047,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2048,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2050,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2051,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2053,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: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2058,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2060,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2061,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2063,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2068,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2069,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2070,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2072,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2073,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2075,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2076,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2078,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2079,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2080,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2082,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2083,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2085,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 112
    argCount: 1
    argNames:
    - tr_state
    argTypes:
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 1939
    functionDepth: 1
    functionLinenumber: 1939
    functionLinenumberEnd: 2086
    functionName: visual_3d_set_lights_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - sprintf
    - GL_CHECK_ERR
    - FIX2FLT
    - gf_mx_add_matrix
    - gf_mx_copy
    - gf_vec_norm
    - gf_mx_init
    - glUniform4fv
    - glGetUniformLocation
    - gf_mx_apply_vec
    - glUniform3fv
    - gf_vec_diff
    - glUniform1f
    - glUniform1i
    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:2092,1
    - Dst: glUniform1i
      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: glUniform3fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2098,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2100,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2102,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2104,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2106,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2108,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2110,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2112,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2114,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2117,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2118
      start: 2088
    functionDepth: 1
    functionLinenumber: 2088
    functionLinenumberEnd: 2118
    functionName: visual_3d_set_fog_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - GL_CHECK_ERR
    - glGetUniformLocation
    - glUniform3fv
    - glUniform1f
    - 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:2130,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2131,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2133,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2134,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2136,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2138,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:2149,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2152,1
    - Dst: gf_mx_apply_plane
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2154,1
    - Dst: sprintf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2157,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2158,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2164,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 2
    argNames:
    - visual
    - tr_state
    argTypes:
    - GF_VisualManager*
    - GF_TraverseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2167
      start: 2120
    functionDepth: 1
    functionLinenumber: 2120
    functionLinenumberEnd: 2167
    functionName: visual_3d_set_clippers_shaders
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_mx_add_matrix
    - gf_mx_copy
    - glUniform4fv
    - gf_mx_inverse
    - glGetUniformLocation
    - gf_mx_apply_plane
    - 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:2176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2178,1
    - Dst: visual_3d_build_program
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2184,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2186,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: 2189
      start: 2169
    functionDepth: 4
    functionLinenumber: 2169
    functionLinenumberEnd: 2189
    functionName: visual_3d_check_program_exists
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_add
    - visual_3d_build_program
    - gf_list_get
    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:2241,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2249,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2252,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2253,1
    - Dst: visual_3d_bind_buffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2255,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2256,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2261,1
    - Dst: visual_3d_update_matrices_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2263,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2268,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2272,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2273,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2275,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2277,1
    - Dst: visual_3d_set_clipper_scissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2281,1
    - Dst: visual_3d_set_clippers_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2284,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2288,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2289,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2290,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2291,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2294,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2295,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2297,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2299,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2300,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2306,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2308,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2308,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2313,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2315,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2319,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2321,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2322,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2324,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2326,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2327,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2331,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2333,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2334,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2338,1
    - Dst: glUniform1f
      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: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2352,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2353,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2354,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2355,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2363,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2366,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2369,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2372,1
    - Dst: glUniform4fv
      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: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2382,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2382,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2384,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2389,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2394,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2396,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2398,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2400,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2402,1
    - Dst: visual_3d_set_fog_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2406,1
    - Dst: gf_assert
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2412,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2414,1
    - Dst: gf_mx_add_matrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2415,1
    - Dst: gf_mx_inverse
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2417,1
    - Dst: gf_mx_transpose
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2420,1
    - Dst: visual_3d_load_matrix_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2422,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2424,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2427,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2429,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2431,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2433,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2435,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2437,1
    - Dst: visual_3d_set_lights_shaders
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2438,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2439,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2446,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2448,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2449,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2451,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2452,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2454,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2455,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2459,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2461,1
    - Dst: glEnableVertexAttribArray
      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:2467,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2479,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2481,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2489,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2490,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2493,1
    - Dst: glLineWidth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2496,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2503,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2505,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2507,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2510,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2514,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2522,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2533,1
    - Dst: glUniform4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2535,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2536,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2538,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2539,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2541,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2543,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2544,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2546,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2547,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2557,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2559,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2560,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2566,1
    - Dst: glUniform3fv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2567,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2569,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2570,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2572,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2573,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2575,1
    - Dst: glUniform1f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2576,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2579,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2580,1
    - Dst: visual_3d_do_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2586,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2588,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2592,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2594,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2595,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2596,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2597,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2601,1
    - Dst: glUniform1i
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2602,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2603,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2607,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2615,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2617,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2618,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2619,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 304
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2620
      start: 2191
    functionDepth: 5
    functionLinenumber: 2191
    functionLinenumberEnd: 2620
    functionName: visual_3d_draw_mesh_shader_only
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - gf_mx_inverse
    - glGetUniformLocation
    - gf_assert
    - visual_3d_check_program_exists
    - glBindBuffer
    - glUniform1f
    - glUniform1i
    - FIX2FLT
    - visual_3d_do_draw_mesh
    - glEnable
    - glGetAttribLocation
    - visual_3d_update_matrices_shaders
    - glUniform4fv
    - gf_mx_transpose
    - visual_3d_set_lights_shaders
    - glDisable
    - GL_CHECK_ERR
    - visual_3d_bind_buffer
    - glUseProgram
    - glLineWidth
    - gf_mx_init
    - visual_3d_set_clipper_scissor
    - glVertexAttribPointer
    - gf_mx_add_matrix
    - glDisableVertexAttribArray
    - gf_mx_copy
    - visual_3d_load_matrix_shaders
    - glUniformMatrix4fv
    - visual_3d_set_clippers_shaders
    - glEnableVertexAttribArray
    - glUniform3fv
    - visual_3d_set_fog_shaders
    - glFrontFace
    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:2645,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2649,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2650,1
    - Dst: visual_3d_draw_mesh_shader_only
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2653,1
    - Dst: visual_3d_draw_mesh_shader_only
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2659,1
    - Dst: visual_3d_bind_buffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2669,1
    - Dst: glUseProgram
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2671,1
    - Dst: visual_3d_set_lights
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2679,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2682,1
    - Dst: visual_3d_enable_fog
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2686,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2688,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2689,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2691,1
    - Dst: visual_3d_set_clipper_scissor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2696,1
    - Dst: visual_3d_set_clippers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2698,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2700,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2702,1
    - Dst: glPushMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2705,1
    - Dst: glScalef
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2706,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2707,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2709,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2718,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2720,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2721,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2725,1
    - Dst: visual_3d_enable_antialias
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2726,1
    - Dst: glColor4x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2729,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2729,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2729,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2729,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2729,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2731,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2731,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2731,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2731,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2731,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2733,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2740,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2748,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2749,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2750,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2751,1
    - Dst: glMaterialxv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2772,1
    - Dst: glMaterialfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2774,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2776,1
    - Dst: glMaterialx
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2779,1
    - Dst: glMaterialf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2781,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2781,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2783,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2788,1
    - Dst: glColorMaterial
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2790,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2792,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2798,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2803,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2805,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2817,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2819,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2820,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2821,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2822,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2824,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2825,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2828,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2830,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2831,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2832,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2834,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2837,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2844,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2845,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2848,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2852,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2854,1
    - Dst: glColorPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2856,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2866,1
    - Dst: visual_3d_matrix_load
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2868,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2870,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2872,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2876,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2877,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2879,1
    - Dst: glPushMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2880,1
    - Dst: glScalef
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2881,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2882,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2883,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2884,1
    - Dst: glClientActiveTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2891,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2892,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2893,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2898,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2899,1
    - Dst: glNormal3x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2906,1
    - Dst: glNormal3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2908,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2910,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2911,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2912,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2913,1
    - Dst: glLineWidth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2916,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2922,1
    - Dst: glNormalPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2937,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2943,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2944,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2946,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2951,1
    - Dst: visual_3d_do_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2952,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2953,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2955,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2956,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2957,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2959,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2960,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2963,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2966,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2968,1
    - Dst: glPopMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2969,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2970,1
    - Dst: glPopMatrix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2972,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2977,1
    - Dst: visual_3d_reset_lights
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2979,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2981,1
    - Dst: visual_3d_reset_clippers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2984,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2988,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:2991,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 221
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2993
      start: 2627
    functionDepth: 6
    functionLinenumber: 2627
    functionLinenumberEnd: 2993
    functionName: visual_3d_draw_mesh
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glClientActiveTexture
    - glBindBuffer
    - glNormal3f
    - FIX2FLT
    - visual_3d_do_draw_mesh
    - gf_malloc
    - glEnable
    - glMaterialxv
    - glColor4f
    - visual_3d_set_lights
    - glNormal3x
    - glColor4x
    - glMatrixMode
    - glDisable
    - glDisableClientState
    - glMaterialfv
    - glEnableClientState
    - GL_CHECK_ERR
    - visual_3d_bind_buffer
    - glUseProgram
    - glLineWidth
    - glColorPointer
    - glMaterialf
    - glVertexPointer
    - visual_3d_draw_mesh_shader_only
    - visual_3d_enable_fog
    - glTexCoordPointer
    - visual_3d_reset_clippers
    - visual_3d_set_clipper_scissor
    - visual_3d_reset_lights
    - visual_3d_enable_antialias
    - glScalef
    - visual_3d_set_clippers
    - glColorMaterial
    - gf_free
    - glGetError
    - glMaterialx
    - GF_LOG
    - glPushMatrix
    - glPopMatrix
    - glLoadIdentity
    - glNormalPointer
    - visual_3d_update_matrices
    - FIX2INT
    - glFrontFace
    - visual_3d_matrix_load
    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:3000,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3000,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3000,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3000,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3002,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3002,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3002,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - col
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3007
      start: 2995
    functionDepth: 1
    functionLinenumber: 2995
    functionLinenumberEnd: 3007
    functionName: visual_3d_set_debug_color
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glColor4f
    - GF_COL_R
    - glColor4x
    - GF_COL_G
    - GF_COL_B
    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:3023,1
    - Dst: visual_3d_set_debug_color
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3026,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3032,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3041,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3042,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3043,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3049,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3050,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3052,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3053,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3053,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3053,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3053,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3054,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3054,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3054,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3054,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3055,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3063,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3064,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3065,1
    - Dst: MESH_GET_NORMAL
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3066,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3067,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3068,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3075,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3076,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3078,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3079,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3079,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3079,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3079,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3080,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3080,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3080,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3080,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3081,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3087,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 49
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3091
      start: 3012
    functionDepth: 3
    functionLinenumber: 3012
    functionLinenumberEnd: 3091
    functionName: visual_3d_draw_normals
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glEnableClientState
    - visual_3d_set_debug_color
    - FIX2FLT
    - glBegin
    - MESH_GET_NORMAL
    - gf_vec_scale
    - glVertexPointer
    - glDisableClientState
    - glDrawElements
    - visual_3d_update_matrices
    - gf_vec_add
    - glEnd
    - glVertex3f
    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:3098,1
    - Dst: visual_3d_draw_aabb_nodeBounds
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3099,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3103,1
    - Dst: gf_vec_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3104,1
    - Dst: gf_vec_add
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3105,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3107,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3108,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3109,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3111,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - tr_state
    - node
    argTypes:
    - GF_TraverseState*
    - AABBNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3115
      start: 3095
    functionDepth: 7
    functionLinenumber: 3095
    functionLinenumberEnd: 3115
    functionName: visual_3d_draw_aabb_nodeBounds
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - gf_mx_copy
    - visual_3d_draw_aabb_nodeBounds
    - gf_mx_add_scale
    - gf_vec_scale
    - visual_3d_draw_mesh
    - gf_vec_diff
    - gf_vec_add
    - gf_mx_add_translation
    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:3123,1
    - Dst: gf_vec_diff
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3126,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3131,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3132,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3133,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3135,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3136,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: 3137
      start: 3117
    functionDepth: 7
    functionLinenumber: 3117
    functionLinenumberEnd: 3137
    functionName: visual_3d_draw_bbox
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - visual_3d_set_debug_color
    - gf_mx_copy
    - gf_mx_add_scale
    - visual_3d_draw_mesh
    - gf_vec_diff
    - gf_mx_add_translation
    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:3141,1
    - Dst: visual_3d_draw_aabb_nodeBounds
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3144,1
    - Dst: visual_3d_draw_bbox
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3148
      start: 3139
    functionDepth: 8
    functionLinenumber: 3139
    functionLinenumberEnd: 3148
    functionName: visual_3d_draw_bounds
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - visual_3d_set_debug_color
    - visual_3d_draw_bbox
    - visual_3d_draw_aabb_nodeBounds
    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:3156,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3160,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3162,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3171,1
    - Dst: visual_3d_draw_normals
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3174,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3178,1
    - Dst: visual_3d_set_debug_color
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3179,1
    - Dst: visual_3d_update_matrices
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3182,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3185,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3187,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3188,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3190,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3191,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3193,1
    - Dst: visual_3d_draw_bounds
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3201,1
    - Dst: glGetError
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3203,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 2
    argNames:
    - tr_state
    - mesh
    argTypes:
    - GF_TraverseState*
    - GF_Mesh*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3204
      start: 3150
    functionDepth: 9
    functionLinenumber: 3150
    functionLinenumberEnd: 3204
    functionName: visual_3d_mesh_paint
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 9
    functionsReached:
    - visual_3d_set_debug_color
    - GL_CHECK_ERR
    - glEnableClientState
    - glGetError
    - GF_LOG
    - visual_3d_draw_bounds
    - glVertexPointer
    - visual_3d_draw_mesh
    - glDrawElements
    - visual_3d_update_matrices
    - visual_3d_draw_normals
    - glDisable
    - glDisableClientState
    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:3308,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3309,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3311,1
    - Dst: glNormal3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3312,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3313,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3315,1
    - Dst: glNormalPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3316,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3320,1
    - Dst: glFrontFace
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3321,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3323,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3327,1
    - Dst: glPixelStorei
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3328,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3332,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3335,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3338,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3341,1
    - Dst: glPolygonStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3344,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3347,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3350,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3350,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3350,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3350,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3351,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3353,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: 3354
      start: 3304
    functionDepth: 1
    functionLinenumber: 3304
    functionLinenumberEnd: 3354
    functionName: visual_3d_mesh_hatch
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glEnableClientState
    - FIX2FLT
    - glPolygonStipple
    - glColor3f
    - glEnable
    - glVertexPointer
    - glNormalPointer
    - glDrawElements
    - glFrontFace
    - glPixelStorei
    - glDisable
    - glDisableClientState
    - glNormal3f
    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:3365,1
    - Dst: glLineWidth
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3368,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3368,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3394,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3396,1
    - Dst: glLineStipple
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3397,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3398,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3399,1
    - Dst: visual_3d_mesh_paint
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3402,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: 3403
      start: 3358
    functionDepth: 10
    functionLinenumber: 3358
    functionLinenumberEnd: 3403
    functionName: visual_3d_mesh_strike
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 2
    functionsReached:
    - visual_3d_mesh_paint
    - FIX2FLT
    - glLineStipple
    - glLineWidth
    - glEnable
    - FIX2INT
    - gf_mulfix
    - glDisable
    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:3409,1
    - Dst: glClearColor
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3411,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3411,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3411,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3411,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3411,1
    - Dst: glClear
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3413,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - visual
    - color
    - alpha
    argTypes:
    - GF_VisualManager*
    - SFColor
    - Fixed
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3414
      start: 3406
    functionDepth: 1
    functionLinenumber: 3406
    functionLinenumberEnd: 3414
    functionName: visual_3d_clear
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 3
    functionsReached:
    - glClear
    - FIX2FLT
    - glClearColorx
    - glClearColor
    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:3423,1
    - Dst: glNormal3x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3426,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3427,1
    - Dst: glColor4x
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3428,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3442,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3443,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3444,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3448,1
    - Dst: glDrawElements
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3449,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3451,1
    - Dst: glNormal3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3454,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3456,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3457,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3457,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3457,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3457,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3457,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3459,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3459,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3459,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3459,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3461,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3462,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3462,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3462,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3463,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3463,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3463,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3464,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3464,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3464,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3465,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3465,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3465,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3466,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3468,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3471,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 39
    argCount: 3
    argNames:
    - visual
    - rc
    - color
    argTypes:
    - GF_VisualManager*
    - GF_Rect
    - SFColorRGBA
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3473
      start: 3417
    functionDepth: 1
    functionLinenumber: 3417
    functionLinenumberEnd: 3473
    functionName: visual_3d_fill_rect
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - glEnableClientState
    - FIX2FLT
    - glColor3f
    - glBegin
    - glEnable
    - glColor4f
    - glVertexPointer
    - glNormal3x
    - glColor4x
    - glDrawElements
    - glEnd
    - glVertex3f
    - glDisable
    - glDisableClientState
    - glNormal3f
    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:3498,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3504,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3512,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3515,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3516,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3530,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3545,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3551,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3558,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3559,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3582,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3600,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3601,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3609,1
    - Dst: glReadPixels
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3611,1
    - Dst: compositor_3d_enable_fbo
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3613,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3629,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3630,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3631,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: 3635
      start: 3477
    functionDepth: 1
    functionLinenumber: 3477
    functionLinenumberEnd: 3635
    functionName: compositor_3d_get_screen_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - FIX2FLT
    - gf_free
    - gf_malloc
    - GF_LOG
    - glReadPixels
    - compositor_3d_enable_fbo
    - gf_realloc
    - memcpy
    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: 3641
      start: 3637
    functionDepth: 0
    functionLinenumber: 3637
    functionLinenumberEnd: 3641
    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:3657,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3660,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3661,1
    - Dst: glGetTexImage
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3662,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3663,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3666,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3669,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3670,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3671,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3673,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: 3678
      start: 3643
    functionDepth: 0
    functionLinenumber: 3643
    functionLinenumberEnd: 3678
    functionName: compositor_3d_get_offscreen_buffer
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glGetTexImage
    - gf_free
    - gf_malloc
    - glEnable
    - memcpy
    - glDisable
    - glBindTexture
    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:3697,1
    - Dst: glPointSize
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3703,1
    - Dst: glDepthMask
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3704,1
    - Dst: glPointParameterfv
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3706,1
    - Dst: glPointParameterf
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3707,1
    - Dst: glEnable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3708,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3709,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3713,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3716,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3716,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3717,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3719,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3722,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3722,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3723,1
    - Dst: glColor4f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3735,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3736,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3736,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3736,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3736,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3737,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3739,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3741,1
    - Dst: glDepthMask
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3743,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3749,1
    - Dst: gf_sc_texture_get_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3753,1
    - Dst: glDepthMask
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3759,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3760,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3761,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3762,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3763,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3764,1
    - Dst: glDisable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3765,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3768,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3770,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3773,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3773,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3774,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3780,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3780,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3781,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3793,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3797,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3804,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3807,1
    - Dst: glBegin
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3822,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3826,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3827,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3827,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3827,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3827,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3836,1
    - Dst: glVertex3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3837,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3837,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3837,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3837,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3839,1
    - Dst: glEnd
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3842,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3845,1
    - Dst: glColor3f
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3855,1
    - Dst: new_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3858,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3861,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3864,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3864,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3865,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3871,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3871,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3872,1
    - Dst: mesh_set_vertex
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3875,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3875,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3875,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3876,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3881,1
    - Dst: mesh_set_triangle
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3882,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3885,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3894,1
    - Dst: gf_sc_texture_get_data
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3897,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3906,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3907,1
    - Dst: gf_sc_texture_enable
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3916,1
    - Dst: visual_3d_draw_mesh
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3917,1
    - Dst: visual_3d_disable_texture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3918,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: 3922
      start: 3680
    functionDepth: 7
    functionLinenumber: 3680
    functionLinenumberEnd: 3922
    functionName: visual_3d_point_sprite
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - INT2FIX
    - visual_3d_draw_mesh
    - glVertex3f
    - FIX2FLT
    - glColor3f
    - glEnable
    - glColor4f
    - gf_sc_texture_get_data
    - glEnd
    - glDisable
    - gf_divfix
    - visual_3d_disable_texture
    - glPointParameterfv
    - mesh_set_triangle
    - gf_sc_texture_enable
    - gf_mulfix
    - glDepthMask
    - glBegin
    - FLT2FIX
    - new_mesh
    - glPointSize
    - glPointParameterf
    - mesh_set_vertex
    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:3929,1
    - Dst: glGenTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3933,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3935,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3936,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3937,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3938,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3939,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3940,1
    - Dst: glGenFramebuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3943,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3945,1
    - Dst: glFramebufferTexture2D
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3946,1
    - Dst: glGenRenderbuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3949,1
    - Dst: glBindRenderbuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3951,1
    - Dst: glRenderbufferStorage
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3953,1
    - Dst: glRenderbufferStorage
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3955,1
    - Dst: glFramebufferRenderbuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3957,1
    - Dst: glCheckFramebufferStatus
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3959,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3964,1
    - Dst: glBindFramebuffer
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3968,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: 3972
      start: 3926
    functionDepth: 1
    functionLinenumber: 3926
    functionLinenumberEnd: 3972
    functionName: compositor_3d_setup_fbo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glBindRenderbuffer
    - GF_LOG
    - glRenderbufferStorage
    - glTexImage2D
    - glFramebufferTexture2D
    - glGenTextures
    - glGenFramebuffers
    - glGenRenderbuffers
    - glTexParameteri
    - glCheckFramebufferStatus
    - glFramebufferRenderbuffer
    - glBindFramebuffer
    - glBindTexture
    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:3978,1
    - Dst: glDeleteFramebuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3979,1
    - Dst: glDeleteRenderbuffers
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3983,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:3987,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: 3991
      start: 3974
    functionDepth: 0
    functionLinenumber: 3974
    functionLinenumberEnd: 3991
    functionName: compositor_3d_delete_fbo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 0
    functionsReached:
    - glDeleteRenderbuffers
    - glDeleteTextures
    - glBindFramebuffer
    - glDeleteFramebuffers
    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: 3996
      start: 3993
    functionDepth: 0
    functionLinenumber: 3993
    functionLinenumberEnd: 3996
    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:4001,1
    - Dst: glBindTexture
      Src: /src/gpac/src/compositor/visual_manager_3d_gl.c:4003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - compositor
    - enable
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4006
      start: 3998
    functionDepth: 0
    functionLinenumber: 3998
    functionLinenumberEnd: 4006
    functionName: compositor_3d_enable_fbo
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d_gl.c
    functionUses: 1
    functionsReached:
    - glBindFramebuffer
    - glBindTexture
    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:4010,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - visual
    argTypes:
    - GF_VisualManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4011
      start: 4008
    functionDepth: 0
    functionLinenumber: 4008
    functionLinenumberEnd: 4011
    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: 1
    functionLinenumber: 46
    functionLinenumberEnd: 168
    functionName: apply_feComponentTransfer
    functionSourceFile: /src/gpac/src/compositor/svg_filters.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - FLT2FIX
    - FIX2FLT
    - gf_list_get
    - MIN
    - INT2FIX
    - MAX
    - gf_mulfix
    - FIX2INT
    - pow
    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: 2
    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_mx2d_init
    - drawable_finalize_sort
    - visual_3d_draw_from_context
    - gf_mx2d_add_scale
    - gf_assert
    - INT2FIX
    - gf_node_allow_cyclic_traverse
    - gf_path_add_rect_center
    - gf_mx2d_apply_rect
    - gf_mx2d_add_translation
    - mesh_from_path
    - gf_evg_surface_attach_to_buffer
    - svg_filter_apply
    - gf_realloc
    - gf_evg_surface_new
    - gf_rect_ft
    - gf_sc_texture_set_data
    - gf_path_reset
    - gf_divfix
    - gf_evg_surface_delete
    - gf_node_get_private
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_sc_texture_push_image
    - gf_rect_pixelize
    - gf_mulfix
    - drawable_reset_bounds
    - new_mesh
    - gf_svg_flatten_attributes
    - drawable_init_context_svg
    - memset
    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_sc_texture_release
    - drawable_del
    - gf_free
    - gf_node_get_private
    - GF_TraverseState*::visual::DrawBitmap
    - gf_sc_texture_destroy
    - 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_LOG
    - gf_sc_texture_setup
    - drawable_new
    - gf_sc_texture_allocate
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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:
    - tri_get_center
    - gf_vec_add
    - gf_vec_scale
    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:
    - gf_invfix
    - gf_divfix
    - update_node_bounds
    - gf_vec_scale
    - INT2FIX
    - aabb_split
    - GF_SAFEALLOC
    - gf_mulfix
    - gf_vec_diff
    - tri_get_center
    - gf_vec_main_axis
    - mesh_subdivide_aabbtree
    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_malloc
    - GF_LOG
    - GF_SAFEALLOC
    - memset
    - mesh_subdivide_aabbtree
    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_vec_cross
    - gf_divfix
    - 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_norm
    - gf_ray_hit_triangle
    - gf_mesh_aabb_ray_hit
    - gf_ray_hit_box
    - gf_vec_scale
    - MESH_GET_NORMAL
    - ray_hit_triangle_get_u_v
    - gf_vec_diff
    - gf_vec_cross
    - gf_vec_add
    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_norm
    - gf_ray_hit_triangle
    - gf_ray_hit_box
    - gf_mesh_aabb_ray_hit
    - gf_vec_scale
    - MESH_GET_NORMAL
    - gf_vec_diff
    - gf_vec_cross
    - gf_vec_add
    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_divfix
    - gf_vec_dot
    - ABS
    - gf_vec_diff
    - gf_vec_cross
    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_mesh_closest_face_aabb
    - gf_vec_norm
    - MESH_GET_NORMAL
    - gf_vec_scale
    - mesh_collide_triangle
    - gf_vec_rev
    - gf_vec_diff
    - gf_vec_cross
    - gf_vec_add
    - sphere_box_overlap
    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_mesh_closest_face_aabb
    - fabs
    - gf_vec_norm
    - MESH_GET_NORMAL
    - gf_vec_dot
    - gf_vec_scale
    - mesh_collide_triangle
    - gf_vec_rev
    - gf_vec_len
    - gf_vec_diff
    - gf_vec_cross
    - gf_vec_add
    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_private
    - gf_node_get_tag
    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: 1
    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_scene_time
    - gf_node_get_tag
    - gf_node_dirty_set
    - gf_node_event_out_str
    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: 1
    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: 1
    functionLinenumber: 199
    functionLinenumberEnd: 242
    functionName: Bindable_SetSetBindEx
    functionSourceFile: /src/gpac/src/compositor/bindable.c
    functionUses: 1
    functionsReached:
    - on_set_bind
    - gf_node_get_tag
    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: 2
    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:
    - gf_list_count
    - Bindable_SetIsBound
    - gf_sc_get_compositor
    - gf_list_enum
    - gf_list_del_item
    - gf_node_dirty_set
    - gf_sc_invalidate
    - Bindable_GetIsBound
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    - gf_list_rem
    - Bindable_GetSetBind
    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_count
    - gf_list_del
    - gf_list_del_item
    - Bindable_GetStack
    - gf_list_get
    - 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:
    - gf_list_count
    - Bindable_SetIsBound
    - gf_list_del_item
    - Bindable_GetIsBound
    - gf_list_get
    - Bindable_SetSetBind
    - 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:
    - drawable_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_path_add_ellipse
    - drawable_reset_path
    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:
    - new_mesh
    - gf_path_get_bounds
    - gf_node_get_private
    - disk2d_check_changes
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - vrml_drawable_pick
    - mesh_from_path
    - drawable_finalize_sort
    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: 1
    functionLinenumber: 93
    functionLinenumberEnd: 107
    functionName: arc2d_check_changes
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_path_add_arc
    - stricmp
    - drawable_reset_path
    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: 2
    functionLinenumber: 109
    functionLinenumberEnd: 153
    functionName: TraverseArc2D
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - drawable_finalize_sort
    - gf_node_get_tag
    - new_mesh
    - gf_path_get_bounds
    - arc2d_check_changes
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - vrml_drawable_pick
    - mesh_from_path
    - gf_bbox_from_rect
    - mesh_get_outline
    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_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_path_add_move_to
    - drawable_reset_path
    - 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_finalize_sort
    - new_mesh
    - gf_path_get_bounds
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - vrml_drawable_pick
    - mesh_get_outline
    - polyline2d_check_changes
    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:
    - gf_path_close
    - drawable_mark_modified
    - gf_node_dirty_get
    - gf_path_add_move_to
    - gf_node_dirty_clear
    - drawable_reset_path
    - gf_path_add_line_to
    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:
    - mesh_update_bounds
    - drawable_finalize_sort
    - new_mesh
    - gf_path_get_bounds
    - gf_node_get_private
    - gf_vec_cross
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - drawable_node_del
    - mesh_set_triangle
    - triangleset2d_check_changes
    - vrml_drawable_pick
    - gf_vec_diff
    - mesh_set_vertex_vx
    - MESH_MAKE_COL
    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_index
    - mesh_set_point
    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: 1
    functionLinenumber: 353
    functionLinenumberEnd: 401
    functionName: build_line_set
    functionSourceFile: /src/gpac/src/compositor/x3d_geometry.c
    functionUses: 0
    functionsReached:
    - mesh_update_bounds
    - gf_node_get_tag
    - mesh_set_index
    - gf_sg_sfcolor_to_rgba
    - MESH_MAKE_COL
    - memset
    - mesh_set_vertex_vx
    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:
    - mesh_update_bounds
    - gf_node_get_tag
    - gf_vec_norm
    - mesh_set_vertex_vx
    - mesh_recompute_normals
    - MESH_SET_NORMAL
    - mesh_set_triangle
    - gf_sg_sfcolor_to_rgba
    - gf_mesh_build_aabbtree
    - memset
    - mesh_generate_tex_coords
    - MESH_MAKE_COL
    - mesh_reset
    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:
    - gf_node_set_callback_function
    - ITS_SetIndex
    - gf_sys_is_cov_mode
    - drawable_3d_new
    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:
    - mesh_update_bounds
    - gf_node_get_tag
    - gf_vec_add
    - gf_vec_norm
    - GF_LOG
    - mesh_set_vertex_vx
    - mesh_recompute_normals
    - MESH_GET_NORMAL
    - gf_vec_scale
    - MESH_SET_NORMAL
    - mesh_set_triangle
    - gf_sg_sfcolor_to_rgba
    - gf_mesh_build_aabbtree
    - memset
    - mesh_generate_tex_coords
    - MESH_MAKE_COL
    - mesh_reset
    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:
    - gf_sg_vrml_mf_reset
    - gf_sg_vrml_mf_append
    - BuildTriangleStripSet
    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:
    - gf_node_set_callback_function
    - ITSS_SetIndex
    - gf_sys_is_cov_mode
    - drawable_3d_new
    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:
    - mesh_update_bounds
    - gf_node_get_tag
    - gf_vec_add
    - gf_vec_norm
    - GF_LOG
    - mesh_set_vertex_vx
    - mesh_recompute_normals
    - MESH_GET_NORMAL
    - MESH_SET_NORMAL
    - mesh_set_triangle
    - gf_sg_sfcolor_to_rgba
    - gf_mesh_build_aabbtree
    - memset
    - mesh_generate_tex_coords
    - MESH_MAKE_COL
    - mesh_reset
    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
    - gf_sg_vrml_mf_append
    - BuildTriangleFanSet
    - 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:
    - gf_node_set_callback_function
    - ITFS_SetIndex
    - gf_sys_is_cov_mode
    - drawable_3d_new
    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_sg_vrml_field_pointer_new
    - gf_list_count
    - gf_malloc
    - memset
    - gf_list_add
    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:
    - IS_ProcessData
    - gf_list_enum
    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:
    - add_field
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_modules_close_interface
    - gf_list_add
    - gf_modules_load
    - gf_crc_32
    - gf_utf8_mbstowcs
    - isdev_dispatch_frame
    - gf_bs_read_int
    - gf_list_new
    - GF_InputSensorDevice*::RegisterDevice
    - gf_free
    - stricmp
    - gf_sys_is_cov_mode
    - gf_modules_count
    - isdev_add_field
    - locate_is_ctx_for_odm
    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_list_count
    - gf_free
    - gf_sg_vrml_field_pointer_del
    - gf_list_del
    - gf_list_del_item
    - gf_list_get
    - locate_is_ctx_for_odm
    - 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_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:404,1
    - Dst: gf_scene_get_time
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:405,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:407,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:408,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:409,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:411,1
    - Dst: gf_sg_command_apply
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:412,1
    - Dst: gf_sc_lock
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:416,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 121
    argCount: 3
    argNames:
    - is_ctx
    - inBuffer
    - inBufferLength
    argTypes:
    - GF_InputSensorCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 269
    functionDepth: 16
    functionLinenumber: 269
    functionLinenumberEnd: 418
    functionName: IS_ProcessData
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_bs_new
    - gf_bs_del
    - gf_sg_command_apply
    - gf_bs_read_float
    - gf_scene_get_time
    - gf_sc_lock
    - gf_malloc
    - gf_list_get
    - memcpy
    - gf_sg_vrml_field_copy
    - gf_utf8_wcslen
    - gf_list_enum
    - gf_bs_read_double
    - gf_bs_read_int
    - FLT2FIX
    - gf_free
    - gf_utf8_wcstombs
    - gf_bs_available
    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:429,1
    - Dst: locate_is_ctx_for_odm
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:436,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:439,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:443,1
    - Dst: GF_InputSensorCtx*::io_dev::Stop
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:447,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - node
    - st
    argTypes:
    - GF_Node*
    - ISStack*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 424
    functionDepth: 6
    functionLinenumber: 424
    functionLinenumberEnd: 449
    functionName: InputSensorUnregister
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_mo_unregister
    - gf_list_del_item
    - locate_is_ctx_for_odm
    - gf_mo_stop
    - 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:456,1
    - Dst: locate_is_ctx_for_odm
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:461,1
    - Dst: gf_list_find
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:464,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:465,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:468,1
    - Dst: gf_sc_unqueue_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:470,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:474,1
    - Dst: GF_InputSensorCtx*::io_dev::Start
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:477,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - n
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 451
    functionDepth: 3
    functionLinenumber: 451
    functionLinenumberEnd: 481
    functionName: InputSensorRegister
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_sc_unqueue_node_traverse
    - gf_node_get_private
    - gf_mo_play
    - gf_list_enum
    - gf_list_find
    - gf_list_add
    - GF_InputSensorCtx*::io_dev::Start
    - locate_is_ctx_for_odm
    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:485,1
    - Dst: InputSensorUnregister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:490,1
    - Dst: gf_sg_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:491,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:491,1
    - Dst: gf_sc_unqueue_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:492,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:493,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:496,1
    - Dst: InputSensorRegister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:498,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 483
    functionDepth: 7
    functionLinenumber: 483
    functionLinenumberEnd: 500
    functionName: TraverseInputSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_sc_unqueue_node_traverse
    - gf_free
    - InputSensorUnregister
    - gf_node_get_private
    - gf_mo_register
    - gf_sg_get_private
    - InputSensorRegister
    - gf_node_get_graph
    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:506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:508,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:512,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:513,1
    - Dst: gf_sc_queue_node_traverse
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 503
    functionDepth: 2
    functionLinenumber: 503
    functionLinenumberEnd: 516
    functionName: InitInputSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_sc_queue_node_traverse
    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:522,1
    - Dst: gf_mo_register
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:524,1
    - Dst: InputSensorUnregister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:527,1
    - Dst: InputSensorRegister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:531,1
    - Dst: InputSensorUnregister
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:535,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 519
    functionDepth: 7
    functionLinenumber: 519
    functionLinenumberEnd: 538
    functionName: InputSensorModified
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 2
    functionsReached:
    - InputSensorUnregister
    - gf_node_get_private
    - InputSensorRegister
    - 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:558,1
    - Dst: gf_sc_map_point
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:585,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:586,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:587,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:589,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:593,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:595,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:596,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:596,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:597,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:597,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:599,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:600,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:606,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:608,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:609,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:609,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:612,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:613,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:614,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:618,1
    - Dst: IS_ProcessData
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:620,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:623,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 68
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_EventMouse*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 545
    functionDepth: 17
    functionLinenumber: 545
    functionLinenumberEnd: 624
    functionName: gf_sc_input_sensor_mouse_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - FIX2FLT
    - IS_ProcessData
    - gf_bs_align
    - gf_divfix
    - gf_free
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_list_enum
    - gf_bs_new
    - gf_sc_map_point
    - gf_bs_del
    - 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:642,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:642,1
    - Dst: memset
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:644,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:650,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:750,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:751,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_align
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:765,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:766,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:767,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:771,1
    - Dst: IS_ProcessData
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:773,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:776,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:780,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:785,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:789,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:793,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:795,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:796,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:798,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:801,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:805,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:807,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:808,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:810,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:814,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:818,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:822,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:826,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:830,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:835,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:839,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: 845
      start: 626
    functionDepth: 17
    functionLinenumber: 626
    functionLinenumberEnd: 845
    functionName: gf_sc_input_sensor_keyboard_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - IS_ProcessData
    - gf_free
    - gf_bs_align
    - gf_node_get_tag
    - gf_malloc
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_list_enum
    - gf_bs_new
    - gf_bs_del
    - gf_utf8_wcstombs
    - gf_node_event_out_str
    - memset
    - memcpy
    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:860,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:860,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:864,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:870,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:871,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:872,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:873,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:874,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:875,1
    - Dst: IS_ProcessData
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:877,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:879,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:887,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:892,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:895,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:902,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:904,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:906,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:907,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:910,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:912,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:914,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:915,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:921,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:923,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:925,1
    - Dst: gf_node_event_out_str
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:926,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 65
    argCount: 2
    argNames:
    - compositor
    - character
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 847
    functionDepth: 17
    functionLinenumber: 847
    functionLinenumberEnd: 930
    functionName: gf_sc_input_sensor_string_input
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - IS_ProcessData
    - gf_free
    - gf_bs_align
    - gf_node_get_tag
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_node_get_private
    - gf_list_enum
    - gf_bs_new
    - gf_bs_del
    - gf_utf8_wcstombs
    - gf_node_event_out_str
    - gf_strdup
    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:937,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:938,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 934
    functionDepth: 2
    functionLinenumber: 934
    functionLinenumberEnd: 940
    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:943,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:944,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:946,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:948,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 949
      start: 941
    functionDepth: 2
    functionLinenumber: 941
    functionLinenumberEnd: 949
    functionName: InitKeySensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_node_set_callback_function
    - gf_list_add
    - gf_node_set_private
    - gf_list_new
    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:954,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:955,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:956,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 951
    functionDepth: 2
    functionLinenumber: 951
    functionLinenumberEnd: 958
    functionName: DestroyStringSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - gf_node_get_private
    - gf_free
    - 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:962,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:964,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:968,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:969,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:972,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/mpeg4_inputsensor.c:974,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - scene
    - node
    argTypes:
    - GF_Scene*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 959
    functionDepth: 2
    functionLinenumber: 959
    functionLinenumberEnd: 975
    functionName: InitStringSensor
    functionSourceFile: /src/gpac/src/compositor/mpeg4_inputsensor.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - gf_node_set_callback_function
    - gf_list_add
    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: 983
      start: 980
    functionDepth: 0
    functionLinenumber: 980
    functionLinenumberEnd: 983
    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: 988
      start: 984
    functionDepth: 0
    functionLinenumber: 984
    functionLinenumberEnd: 988
    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: 992
      start: 989
    functionDepth: 0
    functionLinenumber: 989
    functionLinenumberEnd: 992
    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_mx2d_init
    - gf_list_count
    - gf_node_get_tag
    - gf_node_dirty_get
    - parent_node_reset
    - gf_path_iterator_get_transform
    - gf_mx2d_add_translation
    - gf_path_iterator_get_length
    - parent_node_traverse
    - gf_list_get
    - gf_path_iterator_new
    - gf_mx_init
    - parent_node_predestroy
    - gf_node_get_private
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_mulfix
    - gf_free
    - gf_mx_copy
    - parent_node_child_traverse_matrix
    - gf_path_iterator_del
    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_SAFEALLOC
    - gf_node_set_private
    - parent_node_setup
    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_texture_path
    - visual_2d_draw_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:
    - drawable_draw
    - gf_node_allow_cyclic_traverse
    - gf_evg_surface_set_mask_mode
    - gf_node_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:
    - drawable_get_strikeinfo
    - gf_path_point_over
    - gf_list_count
    - gf_divfix
    - gf_mx2d_apply_coords
    - gf_mx2d_inverse
    - gf_mx2d_copy
    - compositor_is_composite_texture
    - visual_3d_vrml_drawable_pick
    - gf_list_get
    - gf_mx_from_mx2d
    - memset
    - gf_list_add
    - gf_list_reset
    - 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_LOG
    - gf_path_del
    - GF_SAFEALLOC
    - gf_path_new
    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:
    - mesh_free
    - ra_add
    - gf_free
    - gf_sc_visual_is_registered
    - gf_path_del
    - visual_2d_drawable_delete
    - gf_list_del_item
    - delete_strikeinfo2d
    - gf_sc_next_frame_state
    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:
    - drawable_del_ex
    - gf_sc_get_compositor
    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:
    - gf_node_set_private
    - drawable_new
    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_SAFEALLOC
    - gf_node_get_class_name
    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_get_private
    - gf_node_set_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_LOG
    - gf_free
    - 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:
    - drawctx_reset
    - gf_free
    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:
    - memset
    - gf_free
    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_get_private
    - gf_node_dirty_clear
    - gf_node_dirty_get
    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_sc_texture_get_handler
    - gf_node_get_tag
    - gf_divfix
    - drawable_lineprops_dirty
    - GF_COL_ARGB_FIXED
    - GF_COL_A
    - gf_cmx_apply
    - FIX2INT
    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: 13
    BranchProfiles: []
    Callsites:
    - 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: 14
    EdgeCount: 14
    ICount: 47
    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_node_dirty_get
    - visual_2d_get_drawable_context
    - GF_LOG
    - check_transparent_skip
    - visual_2d_remove_last_context
    - drawable_check_texture_dirty
    - gf_cmx_copy
    - GF_SAFEALLOC
    - 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:
    - visual_2d_overlaps_overlay
    - call_drawable_draw
    - gf_irect_union
    - gf_assert
    - gf_mx2d_copy
    - gf_irect_intersect
    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_mx_apply_rect
    - gf_mx2d_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:
    - drawable_get_strikeinfo
    - FLT2FIX
    - gf_path_get_bounds
    - gf_divfix
    - drawable_finalize_end
    - drawable_check_focus_highlight
    - gf_v2d_len
    - drawable_compute_line_scale
    - gf_rect_pixelize
    - gf_mulfix
    - gf_mx2d_apply_rect
    - drawable_check_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_mx2d_init
    - gf_list_count
    - gf_path_reset
    - visual_3d_draw_2d_with_aspect
    - visual_2d_get_drawable_context
    - gf_node_get_private
    - drawable_reset_path
    - gf_mx2d_copy
    - gf_node_set_private
    - gf_list_get
    - gf_sc_get_nodes_bounds
    - drawable_finalize_sort_ex
    - gf_path_add_rect
    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_path_del
    - gf_free
    - 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:
    - mesh_free
    - gf_node_get_tag
    - gf_free
    - gf_divfix
    - drawable_lineprops_dirty
    - gf_path_del
    - gf_path_get_outline
    - gf_list_del_item
    - GF_SAFEALLOC
    - drawable_compute_line_scale
    - gf_mulfix
    - gf_list_add
    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:
    - mesh_free
    - gf_path_reset
    - drawable_reset_path_outline
    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_node_get_private
    - gf_list_enum
    - gf_assert
    - delete_strikeinfo2d
    - 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_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_sc_texture_get_handler
    - gf_node_get_tag
    - gf_free
    - gf_node_register_iri
    - compositor_svg_solid_color_dirty
    - MIN
    - gf_node_traverse
    - GF_COL_ARGB_FIXED
    - gf_svg_flatten_attributes
    - gf_node_get_graph
    - MAX
    - gf_mulfix
    - gf_sg_find_node_by_name
    - gf_cmx_apply
    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: 22
    BranchProfiles: []
    Callsites:
    - 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: 23
    EdgeCount: 23
    ICount: 61
    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_sc_texture_get_handler
    - gf_node_get_tag
    - visual_2d_get_drawable_context
    - GF_LOG
    - drawable_init_context_mpeg4
    - gf_node_get_log_name
    - drawable_check_texture_dirty
    - gf_mx2d_copy
    - gf_cmx_copy
    - GF_SAFEALLOC
    - gf_sg_find_node_by_name
    - drawable_get_aspect_2d_svg
    - svg_appearance_flag_dirty
    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_sc_texture_destroy
    - gf_node_get_private
    - gf_free
    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_node_get_attribute_by_tag
    - gf_node_register_iri
    - gf_svg_flatten_attributes
    - gf_node_get_graph
    - gf_sg_find_node_by_name
    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_node_get_tag
    - gf_node_dirty_get
    - GF_COL_ARGB_FIXED
    - svg_copy_gradient_attributes_from
    - gf_evg_stencil_new
    - gf_evg_stencil_set_gradient_mode
    - gf_evg_stencil_set_gradient_interpolation
    - gf_malloc
    - gf_node_dirty_clear
    - compositor_svg_traverse_base
    - memcpy
    - gf_node_animation_count
    - gf_node_get_private
    - gf_sc_texture_set_stencil
    - gf_node_list_get_count
    - gf_free
    - gf_sc_texture_get_stencil
    - gf_sc_texture_allocate
    - GF_COL_A
    - gf_svg_flatten_attributes
    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_node_dirty_get
    - svg_gradient_traverse
    - GF_SAFEALLOC
    - 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: 1
    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_mx2d_init
    - gf_path_add_move_to
    - gf_mx2d_add_scale
    - INT2FIX
    - gf_evg_stencil_new
    - gf_path_add_line_to
    - gf_mx2d_add_translation
    - gf_malloc
    - compositor_svg_get_gradient_bounds
    - gf_list_find
    - gf_path_new
    - gf_list_insert
    - gf_evg_stencil_delete
    - gf_evg_surface_new
    - GF_TextureHandler*::compute_gradient_matrix
    - gf_evg_stencil_set_matrix
    - gf_path_close
    - gf_sc_texture_set_data
    - gf_divfix
    - gf_evg_surface_delete
    - gf_evg_surface_set_path
    - gf_node_get_private
    - gf_path_del
    - gf_mx2d_copy
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_surface_set_raster_level
    - gf_evg_surface_fill
    - gf_free
    - gf_sc_texture_get_stencil
    - gf_evg_stencil_set_texture
    - gf_evg_surface_attach_to_texture
    - gf_svg_flatten_attributes
    - memset
    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:
    - svg_update_gradient
    - gf_node_get_private
    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:
    - svg_update_gradient
    - gf_mx2d_init
    - gf_mx2d_add_translation
    - gf_sc_texture_get_stencil
    - gf_divfix
    - gf_evg_stencil_set_linear_gradient
    - gf_node_get_private
    - compositor_svg_get_gradient_bounds
    - gf_mx2d_add_scale
    - gf_mx2d_copy
    - gf_svg_flatten_attributes
    - svg_copy_gradient_attributes_from
    - gf_evg_stencil_set_gradient_mode
    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_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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:
    - svg_update_gradient
    - gf_node_get_private
    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:
    - svg_update_gradient
    - gf_mx2d_init
    - gf_mx2d_add_translation
    - gf_sc_texture_get_stencil
    - gf_divfix
    - gf_node_get_private
    - compositor_svg_get_gradient_bounds
    - gf_mx2d_add_scale
    - gf_muldiv
    - gf_mx2d_inverse
    - gf_mx2d_copy
    - gf_v2d_distance
    - gf_svg_flatten_attributes
    - svg_copy_gradient_attributes_from
    - gf_evg_stencil_set_radial_gradient
    - gf_evg_stencil_set_gradient_mode
    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_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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:
    - SVG_DestroyPaintServer
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - memcpy
    - 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_get_private
    - gf_node_dirty_clear
    - gf_node_dirty_get
    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:
    - svg_traverse_PaintServer
    - gf_node_get_private
    - gf_free
    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_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    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:
    - gf_node_get_private
    - SVG_GradientStack*::txh::update_texture_fcnt
    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_evg_surface_set_mask_mode
    - GF_LOG
    - gf_node_get_private
    - GF_TraverseState*::visual::CheckAttached
    - gf_mx2d_copy
    - gf_evg_surface_get_mask_mode
    - gf_svg_properties_init_pointers
    - compositor_svg_traverse_children
    - gf_svg_properties_reset_pointers
    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_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    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:
    - CHECK_FIELD
    - memset
    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:
    - visual_3d_draw
    - drawable_3d_del
    - gf_node_get_tag
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - mesh_extrude_path
    - gf_node_get_private
    - PathExtrusion_GetNode
    - compositor_extrude_text
    - gf_node_traverse
    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:
    - CHECK_FIELD
    - memset
    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
    - PlanarExtrusion_GetNode
    - gf_sg_vrml_mf_alloc
    - gf_mesh_build_aabbtree
    - gf_vec_diff
    - mesh_extrude_path_ext
    - gf_node_dirty_clear
    - gf_path_flatten
    - visual_3d_draw
    - drawable_3d_del
    - gf_divfix
    - gf_node_get_private
    - gf_node_traverse
    - gf_mulfix
    - gf_vec_len
    - mesh_update_bounds
    - gf_path_get_bounds
    - gf_sg_vrml_mf_reset
    - gf_sg_sfrotation_interpolate
    - mesh_reset
    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:
    - CHECK_FIELD
    - memset
    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:
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_mx_copy
    - visual_3d_reset_clip_plane
    - gf_node_get_private
    - group_3d_delete
    - visual_3d_set_clip_plane
    - gf_mx_apply_plane
    - 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_LOG
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_proto_set_grouping
    - PlaneClipper_GetNode
    - gf_node_dirty_set
    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:
    - CHECK_FIELD
    - memset
    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:
    - group_cache_new
    - gf_free
    - gf_node_get_field
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - group_cache_del
    - gf_node_get_private
    - OffscreenGroup_GetNode
    - group_2d_traverse
    - group_cache_draw
    - group_cache_traverse
    - vrml_drawable_pick
    - gf_node_unregister_children
    - gf_node_dirty_set
    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_LOG
    - OffscreenGroup_GetNode
    - GF_SAFEALLOC
    - gf_node_set_private
    - 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:
    - CHECK_FIELD
    - memset
    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_mx_add_matrix
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_mx_copy
    - gf_mx_init
    - gf_node_get_private
    - group_2d_traverse
    - DepthGroup_GetNode
    - gf_mulfix
    - gf_node_dirty_set
    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_LOG
    - DepthGroup_GetNode
    - GF_SAFEALLOC
    - 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_get_field
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_sc_invalidate
    - gf_node_dirty_set
    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:
    - CHECK_FIELD
    - memset
    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:
    - new_mesh
    - gf_path_get_bounds
    - gf_node_dirty_get
    - gf_node_get_private
    - visual_3d_draw_2d
    - drawable_init_context_mpeg4
    - IndexedCurve2D_GetNode
    - drawable_node_del
    - curve2d_check_changes
    - vrml_drawable_pick
    - mesh_from_path
    - drawable_finalize_sort
    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:
    - CHECK_FIELD
    - memset
    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:
    - gf_mx2d_init
    - gf_mx_copy
    - gf_mx_init
    - gf_node_traverse_children
    - group_2d_traverse
    - visual_3d_set_viewport
    - INT2FIX
    - gf_mx2d_copy
    - camera_invalidate
    - visual_3d_projection_matrix_modified
    - memcpy
    - camera_update
    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_clear
    - gf_node_dirty_get
    - TraverseUntransformEx
    - gf_node_get_private
    - Untransform_GetNode
    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_LOG
    - GF_SAFEALLOC
    - 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:
    - CHECK_FIELD
    - memset
    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:
    - StyleGroup_GetNode
    - gf_free
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_node_get_private
    - group_2d_traverse
    - gf_node_dirty_set
    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:
    - StyleGroup_GetNode
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_proto_set_grouping
    - gf_node_set_callback_function
    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:
    - CHECK_FIELD
    - memset
    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_node_get_private
    - gf_free
    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:
    - gf_node_get_private
    - gf_node_get_field
    - gf_node_event_out
    - TestSensor_GetNode
    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_LOG
    - TestSensor_GetNode
    - gf_node_set_proto_eventin_handler
    - GF_SAFEALLOC
    - gf_node_set_private
    - 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:
    - CHECK_FIELD
    - memset
    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_sc_texture_destroy
    - gf_node_get_private
    - gf_free
    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
    - CustomTexture_GetNode
    - FIX2FLT
    - gf_node_get_private
    - gf_sc_texture_allocate
    - gf_sc_texture_push_image
    - glTexImage2D
    - gf_sc_texture_get_gl_id
    - memset
    - glBindTexture
    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:
    - CustomTexture_GetNode
    - GF_LOG
    - gf_sc_texture_setup
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - 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
    - INT2FIX
    - gf_plane_get_distance
    - gf_mo_get_srd_info
    - gf_node_dirty_clear
    - visual_3d_enable_depth_buffer
    - visual_3d_vrml_drawable_pick
    - mesh_new_sphere
    - visual_3d_draw
    - drawable_3d_del
    - gf_mo_hint_quality_degradation
    - gf_node_get_private
    - gf_filter_pid_get_name
    - visual_3d_setup_ray
    - MAX
    - visual_3d_enable_antialias
    - gf_sc_texture_stop_no_unregister
    - gf_sc_texture_get_handler
    - gf_sc_texture_play_from_to
    - GF_LOG
    - mesh_reset
    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:
    - gf_mx_copy
    - gf_vec_norm
    - gf_mx_add_rotation
    - gf_node_get_private
    - gf_mx_init
    - visual_3d_set_viewport
    - gf_node_traverse
    - visual_3d_enable_depth_buffer
    - visual_3d_projection_matrix_modified
    - gf_atan2
    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_LOG
    - gf_sg_get_parent
    - gf_node_set_private
    - gf_node_get_graph
    - gf_node_proto_set_grouping
    - gf_sg_find_node_by_name
    - gf_node_set_callback_function
    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:
    - gf_filter_pid_get_property
    - gf_node_dirty_get
    - INT2FIX
    - gf_mo_hint_visible_rect
    - gf_mo_get_srd_info
    - gf_node_dirty_clear
    - visual_3d_enable_depth_buffer
    - visual_3d_vrml_drawable_pick
    - mesh_new_sphere
    - visual_3d_draw
    - drawable_3d_del
    - get_tx_coords_from_angle
    - gf_mo_hint_gaze
    - gf_node_get_private
    - gf_filter_pid_get_name
    - visual_3d_setup_ray
    - MAX
    - visual_3d_enable_antialias
    - gf_sc_texture_get_handler
    - mesh_new_spherical_srd
    - GF_LOG
    - FIX2INT
    - mesh_reset
    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_srd_sphere
    - compositor_init_planar_extrusion
    - compositor_init_plane_clipper
    - gf_node_get_proto
    - compositor_init_idx_curve2d
    - compositor_init_depth_viewpoint
    - compositor_init_hc_flashshape
    - GF_HardcodedProto*::can_load_proto
    - compositor_init_untransform
    - gf_sg_proto_get_extern_url
    - compositor_init_offscreen_group
    - gf_list_enum
    - compositor_init_vr_geometry
    - compositor_init_style_group
    - strcmp
    - compositor_init_depth_group
    - compositor_init_path_extrusion
    - compositor_init_test_sensor
    - GF_HardcodedProto*::init
    - compositor_init_custom_texture
    - compositor_init_vrhud
    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_HardcodedProto*::can_load_proto
    - gf_list_enum
    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_node_get_private
    - gf_sg_proto_get_extern_url
    - gf_node_get_proto
    - strcmp
    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_VisualManager*::GetSurfaceAccess
    - gf_evg_surface_new
    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_matrix
    - gf_path_new
    - gf_path_del
    - gf_evg_surface_set_clipper
    - gf_evg_surface_set_path
    - gf_path_get_outline
    - gf_evg_surface_fill
    - memset
    - gf_path_add_rect_center
    - 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:
    - ra_union_rect
    - GF_LOG
    - gf_evg_surface_set_clipper
    - gf_node_get_log_name
    - gf_node_get_class_name
    - gf_evg_surface_clear
    - gf_evg_surface_fill
    - gf_irect_intersect
    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: 1
    functionLinenumber: 171
    functionLinenumberEnd: 219
    functionName: visual_2d_get_texture_transform
    functionSourceFile: /src/gpac/src/compositor/visual_manager_2d_draw.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_node_get_tag
    - gf_mx2d_add_translation
    - gf_mx2d_add_scale
    - gf_mx2d_inverse
    - tr_mx2d_get_matrix
    - gf_mulfix
    - gf_mx2d_add_rotation
    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_translation
    - gf_sc_texture_get_stencil
    - gf_path_get_bounds
    - gf_evg_surface_set_matrix
    - gf_evg_surface_set_path
    - visual_2d_fill_path
    - gf_evg_stencil_set_color_matrix
    - INT2FIX
    - GF_COL_A
    - gf_evg_stencil_set_auto_matrix
    - visual_2d_get_texture_transform
    - gf_evg_stencil_set_alpha
    - gf_evg_stencil_set_matrix
    - GF_TextureHandler*::compute_gradient_matrix
    - gf_mx2d_add_matrix
    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_init
    - GF_VisualManager*::CheckAttached
    - gf_mx2d_add_scale
    - INT2FIX
    - GF_COL_R
    - GF_COL_G
    - gf_mx2d_add_translation
    - gf_evg_stencil_set_color_matrix
    - gf_evg_stencil_set_matrix
    - gf_divfix
    - gf_evg_surface_set_matrix
    - gf_evg_surface_set_path
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_alpha
    - visual_2d_set_options
    - gf_sc_texture_get_stencil
    - visual_2d_fill_path
    - GF_COL_A
    - memset
    - GF_COL_B
    - gf_mx2d_add_matrix
    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_evg_surface_clear
    - GF_COL_A
    - visual_2d_draw_path_extended
    - compositor_2d_hybgl_flush_video
    - gf_irect_inside
    - 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:
    - gf_mx_add_matrix
    - gf_mx_copy
    - visual_3d_set_clipper_2d
    - gf_mx_init
    - gf_mx_add_scale
    - visual_2d_flush_hybgl_canvas
    - INT2FIX
    - gf_cmx_copy
    - gf_node_traverse
    - gf_node_allow_cyclic_traverse
    - gf_cmx_init
    - visual_3d_reset_clipper_2d
    - gf_mx_add_translation
    - gf_mx_from_mx2d
    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:
    - gf_mx2d_init
    - GF_VisualManager*::CheckAttached
    - gf_mx2d_add_scale
    - gf_mx2d_add_translation
    - gf_mo_get_visual_info
    - compositor_texture_rectangles
    - gf_evg_stencil_set_color_matrix
    - gf_evg_stencil_set_matrix
    - gf_evg_surface_set_matrix
    - gf_evg_surface_set_path
    - gf_sc_texture_push_image
    - visual_2d_draw_gradient
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_stencil_set_alpha
    - gf_node_dirty_set
    - visual_2d_set_options
    - gf_sc_texture_get_stencil
    - gf_path_get_bounds
    - visual_2d_fill_path
    - gf_evg_stencil_set_mapping
    - GF_COL_A
    - visual_2d_get_texture_transform
    - visual_2d_texture_path_opengl_auto
    - gf_mx2d_add_matrix
    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:
    - GF_COL_A
    - visual_2d_draw_path
    - visual_2d_texture_path_extended
    - GF_VisualManager*::CheckAttached
    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:
    - drawable_get_strikeinfo
    - draw_clipper
    - GF_VisualManager*::CheckAttached
    - visual_2d_set_options
    - gf_evg_surface_set_matrix
    - gf_evg_surface_set_path
    - gf_path_del
    - visual_2d_fill_path
    - gf_evg_surface_clear
    - GF_COL_A
    - visual_2d_texture_path_extended
    - gf_evg_stencil_set_brush_color
    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_close
    - draw_clipper
    - GF_VisualManager*::CheckAttached
    - gf_evg_surface_set_matrix
    - visual_2d_set_options
    - gf_path_add_move_to
    - gf_evg_surface_set_path
    - gf_path_del
    - gf_path_get_outline
    - visual_2d_fill_path
    - memset
    - gf_evg_stencil_set_brush_color
    - gf_path_new
    - gf_path_add_line_to
    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_path_close
    - visual_2d_set_options
    - GF_VisualManager*::CheckAttached
    - gf_evg_surface_set_matrix
    - gf_path_add_move_to
    - ra_union_rect
    - gf_evg_surface_set_path
    - gf_evg_surface_set_clipper
    - gf_path_del
    - gf_path_get_outline
    - memset
    - INT2FIX
    - gf_evg_stencil_set_brush_color
    - gf_evg_surface_set_raster_level
    - gf_evg_surface_fill
    - gf_path_new
    - gf_path_add_line_to
    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_list_count
    - gf_node_get_tag
    - gf_node_get_private
    - gf_list_get
    - stricmp
    - gf_utf8_mbstowcs
    - gf_svg_flatten_attributes
    - strcmp
    - strlen
    - strstr
    - gf_utf8_reorder_bidi
    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_private
    - gf_node_get_tag
    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_node_get_private
    - gf_font_manager_unregister_font
    - gf_free
    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_private
    - gf_node_get_tag
    - gf_assert
    - 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_free
    - GF_LOG
    - gf_dom_listener_build
    - gf_strdup
    - gf_node_get_parent
    - GF_SAFEALLOC
    - gf_svg_flatten_attributes
    - gf_node_set_private
    - FIX2INT
    - gf_ceil
    - gf_node_set_callback_function
    - gf_font_manager_register_font
    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_node_get_private
    - gf_free
    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_malloc
    - gf_path_get_bounds
    - gf_node_get_private
    - gf_node_set_callback_function
    - gf_node_get_parent
    - GF_SAFEALLOC
    - gf_svg_flatten_attributes
    - gf_utf8_mbstowcs
    - FIX2INT
    - gf_ceil
    - gf_node_set_private
    - memcpy
    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:
    - strchr
    - gf_node_get_tag
    - gf_mo_load_xlink_resource
    - gf_node_get_private
    - gf_mo_get_scenegraph
    - gf_svg_flatten_attributes
    - gf_node_get_graph
    - gf_mo_is_done
    - gf_sg_find_node_by_name
    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_node_get_private
    - gf_font_manager_unregister_font
    - gf_free
    - gf_mo_unload_xlink_resource
    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_free
    - gf_compositor_svg_set_font
    - GF_LOG
    - svg_font_uri_check
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    - gf_node_get_parent
    - gf_svg_flatten_attributes
    - gf_node_set_private
    - gf_strdup
    - gf_font_manager_register_font
    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_mx2d_pre_multiply
    - gf_mx_copy
    - gf_mx_init
    - gf_mx_add_scale
    - gf_mx2d_copy
    - gf_mx_add_matrix_2d
    - gf_mx_add_translation
    - gf_mx_from_mx2d
    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_mx_copy
    - gf_mx2d_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_count
    - strchr
    - gf_filter_is_supported_mime
    - stricmp
    - gf_lang_find
    - strnicmp
    - strcmp
    - gf_list_get
    - gf_opts_get_key
    - 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_node_dirty_get
    - gf_svg_apply_animations
    - gf_svg_apply_inheritance
    - compositor_svg_evaluate_conditional
    - memcpy
    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_rem
    - gf_font_manager_delete_span
    - gf_list_get
    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_rect_union
    - gf_list_enum
    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_font_spans_draw_3d
    - gf_list_enum
    - 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:
    - strchr
    - gf_free
    - strlen
    - gf_strdup
    - gf_font_manager_set_font_ex
    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:
    - svg_get_font_styles
    - gf_compositor_svg_set_font
    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_font_manager_create_span
    - gf_free
    - gf_malloc
    - strlen
    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_reset
    - gf_list_get
    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_add
    - gf_malloc
    - gf_list_get
    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_set_font
    - svg_text_area_queue_state
    - svg_text_area_reset_state
    - svg_text_area_apply_diff_baselines
    - gf_mulfix
    - gf_list_add
    - svg_get_text_span
    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:
    - gf_list_count
    - gf_malloc
    - gf_font_manager_delete_span
    - svg_set_font
    - gf_list_last
    - gf_list_add
    - svg_get_text_span
    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:
    - get_domtext_width
    - gf_node_get_tag
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - get_tspan_width
    - memcpy
    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:
    - svg_set_font
    - gf_list_get
    - svg_traverse_dom_text_area
    - gf_mulfix
    - gf_sc_next_frame_state
    - gf_list_add
    - svg_get_text_span
    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:
    - get_domtext_width
    - gf_node_get_tag
    - svg_compute_text_width
    - compositor_svg_evaluate_conditional
    - get_tspan_width
    - gf_svg_flatten_attributes
    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
    - compositor_svg_evaluate_conditional
    - gf_svg_flatten_attributes
    - svg_traverse_text_block
    - gf_node_dirty_set
    - svg_traverse_domtext
    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_rect_union
    - gf_list_enum
    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_list_count
    - gf_node_get_tag
    - gf_node_dirty_get
    - svg_text_draw_2d
    - svg_finalize_sort
    - gf_list_rem_last
    - drawable_del
    - drawable_mark_modified
    - gf_node_dirty_clear
    - svg_compute_text_width
    - compositor_svg_traverse_base
    - gf_font_spans_get_selection
    - gf_font_spans_pick
    - gf_list_get
    - drawable_reset_path
    - memcpy
    - gf_list_last
    - svg_update_bounds
    - gf_node_get_private
    - gf_node_traverse
    - compositor_svg_apply_local_transformation
    - gf_list_new
    - compositor_svg_restore_parent_transformation
    - gf_free
    - svg_apply_text_anchor
    - svg_reset_text_stack
    - gf_list_del
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - svg_traverse_text_block
    - 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_LOG
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_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_node_get_tag
    - gf_node_dirty_get
    - svg_text_draw_2d
    - svg_finalize_sort
    - svg_traverse_domtext
    - drawable_del
    - drawable_mark_modified
    - gf_node_dirty_clear
    - compositor_svg_traverse_base
    - gf_font_spans_get_selection
    - gf_font_spans_pick
    - memcpy
    - svg_update_bounds
    - gf_node_get_private
    - svg_text_area_shift_bounds
    - gf_node_traverse
    - compositor_svg_apply_local_transformation
    - compositor_svg_restore_parent_transformation
    - gf_node_dirty_set
    - gf_free
    - svg_reset_text_stack
    - gf_list_del
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - 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_LOG
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_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_node_get_tag
    - gf_node_dirty_get
    - svg_text_draw_2d
    - svg_finalize_sort
    - drawable_del
    - drawable_mark_modified
    - gf_node_dirty_clear
    - compositor_svg_traverse_base
    - drawable_reset_path
    - gf_font_spans_get_selection
    - gf_font_spans_pick
    - memcpy
    - svg_update_bounds
    - gf_node_get_private
    - svg_text_area_shift_bounds
    - svg_traverse_dom_text_area
    - gf_node_traverse
    - compositor_svg_apply_local_transformation
    - gf_list_new
    - compositor_svg_restore_parent_transformation
    - gf_node_dirty_set
    - gf_free
    - svg_reset_text_stack
    - gf_list_del
    - gf_svg_flatten_attributes
    - svg_text_area_reset_state
    - compositor_svg_is_display_off
    - 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_LOG
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_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:
    - memcpy
    - gf_svg_flatten_attributes
    - svg_text_area_reset_state
    - compositor_svg_traverse_base
    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_list_rem
    - gf_free
    - gf_list_get
    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_SAFEALLOC
    - gf_list_add
    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:
    - layout_reset_lines
    - new_line_info
    - gf_list_count
    - gf_list_get
    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_count
    - MAX
    - gf_mulfix
    - gf_list_get
    - get_lines_info
    - get_justify
    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:
    - layout_setup_scroll_bounds
    - FIX2FLT
    - gf_node_get_scene_time
    - FLT2FIX
    - gf_divfix
    - gf_list_count
    - gf_list_enum
    - INT2FIX
    - gf_sc_invalidate
    - ABS
    - gf_mulfix
    - gf_list_get
    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:
    - layout_setup_scroll_bounds
    - gf_node_dirty_get
    - parent_node_reset
    - compositor_2d_update_clipper
    - gf_bbox_from_rect
    - layout_scroll
    - parent_node_traverse
    - gf_rect_center
    - parent_node_predestroy
    - gf_node_get_private
    - gf_list_enum
    - parent_node_child_traverse
    - gf_rect_pixelize
    - gf_mulfix
    - layout_justify
    - gf_free
    - gf_list_del
    - layout_reset_lines
    - GF_LOG
    - gf_sc_pick_in_clipper
    - visual_get_size_info
    - drawable_reset_group_highlight
    - drawable_check_focus_highlight
    - 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:
    - parent_node_setup
    - compositor_mpeg4_layout_get_sensor_handler
    - GF_LOG
    - OnLayout
    - gf_sys_is_cov_mode
    - GF_SAFEALLOC
    - gf_node_set_private
    - layout_is_enabled
    - gf_list_new
    - gf_node_set_callback_function
    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_get_private
    - gf_node_dirty_set
    - 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_texture_destroy
    - gf_node_get_private
    - gf_free
    - gf_sc_unregister_time_node
    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_sc_texture_play_from_to
    - gf_node_event_out
    - gf_mo_set_speed
    - gf_mo_resume
    - gf_mo_get_loop
    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_sc_texture_stop_no_unregister
    - gf_node_event_out
    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:
    - gf_mo_get_duration
    - gf_node_event_out
    - gf_sc_texture_restart
    - gf_node_get_private
    - gf_sc_texture_update_frame
    - movietexture_deactivate
    - gf_mo_should_deactivate
    - gf_sc_invalidate
    - gf_node_dirty_parents
    - movietexture_get_loop
    - gf_mo_pause
    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_get_speed
    - gf_node_get_scene_time
    - gf_node_get_private
    - movietexture_deactivate
    - gf_sc_texture_play
    - gf_mo_resume
    - movietexture_activate
    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_LOG
    - gf_sc_texture_setup
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_check_url_change
    - gf_sc_register_time_node
    - gf_node_get_private
    - gf_sc_texture_play
    - movietexture_update_time
    - gf_sc_texture_stop
    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:
    - sprintf
    - gf_node_get_tag
    - gf_free
    - gf_opts_del_section
    - gf_node_get_private
    - gf_net_get_ntp
    - gf_sc_texture_destroy
    - gf_file_delete
    - gf_opts_get_key
    - sscanf
    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: gf_strcpy
      Src: /src/gpac/src/compositor/mpeg4_textures.c:359,1
    - Dst: gf_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: gf_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: gf_strcat
      Src: /src/gpac/src/compositor/mpeg4_textures.c:371,1
    - Dst: gf_strcat
      Src: /src/gpac/src/compositor/mpeg4_textures.c:373,1
    - Dst: gf_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_get_default_cache_directory
    - gf_sc_texture_play
    - gf_url_concatenate
    - gf_sha1_csum
    - gf_fwrite
    - gf_opts_set_key
    - gf_malloc
    - gf_fopen
    - gf_sc_invalidate
    - gf_img_png_dec
    - gf_node_get_graph
    - gf_scene_get_service_url
    - gf_strcpy
    - gf_sc_texture_set_data
    - gf_sc_texture_update_frame
    - strlen
    - gf_error_to_string
    - gf_img_jpeg_dec
    - sprintf
    - gf_free
    - gf_fclose
    - gf_file_load_data
    - GF_LOG
    - gf_strcat
    - gf_net_get_ntp
    - gf_sc_texture_allocate
    - gf_node_dirty_parents
    - gf_opts_get_key
    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_opts_get_section_name
    - gf_node_get_tag
    - gf_opts_del_section
    - GF_LOG
    - gf_sc_texture_setup
    - stricmp
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_get_graph
    - gf_file_delete
    - gf_scene_get_service_url
    - gf_node_set_callback_function
    - strncmp
    - gf_opts_get_key
    - 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_check_url_change
    - gf_node_get_private
    - gf_sc_texture_play
    - gf_sc_texture_stop
    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_sc_texture_destroy
    - gf_node_get_private
    - gf_free
    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_sc_texture_set_data
    - gf_free
    - gf_malloc
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_node_get_private
    - gf_sc_texture_allocate
    - memcpy
    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_LOG
    - gf_sc_texture_setup
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_LOG
    - gf_sc_texture_setup
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_private
    - gf_node_get_tag
    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
    - gf_malloc
    - NewDrawableContext
    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_VisualManager*::compositor::video_out::Blit
    - gf_free
    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_irect_overlaps
    - gf_rect_pixelize
    - gf_mx2d_apply_rect
    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_count
    - gf_mx_init
    - gf_mx2d_add_scale
    - gf_rect_center
    - gf_node_traverse
    - INT2FIX
    - gf_rect_pixelize
    - gf_list_get
    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_init_raster
    - visual_2d_setup_projection
    - gf_free
    - GF_LOG
    - gf_list_get
    - gf_node_get_class_name
    - gf_node_traverse
    - drawable_flush_bounds
    - memset
    - drawable_reset_bounds
    - GF_VisualManager*::ClearSurface
    - gf_rect_ft
    - b2d_get_context
    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_irect_overlaps
    - gf_irect_union
    - gf_assert
    - 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:
    - memmove
    - gf_irect_union
    - gf_irect_relation
    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:
    - ra_add
    - gf_irect_union
    - gf_assert
    - gf_irect_relation
    - memmove
    - gf_irect_inside
    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:
    - ra_add
    - gf_irect_union
    - gf_irect_relation
    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:
    - visual_2d_overlaps_overlay
    - b2d_get_context
    - call_drawable_draw
    - gf_node_get_class_name
    - gf_assert
    - drawctx_update_info
    - GF_VisualManager*::ClearSurface
    - register_context_rect
    - gf_malloc
    - drawable_check_bounds
    - ra_refresh
    - gf_list_get
    - compositor_2d_hybgl_clear_surface
    - gf_rect_ft
    - gf_node_traverse
    - ra_is_empty
    - gf_log_tool_level_on
    - visual_2d_release_raster
    - register_dirty_rect
    - drawable_reset_bounds
    - ra_clear
    - GF_VisualManager*::compositor::video_out::Blit
    - ra_add
    - gf_free
    - GF_VisualManager*::compositor::video_out::FlushRectangles
    - GF_LOG
    - irect_rect_equal
    - visual_2d_flush_overlay_areas
    - visual_clean_contexts
    - drawable_get_previous_bound
    - gf_irect_intersect
    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_LOG
    - gf_sys_clock
    - gf_node_get_class_name
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_list_enum
    - gf_sc_traverse_subscene
    - visual_2d_terminate_draw
    - compositor_3d_enable_fbo
    - visual_2d_init_draw
    - gf_error_to_string
    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
    - gf_list_enum
    - gf_node_traverse
    - INT2FIX
    - gf_mx2d_copy
    - gf_sg_get_root_node
    - gf_sc_traverse_subscene
    - gf_list_reset
    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:
    - new_mesh
    - GF_TraverseState*::visual::DrawBitmap
    - mesh_from_path
    - visual_2d_texture_path
    - visual_3d_draw_2d_with_aspect
    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_LOG
    - drawable_new
    - gf_sc_texture_setup
    - gf_sc_texture_allocate
    - GF_SAFEALLOC
    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_sc_texture_destroy
    - gf_sc_texture_release
    - drawable_del
    - gf_free
    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_path_reset
    - gf_free
    - gf_malloc
    - memset
    - gf_path_add_rect_center
    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:
    - gf_mx2d_init
    - gf_node_dirty_get
    - visual_3d_draw_from_context
    - gf_mx2d_add_scale
    - gf_node_get_log_name
    - INT2FIX
    - GF_COL_ARGB_FIXED
    - gf_mx2d_apply_rect
    - gf_mx2d_add_translation
    - gf_mx2d_pre_multiply
    - drawable_init_context_mpeg4
    - mesh_from_path
    - gf_evg_surface_attach_to_buffer
    - gf_evg_surface_new
    - gf_sc_texture_set_data
    - gf_divfix
    - gf_evg_surface_delete
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_sc_texture_push_image
    - gf_rect_pixelize
    - MAX
    - drawable_reset_bounds
    - gf_rect_union
    - new_mesh
    - GF_LOG
    - drawable_check_texture_dirty
    - gf_mx2d_from_mx
    - drawable_init_context_svg
    - drawable_finalize_sort
    - group_cache_setup
    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_count
    - FIX2FLT
    - GF_LOG
    - gf_node_get_log_name
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    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_count
    - FIX2FLT
    - GF_LOG
    - gf_list_del_item
    - gf_node_get_log_name
    - gf_fatal_assert
    - gf_list_get
    - 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:
    - group_cache_new
    - gf_node_dirty_get
    - GF_LOG
    - group_cache_del
    - group_cache_draw
    - gf_node_get_log_name
    - group_cache_traverse
    - gf_fatal_assert
    - MAX
    - gf_list_add
    - gf_cache_remove_entry
    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:
    - gf_list_count
    - ra_union_rect
    - FIX2FLT
    - ra_del
    - GF_LOG
    - group_cache_del
    - gf_node_get_log_name
    - gf_list_del_item
    - INT2FIX
    - GF_COL_A
    - gf_node_get_parent
    - group_cache_insert_entry
    - ra_init
    - ra_refresh
    - FIX2INT
    - gf_list_add
    - gf_rect_union
    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_count
    - group_cache_compute_stats
    - GF_LOG
    - INT2FIX
    - gf_list_get
    - gf_cache_remove_entry
    - 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:
    - group_cache_del
    - gf_cache_remove_entry
    - gf_sc_get_compositor
    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:
    - gf_list_del
    - group_2d_destroy_svg
    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_node_event_out
    - gf_node_traverse
    - gf_node_register
    - gf_list_get
    - gf_node_unregister
    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_mx2d_init
    - gf_list_count
    - visual_2d_get_drawable_context
    - b2d_get_context
    - gf_assert
    - gf_node_get_class_name
    - compositor_2d_update_clipper
    - gf_bbox_from_rect
    - gf_mx2d_apply_rect
    - gf_rect_intersect
    - visual_3d_set_clipper_2d
    - gf_rect_center
    - gf_sc_invalidate
    - Bindable_GetIsBound
    - gf_list_get
    - BindableStackDelete
    - gf_node_get_private
    - group_2d_traverse
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_rect_pixelize
    - gf_list_new
    - visual_3d_reset_clipper_2d
    - group_2d_destroy
    - gf_free
    - gf_mx_copy
    - gf_list_del
    - GF_LOG
    - gf_sc_pick_in_clipper
    - visual_3d_flush_contexts
    - visual_get_size_info
    - l2d_CheckBindables
    - drawable_check_bounds
    - 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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - 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_Compositor*::video_out::SetFullScreen
    - GF_LOG
    - gf_sc_send_event
    - gf_mx_p
    - gf_mx_v
    - memset
    - gf_sc_reset_graphics
    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_sc_set_size
    - gf_sc_set_fullscreen
    - GF_LOG
    - gf_opengl_init
    - gf_assert
    - gf_sc_send_event
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_sc_next_frame_state
    - GF_Compositor*::video_out::ProcessEvent
    - memset
    - gf_sc_lock
    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:
    - gf_mx_add_scale
    - compositor_3d_get_fbo_pixfmt
    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_sc_lock
    - GF_Compositor*::video_out::Flush
    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_flush_video
    - gf_sc_ar_send_or_reconfig
    - gf_sc_render_frame
    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_try_lock
    - gf_mx_v
    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:
    - PROP_UINT
    - compositor_3d_setup_fbo
    - gf_filter_pid_set_property
    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:
    - GF_LOG
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_pixel_get_size_info
    - memset
    - gf_realloc
    - compositor_3d_setup_fbo
    - gf_pixel_fmt_name
    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_filter_pck_get_timescale
    - gf_pixel_get_size_info
    - 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_blit
    - gf_opts_set_key
    - nullvout_evt
    - gpac_force_step_mode
    - gf_module_load
    - GF_Compositor*::video_out::ProcessEvent
    - atoi
    - gf_sc_load_opengl_extensions
    - gf_filter_request_opengl
    - strcmp
    - gf_filter_register_opengl_provider
    - sscanf
    - gf_error_to_string
    - GF_LOG
    - nullvout_setup
    - nullvout_fullscreen
    - gf_sys_is_cov_mode
    - memset
    - nullvout_lock
    - gf_opts_get_key
    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_sc_load_driver
    - gf_filter_request_opengl
    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_list_count
    - gf_sc_load_driver
    - GF_SAFEALLOC
    - gf_node_new
    - gf_modules_close_interface
    - gf_list_add
    - gf_modules_load
    - gf_opts_set_key
    - visual_new
    - drawable_new
    - gf_opts_get_bool
    - atoi
    - gf_mx_init
    - gf_mx_new
    - gf_sc_load_opengl_extensions
    - gf_th_id
    - compositor_2d_init_callbacks
    - GF_CompositorExt*::process
    - gf_list_new
    - sscanf
    - new_mesh
    - gf_sc_recompute_ar
    - gf_list_del
    - gf_sc_reload_config
    - GF_LOG
    - mesh_new_unit_bbox
    - gf_modules_count
    - gf_sc_ar_load
    - gf_node_register
    - gf_node_set_callback_function
    - gf_sc_reset_framerate
    - gf_opts_get_key
    - gf_filter_get_font_manager
    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:
    - mesh_free
    - gf_list_count
    - gf_sc_texture_cleanup_hw
    - gf_modules_close_interface
    - visual_del
    - gf_node_unregister
    - gf_sc_lock
    - gf_sc_ar_del
    - gf_list_get
    - gf_mx_v
    - gf_mx_del
    - GF_Compositor*::video_out::Shutdown
    - GF_CompositorExt*::process
    - gf_mx_p
    - gf_free
    - GF_LOG
    - gf_list_del
    - compositor_2d_reset_gl_auto
    - drawable_del_ex
    - gf_list_rem
    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
    - PROP_UINT
    - gf_filter_pid_set_property
    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_mx2d_init
    - gf_free
    - gf_evg_surface_delete
    - gf_list_del
    - gf_list_enum
    - gf_assert
    - compositor_3d_delete_fbo
    - compositor_set_ar_scale
    - gf_cmx_init
    - gf_list_new
    - memset
    - gf_list_reset
    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_list_count
    - gf_node_get_tag
    - gf_node_get_attribute_by_tag
    - gf_sc_set_scene_size
    - gf_sc_focus_switch_ring
    - gf_sc_lock
    - gf_sg_get_scene_size_info
    - gf_scene_is_dynamic_scene
    - gf_sc_ar_reset
    - gf_sg_get_private
    - gf_mx_v
    - gf_list_get
    - gf_sc_next_frame_state
    - gf_scene_get_keynav
    - gf_sc_svg_convert_length_to_display
    - gf_sg_get_root_node
    - gf_mx_p
    - gf_sc_set_size
    - gf_free
    - GF_LOG
    - gf_sc_reset
    - gf_sc_change_key_navigator
    - gf_sc_send_event
    - FIX2INT
    - gf_sc_reset_framerate
    - 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_LOG
    - gf_sg_get_root_node
    - gf_assert
    - gf_sc_send_event
    - gf_sc_lock
    - gf_mx_try_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_set_fps
    - gf_sc_ar_set_volume
    - GF_LOG
    - gf_sc_ar_set_pan
    - gf_sc_next_frame_state
    - gf_sc_lock
    - gf_sc_reset_graphics
    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_set_size
    - gf_filter_get_download_manager
    - gf_sc_ar_set_volume
    - gf_sc_set_play_state
    - gf_sc_navigation_supported
    - gf_dm_set_data_rate
    - gf_sc_reload_config
    - compositor_3d_reset_camera
    - compositor_set_cache_memory
    - gf_sc_ar_mute
    - gf_sc_ar_set_pan
    - compositor_3d_get_camera
    - gf_sc_next_frame_state
    - GF_Compositor*::video_out::ProcessEvent
    - gf_sc_lock
    - gf_sc_reset_graphics
    - compositor_2d_set_user_transform
    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: 1
    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_node_get_graph
    - gf_list_get
    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: 2
    functionLinenumber: 1963
    functionLinenumberEnd: 2062
    functionName: gf_sc_get_option
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 5
    functionsReached:
    - compositor_3d_get_camera
    - gf_sc_is_over
    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:
    - compositor_3d_get_screen_buffer
    - gf_mx_p
    - GF_Compositor*::video_out::LockBackBuffer
    - gf_mx_v
    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
    - compositor_3d_get_offscreen_buffer
    - gf_mx_v
    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:
    - compositor_3d_release_screen_buffer
    - GF_Compositor*::video_out::LockBackBuffer
    - gf_mx_v
    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:
    - compositor_3d_set_aspect_ratio
    - gf_sc_load_opengl_extensions
    - compositor_evaluate_envtests
    - gf_sys_clock
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_log_tool_level_on
    - compositor_2d_set_aspect_ratio
    - ra_init
    - PROP_FRAC
    - visual_3d_init_shaders
    - gf_sc_ar_control
    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_sg_use_pixel_metrics
    - gf_node_get_tag
    - GF_LOG
    - camera_set_2d
    - MIN
    - INT2FIX
    - gf_sc_check_video_driver
    - camera_invalidate
    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_list_count
    - gf_sc_setup_passthrough
    - GF_LOG
    - visual_draw_frame
    - compositor_send_resize_event
    - gf_node_traverse
    - gf_sg_get_root_node
    - gf_list_get
    - gf_list_reset
    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_sc_texture_release_stream
    - gf_sc_texture_reset
    - gf_list_get
    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_sc_ar_update_video_clock
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_mo_is_buffering
    - gf_filter_pck_merge_properties
    - gf_sc_texture_cleanup_hw
    - gf_sys_clock_high_res
    - PROP_VEC2I_INT
    - gf_mo_map_timestamp_to_sys_clock
    - compositor_handle_auto_navigation
    - gf_filter_pck_get_duration
    - gf_assert
    - gf_sc_release_screen_buffer
    - gf_filter_pck_new_shared
    - gf_filter_pck_new_frame_interface
    - gf_sc_lock
    - gf_mo_get_min_frame_dur
    - gf_sc_draw_scene
    - gf_sc_setup_root_visual
    - GF_TimeNode*::UpdateTimeNode
    - compositor_release_textures
    - gf_timestamp_rescale
    - gf_list_find
    - gf_sc_exec_event
    - visual_reset_graphics
    - gf_mx_v
    - gf_sc_next_frame_state
    - gf_list_get
    - GF_Compositor*::video_out::ProcessEvent
    - memcpy
    - gf_filter_pck_send
    - gf_sc_get_screen_buffer
    - gf_sc_texture_reset
    - gf_sc_ar_get_clock
    - gf_sys_clock
    - gf_sg_fire_dom_event
    - gf_list_enum
    - compositor_3d_delete_fbo
    - gf_sg_get_root_node
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_cts
    - GF_CompositorExt*::process
    - gf_mx_p
    - gf_sg_activate_routes
    - gf_filter_pck_set_duration
    - gf_sc_flush_video
    - visual_2d_draw_overlays
    - gf_sc_reconfig_task
    - gf_filter_pck_discard
    - gf_free
    - gf_smil_notify_timed_elements
    - gf_sc_recompute_ar
    - gf_sleep
    - GF_TextureHandler*::update_texture_fcnt
    - GF_LOG
    - gf_dom_event_fire
    - MIN
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_sc_reset_graphics
    - gf_list_rem
    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_mx2d_init
    - gf_node_get_tag
    - gf_mx2d_add_scale
    - INT2FIX
    - gf_node_new
    - gf_node_unregister
    - gf_mx_from_mx2d
    - gf_sg_use_pixel_metrics
    - gf_sg_get_scene_size_info
    - gf_mx2d_add_translation
    - gf_mx2d_pre_multiply
    - gf_sg_set_root_node
    - gf_node_get_graph
    - gf_node_list_add_child
    - gf_scene_is_over
    - gf_divfix
    - gf_sg_get_root_node
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_invfix
    - gf_mx_add_matrix
    - gf_mx_copy
    - gf_node_init
    - MIN
    - gf_node_register
    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_sc_input_sensor_mouse_input
    - gf_sc_lock
    - gf_mx_p
    - gf_sc_exec_event
    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_scene_enum_extra_scene
    - gf_sc_traverse_subscene_ex
    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_list_count
    - gf_mo_update_caps_ex
    - gf_sc_lock
    - gf_opts_set_key
    - gf_scene_force_size_to_video
    - gf_sc_get_selected_text
    - gf_sc_input_sensor_string_input
    - gf_list_get
    - gf_mx_v
    - gf_sc_next_frame_state
    - GF_Compositor*::video_out::ProcessEvent
    - gf_sc_has_text_selection
    - gf_sc_handle_event_intern
    - gf_sc_input_sensor_keyboard_input
    - gf_sc_paste_text
    - gf_sc_send_event
    - gf_strdup
    - gf_mx_try_lock
    - gf_sc_reset_graphics
    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_sc_lock
    - gf_list_del_item
    - gf_list_find
    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_mx2d_init
    - gf_node_get_tag
    - svg_pause_audio
    - GF_SAFEALLOC
    - gf_bbox_from_rect
    - gf_svg_properties_init_pointers
    - gf_svg_properties_reset_pointers
    - gf_mx2d_apply_rect
    - gf_mx_from_mx2d
    - FIX2FLT
    - gf_mx2d_pre_multiply
    - gf_rect_center
    - compositor_svg_get_viewport
    - gf_node_get_graph
    - gf_sg_find_node_by_name
    - compositor_2d_set_user_transform
    - on_set_bind
    - gf_node_get_scene_time
    - gf_divfix
    - gf_node_traverse
    - gf_sg_get_root_node
    - strrchr
    - gf_mulfix
    - svg_pause_video
    - gf_free
    - svg_pause_animation
    - gf_sc_get_fps
    - memset
    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_mx_copy
    - gf_mx_inverse
    - gf_mx_apply_ray
    - compositor_get_2d_plane_intersection
    - gf_mx2d_apply_rect
    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_malloc
    - gf_node_traverse
    - gf_utf8_wcstombs
    - gf_sc_lock
    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_list_reset
    - gf_sc_get_compositor
    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_list_count
    - GF_LOG
    - gf_list_get
    - GF_SAFEALLOC
    - gf_mx_p
    - 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_list_count
    - GF_LOG
    - gf_list_get
    - GF_SAFEALLOC
    - gf_mx_p
    - 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_list_count
    - GF_LOG
    - gf_list_get
    - GF_SAFEALLOC
    - gf_mx_p
    - 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_list_count
    - gf_free
    - gf_node_get_graph
    - gf_list_get
    - 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:
    - sc_cleanup_event_queue
    - gf_mx_p
    - gf_mx_v
    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
    - compositor_3d_get_camera
    - gf_list_get
    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: 3
    functionLinenumber: 4212
    functionLinenumberEnd: 4228
    functionName: gf_sc_check_end_of_scene
    functionSourceFile: /src/gpac/src/compositor/compositor.c
    functionUses: 1
    functionsReached:
    - gf_scene_check_clocks
    - gf_list_count
    - gf_sc_get_option
    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_add
    - gf_sc_lock
    - gf_list_new
    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_del
    - gf_list_count
    - gf_sc_lock
    - gf_list_del_item
    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: 9
    BranchProfiles: []
    Callsites:
    - 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: 12
    EdgeCount: 12
    ICount: 25
    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_list_count
    - gf_sc_sys_frame_pending
    - gf_timestamp_rescale
    - gf_clock_time
    - gf_odm_check_buffering
    - gf_clock_set_time
    - gf_clock_reset
    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_filter_pid_get_property
    - FIX2FLT
    - gf_sc_set_fps
    - gf_scene_restart_dynamic
    - gf_list_enum
    - gf_odm_set_speed
    - gf_clock_set_speed
    - gf_media_get_reduced_frame_rate
    - gf_sc_get_time_in_ms
    - gf_mulfix
    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: 4
    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_dm_get_data_rate
    - gf_sc_check_end_of_scene
    - gf_sg_has_scripting
    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_strdup
    - gf_free
    - 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_pause
    - gf_list_enum
    - gf_sc_next_frame_state
    - mediacontrol_resume
    - gf_sc_lock
    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:
    - gf_sc_step_clocks_intern
    - mediacontrol_pause
    - gf_sc_set_option
    - mediacontrol_resume
    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_odm_stop
    - gf_sc_set_play_state_internal
    - gf_scene_restart_dynamic
    - gf_scene_disconnect
    - gf_timestamp_rescale
    - gf_sc_set_option
    - gf_sc_get_option_internal
    - gf_sc_lock
    - 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_sc_disconnect
    - gf_sc_set_play_state_internal
    - GF_LOG
    - gf_scene_ns_connect_object
    - gf_scene_generate_views
    - gf_assert
    - strnicmp
    - strcmp
    - strlen
    - gf_odm_new
    - gf_sc_play_from_time
    - gf_scene_new
    - gf_scene_generate_mosaic
    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:
    - gf_list_enum
    - check_in_scene
    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: gf_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_strcpy
    - gf_list_count
    - gf_file_ext_start
    - gf_sm_dump_get_name
    - gf_sm_dump_graph
    - strlwr
    - gf_sm_dumper_set_extra_graph
    - gf_sys_is_cov_mode
    - check_in_scene
    - gf_sm_dumper_del
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_sm_dumper_new
    - strncmp
    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_filter_pid_get_property
    - gf_list_count
    - gf_node_get_tag
    - svg_exec_script
    - gf_sm_load_string
    - gf_scene_select_object
    - gf_odm_new
    - gf_scene_get_time
    - gf_sm_del
    - strchr
    - gf_list_get
    - atoi
    - gf_sg_get_max_node_id
    - gf_sg_get_root_node
    - strnicmp
    - gf_sm_new
    - sscanf
    - gf_sg_command_apply_list
    - gf_sg_set_scene_size_info
    - gf_sm_load_done
    - stricmp
    - gf_scene_attach_to_compositor
    - gf_sm_stream_new
    - gf_sm_load_init
    - memset
    - gf_scene_register_associated_media
    - gf_opts_get_key
    - strncmp
    - gf_scene_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: 1
    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_list_del_item
    - gf_scene_select_object
    - gf_scene_get_media_object
    - 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_clock_elapsed_time
    - gf_list_get
    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_node_get_field
    - gf_free
    - gf_malloc
    - gf_node_event_out
    - memset
    - gf_node_set_private
    - gf_utf8_wcstombs
    - gf_node_changed
    - gf_sc_next_frame_state
    - gf_strdup
    - memmove
    - gf_node_dirty_set
    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
    - gf_malloc
    - gf_utf8_mbstowcs
    - strlen
    - memmove
    - gf_realloc
    - gf_sc_lock
    - flush_text_node_edit
    - memcpy
    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_dynstrcat
      Src: /src/gpac/src/compositor/events.c:340,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/compositor/events.c:342,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/compositor/events.c:343,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/compositor/events.c:356,1
    - Dst: gf_strdup
      Src: /src/gpac/src/compositor/events.c:356,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:368,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:371,1
    - Dst: strlen
      Src: /src/gpac/src/compositor/events.c:373,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/events.c:374,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/events.c:377,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:380,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/compositor/events.c:385,1
    - Dst: gf_malloc
      Src: /src/gpac/src/compositor/events.c:395,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:403,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 184
    argCount: 2
    argNames:
    - compositor
    - cmd_type
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 168
    functionDepth: 12
    functionLinenumber: 168
    functionLinenumberEnd: 405
    functionName: load_text_node
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_new
    - gf_node_unregister
    - flush_text_node_edit
    - gf_malloc
    - gf_utf8_mbstowcs
    - gf_node_get_graph
    - gf_node_list_find_child
    - gf_dynstrcat
    - gf_node_list_del_child
    - gf_realloc
    - gf_utf8_wcslen
    - strlen
    - gf_dom_add_text_node
    - gf_free
    - gf_node_init
    - gf_node_list_insert_child
    - gf_sg_vrml_mf_append
    - gf_utf8_wcstombs
    - gf_node_register
    - gf_strdup
    - memmove
    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:412,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:426,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:433,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:434,1
    - Dst: gf_realloc
      Src: /src/gpac/src/compositor/events.c:440,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:442,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:466,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:481,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:492,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:500,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:503,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:505,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:511,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:513,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:519,1
    - Dst: load_text_node
      Src: /src/gpac/src/compositor/events.c:522,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:529,1
    - Dst: memmove
      Src: /src/gpac/src/compositor/events.c:530,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:537,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 118
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 407
    functionDepth: 13
    functionLinenumber: 407
    functionLinenumberEnd: 538
    functionName: exec_text_input
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_dom_event_fire
    - gf_sg_get_root_node
    - load_text_node
    - memmove
    - memset
    - gf_realloc
    - flush_text_node_edit
    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:543,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/events.c:547,1
    - Dst: gf_sc_user_event
      Src: /src/gpac/src/compositor/events.c:550,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - do_show
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 540
    functionDepth: 21
    functionLinenumber: 540
    functionLinenumberEnd: 551
    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:561,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:566,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:577,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:577,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:579,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:579,1
    - Dst: toggle_keyboard
      Src: /src/gpac/src/compositor/events.c:582,1
    - Dst: toggle_keyboard
      Src: /src/gpac/src/compositor/events.c:586,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/events.c:595,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:610,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:613,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:617,1
    - Dst: toggle_keyboard
      Src: /src/gpac/src/compositor/events.c:621,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 2
    argNames:
    - compositor
    - check_focus_node
    argTypes:
    - GF_Compositor*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 624
      start: 553
    functionDepth: 22
    functionLinenumber: 553
    functionLinenumberEnd: 624
    functionName: hit_node_editable
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_dom_event_fire
    - gf_svg_flatten_attributes
    - memset
    - strstr
    - 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:633,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/events.c:636,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:640,1
    - Dst: get_parent_focus
      Src: /src/gpac/src/compositor/events.c:645,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: 646
      start: 627
    functionDepth: 5
    functionLinenumber: 627
    functionLinenumberEnd: 646
    functionName: get_parent_focus
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 1
    functionsReached:
    - gf_node_get_parent
    - get_parent_focus
    - gf_node_get_attribute_by_tag
    - gf_list_get
    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:664,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/events.c:665,1
    - Dst: gf_list_last
      Src: /src/gpac/src/compositor/events.c:671,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:672,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:673,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:674,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:686,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:695,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:703,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:714,1
    - Dst: get_parent_focus
      Src: /src/gpac/src/compositor/events.c:719,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:719,1
    - Dst: gf_sc_focus_switch_ring
      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_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:728,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:738,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:745,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:752,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:753,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:754,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:759,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:764,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:770,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:771,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:772,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:779,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:779,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/events.c:785,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:791,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:808,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:809,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:816,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:829,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:836,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:837,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 154
    argCount: 2
    argNames:
    - compositor
    - event
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 650
    functionDepth: 9
    functionLinenumber: 650
    functionLinenumberEnd: 845
    functionName: exec_event_dom
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - get_parent_focus
    - gf_dom_event_fire
    - memset
    - INT2FIX
    - gf_sg_get_root_node
    - gf_dom_event_fire_ex
    - gf_sc_focus_switch_ring
    - FIX2INT
    - GF_Compositor*::video_out::ProcessEvent
    - 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:863,1
    - Dst: compositor_compositetexture_handle_event
      Src: /src/gpac/src/compositor/events.c:873,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:879,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:881,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:884,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:885,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:896,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:904,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/compositor/events.c:907,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/compositor/events.c:908,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:909,1
    - Dst: gf_scene_get_keynav
      Src: /src/gpac/src/compositor/events.c:911,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/events.c:911,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/events.c:912,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:916,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:923,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:929,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:931,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:932,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:935,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:938,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:940,1
    - Dst: GF_Compositor*::video_out::ProcessEvent
      Src: /src/gpac/src/compositor/events.c:996,1
    - Dst: gf_sc_reset_collide_cursor
      Src: /src/gpac/src/compositor/events.c:1000,1
    - Dst: gf_sg_activate_routes
      Src: /src/gpac/src/compositor/events.c:1007,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/compositor/events.c:1009,1
    - Dst: gf_sg_activate_routes
      Src: /src/gpac/src/compositor/events.c:1010,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 120
    argCount: 2
    argNames:
    - compositor
    - ev
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1015
      start: 850
    functionDepth: 3
    functionLinenumber: 850
    functionLinenumberEnd: 1015
    functionName: gf_sc_exec_event_vrml
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_scene_get_keynav
    - gf_list_count
    - gf_node_get_tag
    - gf_node_get_id
    - GF_SensorHandler*::OnUserEvent
    - gf_sc_change_key_navigator
    - gf_list_del_item
    - gf_list_enum
    - compositor_compositetexture_handle_event
    - gf_node_get_graph
    - gf_list_get
    - GF_Compositor*::video_out::ProcessEvent
    - gf_list_add
    - gf_list_reset
    - gf_sc_reset_collide_cursor
    - gf_sg_activate_routes
    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:1026,1
    - Dst: compositor_mpeg4_layout_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1030,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1033,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1039,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:1045,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1048,1
    - Dst: GF_SensorHandler*::OnUserEvent
      Src: /src/gpac/src/compositor/events.c:1050,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: 1056
      start: 1018
    functionDepth: 3
    functionLinenumber: 1018
    functionLinenumberEnd: 1056
    functionName: exec_vrml_key_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - GF_SensorHandler*::OnUserEvent
    - gf_node_get_tag
    - compositor_mpeg4_get_sensor_handler
    - 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:1089,1
    - Dst: exec_text_input
      Src: /src/gpac/src/compositor/events.c:1091,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:1096,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:1096,1
    - Dst: flush_text_node_edit
      Src: /src/gpac/src/compositor/events.c:1101,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:1105,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/events.c:1107,1
    - Dst: gf_sc_next_frame_state
      Src: /src/gpac/src/compositor/events.c:1112,1
    - Dst: visual_3d_pick_node
      Src: /src/gpac/src/compositor/events.c:1132,1
    - Dst: visual_2d_pick_node
      Src: /src/gpac/src/compositor/events.c:1135,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1137,1
    - Dst: exec_text_selection
      Src: /src/gpac/src/compositor/events.c:1139,1
    - Dst: exec_event_dom
      Src: /src/gpac/src/compositor/events.c:1143,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:1146,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:1146,1
    - Dst: gf_sc_exec_event_vrml
      Src: /src/gpac/src/compositor/events.c:1150,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: 1154
      start: 1060
    functionDepth: 23
    functionLinenumber: 1060
    functionLinenumberEnd: 1154
    functionName: visual_execute_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - exec_text_input
    - hit_node_editable
    - visual_2d_pick_node
    - gf_sg_get_root_node
    - exec_event_dom
    - gf_list_reset
    - gf_sc_focus_switch_ring
    - gf_sc_exec_event_vrml
    - gf_sc_next_frame_state
    - visual_3d_pick_node
    - exec_text_selection
    - flush_text_node_edit
    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:1169,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/events.c:1192,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:1200,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:1204,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/events.c:1209,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/events.c:1213,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 2
    argNames:
    - compositor
    - key_code
    argTypes:
    - GF_Compositor*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1219
      start: 1156
    functionDepth: 9
    functionLinenumber: 1156
    functionLinenumberEnd: 1219
    functionName: gf_sc_svg_focus_navigate
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_dom_event_fire
    - gf_sc_invalidate
    - gf_svg_flatten_attributes
    - gf_sg_find_node_by_name
    - memset
    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:1226,1
    - Dst: gf_dom_listener_count
      Src: /src/gpac/src/compositor/events.c:1245,1
    - Dst: gf_dom_listener_get
      Src: /src/gpac/src/compositor/events.c:1248,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/compositor/events.c:1249,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 1
    argNames:
    - elt
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1265
      start: 1223
    functionDepth: 5
    functionLinenumber: 1223
    functionLinenumberEnd: 1265
    functionName: is_focus_target
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_dom_listener_count
    - gf_node_get_tag
    - gf_node_get_attribute_by_tag
    - gf_dom_listener_get
    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: 1280
      start: 1268
    functionDepth: 0
    functionLinenumber: 1268
    functionLinenumberEnd: 1280
    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:1283,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/events.c:1285,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/compositor/events.c:1287,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - elt
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1281
    functionDepth: 1
    functionLinenumber: 1281
    functionLinenumberEnd: 1290
    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:1305,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1307,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1315,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1324,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1334,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/events.c:1361,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1363,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1385,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1390,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1393,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1401,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1408,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1408,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1410,1
    - Dst: strstr
      Src: /src/gpac/src/compositor/events.c:1410,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1422,1
    - Dst: compositor_mpeg4_layout_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1425,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1426,1
    - Dst: gf_node_proto_is_grouping
      Src: /src/gpac/src/compositor/events.c:1434,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/events.c:1438,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1440,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/events.c:1444,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1445,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1450,1
    - Dst: gf_node_get_proto_root
      Src: /src/gpac/src/compositor/events.c:1450,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1458,1
    - Dst: gf_scene_get_subscene_root
      Src: /src/gpac/src/compositor/events.c:1458,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1465,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1466,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1467,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1469,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1472,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1473,1
    - Dst: CALL_SET_FOCUS
      Src: /src/gpac/src/compositor/events.c:1480,1
    - Dst: compositor_mpeg4_get_sensor_handler
      Src: /src/gpac/src/compositor/events.c:1487,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1488,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1498,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1508,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/events.c:1511,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1514,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1521,1
    - Dst: is_focus_target
      Src: /src/gpac/src/compositor/events.c:1526,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1527,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1536,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1540,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1553,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1558,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/events.c:1561,1
    - Dst: rebuild_focus_ancestor
      Src: /src/gpac/src/compositor/events.c:1564,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1565,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1578,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1583,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/events.c:1586,1
    - Dst: rebuild_focus_ancestor
      Src: /src/gpac/src/compositor/events.c:1589,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1590,1
    - Dst: compositor_svg_get_xlink_resource_node
      Src: /src/gpac/src/compositor/events.c:1601,1
    - Dst: compositor_svg_get_xlink_resource_node
      Src: /src/gpac/src/compositor/events.c:1604,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1616,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1619,1
    - Dst: gf_node_list_get_count
      Src: /src/gpac/src/compositor/events.c:1620,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/events.c:1623,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1624,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1626,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1632,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1635,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1637,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1644,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1645,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1646,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1649,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1652,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1653,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1655,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1657,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1662,1
    - Dst: gf_node_set_cyclic_traverse_flag
      Src: /src/gpac/src/compositor/events.c:1663,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: 1665
      start: 1293
    functionDepth: 6
    functionLinenumber: 1293
    functionLinenumberEnd: 1665
    functionName: set_focus
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 1
    functionsReached:
    - gf_node_get_tag
    - set_focus
    - CALL_SET_FOCUS
    - gf_list_rem_last
    - gf_node_proto_is_grouping
    - gf_list_add
    - gf_scene_get_subscene_root
    - strstr
    - compositor_svg_get_xlink_resource_node
    - gf_sg_find_node_by_name
    - gf_node_set_cyclic_traverse_flag
    - gf_node_get_proto_root
    - gf_node_get_private
    - is_focus_target
    - gf_node_list_get_count
    - rebuild_focus_ancestor
    - compositor_mpeg4_layout_get_sensor_handler
    - compositor_mpeg4_get_sensor_handler
    - gf_svg_flatten_attributes
    - gf_node_list_get_child
    - gf_node_get_field_by_name
    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:1675,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1678,1
    - Dst: gf_node_proto_is_grouping
      Src: /src/gpac/src/compositor/events.c:1711,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/compositor/events.c:1713,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1726,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1727,1
    - Dst: gf_node_list_find_child
      Src: /src/gpac/src/compositor/events.c:1734,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1739,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1742,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1743,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1747,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/events.c:1754,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1756,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1764,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/events.c:1772,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1773,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: 1774
      start: 1667
    functionDepth: 7
    functionLinenumber: 1667
    functionLinenumberEnd: 1774
    functionName: browse_parent_for_focus
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 1
    functionsReached:
    - browse_parent_for_focus
    - gf_node_get_tag
    - set_focus
    - gf_node_proto_is_grouping
    - gf_list_rem_last
    - gf_node_list_find_child
    - gf_node_list_get_child
    - gf_list_last
    - gf_node_get_field_by_name
    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:1797,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1798,1
    - Dst: gf_list_new
      Src: /src/gpac/src/compositor/events.c:1805,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/events.c:1806,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/events.c:1808,1
    - Dst: gf_list_get
      Src: /src/gpac/src/compositor/events.c:1808,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1814,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1818,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1819,1
    - Dst: set_focus
      Src: /src/gpac/src/compositor/events.c:1822,1
    - Dst: browse_parent_for_focus
      Src: /src/gpac/src/compositor/events.c:1823,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/events.c:1826,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/compositor/events.c:1827,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/events.c:1831,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:1841,1
    - Dst: memset
      Src: /src/gpac/src/compositor/events.c:1842,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:1850,1
    - Dst: exec_vrml_key_event
      Src: /src/gpac/src/compositor/events.c:1854,1
    - Dst: gf_dom_event_fire_ex
      Src: /src/gpac/src/compositor/events.c:1864,1
    - Dst: exec_vrml_key_event
      Src: /src/gpac/src/compositor/events.c:1868,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/events.c:1873,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/events.c:1874,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/events.c:1876,1
    - Dst: gf_list_del
      Src: /src/gpac/src/compositor/events.c:1879,1
    - Dst: hit_node_editable
      Src: /src/gpac/src/compositor/events.c:1881,1
    - Dst: exec_text_input
      Src: /src/gpac/src/compositor/events.c:1883,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/events.c:1885,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: 1888
      start: 1776
    functionDepth: 23
    functionLinenumber: 1776
    functionLinenumberEnd: 1888
    functionName: gf_sc_focus_switch_ring
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 3
    functionsReached:
    - browse_parent_for_focus
    - gf_list_count
    - set_focus
    - gf_node_get_tag
    - exec_vrml_key_event
    - exec_text_input
    - hit_node_editable
    - gf_list_del
    - gf_list_get
    - gf_sg_get_root_node
    - gf_sc_invalidate
    - gf_dom_event_fire_ex
    - gf_list_new
    - memset
    - gf_list_add
    - gf_node_dirty_set
    - gf_list_reset
    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:1897,1
    - Dst: exec_event_dom
      Src: /src/gpac/src/compositor/events.c:1903,1
    - Dst: exec_vrml_key_event
      Src: /src/gpac/src/compositor/events.c:1906,1
    - Dst: exec_text_input
      Src: /src/gpac/src/compositor/events.c:1913,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/events.c:1917,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:1923,1
    - Dst: gf_sc_svg_focus_navigate
      Src: /src/gpac/src/compositor/events.c:1930,1
    - Dst: gf_sc_change_key_navigator
      Src: /src/gpac/src/compositor/events.c:1950,1
    - Dst: visual_execute_event
      Src: /src/gpac/src/compositor/events.c:1961,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: 1962
      start: 1890
    functionDepth: 24
    functionLinenumber: 1890
    functionLinenumberEnd: 1962
    functionName: gf_sc_execute_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - exec_text_input
    - gf_sc_change_key_navigator
    - exec_event_dom
    - gf_sc_svg_focus_navigate
    - gf_sc_focus_switch_ring
    - exec_vrml_key_event
    - 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:1966,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/events.c:1974,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/events.c:1980,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - compositor
    - ev
    - consumed
    argTypes:
    - GF_Compositor*
    - GF_Event*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1964
    functionDepth: 2
    functionLinenumber: 1964
    functionLinenumberEnd: 1985
    functionName: forward_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 0
    functionsReached:
    - gf_filter_forward_gf_event
    - gf_sys_clock
    - 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:2004,1
    - Dst: FIX2INT
      Src: /src/gpac/src/compositor/events.c:2009,1
    - Dst: gf_sc_execute_event
      Src: /src/gpac/src/compositor/events.c:2026,1
    - Dst: forward_event
      Src: /src/gpac/src/compositor/events.c:2045,1
    - Dst: forward_event
      Src: /src/gpac/src/compositor/events.c:2049,1
    - Dst: compositor_handle_navigation
      Src: /src/gpac/src/compositor/events.c:2055,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 2
    argNames:
    - compositor
    - evt
    argTypes:
    - GF_Compositor*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2058
      start: 1988
    functionDepth: 25
    functionLinenumber: 1988
    functionLinenumberEnd: 2058
    functionName: gf_sc_exec_event
    functionSourceFile: /src/gpac/src/compositor/events.c
    functionUses: 2
    functionsReached:
    - gf_sc_execute_event
    - forward_event
    - FIX2INT
    - 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:2066,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/events.c:2071,1
    - Dst: gf_node_event_out
      Src: /src/gpac/src/compositor/events.c:2077,1
    - Dst: gf_node_get_parent
      Src: /src/gpac/src/compositor/events.c:2081,1
    - Dst: gf_sc_focus_switch_ring
      Src: /src/gpac/src/compositor/events.c:2083,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - sr
    - n
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2085
      start: 2060
    functionDepth: 24
    functionLinenumber: 2060
    functionLinenumberEnd: 2085
    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_list_reset
    - gf_node_event_out
    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: 2092
      start: 2087
    functionDepth: 0
    functionLinenumber: 2087
    functionLinenumberEnd: 2092
    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:
    - FIX2FLT
    - FLT2FIX
    - gf_plane_get_p_vertex_idx
    - gf_vec_scale
    - sqrt
    - gf_vec_len
    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_norm
    - gf_vec_scale
    - gf_vec_dot
    - gf_quat_multiply
    - gf_vec_diff
    - gf_vec_cross
    - gf_quat_to_rotation
    - gf_quat_from_axis_cos
    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_tan
    - INT2FIX
    - gf_mx_apply_vec
    - camera_frustum_from_matrix
    - gf_mx_add_matrix_2d
    - gf_vec_diff
    - gf_mx_from_mx2d
    - gf_mx_inverse_4x4
    - gf_mx_lookat
    - gf_mx_ortho
    - gf_vec_cross
    - gf_bbox_refresh
    - gf_atan2
    - gf_divfix
    - gf_mx_init
    - gf_muldiv
    - gf_vec_scale
    - gf_mulfix
    - gf_vec_len
    - gf_mx_perspective
    - gf_mx_add_translation
    - gf_mx_add_matrix
    - gf_mx_copy
    - gf_vec_norm
    - gf_mx_add_rotation
    - gf_mx_add_scale
    - gf_mx_add_matrix_4x4
    - gf_vec_add
    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_cos
    - gf_vec_norm
    - gf_vec_scale
    - gf_sin
    - gf_mulfix
    - gf_vec_add
    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:
    - gf_sc_get_clock
    - FLT2FIX
    - gf_sg_sfrotation_interpolate
    - camera_set_vectors
    - gf_vec_scale
    - gf_mulfix
    - gf_vec_diff
    - gf_vec_add
    - camera_get_orientation
    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_cross
    - camera_get_pos_dir
    - gf_vec_norm
    linkageType: ''
    returnType: SFVec3f
    signature: SFVec3f camera_get_right_dir(GF_Camera *cam)
  - BBCount: 35
    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:109,1
    - Dst: gf_svg_parse_transformlist
      Src: /src/gpac/src/compositor/svg_grouping.c:110,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_grouping.c:112,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:118,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:118,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_grouping.c:122,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:127,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:128,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/compositor/svg_grouping.c:129,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:130,1
    - Dst: gf_mx2d_from_mx
      Src: /src/gpac/src/compositor/svg_grouping.c:131,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:132,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:143,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:147,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:159,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:187,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:187,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:188,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:189,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:192,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:194,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:197,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:197,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:198,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:199,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:202,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:204,1
    - Dst: gf_divfix
      Src: /src/gpac/src/compositor/svg_grouping.c:209,1
    - Dst: gf_divfix
      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_muldiv
      Src: /src/gpac/src/compositor/svg_grouping.c:212,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:216,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:217,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_grouping.c:252,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/svg_grouping.c:266,1
    - Dst: gf_mx2d_add_matrix
      Src: /src/gpac/src/compositor/svg_grouping.c:271,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 177
    argCount: 4
    argNames:
    - node
    - stack
    - tr_state
    - atts
    argTypes:
    - GF_Node*
    - SVGsvgStack*
    - GF_TraverseState*
    - SVGAllAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 58
    functionDepth: 3
    functionLinenumber: 58
    functionLinenumberEnd: 272
    functionName: svg_recompute_viewport_transformation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_mx2d_apply_rect
    - gf_mx2d_add_translation
    - gf_node_get_graph
    - gf_sg_find_node_by_name
    - gf_sc_get_nodes_bounds
    - gf_divfix
    - gf_mx_init
    - gf_muldiv
    - gf_mx2d_copy
    - gf_svg_parse_transformlist
    - gf_rect_pixelize
    - gf_mulfix
    - sscanf
    - FLT2FIX
    - GF_LOG
    - gf_scene_get_fragment_uri
    - gf_mx2d_from_mx
    - memset
    - strncmp
    - gf_mx2d_add_matrix
    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:292,1
    - Dst: gf_svg_properties_reset_pointers
      Src: /src/gpac/src/compositor/svg_grouping.c:296,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:297,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:299,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_grouping.c:300,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:301,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:313,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:314,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:322,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:323,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:329,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:330,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:335,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:341,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:342,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:343,1
    - Dst: svg_recompute_viewport_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:352,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:355,1
    - Dst: GF_COL_ARGB_FIXED
      Src: /src/gpac/src/compositor/svg_grouping.c:376,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_grouping.c:389,1
    - Dst: drawable_reset_path
      Src: /src/gpac/src/compositor/svg_grouping.c:393,1
    - Dst: gf_path_add_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:394,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:397,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_grouping.c:404,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/compositor/svg_grouping.c:417,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_grouping.c:421,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_grouping.c:425,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_grouping.c:436,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/compositor/svg_grouping.c:439,1
    - Dst: memset
      Src: /src/gpac/src/compositor/svg_grouping.c:446,1
    - Dst: gf_scene_notify_event
      Src: /src/gpac/src/compositor/svg_grouping.c:455,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:460,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:462,1
    - Dst: gf_mx_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:468,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:471,1
    - Dst: gf_mx2d_copy
      Src: /src/gpac/src/compositor/svg_grouping.c:472,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:473,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 140
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 274
    functionDepth: 10
    functionLinenumber: 274
    functionLinenumberEnd: 480
    functionName: svg_traverse_svg
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_get
    - memset
    - GF_COL_ARGB_FIXED
    - gf_mx_add_matrix_2d
    - gf_svg_properties_reset_pointers
    - compositor_svg_traverse_children
    - gf_mx2d_add_translation
    - drawable_del
    - gf_mx2d_pre_multiply
    - gf_node_dirty_clear
    - svg_recompute_viewport_transformation
    - drawable_new
    - compositor_svg_traverse_base
    - drawable_reset_path
    - memcpy
    - gf_sc_get_nodes_bounds
    - gf_path_add_rect
    - gf_node_get_private
    - gf_mx2d_copy
    - gf_scene_notify_event
    - gf_free
    - gf_mx_copy
    - gf_dom_event_fire
    - gf_sc_check_focus_upon_destroy
    - drawable_reset_group_highlight
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - drawable_init_context_svg
    - drawable_finalize_sort
    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:487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_grouping.c:489,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:493,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:493,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/compositor/svg_grouping.c:496,1
    - Dst: gf_svg_properties_init_pointers
      Src: /src/gpac/src/compositor/svg_grouping.c:497,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:499,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:501,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:502,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 482
    functionDepth: 2
    functionLinenumber: 482
    functionLinenumberEnd: 503
    functionName: compositor_init_svg_svg
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_init
    - GF_LOG
    - gf_sg_get_root_node
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_get_graph
    - gf_node_set_callback_function
    - gf_svg_properties_init_pointers
    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:508,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:509,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - n
    - rc
    argTypes:
    - GF_Node*
    - GF_Rect*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 505
    functionDepth: 2
    functionLinenumber: 505
    functionLinenumberEnd: 515
    functionName: compositor_svg_get_viewport
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    - gf_node_get_tag
    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:540,1
    - Dst: group_2d_destroy_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:542,1
    - Dst: group_cache_del
      Src: /src/gpac/src/compositor/svg_grouping.c:544,1
    - Dst: drawable_del
      Src: /src/gpac/src/compositor/svg_grouping.c:546,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:547,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:548,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:557,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:563,1
    - Dst: gf_evg_surface_set_mask_mode
      Src: /src/gpac/src/compositor/svg_grouping.c:567,1
    - Dst: group_cache_draw
      Src: /src/gpac/src/compositor/svg_grouping.c:571,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:575,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:577,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:580,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:586,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:591,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:593,1
    - Dst: svg_draw_filter
      Src: /src/gpac/src/compositor/svg_grouping.c:604,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:608,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:615,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:617,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:618,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:630,1
    - Dst: gf_mulfix
      Src: /src/gpac/src/compositor/svg_grouping.c:632,1
    - Dst: group_cache_new
      Src: /src/gpac/src/compositor/svg_grouping.c:637,1
    - Dst: group_2d_cache_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:645,1
    - Dst: group_cache_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:647,1
    - Dst: group_2d_cache_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:653,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:654,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/svg_grouping.c:661,1
    - Dst: gf_list_count
      Src: /src/gpac/src/compositor/svg_grouping.c:662,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:667,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/compositor/svg_grouping.c:677,1
    - Dst: group_2d_cache_evaluate
      Src: /src/gpac/src/compositor/svg_grouping.c:680,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:687,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/compositor/svg_grouping.c:695,1
    - Dst: gf_path_add_rect
      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: INT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:698,1
    - Dst: INT2FIX
      Src: /src/gpac/src/compositor/svg_grouping.c:698,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:700,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_grouping.c:703,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:705,1
    - Dst: drawable_init_context_svg
      Src: /src/gpac/src/compositor/svg_grouping.c:707,1
    - Dst: drawable_finalize_sort
      Src: /src/gpac/src/compositor/svg_grouping.c:710,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:712,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:716,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:718,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:725,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:727,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:728,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 124
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 527
    functionDepth: 14
    functionLinenumber: 527
    functionLinenumberEnd: 730
    functionName: svg_traverse_g
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - group_2d_destroy_svg
    - gf_list_count
    - gf_node_dirty_get
    - group_cache_draw
    - INT2FIX
    - compositor_svg_traverse_children
    - group_cache_new
    - drawable_del
    - gf_node_dirty_clear
    - group_cache_del
    - compositor_svg_traverse_base
    - gf_sg_find_node_by_name
    - gf_sc_get_nodes_bounds
    - memcpy
    - gf_path_add_rect
    - gf_evg_surface_set_mask_mode
    - gf_path_reset
    - gf_node_get_private
    - gf_sys_clock
    - gf_node_traverse
    - group_cache_traverse
    - compositor_svg_apply_local_transformation
    - gf_mulfix
    - compositor_svg_restore_parent_transformation
    - group_2d_cache_traverse
    - gf_free
    - gf_sc_check_focus_upon_destroy
    - svg_draw_filter
    - drawable_reset_group_highlight
    - drawable_check_focus_highlight
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - drawable_init_context_svg
    - drawable_finalize_sort
    - group_2d_cache_evaluate
    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:736,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:738,1
    - Dst: drawable_new
      Src: /src/gpac/src/compositor/svg_grouping.c:739,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 733
    functionDepth: 2
    functionLinenumber: 733
    functionLinenumberEnd: 744
    functionName: compositor_init_svg_g
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - drawable_new
    - GF_SAFEALLOC
    - gf_node_set_private
    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:759,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:762,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:764,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:769,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:772,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 748
    functionDepth: 7
    functionLinenumber: 748
    functionLinenumberEnd: 774
    functionName: svg_traverse_defs
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_sc_check_focus_upon_destroy
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - memcpy
    - compositor_svg_traverse_children
    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:779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 777
    functionDepth: 2
    functionLinenumber: 777
    functionLinenumberEnd: 780
    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:791,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:797,1
    - Dst: gf_sc_check_focus_upon_destroy
      Src: /src/gpac/src/compositor/svg_grouping.c:798,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:802,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:803,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:809,1
    - Dst: compositor_svg_evaluate_conditional
      Src: /src/gpac/src/compositor/svg_grouping.c:810,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:817,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:818,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:821,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:824,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:825,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:831,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:833,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/compositor/svg_grouping.c:835,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:836,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:838,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:840,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:843,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 785
    functionDepth: 10
    functionLinenumber: 785
    functionLinenumberEnd: 845
    functionName: svg_traverse_switch
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_free
    - compositor_svg_restore_parent_transformation
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_private
    - gf_node_traverse
    - gf_sc_check_focus_upon_destroy
    - compositor_svg_evaluate_conditional
    - drawable_reset_group_highlight
    - drawable_check_focus_highlight
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - compositor_svg_is_display_off
    - compositor_svg_apply_local_transformation
    - gf_sc_get_nodes_bounds
    - gf_node_list_get_child
    - memcpy
    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:850,1
    - Dst: GF_LOG
      Src: /src/gpac/src/compositor/svg_grouping.c:852,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:856,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:857,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 847
    functionDepth: 2
    functionLinenumber: 847
    functionLinenumberEnd: 858
    functionName: compositor_init_svg_switch
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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:871,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:875,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:877,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:880,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:886,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:891,1
    - Dst: gf_sc_get_nodes_bounds
      Src: /src/gpac/src/compositor/svg_grouping.c:893,1
    - Dst: compositor_svg_traverse_children
      Src: /src/gpac/src/compositor/svg_grouping.c:895,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:897,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:899,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:900,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 860
    functionDepth: 10
    functionLinenumber: 860
    functionLinenumberEnd: 902
    functionName: svg_traverse_a
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_sc_check_focus_upon_destroy
    - drawable_check_focus_highlight
    - compositor_svg_is_display_off
    - gf_svg_flatten_attributes
    - compositor_svg_traverse_base
    - compositor_svg_apply_local_transformation
    - gf_sc_get_nodes_bounds
    - compositor_svg_restore_parent_transformation
    - memcpy
    - compositor_svg_traverse_children
    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:906,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:908,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:908,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:908,1
    - Dst: compositor_2d_set_user_transform
      Src: /src/gpac/src/compositor/svg_grouping.c:913,1
    - Dst: gf_sc_invalidate
      Src: /src/gpac/src/compositor/svg_grouping.c:914,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - handler
    - compositor
    - url
    argTypes:
    - GF_Node*
    - GF_Compositor*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 904
    functionDepth: 11
    functionLinenumber: 904
    functionLinenumberEnd: 915
    functionName: svg_a_set_view
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_sg_get_root_node
    - gf_scene_set_fragment_uri
    - gf_sc_invalidate
    - gf_node_get_graph
    - gf_node_dirty_set
    - compositor_2d_set_user_transform
    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:926,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_grouping.c:926,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:928,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:930,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_grouping.c:940,1
    - Dst: gf_sc_send_event
      Src: /src/gpac/src/compositor/svg_grouping.c:944,1
    - Dst: gf_scene_resolve_xlink
      Src: /src/gpac/src/compositor/svg_grouping.c:951,1
    - Dst: gf_scene_process_anchor
      Src: /src/gpac/src/compositor/svg_grouping.c:962,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:963,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:966,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:966,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:969,1
    - Dst: svg_a_set_view
      Src: /src/gpac/src/compositor/svg_grouping.c:971,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:972,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/compositor/svg_grouping.c:981,1
    - Dst: gf_smil_timing_insert_clock
      Src: /src/gpac/src/compositor/svg_grouping.c:991,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/compositor/svg_grouping.c:991,1
    - Dst: svg_a_set_view
      Src: /src/gpac/src/compositor/svg_grouping.c:995,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/compositor/svg_grouping.c:995,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: 998
      start: 917
    functionDepth: 12
    functionLinenumber: 917
    functionLinenumberEnd: 998
    functionName: svg_a_handle_event
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_get_scene_time
    - gf_node_get_tag
    - gf_free
    - gf_smil_timing_insert_clock
    - gf_node_get_private
    - gf_scene_process_anchor
    - gf_assert
    - gf_sc_send_event
    - gf_scene_resolve_xlink
    - svg_a_set_view
    - gf_svg_flatten_attributes
    - gf_node_get_graph
    - gf_node_get_name
    - gf_sg_find_node_by_name
    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:1003,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1004,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/compositor/svg_grouping.c:1007,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/compositor/svg_grouping.c:1012,1
    - Dst: gf_dom_listener_build
      Src: /src/gpac/src/compositor/svg_grouping.c:1017,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1021
      start: 1000
    functionDepth: 2
    functionLinenumber: 1000
    functionLinenumberEnd: 1021
    functionName: compositor_init_svg_a
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - gf_node_set_private
    - gf_dom_listener_build
    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:1045,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1050,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:1051,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1056,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:1059,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:1062,1
    - Dst: drawable_reset_group_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:1063,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/compositor/svg_grouping.c:1070,1
    - Dst: gf_mo_load_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1072,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1074,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:1079,1
    - Dst: gf_mo_get_scenegraph
      Src: /src/gpac/src/compositor/svg_grouping.c:1089,1
    - Dst: strchr
      Src: /src/gpac/src/compositor/svg_grouping.c:1091,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:1097,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:1100,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_grouping.c:1106,1
    - Dst: gf_list_add
      Src: /src/gpac/src/compositor/svg_grouping.c:1107,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:1109,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1116,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1117,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1126,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:1127,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:1128,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:1129,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1131,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:1134,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1137,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_grouping.c:1141,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_grouping.c:1144,1
    - Dst: drawable_check_focus_highlight
      Src: /src/gpac/src/compositor/svg_grouping.c:1147,1
    - Dst: gf_node_traverse
      Src: /src/gpac/src/compositor/svg_grouping.c:1149,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/svg_grouping.c:1151,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1153,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/svg_grouping.c:1156,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/compositor/svg_grouping.c:1157,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:1164,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: 1166
      start: 1034
    functionDepth: 11
    functionLinenumber: 1034
    functionLinenumberEnd: 1166
    functionName: svg_traverse_resource
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_node_dirty_get
    - gf_sc_traverse_subscene
    - gf_list_rem_last
    - gf_mx_add_matrix_2d
    - gf_list_add
    - gf_mx2d_apply_rect
    - strchr
    - gf_mx2d_pre_multiply
    - gf_node_dirty_clear
    - gf_mo_unload_xlink_resource
    - gf_mo_get_scenegraph
    - compositor_svg_traverse_base
    - gf_node_get_graph
    - gf_sg_find_node_by_name
    - memcpy
    - gf_sc_svg_convert_length_to_display
    - gf_node_get_private
    - gf_sg_get_root_node
    - gf_node_traverse
    - compositor_svg_apply_local_transformation
    - compositor_svg_restore_parent_transformation
    - gf_free
    - gf_mo_load_xlink_resource
    - drawable_reset_group_highlight
    - drawable_check_focus_highlight
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    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:1170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1168
    functionDepth: 12
    functionLinenumber: 1168
    functionLinenumberEnd: 1171
    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:1176,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1178,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:1179,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1181,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1173
    functionDepth: 2
    functionLinenumber: 1173
    functionLinenumberEnd: 1182
    functionName: compositor_init_svg_use
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_dirty_set
    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:1194,1
    - Dst: gf_node_dirty_get
      Src: /src/gpac/src/compositor/svg_grouping.c:1195,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1199,1
    - Dst: gf_mo_play
      Src: /src/gpac/src/compositor/svg_grouping.c:1204,1
    - Dst: gf_mo_load_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1208,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1210,1
    - Dst: gf_node_dirty_clear
      Src: /src/gpac/src/compositor/svg_grouping.c:1216,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: 1219
      start: 1190
    functionDepth: 3
    functionLinenumber: 1190
    functionLinenumberEnd: 1219
    functionName: svg_animation_smil_update
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_mo_unload_xlink_resource
    - gf_mo_load_xlink_resource
    - gf_mo_play
    - gf_svg_flatten_attributes
    - 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:1224,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1225,1
    - Dst: svg_animation_smil_update
      Src: /src/gpac/src/compositor/svg_grouping.c:1228,1
    - Dst: gf_mo_stop
      Src: /src/gpac/src/compositor/svg_grouping.c:1232,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1239,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1243,1
    - Dst: gf_mo_restart
      Src: /src/gpac/src/compositor/svg_grouping.c:1251,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1259,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: 1262
      start: 1221
    functionDepth: 6
    functionLinenumber: 1221
    functionLinenumberEnd: 1262
    functionName: svg_animation_smil_evaluate
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_smil_get_element
    - gf_mo_unload_xlink_resource
    - gf_node_get_private
    - gf_svg_flatten_attributes
    - gf_mo_restart
    - gf_node_dirty_set
    - gf_mo_stop
    - svg_animation_smil_update
    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:1279,1
    - Dst: gf_mo_unload_xlink_resource
      Src: /src/gpac/src/compositor/svg_grouping.c:1282,1
    - Dst: gf_free
      Src: /src/gpac/src/compositor/svg_grouping.c:1283,1
    - Dst: gf_svg_flatten_attributes
      Src: /src/gpac/src/compositor/svg_grouping.c:1286,1
    - Dst: svg_animation_smil_update
      Src: /src/gpac/src/compositor/svg_grouping.c:1293,1
    - Dst: compositor_svg_traverse_base
      Src: /src/gpac/src/compositor/svg_grouping.c:1305,1
    - Dst: compositor_svg_is_display_off
      Src: /src/gpac/src/compositor/svg_grouping.c:1308,1
    - Dst: compositor_svg_apply_local_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1313,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/compositor/svg_grouping.c:1316,1
    - Dst: gf_mx_add_matrix_2d
      Src: /src/gpac/src/compositor/svg_grouping.c:1321,1
    - Dst: gf_mx2d_pre_multiply
      Src: /src/gpac/src/compositor/svg_grouping.c:1324,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1337,1
    - Dst: gf_sc_svg_convert_length_to_display
      Src: /src/gpac/src/compositor/svg_grouping.c:1338,1
    - Dst: gf_mx2d_apply_rect
      Src: /src/gpac/src/compositor/svg_grouping.c:1345,1
    - Dst: gf_rect_pixelize
      Src: /src/gpac/src/compositor/svg_grouping.c:1347,1
    - Dst: gf_irect_intersect
      Src: /src/gpac/src/compositor/svg_grouping.c:1348,1
    - Dst: gf_mo_get_scenegraph
      Src: /src/gpac/src/compositor/svg_grouping.c:1351,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:1355,1
    - Dst: gf_sc_traverse_subscene
      Src: /src/gpac/src/compositor/svg_grouping.c:1360,1
    - Dst: gf_mo_pause
      Src: /src/gpac/src/compositor/svg_grouping.c:1365,1
    - Dst: compositor_svg_restore_parent_transformation
      Src: /src/gpac/src/compositor/svg_grouping.c:1374,1
    - Dst: memcpy
      Src: /src/gpac/src/compositor/svg_grouping.c:1377,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 76
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1379
      start: 1265
    functionDepth: 11
    functionLinenumber: 1265
    functionLinenumberEnd: 1379
    functionName: svg_traverse_animation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_sc_traverse_subscene
    - gf_mx_add_matrix_2d
    - gf_mx2d_apply_rect
    - gf_mx2d_pre_multiply
    - gf_mo_unload_xlink_resource
    - gf_mo_get_scenegraph
    - compositor_svg_traverse_base
    - svg_animation_smil_update
    - memcpy
    - gf_mo_pause
    - gf_sc_svg_convert_length_to_display
    - gf_node_get_private
    - gf_sg_get_root_node
    - compositor_svg_apply_local_transformation
    - gf_rect_pixelize
    - compositor_svg_restore_parent_transformation
    - gf_free
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - 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:1385,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1387,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:1388,1
    - Dst: gf_smil_set_evaluation_callback
      Src: /src/gpac/src/compositor/svg_grouping.c:1390,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1393,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1381
    functionDepth: 2
    functionLinenumber: 1381
    functionLinenumberEnd: 1394
    functionName: compositor_init_svg_animation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_smil_set_evaluation_callback
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_node_dirty_set
    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:1398,1
    - Dst: gf_mo_pause
      Src: /src/gpac/src/compositor/svg_grouping.c:1400,1
    - Dst: gf_mo_resume
      Src: /src/gpac/src/compositor/svg_grouping.c:1401,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - n
    - pause
    argTypes:
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1396
    functionDepth: 2
    functionLinenumber: 1396
    functionLinenumberEnd: 1402
    functionName: svg_pause_animation
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    - gf_mo_pause
    - gf_mo_resume
    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:1406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - node
    - rs
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1407
      start: 1404
    functionDepth: 12
    functionLinenumber: 1404
    functionLinenumberEnd: 1407
    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:1412,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1414,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/compositor/svg_grouping.c:1415,1
    - Dst: gf_node_dirty_set
      Src: /src/gpac/src/compositor/svg_grouping.c:1417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - compositor
    - node
    argTypes:
    - GF_Compositor*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1418
      start: 1409
    functionDepth: 2
    functionLinenumber: 1409
    functionLinenumberEnd: 1418
    functionName: compositor_init_svg_foreign_object
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_set_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_dirty_set
    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:1423,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1425,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/compositor/svg_grouping.c:1426,1
    - Dst: gf_node_get_private
      Src: /src/gpac/src/compositor/svg_grouping.c:1428,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/compositor/svg_grouping.c:1430,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - node
    - xlink
    argTypes:
    - GF_Node*
    - XMLRI*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1420
    functionDepth: 2
    functionLinenumber: 1420
    functionLinenumberEnd: 1434
    functionName: compositor_svg_get_xlink_resource_node
    functionSourceFile: /src/gpac/src/compositor/svg_grouping.c
    functionUses: 1
    functionsReached:
    - gf_node_get_private
    - gf_node_get_tag
    - gf_sg_get_root_node
    - 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:1441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1437
    functionDepth: 2
    functionLinenumber: 1437
    functionLinenumberEnd: 1443
    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:
    - glDeleteBuffers
    - memset
    - gf_free
    - 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_realloc
    - memcpy
    - del_aabb_node
    - gf_free
    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_CHECK_VERTEX
    - MESH_SET_NORMAL
    - MESH_MAKE_COL
    - gf_vec_norm
    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_CHECK_VERTEX
    - MESH_MAKE_COL
    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:
    - gf_vec_diff
    - gf_vec_cross
    - MESH_SET_NORMAL
    - gf_vec_norm
    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:
    - mesh_reset
    - mesh_set_triangle
    - gf_mesh_build_aabbtree
    - gf_bbox_refresh
    - mesh_set_vertex
    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:
    - mesh_set_point
    - mesh_set_line
    - memset
    - gf_bbox_refresh
    - mesh_reset
    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_cos
    - gf_sin
    - gf_mulfix
    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_cos
    - gf_free
    - gf_malloc
    - mesh_reset
    - gf_sin
    - mesh_set_triangle
    - gf_mesh_build_aabbtree
    - gf_bbox_refresh
    - mesh_set_vertex
    - compute_cylinder
    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_cos
    - gf_free
    - gf_malloc
    - mesh_reset
    - gf_muldiv
    - gf_sin
    - mesh_set_triangle
    - gf_mesh_build_aabbtree
    - gf_bbox_refresh
    - mesh_set_vertex
    - compute_cylinder
    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_cos
    - gf_sin
    - gf_mulfix
    - 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_malloc
    - gf_divfix
    - compute_sphere
    - mesh_set_triangle
    - FIX2INT
    - gf_mesh_build_aabbtree
    - gf_bbox_refresh
    - mesh_set_vertex
    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:
    - mesh_update_bounds
    - gf_cos
    - compositor_get_srdmap_size
    - gf_divfix
    - gf_sqrt
    - gf_sin
    - INT2FIX
    - mesh_set_triangle
    - mesh_set_vertex
    - gf_mulfix
    - mesh_reset
    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:
    - mesh_set_vertex
    - gf_bbox_refresh
    - mesh_reset
    - mesh_set_triangle
    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:
    - mesh_update_bounds
    - compositor_get_srdmap_size
    - mesh_reset
    - INT2FIX
    - mesh_set_triangle
    - gf_mulfix
    - mesh_set_vertex
    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_cos
    - mesh_reset
    - gf_sin
    - mesh_set_triangle
    - gf_mulfix
    - gf_bbox_refresh
    - mesh_set_vertex
    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_mesh_tesselate_path
    - gf_path_get_bounds
    - mesh_reset
    - gf_divfix
    - gf_bbox_refresh
    - mesh_set_triangle
    - gf_polygone2d_get_convexity
    - mesh_set_vertex
    - gf_path_flatten
    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_update_bounds
    - mesh_reset
    - mesh_set_line
    - mesh_set_vertex
    - gf_path_flatten
    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:
    - mesh_update_bounds
    - gf_node_get_tag
    - MESH_GET_COL
    - mesh_set_point
    - mesh_set_line
    - gf_vec_equal
    - mesh_reset
    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:
    - mesh_update_bounds
    - gf_node_get_tag
    - MESH_GET_COL
    - mesh_set_index
    - mesh_set_point
    - mesh_reset
    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_add
    - gf_vec_dot
    - 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:
    - mesh_free
    - gf_node_get_tag
    - register_point_in_face
    - register_face_in_point
    - gf_mesh_build_aabbtree
    - gf_vec_diff
    - GET_IDX
    - smooth_face_normals
    - gf_malloc
    - gf_vec_cross
    - gf_divfix
    - mesh_set_vertex_v
    - TesselateFaceMesh
    - gf_vec_len
    - mesh_update_bounds
    - gf_cos
    - new_mesh
    - gf_free
    - gf_vec_norm
    - MESH_GET_COL
    - mesh_set_point
    - MESH_SET_NORMAL
    - memset
    - mesh_generate_tex_coords
    - mesh_reset
    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:
    - mesh_free
    - gf_node_get_tag
    - INT2FIX
    - register_point_in_face
    - register_face_in_point
    - gf_mesh_build_aabbtree
    - gf_vec_diff
    - mesh_set_vertex_vx
    - smooth_face_normals
    - gf_malloc
    - gf_vec_cross
    - mesh_set_triangle
    - MESH_MAKE_COL
    - mesh_update_bounds
    - gf_cos
    - new_mesh
    - gf_free
    - gf_vec_norm
    - MESH_GET_COL
    - MESH_SET_NORMAL
    - memset
    - mesh_reset
    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:
    - mesh_free
    - gf_acos
    - gf_assert
    - gf_mx_apply_vec
    - register_point_in_face
    - register_face_in_point
    - gf_vec_rev
    - gf_vec_diff
    - TesselateFaceMeshComplex
    - mesh_set_vertex_vx
    - smooth_face_normals
    - gf_asin
    - gf_malloc
    - gf_vec_equal
    - gf_vec_cross
    - gf_path_flatten
    - NEAR_ZERO
    - gf_divfix
    - gf_mx_init
    - mesh_set_triangle
    - TesselateFaceMesh
    - ABS
    - gf_mulfix
    - gf_vec_len
    - gf_polygone2d_get_convexity
    - REGISTER_POINT_FACE
    - gf_cos
    - new_mesh
    - gf_free
    - gf_vec_norm
    - gf_mx_add_rotation
    - gf_sin
    - gf_vec_dot
    - MESH_SET_NORMAL
    - memset
    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_update_bounds
    - gf_path_get_bounds
    - mesh_extrude_path_intern
    - gf_mesh_build_aabbtree
    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_update_bounds
    - gf_path_add_move_to
    - mesh_extrude_path
    - gf_path_del
    - gf_path_new
    - mesh_reset
    - gf_path_add_line_to
    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:
    - mesh_free
    - gf_sc_texture_get_handler
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_divfix
    - compositor_adjust_scale
    - gf_rect_center
    - gf_mo_get_visual_info_ex
    - INT2FIX
    - gf_node_get_num_instances
    - gf_mulfix
    - drawable_reset_path
    - gf_node_dirty_set
    - gf_path_add_rect_center
    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:
    - compositor_3d_draw_bitmap
    - gf_node_get_tag
    - gf_node_get_private
    - Bitmap_BuildGraph
    - FIX2INT
    - memset
    - 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_node_get_private
    - gf_rect_center
    - GF_TraverseState*::visual::DrawBitmap
    - gf_mx2d_copy
    - gf_mx2d_inverse
    - FIX2INT
    - drawable_reset_path
    - gf_path_add_rect_center
    - visual_2d_texture_path
    - gf_mx2d_apply_rect
    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:
    - drawable_finalize_sort
    - gf_node_get_tag
    - gf_free
    - gf_sc_get_compositor
    - gf_node_get_private
    - Bitmap_BuildGraph
    - drawable_init_context_mpeg4
    - visual_2d_remove_last_context
    - vrml_drawable_pick
    - drawable_del_ex
    - draw_bitmap_3d
    - GF_COL_A
    - draw_bitmap_2d
    - rectangle_check_adaptation
    - memset
    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_LOG
    - GF_SAFEALLOC
    - drawable_init_ex
    - 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:
    - ostgl_make_current
    - gf_divfix
    - GF_Compositor*::video_out::LockBackBuffer
    - gf_opengl_init
    - INT2FIX
    - compositor_set_ar_scale
    - GF_Compositor*::video_out::ProcessEvent
    - ostgl_create_context
    - gf_sc_reset_graphics
    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:
    - camera_reset_viewpoint
    - gf_node_dirty_set
    - compositor_3d_get_camera
    - gf_sc_invalidate
    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:
    - gf_filter_pid_get_property
    - INT2FIX
    - mesh_new_planar_srd
    - gf_sc_texture_set_blend_mode
    - visual_3d_set_state
    - GF_COL_ARGB
    - gf_sc_texture_is_transparent
    - gf_divfix
    - gf_mx_init
    - visual_3d_point_sprite
    - gf_sc_texture_disable
    - gf_sc_texture_convert
    - gf_sc_texture_enable
    - gf_mulfix
    - visual_3d_set_material_2d_argb
    - gf_mx_add_translation
    - visual_3d_enable_antialias
    - visual_3d_mesh_paint
    - new_mesh
    - gf_mx_add_matrix
    - gf_mx_copy
    - GF_COL_A
    - mesh_new_rectangle
    - mesh_new_rectangle_ex
    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_node_get_tag
    - gf_free
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_private
    - gf_node_traverse
    - gf_sc_check_focus_upon_destroy
    - gf_node_list_get_child
    - gf_node_list_get_count
    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_mx2d_pre_multiply
    - gf_mx_copy
    - group_2d_traverse
    - gf_mx2d_copy
    - gf_mx_add_matrix_2d
    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_mx2d_init
    - gf_mx2d_add_scale_at
    - gf_free
    - gf_mx2d_add_translation
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - TraverseUntransformEx
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    - group_2d_destroy
    - traverse_transform
    - gf_mx2d_add_rotation
    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_private
    - gf_node_get_tag
    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_mx2d_init
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_private
    - gf_sc_check_focus_upon_destroy
    - tr_mx2d_get_matrix
    - group_2d_destroy
    - traverse_transform
    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_mx2d_init
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_node_dirty_get
    - gf_node_dirty_clear
    - gf_node_get_private
    - group_2d_traverse
    - gf_cmx_set
    - gf_sc_check_focus_upon_destroy
    - gf_cmx_copy
    - group_2d_destroy
    - gf_cmx_multiply
    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_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_cmx_init
    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
    - gf_malloc
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - group_2d_traverse_with_order
    - gf_node_get_private
    - group_2d_traverse
    - gf_sc_check_focus_upon_destroy
    - group_2d_destroy
    - gf_node_list_get_count
    - qsort
    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_callback_function
    - GF_SAFEALLOC
    - gf_node_set_private
    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
    - visual_3d_node_cull
    - gf_node_get_private
    - visual_3d_add_spot_light
    - gf_vec_diff
    - gf_vec_add
    - gf_bbox_refresh
    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
    - visual_3d_node_cull
    - gf_node_get_private
    - gf_vec_diff
    - gf_vec_add
    - gf_bbox_refresh
    - visual_3d_add_point_light
    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_remove_last_light
    - gf_node_get_private
    - visual_3d_add_directional_light
    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_mo_set_speed
    - gf_node_event_out
    - gf_sc_audio_open
    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_unregister
    - gf_sc_audio_stop
    - gf_node_event_out
    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_mo_get_duration
    - gf_free
    - gf_node_event_out
    - gf_node_get_private
    - gf_sc_audio_restart
    - gf_sc_unregister_time_node
    - gf_sc_audio_register
    - gf_mo_should_deactivate
    - gf_sc_audio_predestroy
    - audioclip_deactivate
    - gf_mo_get_loop
    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:
    - gf_node_get_private
    - gf_node_get_scene_time
    - audioclip_deactivate
    - audioclip_activate
    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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_sc_audio_setup
    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:
    - audioclip_update_time
    - gf_sc_register_time_node
    - gf_node_get_private
    - gf_sc_audio_stop
    - gf_sc_audio_open
    - gf_sc_invalidate
    - gf_sc_audio_unregister
    - gf_sc_audio_check_url
    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_mo_set_speed
    - gf_sc_invalidate
    - gf_sc_audio_open
    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_node_get_private
    - gf_sc_audio_restart
    - gf_sc_unregister_time_node
    - gf_sc_audio_register
    - gf_mo_should_deactivate
    - audiosource_deactivate
    - gf_sc_audio_predestroy
    - gf_mo_get_loop
    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:
    - gf_node_get_scene_time
    - audiosource_activate
    - AudioSourceStack*::input::input_ifce::GetSpeed
    - gf_node_get_private
    - audiosource_deactivate
    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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    - gf_sc_audio_setup
    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:
    - gf_sc_register_time_node
    - gf_node_get_private
    - gf_sc_audio_stop
    - gf_sc_invalidate
    - gf_sc_audio_open
    - gf_sc_audio_unregister
    - audiosource_update_time
    - gf_sc_audio_check_url
    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_mixer_del
    - gf_mixer_lock
    - gf_list_count
    - gf_free
    - gf_mixer_force_channel_out
    - gf_mixer_add_input
    - gf_list_del
    - gf_node_get_private
    - gf_sc_audio_register
    - gf_sc_unregister_time_node
    - gf_node_traverse
    - gf_mixer_is_src_present
    - gf_mixer_get_src_count
    - gf_mixer_remove_all
    - gf_list_get
    - gf_sc_audio_unregister
    - gf_list_rem
    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:
    - gf_node_get_private
    - audiobuffer_activate
    - gf_node_get_scene_time
    - audiobuffer_deactivate
    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_malloc
    - ceil
    - gf_node_get_private
    - gf_fatal_assert
    - gf_mixer_get_block_align
    - memset
    - gf_audio_fmt_bit_depth
    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_set_config
    - gf_node_get_private
    - gf_mixer_must_reconfig
    - gf_assert
    - gf_mixer_get_config
    - gf_mixer_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_mixer_new
    - gf_sc_register_time_node
    - GF_LOG
    - setup_audiobuffer
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - gf_node_set_callback_function
    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:
    - gf_node_get_private
    - audiobuffer_update_time
    - gf_sc_register_time_node
    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_odm_stop
    - gf_list_count
    - gf_odm_get_media_clock
    - gf_scene_restart_dynamic
    - gf_odm_shares_clock
    - gf_list_del
    - gf_odm_get_mediacontrol
    - gf_list_enum
    - gf_list_new
    - gf_inline_restart
    - gf_list_add
    - gf_odm_start
    - gf_clock_reset
    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_odm_resume
    - gf_odm_get_media_clock
    - mediacontrol_resume
    - gf_odm_shares_clock
    - gf_list_enum
    - gf_assert
    - gf_scene_select_main_addon
    - gf_clock_resume
    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_clock_time_absolute
    - gf_odm_get_media_clock
    - gf_odm_shares_clock
    - mediacontrol_pause
    - gf_clock_pause
    - gf_list_enum
    - gf_assert
    - gf_odm_pause
    - gf_scene_select_main_addon
    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_clock_time_absolute
    - gf_odm_get_media_clock
    - gf_scene_restart_dynamic
    - gf_odm_shares_clock
    - gf_list_enum
    - gf_assert
    - gf_odm_set_speed
    - gf_clock_set_speed
    - mediacontrol_set_speed
    - gf_mulfix
    - gf_scene_select_main_addon
    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_enum
    - gf_list_get
    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_list_count
    - mediacontrol_restart
    - gf_odm_init_segments
    - gf_odm_switch_mediacontrol
    - gf_list_find
    - gf_sc_invalidate
    - mediacontrol_set_speed
    - gf_scene_get_media_object
    - mediacontrol_resume
    - gf_sg_vrml_field_copy
    - gf_node_get_private
    - gf_odm_remove_mediacontrol
    - gf_free
    - gf_odm_get_media_clock
    - gf_list_del
    - mediacontrol_pause
    - gf_odm_set_mediacontrol
    - gf_sg_vrml_mf_reset
    - MC_URLChanged
    - 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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - 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_get_private
    - gf_sg_get_root_node
    - gf_sc_invalidate
    - gf_node_get_graph
    - gf_node_dirty_set
    - MC_URLChanged
    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_odm_get_mediacontrol
    - gf_list_add
    - gf_node_event_out
    - gf_list_find
    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_list_del_item
    - gf_odm_set_mediacontrol
    - mediacontrol_resume
    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_count
    - gf_clock_time_absolute
    - gf_odm_get_media_clock
    - mediacontrol_restart
    - gf_odm_get_mediacontrol
    - gf_list_get
    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
    - drawable_3d_del
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - GF_LOG
    - gf_node_get_private
    - drawable3d_check_focus_highlight
    - gf_node_get_class_name
    - visual_3d_vrml_drawable_pick
    - build_shape
    - mesh_reset
    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_atan2
    - camera_get_target_dir
    - gf_vec_dot
    - gf_vec_norm
    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
    - gf_sc_texture_get_handler
    - gf_mo_get_srd_info
    - drawable_3d_base_traverse
    - GF_LOG
    - gf_mo_hint_visible_rect
    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_sys_is_cov_mode
    - IFS_SetTexCoordIndex
    - IFS_SetCoordIndex
    - gf_node_set_callback_function
    - IFS_SetNormalIndex
    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:
    - ILS_SetCoordIndex
    - drawable_3d_new
    - gf_sys_is_cov_mode
    - gf_node_set_callback_function
    - ILS_SetColorIndex
    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:
    - gf_node_set_callback_function
    - ElevationGrid_SetHeight
    - gf_sys_is_cov_mode
    - drawable_3d_new
    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
    - gf_sys_is_cov_mode
    - Extrusion_SetScale
    - Extrusion_SetOrientation
    - Extrusion_SetSpine
    - gf_node_set_callback_function
    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_divfix
    - gf_vec_norm
    - gf_sqrt
    - gf_mx_init
    - gf_mx_add_rotation
    - gf_vec_dot
    - gf_vec_equal
    - gf_mulfix
    - gf_vec_len
    - gf_atan2
    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:
    - mesh_update_bounds
    - gf_mx_rotate_vector
    - gf_cos
    - gf_divfix
    - gf_vec_norm
    - MESH_GET_NORMAL
    - gf_sin
    - gf_mx_inverse
    - MESH_SET_NORMAL
    - gf_mx_apply_vec
    - NLD_GetKey
    - gf_mulfix
    - gf_mesh_build_aabbtree
    - NLD_GetMatrix
    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:
    - gf_node_traverse
    - drawable_3d_base_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_get_bounds
    - gf_path_point_over
    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_add
    - gf_list_reset
    - gf_list_get
    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_list_count
    - gf_mx_inverse
    - gf_node_get_class_name
    - gf_mx_apply_vec
    - gf_node_get_name
    - gf_vec_lensq
    - gf_bbox_from_rect
    - gf_vec_diff
    - gf_list_add
    - gf_plane_get_distance
    - FIX2FLT
    - gf_list_get
    - svg_clone_use_stack
    - gf_divfix
    - compositor_get_2d_plane_intersection
    - gf_mx_copy
    - GF_LOG
    - svg_drawable_is_over
    - gf_mx_apply_ray
    - gf_vec_dot
    - gf_bbox_plane_relation
    - gf_list_reset
    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_list_count
    - gf_mx2d_apply_coords
    - gf_node_get_log_name
    - gf_list_add
    - drawable_get_aspect_2d_svg
    - gf_mx_from_mx2d
    - FIX2FLT
    - gf_mx2d_inverse
    - gf_list_get
    - svg_clone_use_stack
    - memcpy
    - gf_divfix
    - gf_mx2d_copy
    - compositor_svg_apply_local_transformation
    - compositor_svg_restore_parent_transformation
    - svg_drawable_3d_pick
    - GF_LOG
    - svg_drawable_is_over
    - gf_svg_apply_inheritance
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - memset
    - gf_list_reset
    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_finalize_sort
    - gf_node_dirty_get
    - visual_3d_draw_from_context
    - gf_assert
    - drawable_node_del
    - drawable_get_aspect_2d_svg
    - gf_mx2d_apply_rect
    - drawable_mark_modified
    - gf_node_dirty_clear
    - rebuild_path
    - compositor_svg_traverse_base
    - mesh_from_path
    - gf_sc_get_nodes_bounds
    - memcpy
    - drawable_get_strikeinfo
    - gf_node_get_private
    - compositor_svg_apply_local_transformation
    - compositor_svg_restore_parent_transformation
    - new_mesh
    - gf_path_get_bounds
    - GF_COL_A
    - gf_svg_flatten_attributes
    - compositor_svg_is_display_off
    - drawable_init_context_svg
    - memset
    - svg_drawable_pick
    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_cos
    - gf_atan2
    - gf_sin
    - gf_mulfix
    - gf_path_add_line_to
    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:
    - gf_path_close
    - gf_path_add_move_to
    - svg_rect_add_arc
    - drawable_reset_path
    - gf_path_add_line_to
    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
    - gf_path_add_move_to
    - drawable_reset_path
    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_count
    - gf_path_add_move_to
    - drawable_reset_path
    - gf_list_get
    - 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_count
    - gf_path_close
    - gf_path_add_move_to
    - drawable_reset_path
    - gf_list_get
    - gf_path_add_line_to
    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:
    - gf_svg_path_build
    - drawable_reset_path_outline
    - 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_path_del
    - drawable_stack_new
    - gf_node_set_callback_function
    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
    - mediasensor_update_timing
    - gf_odm_init_segments
    - gf_list_del
    - gf_node_get_private
    - gf_list_del_item
    - gf_mo_register
    - gf_sc_send_event
    - gf_clock_media_time
    - memset
    - gf_list_add
    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_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - 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_list_count
    - gf_mo_unregister
    - gf_node_event_out
    - gf_node_get_private
    - gf_list_del_item
    - gf_sc_invalidate
    - 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_count
    - gf_odm_get_media_clock
    - gf_node_event_out
    - GF_LOG
    - gf_sg_vrml_mf_alloc
    - gf_list_get
    - gf_strdup
    - gf_sg_vrml_mf_reset
    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: 1
    functionLinenumber: 52
    functionLinenumberEnd: 81
    functionName: GradientGetMatrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_node_get_tag
    - gf_mx2d_add_translation
    - gf_mx2d_add_scale_at
    - 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_sc_texture_destroy
    - gf_node_get_private
    - gf_free
    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_sc_texture_get_stencil
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_malloc
    - gf_node_get_private
    - gf_sc_texture_allocate
    - GF_COL_ARGB_FIXED
    - gf_node_get_parent
    - gf_evg_stencil_new
    - gf_evg_stencil_set_gradient_mode
    - gf_node_dirty_set
    - gf_sc_texture_set_stencil
    - gf_evg_stencil_set_gradient_interpolation
    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: 2
    functionLinenumber: 136
    functionLinenumberEnd: 159
    functionName: LG_ComputeMatrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_translation
    - gf_sc_texture_get_stencil
    - gf_divfix
    - gf_evg_stencil_set_linear_gradient
    - gf_mx2d_add_scale
    - GradientGetMatrix
    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_path_add_move_to
    - gf_mx2d_add_scale
    - INT2FIX
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_new
    - gf_evg_stencil_set_gradient_mode
    - gf_evg_stencil_set_gradient_interpolation
    - gf_path_add_line_to
    - gf_mx2d_add_translation
    - gf_malloc
    - gf_evg_stencil_set_linear_gradient
    - gf_list_find
    - gf_path_new
    - gf_list_insert
    - gf_evg_stencil_delete
    - gf_evg_surface_new
    - gf_evg_stencil_set_matrix
    - GradientGetMatrix
    - gf_path_close
    - gf_sc_texture_set_data
    - gf_evg_surface_delete
    - gf_evg_surface_set_path
    - gf_node_get_private
    - gf_path_del
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_surface_set_raster_level
    - gf_evg_surface_fill
    - gf_free
    - gf_evg_stencil_set_texture
    - gf_evg_surface_attach_to_texture
    - memset
    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_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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_path_add_move_to
    - gf_mx2d_add_scale
    - INT2FIX
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_new
    - gf_evg_stencil_set_gradient_mode
    - gf_evg_stencil_set_gradient_interpolation
    - gf_path_add_line_to
    - gf_mx2d_add_translation
    - gf_malloc
    - gf_list_find
    - gf_evg_stencil_set_radial_gradient
    - gf_path_new
    - gf_list_insert
    - gf_evg_stencil_delete
    - gf_evg_surface_new
    - gf_evg_stencil_set_matrix
    - GradientGetMatrix
    - gf_path_close
    - gf_sc_texture_set_data
    - gf_evg_surface_delete
    - gf_evg_surface_set_path
    - gf_node_get_private
    - gf_path_del
    - gf_evg_stencil_set_auto_matrix
    - gf_evg_surface_set_raster_level
    - gf_evg_surface_fill
    - gf_free
    - gf_evg_stencil_set_texture
    - gf_evg_surface_attach_to_texture
    - memset
    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_sc_texture_get_stencil
    - gf_node_dirty_get
    - gf_node_dirty_clear
    - gf_malloc
    - gf_node_get_private
    - gf_sc_texture_allocate
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_new
    - gf_evg_stencil_set_gradient_mode
    - gf_sc_texture_set_stencil
    - gf_evg_stencil_set_gradient_interpolation
    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: 2
    functionLinenumber: 590
    functionLinenumberEnd: 612
    functionName: RG_ComputeMatrix
    functionSourceFile: /src/gpac/src/compositor/mpeg4_gradients.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_add_translation
    - gf_sc_texture_get_stencil
    - gf_divfix
    - gf_mx2d_add_scale
    - gf_evg_stencil_set_radial_gradient
    - GradientGetMatrix
    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_SAFEALLOC
    - gf_node_set_private
    - gf_node_set_callback_function
    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:
    - gf_node_get_private
    - GradientStack*::txh::update_texture_fcnt
    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
    - BuildRadialGradientTexture
    - BuildLinearGradientTexture
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_add
    - GF_SAFEALLOC
    - gf_list_new
    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:
    - memset
    - gf_rect_union
    - 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:
    - av_apply
    - FLT2FIX
    - ar_apply
    - ah_apply
    - svin_apply
    - ab_apply
    - sv_apply
    - shin_apply
    - strnicmp
    - al_apply
    - sh_apply
    - strlen
    - sscanf
    - at_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_list_count
    - gf_node_dirty_get
    - fg_compute_bounds
    - parent_node_reset
    - form_apply
    - compositor_2d_update_clipper
    - gf_bbox_from_rect
    - gf_list_add
    - parent_node_traverse
    - gf_rect_center
    - form_reset
    - gf_list_get
    - parent_node_predestroy
    - gf_node_get_private
    - form_new_group
    - gf_list_enum
    - parent_node_child_traverse
    - gf_rect_pixelize
    - visual_3d_reset_clipper_2d
    - gf_rect_union
    - gf_free
    - gf_list_del
    - GF_LOG
    - gf_sc_pick_in_clipper
    - visual_get_size_info
    - memset
    - 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:
    - parent_node_setup
    - GF_LOG
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - 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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - form_get_group
    - fg_update_bounds
    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:
    - compositor_texture_rectangles
    - gf_node_get_private
    - GF_COL_A
    - gf_stretch_bits
    - memset
    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
    - gf_list_del
    - gf_node_get_private
    - gf_list_enum
    - gf_sc_texture_destroy
    - ostgl_delete_context
    - gf_sc_visual_unregister
    - visual_del
    - gf_node_traverse_children
    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_node_dirty_get
    - gf_node_event_out
    - gf_node_traverse
    - gf_node_register
    - gf_list_get
    - gf_node_unregister
    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_mx2d_init
    - gf_list_count
    - composite_do_bindable
    - gf_node_dirty_get
    - INT2FIX
    - gf_evg_stencil_new
    - ostgl_make_current
    - gf_sg_use_pixel_metrics
    - gf_malloc
    - gf_node_dirty_clear
    - visual_draw_frame
    - gf_sc_texture_setup_fbo
    - gf_sc_invalidate
    - gf_node_get_graph
    - gf_list_get
    - gf_sc_texture_release
    - gf_sc_texture_enable_fbo
    - gf_sc_copy_to_stencil
    - gf_node_get_private
    - gf_sc_texture_push_image
    - ostgl_delete_context
    - gf_cmx_init
    - gf_sc_copy_to_texture
    - ostgl_create_context
    - gf_sc_texture_set_stencil
    - gf_free
    - gf_sc_texture_get_stencil
    - gf_evg_stencil_set_texture
    - GF_LOG
    - MIN
    - gf_sc_texture_allocate
    - gf_get_tinygl_depth
    - memset
    - gf_4cc_to_str
    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_evg_surface_attach_to_texture
    - gf_node_get_private
    - gf_sc_texture_get_stencil
    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:
    - visual_new
    - GF_LOG
    - gf_sc_texture_setup
    - gf_list_del_item
    - gf_sc_visual_register
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_list_new
    - gf_node_set_callback_function
    - gf_list_add
    - 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:
    - visual_new
    - GF_LOG
    - gf_sc_texture_setup
    - gf_list_del_item
    - gf_sc_visual_register
    - GF_SAFEALLOC
    - gf_node_set_private
    - camera_invalidate
    - gf_list_new
    - gf_node_set_callback_function
    - gf_list_add
    - 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_sg_use_pixel_metrics
    - gf_mx2d_init
    - gf_mx_copy
    - gf_mx_init
    - gf_node_get_private
    - gf_node_unregister
    - INT2FIX
    - gf_mx_apply_vec
    - gf_sc_texture_get_transform
    - gf_node_get_graph
    - gf_node_register
    - FIX2INT
    - memset
    - gf_list_add
    - gf_sc_exec_event_vrml
    - gf_list_reset
    - visual_execute_event
    - compositor_mpeg4_get_sensor_handler_ex
    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_private
    - gf_node_get_tag
    - gf_divfix
    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: 1
    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_sc_key_navigator_del
    - gf_list_del_item
    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_sc_change_key_navigator
    - gf_node_get_private
    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_node_event_out
    - gf_node_get_private
    - gf_sc_get_option
    - gf_sc_get_fps
    - 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:
    - InitKeySensor
    - gf_node_get_tag
    - InitMediaControl
    - on_kn_set_focus
    - InitStringSensor
    - gf_init_inline
    - InitInputSensor
    - gf_sys_is_cov_mode
    - gf_node_set_callback_function
    - gf_node_set_private
    - gf_scene_init_storage
    - InitTermCap
    - InitMediaSensor
    - gf_list_add
    - gf_sc_on_node_init
    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_inline_on_modified
    - MS_Modified
    - gf_node_get_tag
    - InputSensorModified
    - gf_sc_invalidate
    - MC_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_init
    - gf_scene_on_node_destroyed
    - gf_scene_on_node_modified
    - gf_node_dirty_set
    - gf_mo_event_target_enum_node
    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: 0
    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: 0
    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:
    - GF_LOG
    - GF_SAFEALLOC
    - new_mesh
    - gf_node_set_private
    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:
    - mesh_free
    - gf_node_get_private
    - gf_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:
    - gf_path_reset
    - gf_mx_copy
    - gf_mx_init
    - gf_node_get_private
    - visual_3d_draw_bbox
    - gf_node_set_private
    - drawable_reset_path
    - gf_node_traverse_children
    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:
    - MIN
    - gf_divfix
    - INT2FIX
    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:
    - gf_sg_use_pixel_metrics
    - gf_tan
    - FLT2FIX
    - gf_divfix
    - gf_mx_init
    - camera_reset_viewpoint
    - gf_mx_add_scale
    - gf_muldiv
    - INT2FIX
    - gf_mx_apply_vec
    - gf_sc_invalidate
    - gf_node_get_graph
    - MAX
    - gf_mulfix
    - gf_vec_len
    - gf_vec_diff
    - gf_node_dirty_set
    - gf_atan2
    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_sc_fit_world_to_screen
    - gf_divfix
    - gf_mx_init
    - camera_reset_viewpoint
    - gf_node_traverse
    - INT2FIX
    - gf_sc_invalidate
    - camera_update_stereo
    - camera_stop_anim
    - Bindable_GetIsBound
    - gf_list_get
    - visual_3d_viewpoint_change
    - camera_update
    - visual_3d_projection_matrix_modified
    - gf_atan2
    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_node_traverse
    - visual_3d_clear
    - INT2FIX
    - visual_3d_clear_depth
    - Bindable_GetIsBound
    - gf_list_get
    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_lookat
    - visual_3d_projection_matrix_modified
    - gf_divfix
    - gf_mx_copy
    - visual_3d_draw_background
    - gf_mx_perspective
    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:
    - visual_3d_setup_projection
    - visual_3d_set_scissor
    - FLT2FIX
    - gf_divfix
    - camera_animate
    - gf_list_get
    - visual_3d_set_viewport
    - gf_node_traverse
    - INT2FIX
    - visual_3d_clear
    - visual_3d_clear_depth
    - visual_3d_draw_background_on_axis
    - visual_3d_enable_depth_buffer
    - visual_3d_draw_background
    - gf_mulfix
    - Bindable_GetIsBound
    - gf_node_dirty_set
    - 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_private
    - gf_sc_texture_get_handler
    - gf_node_get_tag
    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_count
    - gf_malloc
    - visual_3d_set_clipper_2d
    - visual_3d_has_alpha
    - gf_node_dirty_clear
    - GF_LOG
    - gf_node_get_private
    - gf_list_get
    - gf_list_enum
    - gf_node_traverse
    - gf_assert
    - gf_list_new
    - GF_SAFEALLOC
    - visual_3d_reset_clipper_2d
    - gf_list_insert
    - gf_list_add
    - memcpy
    - gf_mx_apply_bbox
    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_list_count
    - gf_mx_add_matrix
    - gf_free
    - gf_mx_copy
    - visual_3d_set_clipper_2d
    - gf_node_dirty_clear
    - visual_3d_reset_clip_plane
    - gf_list_del
    - gf_list_enum
    - gf_node_traverse
    - visual_3d_set_clip_plane
    - visual_3d_reset_clipper_2d
    - gf_list_get
    - memcpy
    - gf_list_reset
    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_node_traverse
    - visual_3d_flush_contexts
    - visual_3d_clear_all_lights
    - visual_3d_check_collisions
    - Bindable_GetIsBound
    - gf_list_get
    - visual_3d_init_draw
    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_count
    - gf_mx_init
    - gf_rect_center
    - gf_node_traverse
    - INT2FIX
    - gf_rect_pixelize
    - gf_list_get
    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_end_auto_stereo_pass
    - GF_LOG
    - gf_sys_clock
    - gf_list_enum
    - gf_sc_traverse_subscene
    - visual_3d_init_autostereo
    - visual_3d_setup_traversing_state
    - visual_3d_setup_clipper
    - compositor_3d_enable_fbo
    - visual_3d_setup
    - visual_3d_init_shaders
    - visual_3d_draw_node
    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:
    - visual_3d_setup_projection
    - GF_TraverseState*::visual::compositor::video_out::ProcessEvent
    - FIX2FLT
    - reset_collide_cursor
    - fabs
    - gf_vec_norm
    - GF_LOG
    - gf_vec_scale
    - gf_node_traverse
    - gf_vec_equal
    - ABS
    - gf_vec_len
    - gf_vec_diff
    - gf_vec_add
    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:
    - FIX2FLT
    - gf_bbox_point_inside
    - GF_LOG
    - gf_assert
    - gf_bbox_get_vertices
    - gf_vec_len
    - gf_vec_diff
    - gf_mx_apply_bbox_sphere
    - gf_mx_apply_bbox
    - gf_plane_get_distance
    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:
    - gf_divfix
    - gf_ray
    - INT2FIX
    - gf_mulfix
    - gf_mx_apply_vec_4x4
    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_projection
    - FIX2FLT
    - GF_LOG
    - gf_node_traverse
    - gf_sg_get_root_node
    - visual_3d_setup_traversing_state
    - visual_3d_setup_ray
    - gf_list_reset
    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_list_count
    - gf_mx_inverse
    - gf_node_get_class_name
    - gf_mesh_intersect_ray
    - gf_mx_apply_vec
    - compositor_is_composite_texture
    - gf_node_get_name
    - gf_vec_lensq
    - gf_bbox_from_rect
    - gf_vec_diff
    - gf_list_add
    - gf_plane_get_distance
    - FIX2FLT
    - gf_list_get
    - drawable_get_aspect_2d_mpeg4
    - drawable_get_strikeinfo
    - gf_divfix
    - compositor_get_2d_plane_intersection
    - gf_path_point_over
    - visual_3d_node_cull
    - gf_mx_copy
    - GF_LOG
    - gf_mx_apply_ray
    - gf_vec_dot
    - gf_bbox_plane_relation
    - memset
    - gf_list_reset
    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
    - camera_get_right_dir
    - gf_mx_inverse
    - gf_mesh_intersect_ray
    - gf_mx_apply_vec
    - gf_vec_diff
    - FIX2FLT
    - camera_get_target_dir
    - gf_node_get_private
    - gf_vec_scale
    - gf_log_tool_level_on
    - gf_vec_len
    - gf_mesh_closest_face
    - visual_3d_node_cull
    - gf_mx_copy
    - gf_vec_norm
    - GF_LOG
    - gf_mx_apply_ray
    - gf_vec_add
    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_set_blend_mode
    - gf_sc_texture_enable
    - GF_COL_A
    - visual_3d_set_material_2d_argb
    - visual_3d_set_state
    - gf_sc_texture_enable_ex
    - gf_rect_from_bbox
    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: 1
    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_set_blend_mode
    - visual_3d_set_material_2d_argb
    - gf_sc_texture_enable
    - visual_3d_set_material_2d
    - visual_3d_set_state
    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:
    - visual_3d_mesh_paint
    - drawable_get_strikeinfo
    - new_mesh
    - gf_mesh_tesselate_path
    - visual_3d_set_2d_strike
    - visual_3d_mesh_strike
    - gf_sc_texture_disable
    - visual_3d_setup_texture_2d
    - mesh_get_outline
    - GF_COL_A
    - visual_3d_set_material_2d_argb
    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: 1
    functionLinenumber: 1739
    functionLinenumberEnd: 1891
    functionName: visual_3d_setup_material
    functionSourceFile: /src/gpac/src/compositor/visual_manager_3d.c
    functionUses: 0
    functionsReached:
    - gf_sc_texture_get_handler
    - gf_node_get_tag
    - gf_sc_texture_set_blend_mode
    - visual_3d_set_material
    - gf_mulfix
    - visual_3d_set_material_2d
    - visual_3d_set_shininess
    - visual_3d_set_state
    - gf_cmx_apply_fixed
    - visual_3d_enable_antialias
    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_get_handler
    - gf_sc_texture_set_blend_mode
    - gf_sc_texture_is_transparent
    - visual_3d_set_material
    - gf_node_dirty_reset
    - gf_sc_texture_enable
    - visual_3d_set_material_2d
    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_get_handler
    - gf_sc_texture_disable
    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_texture
    - visual_3d_setup_material
    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:
    - visual_3d_mesh_hatch
    - visual_3d_mesh_paint
    - gf_node_get_tag
    - gf_mx_add_matrix
    - gf_mx_copy
    - visual_3d_disable_texture
    - gf_rect_center
    - gf_irect_union
    - INT2FIX
    - visual_3d_setup_appearance
    - gf_mx_apply_bbox_4x4
    - gf_rect_pixelize
    - gf_mulfix
    - visual_3d_setup_material
    - gf_mx_apply_bbox
    - gf_irect_intersect
    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:
    - INT2FIX
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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:
    - gf_path_close
    - gf_path_add_move_to_vec
    - drawable_mark_modified
    - gf_node_dirty_clear
    - gf_node_dirty_get
    - gf_path_add_line_to_vec
    - drawable_reset_path
    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_evg_stencil_set_vertex_path
    - gf_path_add_move_to
    - INT2FIX
    - GF_COL_ARGB_FIXED
    - gf_evg_stencil_new
    - gf_path_add_line_to
    - visual_2d_draw_path
    - gf_malloc
    - gf_path_new
    - visual_2d_texture_path
    - gf_evg_stencil_set_matrix
    - gf_evg_stencil_delete
    - gf_path_close
    - gf_path_reset
    - gf_evg_stencil_set_vertex_center
    - gf_path_del
    - gf_evg_stencil_set_vertex_colors
    - gf_free
    - GF_COL_A
    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:
    - mesh_new_ifs2d
    - drawable_get_strikeinfo
    - gf_node_get_tag
    - new_mesh
    - mesh_new_ils
    - visual_3d_mesh_strike
    - gf_path_get_bounds
    - drawable_finalize_sort
    - gf_node_get_private
    - drawable_init_context_mpeg4
    - drawable_node_del
    - vrml_drawable_pick
    - GF_COL_A
    - IFS2D_Draw
    - ifs2d_check_changes
    - memset
    - visual_3d_draw_2d_with_aspect
    - drawable_get_aspect_2d_mpeg4
    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:
    - gf_sys_is_cov_mode
    - drawable_stack_new
    - gf_node_set_callback_function
    - IFS2D_SetColorIndex
    - IFS2D_SetCoordIndex
    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_mo_set_flag
    - gf_node_get_private
    - gf_sc_unregister_time_node
    - gf_sg_vrml_mf_reset
    - gf_mo_stop
    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_sg_vrml_field_copy
    - gf_mo_set_flag
    - gf_mo_unregister
    - gf_mo_play
    - gf_mo_register
    - gf_mo_set_speed
    - gf_mo_url_changed
    - gf_sc_invalidate
    - gf_sg_vrml_mf_reset
    - gf_mo_stop
    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:
    - animationstream_check_url
    - gf_mo_play
    - gf_mo_set_speed
    - gf_node_event_out
    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_list_count
    - gf_node_event_out
    - gf_mo_set_flag
    - gf_mo_url_changed
    - gf_sc_invalidate
    - gf_mo_stop
    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:
    - gf_node_get_scene_time
    - animationstream_get_speed
    - animationstream_activate
    - gf_node_get_private
    - animationstream_get_loop
    - gf_mo_should_deactivate
    - animationstream_deactivate
    - gf_mo_is_done
    - gf_mo_restart
    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_LOG
    - GF_SAFEALLOC
    - 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:
    - gf_node_get_private
    - animationstream_update_time
    - animationstream_check_url
    - gf_sc_register_time_node
    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_node_get_attribute_by_tag
    - gf_node_store_embedded_data
    - gf_scene_resolve_xlink
    - gf_sg_get_private
    - GF_SAFEALLOC
    - gf_node_get_graph
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - gf_opts_get_key
    - strncmp
    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_sg_vrml_mf_reset
    - gf_sg_get_private
    - gf_node_get_graph
    - memset
    - gf_scene_get_media_object_ex
    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_svg_get_subscene
    - gf_mo_play
    - gf_sg_get_private
    - gf_svg_flatten_attributes
    - gf_node_get_graph
    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_gl_txw_reset
    - gf_free
    - compositor_3d_delete_fbo
    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_evg_stencil_delete
    - gf_th_id
    - 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_LOG
    - GF_TextureHandler*::frame_ifce::get_plane
    - gf_sc_texture_release_stream
    - gf_gl_txw_upload
    - gf_stretch_bits
    - memset
    - gf_error_to_string
    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_gl_txw_reset
    - gf_free
    - GF_LOG
    - compositor_3d_delete_fbo
    - GF_TextureHandler*::compositor::video_out::ReleaseTexture
    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:
    - gf_gl_txw_bind
    - GLTEXENV
    - 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:
    - gf_sc_texture_check_pause_on_first_load
    - glDisable
    - glBindTexture
    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: 1
    functionLinenumber: 361
    functionLinenumberEnd: 391
    functionName: tx_can_use_rect_ext
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 0
    functionsReached:
    - gf_node_get_parent
    - gf_node_get_tag
    - 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: 2
    functionLinenumber: 394
    functionLinenumberEnd: 542
    functionName: tx_setup_format
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_gl_txw_setup
    - GF_LOG
    - gf_get_next_pow2
    - gf_node_dirty_set
    - gf_4cc_to_str
    - tx_can_use_rect_ext
    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:
    - gf_malloc
    - INT2FIX
    - gf_stretch_bits
    - memset
    - gf_get_next_pow2
    - memcpy
    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:
    - GL_CHECK_ERR
    - gf_gl_txw_reset
    - gf_sc_texture_check_pause_on_first_load
    - gf_evg_stencil_set_texture_planes
    - gf_filter_abort
    - GF_LOG
    - GF_TextureHandler*::frame_ifce::get_plane
    - gf_sc_texture_convert
    - gf_sys_clock
    - glDeleteTextures
    - gf_mo_get_object_time
    - glTexImage2D
    - GF_SAFEALLOC
    - gf_sc_texture_get_data
    - gf_gl_txw_upload
    - tx_setup_format
    - tx_bind
    - gf_evg_stencil_new
    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: 3
    functionLinenumber: 904
    functionLinenumberEnd: 934
    functionName: gf_sc_copy_to_texture
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - GL_CHECK_ERR
    - glCopyTexImage2D
    - tx_setup_format
    - compositor_3d_enable_fbo
    - tx_bind
    - glPixelStorei
    - glTexParameteri
    - glDisable
    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:
    - GL_CHECK_ERR
    - glBindFramebuffer
    - glBindTexture
    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_malloc
    - GF_LOG
    - glReadPixels
    - compositor_3d_enable_fbo
    - memcpy
    - gf_4cc_to_str
    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: 1
    functionLinenumber: 1043
    functionLinenumberEnd: 1174
    functionName: gf_sc_texture_get_transform
    functionSourceFile: /src/gpac/src/compositor/texturing_gl.c
    functionUses: 1
    functionsReached:
    - gf_mx2d_init
    - gf_node_get_tag
    - gf_mx2d_add_translation
    - gf_mx_add_matrix
    - gf_mx_copy
    - fabs
    - gf_mx_init
    - gf_mx_add_scale
    - gf_mx2d_add_scale
    - INT2FIX
    - gf_mo_get_nb_views
    - memset
    - gf_mx_add_translation
    - gf_mx2d_add_rotation
    - gf_mx_from_mx2d
    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:
    - glUseProgram
    - GL_CHECK_ERR
    - glGetError
    - visual_3d_set_texture_matrix
    - gf_sc_texture_needs_reload
    - gf_sc_texture_push_image
    - gf_sc_texture_get_transform
    - compositor_gradient_update
    - visual_3d_check_program_exists
    - tx_bind
    - GF_TextureHandler*::compute_gradient_matrix
    - tx_bind_with_mode
    - gf_mx_from_mx2d
    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_LOG
    - visual_draw_bitmap_stub
    - gf_sys_is_cov_mode
    - GF_SAFEALLOC
    - visual_reset_graphics
    - ra_init
    - gf_list_new
    - gf_evg_stencil_new
    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:
    - visual_3d_reset_graphics
    - gf_free
    - BindableStackDelete
    - ra_del
    - gf_evg_surface_delete
    - gf_list_del
    - DeleteDrawableContext
    - gf_evg_stencil_delete
    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_clean_contexts
    - visual_3d_draw_frame
    - visual_2d_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_mx2d_init
    - gf_node_get_tag
    - gf_mx2d_pre_multiply
    - gf_node_get_attribute_by_tag
    - gf_rect_center
    - gf_node_traverse
    - gf_mx2d_copy
    - gf_sc_get_nodes_bounds
    - gf_rect_union
    - gf_mx2d_apply_rect
    - gf_mx2d_add_matrix
    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_audio_fmt_get_layout_from_cicp
    - PROP_LONGUINT
    - gf_mixer_set_config
    - GF_LOG
    - gf_filter_pid_set_max_buffer
    - gf_audio_fmt_name
    - gf_filter_pid_set_property
    - gf_mixer_get_config
    - PROP_UINT
    - gf_filter_pck_set_readonly
    - gf_filter_pck_new_shared
    - gf_audio_fmt_bit_depth
    - gf_audio_fmt_get_cicp_layout
    - gf_filter_pck_send
    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_mixer_lock
    - GF_LOG
    - GF_FEVT_INIT
    - gf_sys_clock_high_res
    - gf_filter_pid_send_event
    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_mixer_new
    - gf_mixer_set_max_speed
    - gf_malloc
    - gf_ar_setup_output_format
    - MIN
    - memset
    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_LOG
    - gf_free
    - gf_mixer_del
    - gf_sc_ar_control
    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:
    - PROP_UINT
    - gf_filter_pid_set_property
    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:
    - PROP_UINT
    - gf_filter_pid_set_property
    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:
    - PROP_UINT
    - gf_filter_pid_set_property
    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_lock
    - GF_FEVT_INIT
    - gf_mixer_reconfig
    - compositor_setup_aout
    - 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_filter_pid_send_event
    - GF_FEVT_INIT
    - gf_mixer_remove_input
    - gf_mixer_empty
    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:
    - PROP_UINT
    - gf_filter_pid_set_property
    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_pck_get_data
    - gf_filter_pid_get_udta
    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_pck_discard
    - gf_mixer_lock
    - gf_filter_pid_would_block
    - gf_mixer_get_output
    - gf_mixer_buffering
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pck_send
    - gf_sys_clock_high_res
    - gf_mixer_is_eos
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_new_alloc_destructor
    - gf_filter_get_clock_hint
    - gf_filter_pck_truncate
    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_mixer_lock
    - GF_LOG
    - gf_ar_setup_output_format
    - gf_ar_pause
    - gf_ar_send_packets
    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_SAFEALLOC
    - gf_list_new
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT GF_LASeRCodec *gf_laser_decoder_new(GF_SceneGraph *graph)
  - BBCount: 2
    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_del
      Src: /src/gpac/src/laser/lsr_dec.c:87,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:88,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:89,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:90,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - codec
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 92
    functionName: gf_laser_decoder_del
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    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:98,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_LASeRCodec*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 102
    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:110,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:111,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:114,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:116,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:117,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:118,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:119,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:120,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:121,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:122,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:127,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:131,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:132,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:133,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:135,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:137,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:138,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: 140
      start: 105
    functionDepth: 1
    functionLinenumber: 105
    functionLinenumberEnd: 140
    functionName: gf_laser_decoder_configure_stream
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_get_stream
    - gf_bs_new
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_list_add
    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:146,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:148,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:150,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - codec
    - ESID
    argTypes:
    - GF_LASeRCodec*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 156
    functionName: gf_laser_decoder_remove_stream
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_rem
    - gf_list_get
    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:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 168
    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: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    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:182,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:189,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:191,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:191,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:193,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/laser/lsr_dec.c:194,1
    - Dst: lsr_decode_laser_unit
      Src: /src/gpac/src/laser/lsr_dec.c:196,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:197,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: 200
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 200
    functionName: gf_laser_decode_au
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - lsr_get_stream
    - INT2FIX
    - gf_bs_new
    - gf_bs_set_eos_callback
    - gf_bs_del
    - lsr_decode_laser_unit
    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:209,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:216,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:218,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:218,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:220,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/laser/lsr_dec.c:221,1
    - Dst: lsr_decode_laser_unit
      Src: /src/gpac/src/laser/lsr_dec.c:223,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:224,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:228,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:229,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:230,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:231,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:233,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:235,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: 240
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 240
    functionName: gf_laser_decode_command_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_divfix
    - lsr_get_stream
    - gf_assert
    - INT2FIX
    - gf_bs_new
    - gf_bs_set_eos_callback
    - gf_bs_del
    - gf_node_register
    - gf_list_get
    - lsr_decode_laser_unit
    - gf_sg_find_node
    - 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: 247
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 247
    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:254,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:260,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 262
    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:268,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:274,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 276
    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:280,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:282,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:283,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:286,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:287,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 278
    functionDepth: 2
    functionLinenumber: 278
    functionLinenumberEnd: 292
    functionName: lsr_read_extension
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    - lsr_read_vluimsbf5
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void lsr_read_extension(GF_LASeRCodec *lsr, const char *name)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:297,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:298,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:299,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/laser/lsr_dec.c:303,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:304,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:308,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:312,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - lsr
    - out_data
    - out_len
    - name
    argTypes:
    - GF_LASeRCodec*
    - char**
    - u32*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 317
    functionName: lsr_read_extend_class
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_bs_is_align
    - gf_bs_read_int
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - gf_bs_available
    - 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:322,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:326,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:327,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:331,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:332,1
    - Dst: lsr_read_extend_class
      Src: /src/gpac/src/laser/lsr_dec.c:336,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:340,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:341,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 319
    functionDepth: 3
    functionLinenumber: 319
    functionLinenumberEnd: 344
    functionName: lsr_read_private_element_container
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_extend_class
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - 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:351,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:352,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:353,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:356,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:360,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:365,1
    - Dst: privateAttribute
      Src: /src/gpac/src/laser/lsr_dec.c:367,1
    - Dst: uint
      Src: /src/gpac/src/laser/lsr_dec.c:372,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:373,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/laser/lsr_dec.c:378,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:382,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:383,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 346
    functionDepth: 2
    functionLinenumber: 346
    functionLinenumberEnd: 385
    functionName: lsr_read_private_attribute_container
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_bs_align
    - uint
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - gf_bs_available
    - gf_bs_skip_bytes
    - privateAttribute
    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:390,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:393,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:394,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:395,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:396,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - lsr
    - node
    - skippable
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 400
    functionName: lsr_read_any_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    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:405,1
    - Dst: lsr_read_private_attribute_container
      Src: /src/gpac/src/laser/lsr_dec.c:406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 402
    functionDepth: 3
    functionLinenumber: 402
    functionLinenumberEnd: 407
    functionName: lsr_read_object_content
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_private_attribute_container
    - GF_LSR_READ_INT
    linkageType: ''
    returnType: void
    signature: void lsr_read_object_content(GF_LASeRCodec *lsr, SVG_Element *elt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:413,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:415,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:417,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:418,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:421,1
    - Dst: sprintf
      Src: /src/gpac/src/laser/lsr_dec.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:425,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:426,1
    - Dst: gf_list_find
      Src: /src/gpac/src/laser/lsr_dec.c:427,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:428,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/laser/lsr_dec.c:429,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/laser/lsr_dec.c:436,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - lsr
    - href
    - name
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 409
    functionDepth: 2
    functionLinenumber: 409
    functionLinenumberEnd: 437
    functionName: lsr_read_codec_IDREF
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_free
    - gf_node_register_iri
    - gf_list_find
    - GF_LSR_READ_INT
    - gf_strdup
    - gf_list_add
    - lsr_read_vluimsbf5
    - gf_sg_find_node
    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:
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    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:
    - GF_LSR_READ_INT
    - INT2FIX
    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:
    - lsr_read_fixed_16_8
    - GF_LSR_READ_INT
    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:
    - lsr_read_fixed_16_8
    - GF_LSR_READ_INT
    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_malloc
    - gf_bs_align
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_available
    - lsr_read_vluimsbf8
    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:
    - lsr_read_byte_align_string
    - gf_dom_add_text_node
    linkageType: ''
    returnType: void
    signature: void lsr_read_text_content(GF_LASeRCodec *lsr, GF_Node *elt)
  - BBCount: 16
    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:566,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:568,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:572,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:575,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:577,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:578,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:582,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:584,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:586,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:591,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:591,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:595,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:598,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:600,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:602,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:607,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:607,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:616,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:618,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:620,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:625,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:625,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:635,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 79
    argCount: 5
    argNames:
    - lsr
    - l
    - name
    - is_iri
    - is_font
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - char*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 553
    functionDepth: 3
    functionLinenumber: 553
    functionLinenumberEnd: 636
    functionName: lsr_read_byte_align_string_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_free
    - gf_list_rem_last
    - lsr_read_byte_align_string
    - GF_SAFEALLOC
    - gf_strdup
    - gf_list_last
    - gf_list_add
    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: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:641,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:646,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:649,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:650,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:655,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:656,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:658,1
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_dec.c:661,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:662,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:663,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:666,1
    - Dst: memcpy
      Src: /src/gpac/src/laser/lsr_dec.c:671,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:672,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:675,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:679,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:680,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:682,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:685,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:686,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:688,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:689,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 54
    argCount: 3
    argNames:
    - lsr
    - iri
    - name
    argTypes:
    - GF_LASeRCodec*
    - XMLRI*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 638
    functionDepth: 3
    functionLinenumber: 638
    functionLinenumberEnd: 692
    functionName: lsr_read_any_uri
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_codec_IDREF
    - gf_free
    - gf_malloc
    - lsr_read_byte_align_string
    - gf_bs_read_data
    - GF_LSR_READ_INT
    - strlen
    - memcpy
    - lsr_read_vluimsbf5
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void lsr_read_any_uri(GF_LASeRCodec *lsr, XMLRI *iri, const char *name)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:697,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:699,1
    - Dst: lsr_get_color
      Src: /src/gpac/src/laser/lsr_dec.c:700,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:704,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:707,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:724,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:726,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:727,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/laser/lsr_dec.c:728,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:734,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:745,1
    - Dst: gf_svg_get_system_paint_server_type
      Src: /src/gpac/src/laser/lsr_dec.c:748,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:749,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:754,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 59
    argCount: 3
    argNames:
    - lsr
    - paint
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Paint*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 694
    functionDepth: 4
    functionLinenumber: 694
    functionLinenumberEnd: 758
    functionName: lsr_read_paint
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_svg_get_system_paint_server_type
    - gf_free
    - gf_list_del_item
    - lsr_read_any_uri
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - lsr_get_color
    - gf_node_unregister_iri
    - memset
    - lsr_read_extension
    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:763,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:766,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:767,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: 769
      start: 760
    functionDepth: 5
    functionLinenumber: 760
    functionLinenumberEnd: 769
    functionName: lsr_read_string_attribute
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - 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: 20
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:775,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:779,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/laser/lsr_dec.c:780,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:782,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:785,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:786,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:790,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:792,1
    - Dst: gf_list_find
      Src: /src/gpac/src/laser/lsr_dec.c:793,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:794,1
    - Dst: strlen
      Src: /src/gpac/src/laser/lsr_dec.c:803,1
    - Dst: atoi
      Src: /src/gpac/src/laser/lsr_dec.c:804,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:806,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:808,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:815,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:819,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:822,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:829,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:837,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/laser/lsr_dec.c:851,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:853,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:854,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:860,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:862,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:863,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:864,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:867,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 76
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 770
    functionDepth: 9
    functionLinenumber: 770
    functionLinenumberEnd: 870
    functionName: lsr_read_id
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_set_id
    - gf_free
    - atoi
    - gf_node_get_attribute_by_tag
    - gf_node_dom_listener_add
    - gf_node_init
    - lsr_setup_smil_anim
    - gf_assert
    - gf_list_find
    - GF_LSR_READ_INT
    - gf_list_get
    - strlen
    - lsr_read_vluimsbf5
    - 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:885,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:885,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:886,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:886,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:889,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:889,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:890,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:890,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - lsr
    - val
    - nb_bits
    argTypes:
    - GF_LASeRCodec*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 904
      start: 872
    functionDepth: 1
    functionLinenumber: 872
    functionLinenumberEnd: 904
    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:914,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:916,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 2
    argNames:
    - lsr
    - val
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 906
    functionDepth: 1
    functionLinenumber: 906
    functionLinenumberEnd: 918
    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:922,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:924,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:926,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:928,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:930,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:931,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:934,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:938,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:942,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_dec.c:943,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:947,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:949,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_dec.c:950,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:951,1
    - Dst: lsr_translate_scale
      Src: /src/gpac/src/laser/lsr_dec.c:952,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:955,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:957,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:958,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:959,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:960,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 2
    argNames:
    - lsr
    - mx
    argTypes:
    - GF_LASeRCodec*
    - SVG_Transform*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 919
    functionDepth: 3
    functionLinenumber: 919
    functionLinenumberEnd: 964
    functionName: lsr_read_matrix
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - lsr_read_fixed_16_8
    - lsr_translate_scale
    - lsr_translate_coords
    - GF_LSR_READ_INT
    - lsr_read_extension
    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:969,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:970,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - lsr
    - name
    argTypes:
    - GF_LASeRCodec*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 966
    functionDepth: 1
    functionLinenumber: 966
    functionLinenumberEnd: 971
    functionName: lsr_read_fixed_clamp
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - INT2FIX
    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:978,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:982,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/laser/lsr_dec.c:983,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:985,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:987,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:990,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - lsr
    - foc
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Focus*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 973
    functionDepth: 3
    functionLinenumber: 973
    functionLinenumberEnd: 992
    functionName: lsr_read_focus
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_codec_IDREF
    - gf_free
    - gf_list_del_item
    - GF_LSR_READ_INT
    - gf_node_unregister_iri
    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:1087,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/laser/lsr_dec.c:1092,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1097,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:1098,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1102,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:1103,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: 1111
      start: 994
    functionDepth: 5
    functionLinenumber: 994
    functionLinenumberEnd: 1111
    functionName: lsr_restore_base
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_svg_attributes_copy
    - gf_free
    - gf_node_get_attribute_by_tag
    - memset
    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: 1162
      start: 1114
    functionDepth: 0
    functionLinenumber: 1114
    functionLinenumberEnd: 1162
    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:1167,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1169,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1173,1
    - Dst: strchr
      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:1180,1
    - Dst: strchr
      Src: /src/gpac/src/laser/lsr_dec.c:1183,1
    - Dst: atoi
      Src: /src/gpac/src/laser/lsr_dec.c:1186,1
    - Dst: gf_dom_get_key_type
      Src: /src/gpac/src/laser/lsr_dec.c:1188,1
    - Dst: gf_dom_event_type_by_name
      Src: /src/gpac/src/laser/lsr_dec.c:1191,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1193,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:1299,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1307,1
    - Dst: lsr_to_dom_key
      Src: /src/gpac/src/laser/lsr_dec.c:1308,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 144
    argCount: 2
    argNames:
    - lsr
    - evtType
    argTypes:
    - GF_LASeRCodec*
    - XMLEV_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1164
    functionDepth: 3
    functionLinenumber: 1164
    functionLinenumberEnd: 1312
    functionName: lsr_read_event_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_free
    - atoi
    - lsr_to_dom_key
    - gf_dom_get_key_type
    - GF_LOG
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - gf_dom_event_type_by_name
    - memset
    - lsr_read_vluimsbf5
    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:1319,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1326,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1329,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:1334,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:1335,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/laser/lsr_dec.c:1336,1
    - Dst: lsr_read_event_type
      Src: /src/gpac/src/laser/lsr_dec.c:1343,1
    - Dst: gf_node_get_scene_time
      Src: /src/gpac/src/laser/lsr_dec.c:1346,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1349,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1352,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1353,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1314
    functionDepth: 4
    functionLinenumber: 1314
    functionLinenumberEnd: 1359
    functionName: lsr_read_smil_time
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_codec_IDREF
    - gf_node_get_scene_time
    - gf_list_del_item
    - GF_SAFEALLOC
    - GF_LSR_READ_INT
    - gf_node_unregister_iri
    - lsr_read_vluimsbf5
    - lsr_read_event_type
    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:1368,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1372,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1376,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:1377,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:1378,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1379,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1380,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1383,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:1385,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:1388,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1394,1
    - Dst: lsr_read_smil_time
      Src: /src/gpac/src/laser/lsr_dec.c:1396,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:1397,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: 1400
      start: 1361
    functionDepth: 5
    functionLinenumber: 1361
    functionLinenumberEnd: 1400
    functionName: lsr_read_smil_times
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_node_get_attribute_by_tag
    - lsr_read_smil_time
    - gf_list_rem_last
    - GF_SAFEALLOC
    - GF_LSR_READ_INT
    - gf_list_last
    - gf_list_add
    - lsr_read_vluimsbf5
    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:1408,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1412,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1419,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1421,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1425,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1426,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: 1432
      start: 1402
    functionDepth: 5
    functionLinenumber: 1402
    functionLinenumberEnd: 1432
    functionName: lsr_read_duration_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    - lsr_read_vluimsbf5
    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:1435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1436
      start: 1433
    functionDepth: 6
    functionLinenumber: 1433
    functionLinenumberEnd: 1436
    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: 85
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1444,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1446,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1449,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1455,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1456,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1458,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1460,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1463,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1464,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1467,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1468,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1471,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1472,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1475,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1476,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1479,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1480,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/laser/lsr_dec.c:1485,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1487,1
    - Dst: gf_lsr_rare_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:1492,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1496,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1503,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1507,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1510,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1513,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1516,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1519,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1523,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1526,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1529,1
    - Dst: lsr_read_line_increment_type
      Src: /src/gpac/src/laser/lsr_dec.c:1532,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1535,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1538,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1541,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1545,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1548,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1552,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1558,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1563,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:1564,1
    - Dst: gf_realloc
      Src: /src/gpac/src/laser/lsr_dec.c:1569,1
    - Dst: gf_realloc
      Src: /src/gpac/src/laser/lsr_dec.c:1570,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:1576,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1584,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1588,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1591,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1594,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1598,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1601,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1604,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1607,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1610,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:1614,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1617,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1620,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1623,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1626,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1630,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1633,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1639,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1642,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1646,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1649,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1653,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1656,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1659,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1662,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1665,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1668,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1671,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1674,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1677,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1680,1
    - Dst: lsr_read_focus
      Src: /src/gpac/src/laser/lsr_dec.c:1683,1
    - Dst: lsr_read_matrix
      Src: /src/gpac/src/laser/lsr_dec.c:1686,1
    - Dst: lsr_read_byte_align_string_list
      Src: /src/gpac/src/laser/lsr_dec.c:1689,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1693,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1698,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1704,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1705,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1707,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:1708,1
    - Dst: lsr_read_fixed_16_8i
      Src: /src/gpac/src/laser/lsr_dec.c:1714,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1717,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1720,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:1723,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1727,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:1730,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:1733,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1737,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1741,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:1744,1
    - Dst: lsr_read_duration_ex
      Src: /src/gpac/src/laser/lsr_dec.c:1747,1
    - Dst: lsr_read_duration_ex
      Src: /src/gpac/src/laser/lsr_dec.c:1750,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 298
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1755
      start: 1438
    functionDepth: 6
    functionLinenumber: 1438
    functionLinenumberEnd: 1755
    functionName: lsr_read_rare_full
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - gf_node_get_attribute_by_tag
    - lsr_read_any_uri
    - lsr_read_vluimsbf5
    - lsr_read_byte_align_string_list
    - lsr_read_fixed_clamp
    - lsr_read_duration_ex
    - lsr_read_paint
    - GF_LSR_READ_INT
    - gf_list_get
    - gf_realloc
    - gf_lsr_rare_type_to_attribute
    - lsr_read_smil_times
    - gf_bs_read_int
    - lsr_read_line_increment_type
    - gf_free
    - lsr_read_matrix
    - lsr_read_focus
    - lsr_read_byte_align_string
    - lsr_read_fixed_16_8i
    - gf_strdup
    - gf_bs_available
    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: 1758
      start: 1757
    functionDepth: 0
    functionLinenumber: 1757
    functionLinenumberEnd: 1758
    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:1762,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1765,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1766,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1759
    functionDepth: 5
    functionLinenumber: 1759
    functionLinenumberEnd: 1768
    functionName: lsr_read_fill
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    - lsr_read_paint
    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:1773,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1776,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:1777,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1779
      start: 1770
    functionDepth: 5
    functionLinenumber: 1770
    functionLinenumberEnd: 1779
    functionName: lsr_read_stroke
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    - lsr_read_paint
    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:1783,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1786,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:1787,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1789
      start: 1780
    functionDepth: 5
    functionLinenumber: 1780
    functionLinenumberEnd: 1789
    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:1794,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1797,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1798,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1800
      start: 1791
    functionDepth: 5
    functionLinenumber: 1791
    functionLinenumberEnd: 1800
    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:1804,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1807,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1808,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1810
      start: 1801
    functionDepth: 5
    functionLinenumber: 1801
    functionLinenumberEnd: 1810
    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:1815,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1818,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1811
    functionDepth: 5
    functionLinenumber: 1811
    functionLinenumberEnd: 1821
    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:1827,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1831,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1833,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:1834,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:1838,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:1839,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:1842,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - lsr
    - n
    - skippable
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1844
      start: 1823
    functionDepth: 5
    functionLinenumber: 1823
    functionLinenumberEnd: 1844
    functionName: lsr_read_attribute_name_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_lsr_anim_type_to_attribute
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    - 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:1847,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1848
      start: 1845
    functionDepth: 6
    functionLinenumber: 1845
    functionLinenumberEnd: 1848
    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: 21
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1857,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1858,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1861,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:1864,1
    - Dst: gf_svg_delete_attribute_value
      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:1877,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1886,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:1887,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1888,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:1890,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1895,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1898,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1903,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1904,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/laser/lsr_dec.c:1911,1
    - Dst: gf_node_unregister_iri
      Src: /src/gpac/src/laser/lsr_dec.c:1912,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1914,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1915,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 3
    argNames:
    - lsr
    - val
    - coded_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1921
      start: 1850
    functionDepth: 5
    functionLinenumber: 1850
    functionLinenumberEnd: 1921
    functionName: lsr_delete_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_svg_delete_attribute_value
    - gf_node_unregister_iri
    - gf_list_pop_back
    linkageType: ''
    returnType: void
    signature: void lsr_delete_anim_value(GF_LASeRCodec *lsr, SMIL_AnimateValue *val,
      u32 coded_type)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:1932,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1937,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1942,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1943,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1950,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1953,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:1956,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:1966,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1971,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1972,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1973,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1974,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:1975,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:1977,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:1978,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:1979,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:1980,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:1982,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:1991,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:1993,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:1994,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2004,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2007,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2008,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2015,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2016,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2018,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2020,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2039,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/laser/lsr_dec.c:2041,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2048,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2055,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 113
    argCount: 3
    argNames:
    - lsr
    - val
    - coded_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2056
      start: 1923
    functionDepth: 6
    functionLinenumber: 1923
    functionLinenumberEnd: 2056
    functionName: lsr_translate_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_insert
    - gf_list_del
    - gf_list_rem_last
    - gf_list_new
    - lsr_delete_anim_value
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_last
    - gf_list_add
    - gf_list_rem
    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:2083,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2086,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2087,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2089,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2090,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2094,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2095,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2101,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2103,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2108,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2113,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2114,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2120,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2123,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2126,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2127,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2133,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2140,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2143,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2145,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2146,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2147,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2148,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2150,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2157,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2159,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2161,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2162,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2169,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2170,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2172,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2175,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2187,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2188,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/laser/lsr_dec.c:2192,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2195,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2197,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2202,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: 2203
      start: 2059
    functionDepth: 6
    functionLinenumber: 2059
    functionLinenumberEnd: 2203
    functionName: lsr_translate_anim_values
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_insert
    - gf_list_del
    - gf_list_get
    - gf_list_rem_last
    - lsr_delete_anim_value
    - GF_SAFEALLOC
    - gf_list_new
    - gf_list_last
    - gf_list_add
    - gf_list_pop_back
    - gf_list_rem
    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:2208,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2210,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:2214,1
    - Dst: atoi
      Src: /src/gpac/src/laser/lsr_dec.c:2214,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/laser/lsr_dec.c:2216,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2219,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: 2232
      start: 2205
    functionDepth: 1
    functionLinenumber: 2205
    functionLinenumberEnd: 2232
    functionName: lsr_init_smil_times
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - atoi
    - gf_list_get
    - gf_sg_find_node_by_name
    - gf_sg_find_node
    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:2246,1
    - Dst: lsr_init_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:2247,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2250,1
    - Dst: lsr_init_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:2251,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2257,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2268,1
    - Dst: gf_node_register_iri
      Src: /src/gpac/src/laser/lsr_dec.c:2277,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2292,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2300,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2312,1
    - Dst: lsr_translate_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2319,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2322,1
    - Dst: lsr_translate_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2329,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2332,1
    - Dst: lsr_translate_anim_value
      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: lsr_translate_anim_values
      Src: /src/gpac/src/laser/lsr_dec.c:2350,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: 2355
      start: 2234
    functionDepth: 7
    functionLinenumber: 2234
    functionLinenumberEnd: 2355
    functionName: lsr_setup_smil_anim
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 1
    functionsReached:
    - gf_node_get_attribute_by_tag
    - gf_node_register_iri
    - lsr_translate_anim_value
    - lsr_init_smil_times
    - lsr_translate_anim_values
    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:2361,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2364,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2369
      start: 2357
    functionDepth: 5
    functionLinenumber: 2357
    functionLinenumberEnd: 2369
    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:2373,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2376,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2377,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2384
      start: 2370
    functionDepth: 5
    functionLinenumber: 2370
    functionLinenumberEnd: 2384
    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:2388,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2391,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2392,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2397,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2385
    functionDepth: 5
    functionLinenumber: 2385
    functionLinenumberEnd: 2402
    functionName: lsr_read_repeat_duration
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    - lsr_read_vluimsbf5
    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:2406,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2409,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2413
      start: 2403
    functionDepth: 5
    functionLinenumber: 2403
    functionLinenumberEnd: 2413
    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:2428,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2429,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:2434,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2435,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2443,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2452,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:2457,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:2461,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:2467,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:2471,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2476,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:2485,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2489,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:2497,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2501,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2505,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2511,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2517,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2519,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2523,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2524,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:2535,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2541,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2543,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2547,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2548,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2557,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2562,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2563,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2564,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:2565,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2568,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2572,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2579,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2587,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2589,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:2590,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2595,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:2599,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:2603,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 163
    argCount: 3
    argNames:
    - lsr
    - coded_type
    - name
    argTypes:
    - GF_LASeRCodec*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2607
      start: 2415
    functionDepth: 5
    functionLinenumber: 2415
    functionLinenumberEnd: 2607
    functionName: lsr_read_an_anim_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - lsr_read_point_sequence
    - gf_malloc
    - lsr_read_path_type
    - lsr_read_extension
    - lsr_read_fixed_clamp
    - lsr_translate_coords
    - gf_list_get
    - lsr_read_paint
    - gf_svg_create_attribute_value
    - lsr_read_byte_align_string
    - lsr_read_any_uri
    - GF_SAFEALLOC
    - GF_LSR_READ_INT
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - lsr_read_vluimsbf5
    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:2635,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2636,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2643,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2650,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:2656,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_muldiv
      Src: /src/gpac/src/laser/lsr_dec.c:2664,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2664,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2668,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2675,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/laser/lsr_dec.c:2676,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2676,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2692,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2696,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2697,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2698,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2700,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2708,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2714,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2721,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 107
    argCount: 3
    argNames:
    - lsr
    - val
    - transform_type
    argTypes:
    - GF_LASeRCodec*
    - SMIL_AnimateValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2722
      start: 2609
    functionDepth: 6
    functionLinenumber: 2609
    functionLinenumberEnd: 2722
    functionName: lsr_translate_anim_trans_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_list_del
    - gf_muldiv
    - INT2FIX
    - lsr_delete_anim_value
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_pop_back
    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:2758,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2763,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2766,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2767,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2772,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2779,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2782,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2789,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2791,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2793,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2795,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2796,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2797,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2798,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2800,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2803,1
    - Dst: gf_muldiv
      Src: /src/gpac/src/laser/lsr_dec.c:2805,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2805,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2806,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2807,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2811,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2817,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2818,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2820,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:2823,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2829,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:2831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2836,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2837,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2838,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2839,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:2841,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:2842,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:2844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:2847,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: 2851
      start: 2724
    functionDepth: 6
    functionLinenumber: 2724
    functionLinenumberEnd: 2851
    functionName: lsr_translate_anim_trans_values
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_insert
    - GF_LOG
    - gf_list_del
    - gf_muldiv
    - gf_list_rem_last
    - INT2FIX
    - lsr_delete_anim_value
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_last
    - gf_list_pop_back
    - gf_list_rem
    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:2856,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2859,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2861,1
    - Dst: lsr_read_an_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2862,1
    - Dst: lsr_translate_anim_trans_value
      Src: /src/gpac/src/laser/lsr_dec.c:2866,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2869,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 5
    argNames:
    - lsr
    - n
    - tag
    - name
    - tr_type
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2872
      start: 2853
    functionDepth: 7
    functionLinenumber: 2853
    functionLinenumberEnd: 2872
    functionName: lsr_read_anim_value_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_translate_anim_trans_value
    - lsr_delete_anim_value
    - GF_LSR_READ_INT
    - lsr_read_an_anim_value
    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:2881,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2884,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2887,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2891,1
    - Dst: lsr_read_an_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2893,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2895,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2900,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/laser/lsr_dec.c:2903,1
    - Dst: lsr_delete_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:2904,1
    - Dst: lsr_translate_anim_trans_values
      Src: /src/gpac/src/laser/lsr_dec.c:2911,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 3
    argNames:
    - lsr
    - n
    - tr_type
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2916
      start: 2874
    functionDepth: 7
    functionLinenumber: 2874
    functionLinenumberEnd: 2916
    functionName: lsr_read_anim_values_ex
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_attribute_by_tag
    - lsr_translate_anim_trans_values
    - lsr_delete_anim_value
    - GF_LSR_READ_INT
    - gf_list_add
    - gf_list_pop_back
    - lsr_read_vluimsbf5
    - lsr_read_an_anim_value
    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: 2918
      start: 2917
    functionDepth: 0
    functionLinenumber: 2917
    functionLinenumberEnd: 2918
    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: 2919
      start: 2918
    functionDepth: 0
    functionLinenumber: 2918
    functionLinenumberEnd: 2919
    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:2924,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2929,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2931,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:2936,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:2937,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2940
      start: 2920
    functionDepth: 1
    functionLinenumber: 2920
    functionLinenumberEnd: 2940
    functionName: lsr_read_fraction_12_item
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - GF_LSR_READ_INT
    - INT2FIX
    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:2946,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2949,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2951,1
    - Dst: lsr_read_fraction_12_item
      Src: /src/gpac/src/laser/lsr_dec.c:2953,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2954,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: 2957
      start: 2942
    functionDepth: 5
    functionLinenumber: 2942
    functionLinenumberEnd: 2957
    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
    - gf_list_add
    - lsr_read_vluimsbf5
    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:2961,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:2966,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:2969,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:2970,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:2971,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:2972,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:2975,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2978,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2983,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2984,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:2991,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:2995,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:2997,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: 3001
      start: 2958
    functionDepth: 5
    functionLinenumber: 2958
    functionLinenumberEnd: 3001
    functionName: lsr_read_float_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - gf_list_count
    - gf_free
    - gf_node_get_attribute_by_tag
    - gf_malloc
    - gf_list_rem_last
    - GF_LSR_READ_INT
    - gf_list_last
    - gf_list_add
    - lsr_read_vluimsbf5
    linkageType: ''
    returnType: void
    signature: void lsr_read_float_list(GF_LASeRCodec *lsr, GF_Node *n, u32 tag, SVG_Coordinates*coords,
      const char *name)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:3007,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:3008,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:3009,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:3010,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3012,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3015,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3019,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:3021,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3025,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3026,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3027,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3028,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3029,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:3036,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3041,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3043,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3048,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3049,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3050,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3051,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3053,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3054,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:3060,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3064,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3065,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3066,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3068,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3069,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 64
    argCount: 3
    argNames:
    - lsr
    - pts
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3076
      start: 3003
    functionDepth: 2
    functionLinenumber: 3003
    functionLinenumberEnd: 3076
    functionName: lsr_read_point_sequence
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - lsr_translate_coords
    - gf_list_rem_last
    - GF_LSR_READ_INT
    - gf_list_last
    - gf_list_add
    - lsr_read_vluimsbf5
    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:3083,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:3084,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3088,1
    - Dst: gf_path_reset
      Src: /src/gpac/src/laser/lsr_dec.c:3091,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3094,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3101,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3104,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3106,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3114,1
    - Dst: gf_path_add_line_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3121,1
    - Dst: gf_path_add_move_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3129,1
    - Dst: gf_path_add_quadratic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3131,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3137,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3138,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3139,1
    - Dst: gf_path_add_cubic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3150,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3151,1
    - Dst: gf_path_add_cubic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3162,1
    - Dst: gf_path_add_quadratic_to_vec
      Src: /src/gpac/src/laser/lsr_dec.c:3164,1
    - Dst: gf_path_close
      Src: /src/gpac/src/laser/lsr_dec.c:3169,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:3180,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:3181,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:3182,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:3183,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:3185,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:3193,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:3194,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:3195,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:3196,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:3197,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3200,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:3202,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3207,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3243,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: 3246
      start: 3077
    functionDepth: 5
    functionLinenumber: 3077
    functionLinenumberEnd: 3246
    functionName: lsr_read_path_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_path_add_move_to_vec
    - gf_node_get_attribute_by_tag
    - gf_path_add_quadratic_to_vec
    - gf_list_rem_last
    - gf_path_add_line_to_vec
    - gf_list_add
    - lsr_read_vluimsbf5
    - lsr_read_point_sequence
    - gf_malloc
    - gf_path_add_cubic_to_vec
    - GF_LSR_READ_INT
    - gf_list_get
    - gf_list_last
    - gf_path_close
    - gf_path_reset
    - gf_list_new
    - gf_free
    - GF_LOG
    - gf_list_del
    - 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:3251,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3254,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3255,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3258,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:3261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3265
      start: 3248
    functionDepth: 5
    functionLinenumber: 3248
    functionLinenumberEnd: 3265
    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:3269,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3272,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3276
      start: 3266
    functionDepth: 5
    functionLinenumber: 3266
    functionLinenumberEnd: 3276
    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:3280,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3283,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3284,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3287,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:3288,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3277
    functionDepth: 5
    functionLinenumber: 3277
    functionLinenumberEnd: 3292
    functionName: lsr_read_sync_tolerance
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    - lsr_read_vluimsbf5
    - INT2FIX
    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:3296,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3299,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:3300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3302
      start: 3293
    functionDepth: 5
    functionLinenumber: 3293
    functionLinenumberEnd: 3302
    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:3308,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3316,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3317,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: 3318
      start: 3304
    functionDepth: 1
    functionLinenumber: 3304
    functionLinenumberEnd: 3318
    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:3324,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3327,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3330,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3331,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: 3332
      start: 3319
    functionDepth: 5
    functionLinenumber: 3319
    functionLinenumberEnd: 3332
    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:3338,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3340,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3343,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:3348,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3353,1
    - Dst: lsr_translate_coords
      Src: /src/gpac/src/laser/lsr_dec.c:3354,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3355,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - lsr
    - elt
    - tag
    - name
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3358
      start: 3334
    functionDepth: 5
    functionLinenumber: 3334
    functionLinenumberEnd: 3358
    functionName: lsr_read_coord_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_translate_coords
    - GF_SAFEALLOC
    - GF_LSR_READ_INT
    - gf_list_add
    - lsr_read_vluimsbf5
    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:3364,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3366,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3367,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3369
      start: 3360
    functionDepth: 5
    functionLinenumber: 3360
    functionLinenumberEnd: 3369
    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:3374,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3377,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:3378,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3380
      start: 3371
    functionDepth: 5
    functionLinenumber: 3371
    functionLinenumberEnd: 3380
    functionName: lsr_read_content_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - 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:3384,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3387,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3388,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3390,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:3393,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:3396,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:3402,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3405
      start: 3381
    functionDepth: 5
    functionLinenumber: 3381
    functionLinenumberEnd: 3405
    functionName: lsr_read_script_type
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    - lsr_read_byte_align_string
    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:3409,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:3413,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3415,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 3
    argNames:
    - lsr
    - n
    - name
    argTypes:
    - GF_LASeRCodec*
    - SVG_Number*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3439
      start: 3406
    functionDepth: 1
    functionLinenumber: 3406
    functionLinenumberEnd: 3439
    functionName: lsr_read_value_with_units
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - INT2FIX
    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:3446,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3448,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3449,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3451,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:3452,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: 3457
      start: 3442
    functionDepth: 5
    functionLinenumber: 3442
    functionLinenumberEnd: 3457
    functionName: lsr_read_clip_time
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - gf_node_get_attribute_by_tag
    - lsr_read_vluimsbf5
    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:3463,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3465,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3466,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3467
      start: 3459
    functionDepth: 5
    functionLinenumber: 3459
    functionLinenumberEnd: 3467
    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:3475,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3478,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3481,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3482,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3483,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - lsr
    - n
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3516
      start: 3469
    functionDepth: 5
    functionLinenumber: 3469
    functionLinenumberEnd: 3516
    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:3521,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3524,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3527
      start: 3518
    functionDepth: 5
    functionLinenumber: 3518
    functionLinenumberEnd: 3527
    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:3532,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3535,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3538
      start: 3529
    functionDepth: 5
    functionLinenumber: 3529
    functionLinenumberEnd: 3538
    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:3543,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3544,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3545,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3546,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3547,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3548,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3549,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3552,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:3553,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3555,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3556,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3557,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3559
      start: 3540
    functionDepth: 10
    functionLinenumber: 3540
    functionLinenumberEnd: 3559
    functionName: lsr_read_a
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_read_href
    - lsr_read_rare_full
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_read_byte_align_string
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - GF_LSR_READ_INT
    - lsr_read_id
    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:3565,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3566,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3567,1
    - Dst: lsr_read_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:3568,1
    - Dst: lsr_read_accumulate
      Src: /src/gpac/src/laser/lsr_dec.c:3570,1
    - Dst: lsr_read_additive
      Src: /src/gpac/src/laser/lsr_dec.c:3571,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3572,1
    - Dst: lsr_read_calc_mode
      Src: /src/gpac/src/laser/lsr_dec.c:3573,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3574,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3575,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3576,1
    - Dst: lsr_read_anim_values
      Src: /src/gpac/src/laser/lsr_dec.c:3577,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:3578,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3579,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3580,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3581,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3582,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3583,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3584,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3585,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3586,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3587,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3588,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:3590,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3591,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3592,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3594,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: 3597
      start: 3563
    functionDepth: 10
    functionLinenumber: 3563
    functionLinenumberEnd: 3597
    functionName: lsr_read_animate
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_repeat_duration
    - lsr_read_anim_fill
    - gf_node_new
    - gf_list_add
    - lsr_read_calc_mode
    - lsr_read_anim_value
    - lsr_read_rare
    - lsr_read_anim_restart
    - lsr_read_duration
    - lsr_read_lsr_enabled
    - lsr_read_group_content
    - lsr_read_smil_times
    - lsr_read_any_attribute
    - lsr_setup_smil_anim
    - lsr_read_id
    - lsr_read_group_content_post_init
    - lsr_read_fraction_12
    - lsr_read_additive
    - lsr_read_anim_repeatCount
    - lsr_read_attribute_name
    - lsr_read_href
    - lsr_read_accumulate
    - lsr_read_attribute_type
    - lsr_read_anim_values
    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:3603,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3604,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3605,1
    - Dst: lsr_read_accumulate
      Src: /src/gpac/src/laser/lsr_dec.c:3606,1
    - Dst: lsr_read_additive
      Src: /src/gpac/src/laser/lsr_dec.c:3607,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3608,1
    - Dst: lsr_read_calc_mode
      Src: /src/gpac/src/laser/lsr_dec.c:3609,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3610,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3611,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3612,1
    - Dst: lsr_read_anim_values
      Src: /src/gpac/src/laser/lsr_dec.c:3613,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:3614,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3615,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3616,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3617,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3618,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3619,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3620,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:3621,1
    - Dst: lsr_read_float_list
      Src: /src/gpac/src/laser/lsr_dec.c:3622,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3623,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:3624,1
    - Dst: lsr_read_rotate_type
      Src: /src/gpac/src/laser/lsr_dec.c:3626,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3627,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3628,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3629,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:3631,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3632,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3633,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3635,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 34
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3638
      start: 3600
    functionDepth: 10
    functionLinenumber: 3600
    functionLinenumberEnd: 3638
    functionName: lsr_read_animateMotion
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_repeat_duration
    - lsr_read_anim_fill
    - gf_node_new
    - gf_list_add
    - lsr_read_calc_mode
    - lsr_read_path_type
    - lsr_read_anim_value
    - lsr_read_rare
    - GF_LSR_READ_INT
    - lsr_read_anim_restart
    - lsr_read_duration
    - lsr_read_lsr_enabled
    - lsr_read_smil_times
    - lsr_read_any_attribute
    - lsr_setup_smil_anim
    - lsr_read_id
    - lsr_read_group_content_post_init
    - lsr_read_fraction_12
    - lsr_read_additive
    - lsr_read_rotate_type
    - lsr_read_anim_repeatCount
    - lsr_read_href
    - lsr_read_accumulate
    - lsr_read_attribute_type
    - lsr_read_float_list
    - lsr_read_anim_values
    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: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_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:3649,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3652,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3673,1
    - Dst: lsr_read_accumulate
      Src: /src/gpac/src/laser/lsr_dec.c:3677,1
    - Dst: lsr_read_additive
      Src: /src/gpac/src/laser/lsr_dec.c:3678,1
    - Dst: lsr_read_anim_value_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3679,1
    - Dst: lsr_read_calc_mode
      Src: /src/gpac/src/laser/lsr_dec.c:3680,1
    - Dst: lsr_read_anim_value_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3681,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3682,1
    - Dst: lsr_read_fraction_12
      Src: /src/gpac/src/laser/lsr_dec.c:3683,1
    - Dst: lsr_read_anim_values_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3684,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:3685,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3687,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3688,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3689,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3690,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3691,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3692,1
    - Dst: lsr_read_anim_value_ex
      Src: /src/gpac/src/laser/lsr_dec.c:3693,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3695,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3696,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3697,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:3699,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:3700,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:3701,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3703,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 54
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3706
      start: 3641
    functionDepth: 10
    functionLinenumber: 3641
    functionLinenumberEnd: 3706
    functionName: lsr_read_animateTransform
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_read_repeat_duration
    - lsr_read_anim_fill
    - gf_node_new
    - gf_list_add
    - lsr_read_calc_mode
    - lsr_read_rare
    - GF_LSR_READ_INT
    - lsr_read_anim_restart
    - lsr_read_duration
    - lsr_read_anim_value_ex
    - lsr_read_lsr_enabled
    - lsr_read_group_content
    - lsr_read_smil_times
    - lsr_read_any_attribute
    - lsr_setup_smil_anim
    - lsr_read_id
    - lsr_read_group_content_post_init
    - lsr_read_anim_values_ex
    - lsr_read_fraction_12
    - lsr_read_additive
    - lsr_read_anim_repeatCount
    - lsr_read_attribute_name
    - lsr_read_href
    - lsr_read_accumulate
    - lsr_read_attribute_type
    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:3710,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3711,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3712,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3713,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3714,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3715,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:3716,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:3717,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:3718,1
    - Dst: lsr_read_sync_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:3719,1
    - Dst: lsr_read_sync_tolerance
      Src: /src/gpac/src/laser/lsr_dec.c:3720,1
    - Dst: lsr_read_content_type
      Src: /src/gpac/src/laser/lsr_dec.c:3721,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3722,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:3724,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:3725,1
    - Dst: lsr_read_sync_reference
      Src: /src/gpac/src/laser/lsr_dec.c:3726,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3727,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3730
      start: 3708
    functionDepth: 10
    functionLinenumber: 3708
    functionLinenumberEnd: 3730
    functionName: lsr_read_audio
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_anim_repeatCount
    - lsr_read_content_type
    - lsr_read_href
    - lsr_read_smil_times
    - lsr_read_repeat_duration
    - lsr_read_sync_reference
    - lsr_read_any_attribute
    - lsr_read_group_content
    - lsr_read_rare
    - gf_node_new
    - lsr_read_eRR
    - lsr_read_sync_tolerance
    - lsr_read_anim_restart
    - lsr_read_id
    - lsr_read_duration
    - lsr_read_clip_time
    - lsr_read_sync_behavior
    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:3733,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3734,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3735,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3736,1
    - Dst: lsr_read_stroke
      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: 11
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3744
      start: 3731
    functionDepth: 10
    functionLinenumber: 3731
    functionLinenumberEnd: 3744
    functionName: lsr_read_circle
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_rare_full
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    - lsr_read_coordinate_ptr
    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:3747,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3748,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3749,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:3750,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3751,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:3752,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3753,1
    - Dst: lsr_read_command_list
      Src: /src/gpac/src/laser/lsr_dec.c:3754,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:3757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3759
      start: 3745
    functionDepth: 10
    functionLinenumber: 3745
    functionLinenumberEnd: 3759
    functionName: lsr_read_conditional
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_lsr_enabled
    - lsr_read_smil_times
    - gf_node_init
    - lsr_read_any_attribute
    - lsr_read_rare
    - gf_node_new
    - lsr_read_eRR
    - lsr_read_command_list
    - lsr_read_id
    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:3762,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3763,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3764,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3765,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3766,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3767,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3768,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3769,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3771
      start: 3760
    functionDepth: 10
    functionLinenumber: 3760
    functionLinenumberEnd: 3771
    functionName: lsr_read_cursorManager
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_href
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_rare
    - gf_node_new
    - lsr_read_id
    - lsr_read_coordinate_ptr
    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:3775,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3776,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3777,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3778,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - node_tag
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3781
      start: 3773
    functionDepth: 10
    functionLinenumber: 3773
    functionLinenumberEnd: 3781
    functionName: lsr_read_data
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_rare
    - gf_node_new
    - lsr_read_id
    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:3785,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3786,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3787,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3788,1
    - Dst: lsr_read_stroke
      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:3791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3793
      start: 3783
    functionDepth: 10
    functionLinenumber: 3783
    functionLinenumberEnd: 3793
    functionName: lsr_read_defs
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_read_rare
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    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:3796,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3797,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3798,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3799,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3800,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3801,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3802,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3803,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3804,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3805,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3808
      start: 3794
    functionDepth: 10
    functionLinenumber: 3794
    functionLinenumberEnd: 3808
    functionName: lsr_read_ellipse
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_rare_full
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    - lsr_read_coordinate_ptr
    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:3812,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3813,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3814,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3815,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3816,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3817,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3818,1
    - Dst: lsr_read_coordinate_ptr
      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_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3823,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3835
      start: 3809
    functionDepth: 10
    functionLinenumber: 3809
    functionLinenumberEnd: 3835
    functionName: lsr_read_foreignObject
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_rare_full
    - lsr_read_any_attribute
    - lsr_read_stroke
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - GF_LSR_READ_INT
    - lsr_read_id
    - lsr_read_coordinate_ptr
    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:3840,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3845,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3847,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3849,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3850,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3851,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3852,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:3853,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3854,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3857,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - lsr
    - is_same
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3859
      start: 3838
    functionDepth: 10
    functionLinenumber: 3838
    functionLinenumberEnd: 3859
    functionName: lsr_read_g
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_rare_full
    - lsr_read_group_content
    - GF_LOG
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - lsr_read_id
    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:3865,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3867,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:3869,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3872
      start: 3861
    functionDepth: 5
    functionLinenumber: 3861
    functionLinenumberEnd: 3872
    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:3875,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3876,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3877,1
    - Dst: lsr_read_eRR
      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_opacity
      Src: /src/gpac/src/laser/lsr_dec.c:3880,1
    - Dst: lsr_read_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_dec.c:3882,1
    - Dst: lsr_read_content_type
      Src: /src/gpac/src/laser/lsr_dec.c:3883,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3884,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3885,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3886,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3887,1
    - Dst: lsr_read_transform_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:3888,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3889,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3892
      start: 3873
    functionDepth: 10
    functionLinenumber: 3873
    functionLinenumberEnd: 3892
    functionName: lsr_read_image
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_preserve_aspect_ratio
    - lsr_read_rare_full
    - lsr_read_content_type
    - lsr_read_id
    - lsr_read_href
    - lsr_read_any_attribute
    - lsr_read_group_content
    - lsr_read_opacity
    - gf_node_new
    - lsr_read_transform_behavior
    - lsr_read_eRR
    - lsr_read_coordinate_ptr
    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:3895,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3901,1
    - Dst: lsr_read_id
      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_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3906,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3907,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3908,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3910,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3911,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3912,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3913,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3915,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3918,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - lsr
    - is_same
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3920
      start: 3893
    functionDepth: 10
    functionLinenumber: 3893
    functionLinenumberEnd: 3920
    functionName: lsr_read_line
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_rare_full
    - lsr_read_group_content
    - GF_LOG
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    - lsr_read_coordinate_ptr
    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:3926,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3928,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3929,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - lsr
    - elt
    argTypes:
    - GF_LASeRCodec*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3931
      start: 3922
    functionDepth: 5
    functionLinenumber: 3922
    functionLinenumberEnd: 3931
    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:3934,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3935,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3936,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3937,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3938,1
    - Dst: lsr_read_gradient_units
      Src: /src/gpac/src/laser/lsr_dec.c:3939,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3940,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3941,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3942,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:3943,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3944,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3947
      start: 3932
    functionDepth: 10
    functionLinenumber: 3932
    functionLinenumberEnd: 3947
    functionName: lsr_read_linearGradient
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_read_rare
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    - lsr_read_coordinate_ptr
    - lsr_read_gradient_units
    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:3950,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3951,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:3952,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:3953,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3954,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3957
      start: 3948
    functionDepth: 10
    functionLinenumber: 3948
    functionLinenumberEnd: 3957
    functionName: lsr_read_mpath
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_href
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_rare
    - gf_node_new
    - lsr_read_id
    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:3961,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3965,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:3967,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3969,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3970,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:3971,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:3973,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:3974,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:3975,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:3976,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:3977,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:3978,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3981,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:3982,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:3984,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:3987,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - lsr
    - same_type
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3989
      start: 3958
    functionDepth: 10
    functionLinenumber: 3958
    functionLinenumberEnd: 3989
    functionName: lsr_read_path
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - lsr_read_path_type
    - gf_node_get_attribute_by_tag
    - lsr_read_rare_full
    - lsr_read_group_content
    - GF_LOG
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - GF_LSR_READ_INT
    - lsr_read_id
    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:3993,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:3995,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:3999,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4001,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4003,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4004,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4005,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:4006,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_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:4012,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4013,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4016,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: 4018
      start: 3990
    functionDepth: 10
    functionLinenumber: 3990
    functionLinenumberEnd: 4018
    functionName: lsr_read_polygon
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_point_sequence
    - gf_node_get_attribute_by_tag
    - lsr_read_rare_full
    - lsr_read_group_content
    - GF_LOG
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    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:4021,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4022,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4023,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4024,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4025,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4026,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4027,1
    - Dst: lsr_read_gradient_units
      Src: /src/gpac/src/laser/lsr_dec.c:4028,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4029,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4030,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4031,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4033
      start: 4019
    functionDepth: 10
    functionLinenumber: 4019
    functionLinenumberEnd: 4033
    functionName: lsr_read_radialGradient
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_read_rare
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    - lsr_read_coordinate_ptr
    - lsr_read_gradient_units
    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:4036,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:4040,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4042,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4044,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4045,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4046,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4047,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4048,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4049,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4051,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4052,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4053,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4054,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4055,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4056,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4057,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4058,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4059,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4060,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4061,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4064,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 2
    argNames:
    - lsr
    - same_type
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4066
      start: 4034
    functionDepth: 10
    functionLinenumber: 4034
    functionLinenumberEnd: 4066
    functionName: lsr_read_rect
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_rare_full
    - lsr_read_group_content
    - GF_LOG
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    - lsr_read_coordinate_ptr
    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:4071,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4072,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4073,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4074,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4075,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4076,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4077,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4081,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4082,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4084,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4087,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4088,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4090
      start: 4068
    functionDepth: 10
    functionLinenumber: 4068
    functionLinenumberEnd: 4090
    functionName: lsr_read_rectClip
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_coordinate
    - gf_node_get_attribute_by_tag
    - lsr_read_rare_full
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - GF_LSR_READ_INT
    - lsr_read_id
    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:4094,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4095,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4096,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4097,1
    - Dst: lsr_read_script_type
      Src: /src/gpac/src/laser/lsr_dec.c:4098,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4099,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4100,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4103
      start: 4092
    functionDepth: 10
    functionLinenumber: 4092
    functionLinenumberEnd: 4103
    functionName: lsr_read_script
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_script_type
    - lsr_read_href
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_rare
    - gf_node_new
    - lsr_read_eRR
    - lsr_read_id
    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:4108,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4109,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4110,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4111,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4112,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4113,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4114,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4117,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4118,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4120,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4122,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4126,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4129
      start: 4105
    functionDepth: 10
    functionLinenumber: 4105
    functionLinenumberEnd: 4129
    functionName: lsr_read_selector
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_read_rare_full
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - GF_LSR_READ_INT
    - lsr_read_id
    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:4133,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4134,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4135,1
    - Dst: lsr_read_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:4136,1
    - Dst: lsr_read_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:4137,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:4139,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4140,1
    - Dst: lsr_read_anim_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4141,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:4142,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4143,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:4144,1
    - Dst: lsr_read_anim_value
      Src: /src/gpac/src/laser/lsr_dec.c:4145,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4146,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:4147,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4148,1
    - Dst: lsr_setup_smil_anim
      Src: /src/gpac/src/laser/lsr_dec.c:4150,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4151,1
    - Dst: lsr_read_group_content_post_init
      Src: /src/gpac/src/laser/lsr_dec.c:4152,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4157
      start: 4131
    functionDepth: 10
    functionLinenumber: 4131
    functionLinenumberEnd: 4157
    functionName: lsr_read_set
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_repeat_duration
    - lsr_read_anim_fill
    - gf_node_new
    - gf_list_add
    - lsr_read_anim_value
    - lsr_read_rare
    - lsr_read_anim_restart
    - lsr_read_duration
    - lsr_read_lsr_enabled
    - lsr_read_group_content
    - lsr_read_smil_times
    - lsr_read_any_attribute
    - lsr_setup_smil_anim
    - lsr_read_id
    - lsr_read_group_content_post_init
    - lsr_read_anim_repeatCount
    - lsr_read_attribute_name
    - lsr_read_href
    - lsr_read_attribute_type
    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:4162,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4163,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4164,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4165,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4166,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4167,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4171,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4172,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4174,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4177,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4178,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4181
      start: 4159
    functionDepth: 10
    functionLinenumber: 4159
    functionLinenumberEnd: 4181
    functionName: lsr_read_simpleLayout
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_coordinate
    - gf_node_get_attribute_by_tag
    - lsr_read_rare_full
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - gf_node_new
    - lsr_read_fill
    - GF_LSR_READ_INT
    - lsr_read_eRR
    - lsr_read_id
    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:4186,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4187,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4188,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4189,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4190,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4192,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4193,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4194,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4195,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4197
      start: 4183
    functionDepth: 10
    functionLinenumber: 4183
    functionLinenumberEnd: 4197
    functionName: lsr_read_stop
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - gf_node_get_attribute_by_tag
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_read_rare
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    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:4203,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4204,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4205,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4206,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4207,1
    - Dst: lsr_read_string_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4208,1
    - Dst: lsr_read_string_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4209,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4210,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:4213,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4215,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4216,1
    - Dst: lsr_read_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_dec.c:4220,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4223,1
    - Dst: lsr_read_duration_ex
      Src: /src/gpac/src/laser/lsr_dec.c:4225,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4226,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4230,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4232,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4233,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4249,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4251,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4253,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:4254,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4257,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4259,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4260,1
    - Dst: lsr_read_string_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4263,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4265,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4267,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4268,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4269,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4270,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4271,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4275,1
    - Dst: lsr_read_value_with_units
      Src: /src/gpac/src/laser/lsr_dec.c:4276,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4278,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4280,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4281,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4284,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:4289,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/laser/lsr_dec.c:4290,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4293,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 85
    argCount: 2
    argNames:
    - lsr
    - init_node
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4295
      start: 4198
    functionDepth: 10
    functionLinenumber: 4198
    functionLinenumberEnd: 4295
    functionName: lsr_read_svg
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - gf_node_get_attribute_by_tag
    - lsr_read_preserve_aspect_ratio
    - gf_sg_set_root_node
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_read_string_attribute
    - lsr_read_duration_ex
    - lsr_read_rare
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - lsr_read_value_with_units
    - GF_LSR_READ_INT
    - gf_node_register
    - lsr_read_id
    - lsr_read_vluimsbf5
    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:4299,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4300,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4301,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4302,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4303,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4304,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4305,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4308
      start: 4297
    functionDepth: 10
    functionLinenumber: 4297
    functionLinenumberEnd: 4308
    functionName: lsr_read_switch
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_rare_full
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - lsr_read_id
    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:4315,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:4318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4320,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4322,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4323,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4324,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4325,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4327,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4328,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4329,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4330,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4332,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4334,1
    - Dst: lsr_read_float_list
      Src: /src/gpac/src/laser/lsr_dec.c:4337,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4338,1
    - Dst: lsr_read_coord_list
      Src: /src/gpac/src/laser/lsr_dec.c:4339,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4340,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4343,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - lsr
    - same_type
    argTypes:
    - GF_LASeRCodec*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4345
      start: 4311
    functionDepth: 10
    functionLinenumber: 4311
    functionLinenumberEnd: 4345
    functionName: lsr_read_text
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_coord_list
    - gf_node_get_attribute_by_tag
    - lsr_read_rare_full
    - lsr_read_group_content
    - GF_LOG
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - GF_LSR_READ_INT
    - lsr_read_float_list
    - lsr_read_id
    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:4349,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4350,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4351,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4352,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4353,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4354,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4355,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4357
      start: 4347
    functionDepth: 10
    functionLinenumber: 4347
    functionLinenumberEnd: 4357
    functionName: lsr_read_tspan
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_group_content
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_read_rare
    - gf_node_new
    - lsr_read_fill
    - lsr_read_id
    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:4363,1
    - Dst: lsr_restore_base
      Src: /src/gpac/src/laser/lsr_dec.c:4366,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4368,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:4369,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/laser/lsr_dec.c:4370,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4374,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4375,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4377,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4378,1
    - Dst: lsr_read_fill
      Src: /src/gpac/src/laser/lsr_dec.c:4379,1
    - Dst: lsr_read_stroke
      Src: /src/gpac/src/laser/lsr_dec.c:4380,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4381,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4383,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4385,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4386,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4388,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4389,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4390,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4391,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4394,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 32
    argCount: 2
    argNames:
    - lsr
    - is_same
    argTypes:
    - GF_LASeRCodec*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4396
      start: 4359
    functionDepth: 10
    functionLinenumber: 4359
    functionLinenumberEnd: 4396
    functionName: lsr_read_use
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_read_href
    - lsr_read_rare_full
    - lsr_read_group_content
    - GF_LOG
    - lsr_read_any_attribute
    - lsr_read_stroke
    - lsr_restore_base
    - gf_node_new
    - lsr_read_fill
    - lsr_read_eRR
    - gf_node_register
    - GF_LSR_READ_INT
    - lsr_read_id
    - gf_node_unregister
    - lsr_read_coordinate_ptr
    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:4402,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4403,1
    - Dst: lsr_read_rare_full
      Src: /src/gpac/src/laser/lsr_dec.c:4404,1
    - Dst: lsr_read_smil_times
      Src: /src/gpac/src/laser/lsr_dec.c:4405,1
    - Dst: lsr_read_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4406,1
    - Dst: lsr_read_eRR
      Src: /src/gpac/src/laser/lsr_dec.c:4407,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4408,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4409,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4411,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4412,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4414,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:4417,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:4418,1
    - Dst: lsr_read_preserve_aspect_ratio
      Src: /src/gpac/src/laser/lsr_dec.c:4421,1
    - Dst: lsr_read_anim_repeatCount
      Src: /src/gpac/src/laser/lsr_dec.c:4422,1
    - Dst: lsr_read_repeat_duration
      Src: /src/gpac/src/laser/lsr_dec.c:4423,1
    - Dst: lsr_read_anim_restart
      Src: /src/gpac/src/laser/lsr_dec.c:4424,1
    - Dst: lsr_read_sync_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:4425,1
    - Dst: lsr_read_sync_tolerance
      Src: /src/gpac/src/laser/lsr_dec.c:4426,1
    - Dst: lsr_read_transform_behavior
      Src: /src/gpac/src/laser/lsr_dec.c:4427,1
    - Dst: lsr_read_content_type
      Src: /src/gpac/src/laser/lsr_dec.c:4428,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4429,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4430,1
    - Dst: lsr_read_coordinate_ptr
      Src: /src/gpac/src/laser/lsr_dec.c:4431,1
    - Dst: lsr_read_href
      Src: /src/gpac/src/laser/lsr_dec.c:4432,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:4434,1
    - Dst: lsr_read_clip_time
      Src: /src/gpac/src/laser/lsr_dec.c:4435,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4437,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4439,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4440,1
    - Dst: lsr_read_sync_reference
      Src: /src/gpac/src/laser/lsr_dec.c:4443,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4444,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4445,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 42
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4447
      start: 4398
    functionDepth: 10
    functionLinenumber: 4398
    functionLinenumberEnd: 4447
    functionName: lsr_read_video
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_node_get_attribute_by_tag
    - lsr_read_content_type
    - lsr_read_rare_full
    - lsr_read_repeat_duration
    - gf_node_new
    - lsr_read_transform_behavior
    - lsr_read_eRR
    - lsr_read_coordinate_ptr
    - GF_LSR_READ_INT
    - lsr_read_sync_tolerance
    - lsr_read_anim_restart
    - lsr_read_duration
    - lsr_read_clip_time
    - lsr_read_preserve_aspect_ratio
    - lsr_read_group_content
    - lsr_read_smil_times
    - lsr_read_any_attribute
    - lsr_read_id
    - gf_free
    - lsr_read_anim_repeatCount
    - lsr_read_href
    - lsr_read_sync_reference
    - lsr_read_byte_align_string
    - lsr_read_sync_behavior
    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:4455,1
    - Dst: lsr_read_id
      Src: /src/gpac/src/laser/lsr_dec.c:4459,1
    - Dst: lsr_read_rare
      Src: /src/gpac/src/laser/lsr_dec.c:4460,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4461,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4463,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4464,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4466,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4468,1
    - Dst: lsr_read_event_type
      Src: /src/gpac/src/laser/lsr_dec.c:4469,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4473,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4475,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:4477,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4479,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4482,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:4483,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4487,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4489,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4490,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4492,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4494,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4495,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4497,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:4499,1
    - Dst: lsr_read_codec_IDREF
      Src: /src/gpac/src/laser/lsr_dec.c:4500,1
    - Dst: lsr_read_lsr_enabled
      Src: /src/gpac/src/laser/lsr_dec.c:4504,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:4505,1
    - Dst: lsr_read_group_content
      Src: /src/gpac/src/laser/lsr_dec.c:4506,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4538,1
    - Dst: gf_node_dom_listener_add
      Src: /src/gpac/src/laser/lsr_dec.c:4541,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 78
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4545
      start: 4449
    functionDepth: 10
    functionLinenumber: 4449
    functionLinenumberEnd: 4545
    functionName: lsr_read_listener
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_codec_IDREF
    - gf_node_get_attribute_by_tag
    - lsr_read_lsr_enabled
    - lsr_read_group_content
    - gf_node_dom_listener_add
    - lsr_read_any_attribute
    - lsr_read_rare
    - lsr_read_any_uri
    - gf_node_new
    - GF_LSR_READ_INT
    - lsr_read_id
    - gf_list_add
    - lsr_read_event_type
    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:4551,1
    - Dst: lsr_read_a
      Src: /src/gpac/src/laser/lsr_dec.c:4555,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4558,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4561,1
    - Dst: lsr_read_animateMotion
      Src: /src/gpac/src/laser/lsr_dec.c:4564,1
    - Dst: lsr_read_animateTransform
      Src: /src/gpac/src/laser/lsr_dec.c:4567,1
    - Dst: lsr_read_audio
      Src: /src/gpac/src/laser/lsr_dec.c:4570,1
    - Dst: lsr_read_circle
      Src: /src/gpac/src/laser/lsr_dec.c:4573,1
    - Dst: lsr_read_conditional
      Src: /src/gpac/src/laser/lsr_dec.c:4576,1
    - Dst: lsr_read_cursorManager
      Src: /src/gpac/src/laser/lsr_dec.c:4579,1
    - Dst: lsr_read_defs
      Src: /src/gpac/src/laser/lsr_dec.c:4582,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4585,1
    - Dst: lsr_read_ellipse
      Src: /src/gpac/src/laser/lsr_dec.c:4588,1
    - Dst: lsr_read_foreignObject
      Src: /src/gpac/src/laser/lsr_dec.c:4591,1
    - Dst: lsr_read_g
      Src: /src/gpac/src/laser/lsr_dec.c:4594,1
    - Dst: lsr_read_image
      Src: /src/gpac/src/laser/lsr_dec.c:4597,1
    - Dst: lsr_read_line
      Src: /src/gpac/src/laser/lsr_dec.c:4600,1
    - Dst: lsr_read_linearGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4603,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4606,1
    - Dst: lsr_read_mpath
      Src: /src/gpac/src/laser/lsr_dec.c:4609,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4612,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4615,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4618,1
    - Dst: lsr_read_radialGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4621,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4624,1
    - Dst: lsr_read_rectClip
      Src: /src/gpac/src/laser/lsr_dec.c:4627,1
    - Dst: lsr_read_g
      Src: /src/gpac/src/laser/lsr_dec.c:4630,1
    - Dst: lsr_read_line
      Src: /src/gpac/src/laser/lsr_dec.c:4633,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4636,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4639,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4642,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4645,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4648,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4651,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4654,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4657,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4660,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4663,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4666,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4669,1
    - Dst: lsr_read_use
      Src: /src/gpac/src/laser/lsr_dec.c:4672,1
    - Dst: lsr_read_script
      Src: /src/gpac/src/laser/lsr_dec.c:4675,1
    - Dst: lsr_read_selector
      Src: /src/gpac/src/laser/lsr_dec.c:4678,1
    - Dst: lsr_read_set
      Src: /src/gpac/src/laser/lsr_dec.c:4681,1
    - Dst: lsr_read_simpleLayout
      Src: /src/gpac/src/laser/lsr_dec.c:4684,1
    - Dst: lsr_read_stop
      Src: /src/gpac/src/laser/lsr_dec.c:4687,1
    - Dst: lsr_read_switch
      Src: /src/gpac/src/laser/lsr_dec.c:4690,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4693,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4696,1
    - Dst: lsr_read_tspan
      Src: /src/gpac/src/laser/lsr_dec.c:4699,1
    - Dst: lsr_read_use
      Src: /src/gpac/src/laser/lsr_dec.c:4702,1
    - Dst: lsr_read_video
      Src: /src/gpac/src/laser/lsr_dec.c:4705,1
    - Dst: lsr_read_listener
      Src: /src/gpac/src/laser/lsr_dec.c:4708,1
    - Dst: lsr_read_extend_class
      Src: /src/gpac/src/laser/lsr_dec.c:4711,1
    - Dst: lsr_read_private_element_container
      Src: /src/gpac/src/laser/lsr_dec.c:4714,1
    - Dst: lsr_read_text_content
      Src: /src/gpac/src/laser/lsr_dec.c:4717,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:4724,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/laser/lsr_dec.c:4726,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 178
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4729
      start: 4547
    functionDepth: 11
    functionLinenumber: 4547
    functionLinenumberEnd: 4729
    functionName: lsr_read_scene_content_model
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_text
    - lsr_read_stop
    - lsr_read_path
    - lsr_read_conditional
    - lsr_read_animateMotion
    - lsr_read_polygon
    - lsr_read_selector
    - lsr_read_audio
    - lsr_read_listener
    - lsr_read_animateTransform
    - lsr_read_linearGradient
    - GF_LSR_READ_INT
    - lsr_read_use
    - lsr_read_video
    - lsr_read_text_content
    - lsr_read_radialGradient
    - lsr_read_defs
    - lsr_read_set
    - lsr_read_switch
    - lsr_read_script
    - lsr_read_mpath
    - lsr_read_simpleLayout
    - lsr_read_rectClip
    - lsr_read_line
    - lsr_read_foreignObject
    - lsr_read_data
    - lsr_read_g
    - lsr_read_image
    - lsr_read_cursorManager
    - lsr_read_a
    - lsr_read_extend_class
    - lsr_read_rect
    - lsr_read_tspan
    - gf_dom_event_fire
    - lsr_read_animate
    - lsr_read_circle
    - lsr_read_private_element_container
    - lsr_read_ellipse
    - memset
    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:4735,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4737,1
    - Dst: lsr_read_conditional
      Src: /src/gpac/src/laser/lsr_dec.c:4740,1
    - Dst: lsr_read_cursorManager
      Src: /src/gpac/src/laser/lsr_dec.c:4743,1
    - Dst: lsr_read_extend_class
      Src: /src/gpac/src/laser/lsr_dec.c:4746,1
    - Dst: lsr_read_private_element_container
      Src: /src/gpac/src/laser/lsr_dec.c:4749,1
    - Dst: lsr_read_rectClip
      Src: /src/gpac/src/laser/lsr_dec.c:4752,1
    - Dst: lsr_read_simpleLayout
      Src: /src/gpac/src/laser/lsr_dec.c:4755,1
    - Dst: lsr_read_selector
      Src: /src/gpac/src/laser/lsr_dec.c:4758,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4762,1
    - Dst: lsr_read_a
      Src: /src/gpac/src/laser/lsr_dec.c:4765,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4768,1
    - Dst: lsr_read_animate
      Src: /src/gpac/src/laser/lsr_dec.c:4771,1
    - Dst: lsr_read_animateMotion
      Src: /src/gpac/src/laser/lsr_dec.c:4774,1
    - Dst: lsr_read_animateTransform
      Src: /src/gpac/src/laser/lsr_dec.c:4777,1
    - Dst: lsr_read_audio
      Src: /src/gpac/src/laser/lsr_dec.c:4780,1
    - Dst: lsr_read_circle
      Src: /src/gpac/src/laser/lsr_dec.c:4783,1
    - Dst: lsr_read_defs
      Src: /src/gpac/src/laser/lsr_dec.c:4786,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4789,1
    - Dst: lsr_read_ellipse
      Src: /src/gpac/src/laser/lsr_dec.c:4792,1
    - Dst: lsr_read_foreignObject
      Src: /src/gpac/src/laser/lsr_dec.c:4795,1
    - Dst: lsr_read_g
      Src: /src/gpac/src/laser/lsr_dec.c:4798,1
    - Dst: lsr_read_image
      Src: /src/gpac/src/laser/lsr_dec.c:4801,1
    - Dst: lsr_read_line
      Src: /src/gpac/src/laser/lsr_dec.c:4804,1
    - Dst: lsr_read_linearGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4807,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4810,1
    - Dst: lsr_read_mpath
      Src: /src/gpac/src/laser/lsr_dec.c:4813,1
    - Dst: lsr_read_path
      Src: /src/gpac/src/laser/lsr_dec.c:4816,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4819,1
    - Dst: lsr_read_polygon
      Src: /src/gpac/src/laser/lsr_dec.c:4822,1
    - Dst: lsr_read_radialGradient
      Src: /src/gpac/src/laser/lsr_dec.c:4825,1
    - Dst: lsr_read_rect
      Src: /src/gpac/src/laser/lsr_dec.c:4828,1
    - Dst: lsr_read_script
      Src: /src/gpac/src/laser/lsr_dec.c:4831,1
    - Dst: lsr_read_set
      Src: /src/gpac/src/laser/lsr_dec.c:4834,1
    - Dst: lsr_read_stop
      Src: /src/gpac/src/laser/lsr_dec.c:4837,1
    - Dst: lsr_read_svg
      Src: /src/gpac/src/laser/lsr_dec.c:4840,1
    - Dst: lsr_read_switch
      Src: /src/gpac/src/laser/lsr_dec.c:4843,1
    - Dst: lsr_read_text
      Src: /src/gpac/src/laser/lsr_dec.c:4846,1
    - Dst: lsr_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:4849,1
    - Dst: lsr_read_tspan
      Src: /src/gpac/src/laser/lsr_dec.c:4852,1
    - Dst: lsr_read_use
      Src: /src/gpac/src/laser/lsr_dec.c:4855,1
    - Dst: lsr_read_video
      Src: /src/gpac/src/laser/lsr_dec.c:4858,1
    - Dst: lsr_read_listener
      Src: /src/gpac/src/laser/lsr_dec.c:4861,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:4867,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/laser/lsr_dec.c:4869,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 137
    argCount: 2
    argNames:
    - lsr
    - parent
    argTypes:
    - GF_LASeRCodec*
    - SVG_Element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4872
      start: 4731
    functionDepth: 11
    functionLinenumber: 4731
    functionLinenumberEnd: 4872
    functionName: lsr_read_update_content_model
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_text
    - lsr_read_stop
    - lsr_read_path
    - lsr_read_conditional
    - lsr_read_animateMotion
    - lsr_read_polygon
    - lsr_read_selector
    - lsr_read_svg
    - lsr_read_audio
    - lsr_read_listener
    - lsr_read_animateTransform
    - lsr_read_linearGradient
    - GF_LSR_READ_INT
    - lsr_read_use
    - lsr_read_video
    - lsr_read_radialGradient
    - lsr_read_defs
    - lsr_read_set
    - lsr_read_switch
    - lsr_read_script
    - lsr_read_mpath
    - lsr_read_simpleLayout
    - lsr_read_rectClip
    - lsr_read_line
    - lsr_read_foreignObject
    - lsr_read_data
    - lsr_read_g
    - lsr_read_image
    - lsr_read_cursorManager
    - lsr_read_a
    - lsr_read_extend_class
    - lsr_read_rect
    - lsr_read_tspan
    - gf_dom_event_fire
    - lsr_read_animate
    - lsr_read_circle
    - lsr_read_private_element_container
    - lsr_read_ellipse
    - memset
    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:4879,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:4884,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4886,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:4889,1
    - Dst: lsr_read_scene_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:4893,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:4895,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:4896,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4897,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_dec.c:4897,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:4905,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: 4906
      start: 4874
    functionDepth: 12
    functionLinenumber: 4874
    functionLinenumberEnd: 4906
    functionName: lsr_read_group_content
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 31
    functionsReached:
    - gf_node_init
    - GF_LOG
    - lsr_read_object_content
    - gf_node_get_class_name
    - GF_LSR_READ_INT
    - lsr_read_scene_content_model
    - gf_node_register
    - gf_node_list_add_child_last
    - lsr_read_vluimsbf5
    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:4912,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:4914,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:4917,1
    - Dst: lsr_read_scene_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:4921,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:4923,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:4924,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:4925,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/laser/lsr_dec.c:4925,1
    - Dst: gf_node_init
      Src: /src/gpac/src/laser/lsr_dec.c:4931,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: 4932
      start: 4908
    functionDepth: 12
    functionLinenumber: 4908
    functionLinenumberEnd: 4932
    functionName: lsr_read_group_content_post_init
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_node_init
    - lsr_read_object_content
    - gf_node_get_class_name
    - GF_LSR_READ_INT
    - lsr_read_scene_content_model
    - gf_node_register
    - gf_node_list_add_child_last
    - lsr_read_vluimsbf5
    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:4944,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:4949,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4950,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4954,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:4956,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4958,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4965,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:4970,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4971,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4975,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:4976,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:4983,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4987,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4989,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:4994,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:4998,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:5004,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:5009,1
    - Dst: lsr_read_fraction_12_item
      Src: /src/gpac/src/laser/lsr_dec.c:5010,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5011,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:5017,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:5022,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:5023,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:5027,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5028,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/laser/lsr_dec.c:5035,1
    - Dst: gf_list_new
      Src: /src/gpac/src/laser/lsr_dec.c:5040,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5044,1
    - Dst: lsr_read_smil_time
      Src: /src/gpac/src/laser/lsr_dec.c:5044,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:5049,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: 5053
      start: 4934
    functionDepth: 5
    functionLinenumber: 4934
    functionLinenumberEnd: 5053
    functionName: lsr_read_update_value_indexed
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - gf_malloc
    - lsr_read_smil_time
    - lsr_read_extension
    - lsr_read_fixed_clamp
    - GF_SAFEALLOC
    - lsr_read_fraction_12_item
    - gf_list_new
    - lsr_read_coordinate
    - gf_list_add
    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:5062,1
    - Dst: lsr_read_paint
      Src: /src/gpac/src/laser/lsr_dec.c:5065,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5079,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5080,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5084,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:5090,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5093,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5095,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5099,1
    - Dst: lsr_read_matrix
      Src: /src/gpac/src/laser/lsr_dec.c:5104,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5120,1
    - Dst: lsr_read_fixed_clamp
      Src: /src/gpac/src/laser/lsr_dec.c:5124,1
    - Dst: lsr_read_value_with_units
      Src: /src/gpac/src/laser/lsr_dec.c:5130,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5132,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5136,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5139,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5141,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5145,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5154,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5159,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5162,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5164,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5168,1
    - Dst: lsr_read_float_list
      Src: /src/gpac/src/laser/lsr_dec.c:5173,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5179,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5184,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5185,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5187,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5191,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5195,1
    - Dst: lsr_read_fixed_16_8
      Src: /src/gpac/src/laser/lsr_dec.c:5199,1
    - Dst: lsr_read_any_uri
      Src: /src/gpac/src/laser/lsr_dec.c:5207,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: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5217,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5219,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5243,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5246,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5248,1
    - Dst: lsr_read_point_sequence
      Src: /src/gpac/src/laser/lsr_dec.c:5252,1
    - Dst: lsr_read_path_type
      Src: /src/gpac/src/laser/lsr_dec.c:5255,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5261,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5265,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5266,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5267,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5269,1
    - Dst: gf_strdup
      Src: /src/gpac/src/laser/lsr_dec.c:5271,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5278,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5281,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5283,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5287,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5294,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/laser/lsr_dec.c:5298,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5303,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: 5305
      start: 5055
    functionDepth: 11
    functionLinenumber: 5055
    functionLinenumberEnd: 5305
    functionName: lsr_read_update_value
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_fixed_16_8
    - lsr_read_point_sequence
    - gf_free
    - lsr_read_path_type
    - lsr_read_fixed_clamp
    - GF_LOG
    - lsr_read_matrix
    - lsr_read_paint
    - lsr_read_any_uri
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - lsr_read_value_with_units
    - lsr_read_float_list
    - gf_list_get
    - gf_strdup
    - lsr_read_coordinate
    - gf_node_changed
    - lsr_read_vluimsbf5
    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:5310,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5313,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5315,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5316,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - lsr
    argTypes:
    - GF_LASeRCodec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5322
      start: 5307
    functionDepth: 2
    functionLinenumber: 5307
    functionLinenumberEnd: 5322
    functionName: lsr_get_attribute_name
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - GF_LSR_READ_INT
    - lsr_read_vluimsbf5
    linkageType: ''
    returnType: u32
    signature: u32 lsr_get_attribute_name(GF_LASeRCodec *lsr)
  - BBCount: 97
    BranchProfiles: []
    Callsites:
    - Dst: lsr_get_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:5336,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5340,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5341,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5344,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5345,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5346,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5348,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5349,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5354,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5356,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5363,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5367,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5373,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5377,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5382,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5384,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5385,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5388,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5391,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5393,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5396,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/laser/lsr_dec.c:5398,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5399,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/laser/lsr_dec.c:5403,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5405,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/laser/lsr_dec.c:5407,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5408,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5412,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5421,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5422,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5433,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5441,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5452,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/laser/lsr_dec.c:5455,1
    - Dst: gf_xml_get_attribute_type
      Src: /src/gpac/src/laser/lsr_dec.c:5458,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5461,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5464,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5467,1
    - Dst: gf_dom_new_text_node
      Src: /src/gpac/src/laser/lsr_dec.c:5471,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5472,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5473,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:5476,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5477,1
    - Dst: lsr_read_update_value_indexed
      Src: /src/gpac/src/laser/lsr_dec.c:5480,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5511,1
    - Dst: gf_node_get_attribute_by_tag
      Src: /src/gpac/src/laser/lsr_dec.c:5512,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5520,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:5522,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/laser/lsr_dec.c:5532,1
    - Dst: gf_mx2d_init
      Src: /src/gpac/src/laser/lsr_dec.c:5533,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/laser/lsr_dec.c:5538,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/laser/lsr_dec.c:5539,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/laser/lsr_dec.c:5540,1
    - Dst: gf_mx2d_add_scale
      Src: /src/gpac/src/laser/lsr_dec.c:5543,1
    - Dst: gf_mx2d_add_translation
      Src: /src/gpac/src/laser/lsr_dec.c:5544,1
    - Dst: gf_mx2d_add_rotation
      Src: /src/gpac/src/laser/lsr_dec.c:5545,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5547,1
    - Dst: gf_dom_new_text_node
      Src: /src/gpac/src/laser/lsr_dec.c:5554,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5555,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/laser/lsr_dec.c:5556,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/laser/lsr_dec.c:5558,1
    - Dst: gf_sg_parent_reset
      Src: /src/gpac/src/laser/lsr_dec.c:5563,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/laser/lsr_dec.c:5564,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5566,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5567,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5569,1
    - Dst: lsr_read_update_value_indexed
      Src: /src/gpac/src/laser/lsr_dec.c:5574,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/laser/lsr_dec.c:5581,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5583,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5585,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5586,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:5587,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5588,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5590,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:5591,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5592,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/laser/lsr_dec.c:5596,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/laser/lsr_dec.c:5597,1
    - Dst: gf_list_del
      Src: /src/gpac/src/laser/lsr_dec.c:5598,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5599,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5602,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5605,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5606,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:5607,1
    - Dst: gf_list_get
      Src: /src/gpac/src/laser/lsr_dec.c:5608,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5609,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/laser/lsr_dec.c:5610,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5611,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5612,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5614,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5632,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5633,1
    - Dst: gf_sg_vrml_mf_insert
      Src: /src/gpac/src/laser/lsr_dec.c:5640,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5646,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5647,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:5650,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:5658,1
    - Dst: lsr_read_update_value
      Src: /src/gpac/src/laser/lsr_dec.c:5659,1
    - Dst: lsr_read_update_value_indexed
      Src: /src/gpac/src/laser/lsr_dec.c:5661,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/laser/lsr_dec.c:5663,1
    - Dst: gf_svg_delete_attribute_value
      Src: /src/gpac/src/laser/lsr_dec.c:5664,1
    - Dst: gf_node_get_graph
      Src: /src/gpac/src/laser/lsr_dec.c:5664,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5670,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5672,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5673,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5675,1
    - Dst: gf_sg_command_field_new
      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:5680,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5684,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5685,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5686,1
    - Dst: gf_svg_attributes_copy
      Src: /src/gpac/src/laser/lsr_dec.c:5688,1
    - Dst: gf_svg_attributes_add
      Src: /src/gpac/src/laser/lsr_dec.c:5690,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5695,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5701,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5709,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5711,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5712,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5714,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5715,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5721,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5722,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5723,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5728,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5729,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:5730,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5741,1
    - Dst: gf_node_list_del_child_idx
      Src: /src/gpac/src/laser/lsr_dec.c:5745,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/laser/lsr_dec.c:5746,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:5748,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:5749,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/laser/lsr_dec.c:5751,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5755,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5757,1
    - Dst: gf_node_list_insert_child
      Src: /src/gpac/src/laser/lsr_dec.c:5760,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/laser/lsr_dec.c:5762,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5764,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/laser/lsr_dec.c:5769,1
    - Dst: lsr_read_update_content_model
      Src: /src/gpac/src/laser/lsr_dec.c:5773,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5774,1
    CyclomaticComplexity: 105
    EdgeCount: 105
    ICount: 398
    argCount: 3
    argNames:
    - lsr
    - com_list
    - com_type
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5779
      start: 5324
    functionDepth: 12
    functionLinenumber: 5324
    functionLinenumberEnd: 5779
    functionName: lsr_read_add_replace_insert
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_init
    - gf_list_count
    - gf_node_get_attribute_by_tag
    - gf_sg_parent_reset
    - gf_mx2d_add_scale
    - gf_assert
    - gf_list_rem_last
    - lsr_read_update_value_indexed
    - gf_node_unregister_children
    - gf_sg_vrml_mf_insert
    - gf_list_add
    - gf_node_unregister
    - lsr_read_vluimsbf5
    - lsr_read_codec_IDREF_command
    - lsr_read_update_value
    - gf_mx2d_add_translation
    - gf_svg_attributes_add
    - gf_list_pop_front
    - GF_LSR_READ_INT
    - gf_node_get_graph
    - lsr_get_attribute_name
    - gf_node_list_add_child
    - gf_list_insert
    - gf_list_get
    - gf_mx2d_decompose
    - gf_node_replace
    - gf_node_get_field
    - lsr_read_any_attribute
    - gf_svg_attributes_copy
    - gf_svg_delete_attribute_value
    - lsr_read_update_content_model
    - gf_lsr_anim_type_to_attribute
    - gf_dom_add_text_node
    - gf_sg_command_field_new
    - gf_sg_command_del
    - gf_sg_command_new
    - gf_dom_new_text_node
    - gf_free
    - gf_list_del
    - gf_node_list_del_child_idx
    - gf_node_list_insert_child
    - gf_svg_create_attribute_value
    - lsr_read_byte_align_string
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_xml_get_attribute_type
    - gf_node_list_get_child
    - gf_node_changed
    - gf_mx2d_add_rotation
    - gf_sg_find_node
    - 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:5787,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5790,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5791,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5792,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5794,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5797,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5798,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5799,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5802,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5804,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/laser/lsr_dec.c:5808,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5811,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5813,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5818,1
    - Dst: gf_lsr_anim_type_to_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5823,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/laser/lsr_dec.c:5824,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/laser/lsr_dec.c:5829,1
    - Dst: gf_node_list_del_child
      Src: /src/gpac/src/laser/lsr_dec.c:5831,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/laser/lsr_dec.c:5833,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/laser/lsr_dec.c:5836,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/laser/lsr_dec.c:5837,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5841
      start: 5781
    functionDepth: 4
    functionLinenumber: 5781
    functionLinenumberEnd: 5841
    functionName: lsr_read_delete
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_sg_command_field_new
    - gf_node_get_field
    - gf_sg_command_new
    - gf_node_replace
    - lsr_read_any_attribute
    - gf_node_list_get_child
    - gf_list_del_item
    - gf_node_list_del_child
    - GF_LSR_READ_INT
    - gf_node_register
    - lsr_get_attribute_name
    - gf_lsr_anim_type_to_attribute
    - gf_list_add
    - gf_node_unregister
    - lsr_read_vluimsbf5
    - lsr_read_codec_IDREF_command
    - gf_sg_find_node
    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:5849,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5852,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5854,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5855,1
    - Dst: lsr_to_dom_key
      Src: /src/gpac/src/laser/lsr_dec.c:5863,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5870,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5872,1
    - Dst: lsr_read_coordinate
      Src: /src/gpac/src/laser/lsr_dec.c:5873,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:5875,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5877,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5879,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5881,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5885,1
    - Dst: memset
      Src: /src/gpac/src/laser/lsr_dec.c:5888,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5891,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5892,1
    - Dst: gf_dom_event_fire
      Src: /src/gpac/src/laser/lsr_dec.c:5893,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:5896,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5897,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:5898,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:5901,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:5903,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5907,1
    - Dst: FIX2INT
      Src: /src/gpac/src/laser/lsr_dec.c:5908,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 56
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5911
      start: 5843
    functionDepth: 9
    functionLinenumber: 5843
    functionLinenumberEnd: 5911
    functionName: lsr_read_send_event
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_codec_IDREF_command
    - gf_sg_command_new
    - lsr_to_dom_key
    - lsr_read_any_attribute
    - gf_dom_event_fire
    - memset
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - gf_node_register
    - FIX2INT
    - lsr_read_coordinate
    - gf_list_add
    - lsr_read_vluimsbf5
    - lsr_read_event_type
    - gf_sg_find_node
    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:5916,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5919,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:5920,1
    - Dst: lsr_get_attribute_name
      Src: /src/gpac/src/laser/lsr_dec.c:5922,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:5925,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5926,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5928
      start: 5913
    functionDepth: 3
    functionLinenumber: 5913
    functionLinenumberEnd: 5928
    functionName: lsr_read_save
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_any_attribute
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - lsr_get_attribute_name
    - lsr_read_vluimsbf5
    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:5932,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:5933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5935
      start: 5930
    functionDepth: 3
    functionLinenumber: 5930
    functionLinenumberEnd: 5935
    functionName: lsr_read_restore
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - lsr_read_byte_align_string
    - lsr_read_any_attribute
    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:5940,1
    - Dst: gf_assert
      Src: /src/gpac/src/laser/lsr_dec.c:5943,1
    - Dst: lsr_get_stream
      Src: /src/gpac/src/laser/lsr_dec.c:5945,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:5952,1
    - Dst: gf_divfix
      Src: /src/gpac/src/laser/lsr_dec.c:5954,1
    - Dst: INT2FIX
      Src: /src/gpac/src/laser/lsr_dec.c:5954,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/laser/lsr_dec.c:5956,1
    - Dst: lsr_read_command_list
      Src: /src/gpac/src/laser/lsr_dec.c:5958,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/laser/lsr_dec.c:5959,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - node
    - par
    - is_destroy
    argTypes:
    - GF_Node*
    - void*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5961
      start: 5937
    functionDepth: 2
    functionLinenumber: 5937
    functionLinenumberEnd: 5961
    functionName: lsr_exec_command_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 0
    functionsReached:
    - gf_divfix
    - lsr_get_stream
    - gf_node_get_private
    - gf_assert
    - INT2FIX
    - gf_bs_new
    - gf_bs_del
    - lsr_read_command_list
    linkageType: ''
    returnType: void
    signature: void lsr_exec_command_list(GF_Node *node, void *par, Bool is_destroy)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_dom_add_updates_node
      Src: /src/gpac/src/laser/lsr_dec.c:5971,1
    - Dst: gf_node_set_callback_function
      Src: /src/gpac/src/laser/lsr_dec.c:5972,1
    - Dst: gf_node_set_private
      Src: /src/gpac/src/laser/lsr_dec.c:5973,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5975,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:5976,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:5979,1
    - Dst: gf_malloc
      Src: /src/gpac/src/laser/lsr_dec.c:5985,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/laser/lsr_dec.c:5989,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:5998,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6002,1
    - Dst: lsr_read_add_replace_insert
      Src: /src/gpac/src/laser/lsr_dec.c:6007,1
    - Dst: lsr_read_delete
      Src: /src/gpac/src/laser/lsr_dec.c:6010,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6014,1
    - Dst: lsr_read_any_attribute
      Src: /src/gpac/src/laser/lsr_dec.c:6015,1
    - Dst: lsr_read_svg
      Src: /src/gpac/src/laser/lsr_dec.c:6017,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:6020,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:6021,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:6023,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:6025,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:6026,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:6028,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:6029,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:6031,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:6032,1
    - Dst: gf_sg_reset
      Src: /src/gpac/src/laser/lsr_dec.c:6041,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/laser/lsr_dec.c:6042,1
    - Dst: lsr_read_svg
      Src: /src/gpac/src/laser/lsr_dec.c:6043,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6049,1
    - Dst: lsr_read_send_event
      Src: /src/gpac/src/laser/lsr_dec.c:6052,1
    - Dst: lsr_read_restore
      Src: /src/gpac/src/laser/lsr_dec.c:6055,1
    - Dst: lsr_read_save
      Src: /src/gpac/src/laser/lsr_dec.c:6058,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6063,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6064,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6067,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6068,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6071,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6072,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6075,1
    - Dst: lsr_read_codec_IDREF_command
      Src: /src/gpac/src/laser/lsr_dec.c:6079,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/laser/lsr_dec.c:6081,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/laser/lsr_dec.c:6083,1
    - Dst: gf_node_register
      Src: /src/gpac/src/laser/lsr_dec.c:6086,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:6090,1
    - Dst: gf_node_activate
      Src: /src/gpac/src/laser/lsr_dec.c:6093,1
    - Dst: gf_node_deactivate
      Src: /src/gpac/src/laser/lsr_dec.c:6096,1
    - Dst: lsr_read_private_element_container
      Src: /src/gpac/src/laser/lsr_dec.c:6100,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/laser/lsr_dec.c:6129,1
    - Dst: lsr_read_object_content
      Src: /src/gpac/src/laser/lsr_dec.c:6130,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 165
    argCount: 4
    argNames:
    - lsr
    - com_list
    - cond
    - first_imp
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    - SVG_Element*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6140
      start: 5963
    functionDepth: 13
    functionLinenumber: 5963
    functionLinenumberEnd: 6140
    functionName: lsr_read_command_list
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - lsr_read_object_content
    - gf_list_rem_last
    - gf_bs_read_data
    - gf_node_set_private
    - lsr_read_save
    - gf_list_add
    - lsr_read_vluimsbf5
    - lsr_read_codec_IDREF_command
    - lsr_read_send_event
    - gf_malloc
    - lsr_read_svg
    - gf_node_activate
    - GF_LSR_READ_INT
    - gf_dom_add_updates_node
    - lsr_read_add_replace_insert
    - lsr_read_any_attribute
    - gf_sg_reset
    - lsr_read_delete
    - gf_sg_set_scene_size_info
    - gf_node_deactivate
    - gf_sg_command_new
    - gf_bs_align
    - lsr_read_restore
    - lsr_read_byte_align_string
    - gf_node_register
    - lsr_read_private_element_container
    - gf_node_set_callback_function
    - gf_bs_available
    - gf_sg_find_node
    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: 23
    BranchProfiles: []
    Callsites:
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6153,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6154,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:6155,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:6160,1
    - Dst: gf_list_count
      Src: /src/gpac/src/laser/lsr_dec.c:6162,1
    - Dst: gf_list_last
      Src: /src/gpac/src/laser/lsr_dec.c:6163,1
    - Dst: gf_free
      Src: /src/gpac/src/laser/lsr_dec.c:6164,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/laser/lsr_dec.c:6165,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6177,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6180,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:6181,1
    - Dst: gf_realloc
      Src: /src/gpac/src/laser/lsr_dec.c:6182,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6187,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6188,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6189,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_dec.c:6195,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6199,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6202,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6205,1
    - Dst: gf_list_add
      Src: /src/gpac/src/laser/lsr_dec.c:6206,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_dec.c:6210,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6214,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6217,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6220,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6227,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/laser/lsr_dec.c:6230,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6231,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6236,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6237,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6239,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6241,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6245,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/laser/lsr_dec.c:6247,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6251,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6260,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6262,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6263,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6266,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6268,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/laser/lsr_dec.c:6269,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6271,1
    - Dst: lsr_read_vluimsbf5
      Src: /src/gpac/src/laser/lsr_dec.c:6273,1
    - Dst: lsr_read_byte_align_string
      Src: /src/gpac/src/laser/lsr_dec.c:6274,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/laser/lsr_dec.c:6277,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6281,1
    - Dst: lsr_read_command_list
      Src: /src/gpac/src/laser/lsr_dec.c:6284,1
    - Dst: GF_LSR_READ_INT
      Src: /src/gpac/src/laser/lsr_dec.c:6285,1
    - Dst: lsr_read_extension
      Src: /src/gpac/src/laser/lsr_dec.c:6286,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 111
    argCount: 2
    argNames:
    - lsr
    - com_list
    argTypes:
    - GF_LASeRCodec*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6288
      start: 6142
    functionDepth: 14
    functionLinenumber: 6142
    functionLinenumberEnd: 6288
    functionName: lsr_decode_laser_unit
    functionSourceFile: /src/gpac/src/laser/lsr_dec.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_rem_last
    - gf_list_add
    - lsr_read_byte_align_string
    - GF_LSR_READ_INT
    - gf_get_bit_size
    - lsr_read_command_list
    - gf_realloc
    - gf_list_last
    - lsr_read_extension
    - lsr_read_vluimsbf5
    - gf_bs_available
    - gf_bs_get_bit_offset
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    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:
    - lsr_get_stream
    - GF_SAFEALLOC
    - memcpy
    - gf_list_add
    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_align
    - lsr_get_stream
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    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:
    - gf_bs_align
    - gf_divfix
    - lsr_get_stream
    - gf_bs_get_content
    - lsr_write_laser_unit
    - INT2FIX
    - gf_bs_new
    - gf_bs_del
    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_divfix
    - gf_bs_get_content
    - lsr_write_laser_unit
    - gf_bs_new
    - INT2FIX
    - gf_bs_del
    - gf_list_get
    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_bs_write_int
    - gf_get_bit_size
    - gf_assert
    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_bs_write_int
    - gf_get_bit_size
    - gf_assert
    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_bs_write_int
    - gf_get_bit_size
    - gf_assert
    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:
    - lsr_write_vluimsbf5
    - gf_bs_write_data
    - strlen
    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_node_get_id
    - gf_assert
    - gf_sg_find_node_by_name
    - 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:
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - gf_node_get_id
    - gf_assert
    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_get_bit_size
    - gf_node_get_id
    - gf_assert
    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:
    - GF_LSR_WRITE_INT
    - FIX2INT
    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
    - strcmp
    - gf_list_get
    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_bs_align
    - GF_LOG
    - 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: gf_strcat
      Src: /src/gpac/src/laser/lsr_enc.c:402,1
    - Dst: gf_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:
    - gf_strcat
    - gf_list_count
    - lsr_write_byte_align_string
    - gf_list_get
    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:
    - strchr
    - lsr_write_codec_IDREF
    - lsr_write_byte_align_string
    - strnicmp
    - gf_bs_write_data
    - gf_sg_find_node_by_name
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - 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_get_col_index
    - lsr_write_byte_align_string
    - GF_LOG
    - lsr_write_extension
    - GF_LSR_WRITE_INT
    - lsr_write_any_uri
    - gf_svg_get_system_paint_server_name
    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:
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - gf_bs_write_int
    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:
    - GF_LSR_WRITE_INT
    - lsr_write_private_att_class
    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:
    - GF_LSR_WRITE_INT
    - lsr_write_byte_align_string
    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:
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - gf_node_get_id
    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:
    - FIX2FLT
    - gf_divfix
    - GF_LOG
    - gf_assert
    - FIX2INT
    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:
    - GF_LOG
    - ABS
    - FIX2INT
    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_scale
    - GF_LSR_WRITE_INT
    - lsr_write_fixed_16_8
    - lsr_translate_coords
    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:
    - sprintf
    - dom_to_lsr_key
    - lsr_write_byte_align_string
    - GF_LOG
    - gf_dom_event_get_name
    - gf_dom_get_key_name
    - lsr_write_vluimsbf5
    - 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:
    - lsr_write_codec_IDREF
    - gf_node_get_id
    - lsr_write_event_type
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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_count
    - lsr_write_smil_time
    - gf_list_get
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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:
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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_svg_attributes_equal
    - gf_node_get_tag
    - gf_svg_flatten_attributes
    - gf_lsr_same_rare
    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:
    - gf_lsr_rare_type_from_attribute
    - gf_list_count
    - lsr_write_focus
    - lsr_write_paint
    - gf_bs_get_bit_position
    - lsr_get_font_index
    - lsr_write_matrix
    - lsr_get_vluimsbf5_size
    - strchr
    - gf_malloc
    - lsr_write_byte_align_string
    - lsr_write_fixed_16_8
    - gf_list_get
    - lsr_write_smil_times
    - lsr_write_vluimsbf5_ex
    - lsr_write_fixed_clamp
    - lsr_write_duration_ex
    - lsr_write_line_increment_type
    - lsr_write_vluimsbf5
    - strlen
    - GF_LSR_WRITE_INT
    - lsr_write_fixed_16_8i
    - gf_free
    - GF_LOG
    - stricmp
    - lsr_write_byte_align_string_list
    - lsr_write_any_uri
    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_LSR_WRITE_INT
    - lsr_write_any_uri
    - gf_node_get_id
    - 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_LOG
    - gf_xml_get_attribute_tag
    - gf_assert
    - gf_xml_get_attribute_type
    - GF_LSR_WRITE_INT
    - 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:
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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_count
    - lsr_write_path_type
    - lsr_write_point_sequence
    - lsr_write_byte_align_string
    - GF_LOG
    - lsr_write_fixed_clamp
    - lsr_write_fixed_16_8
    - gf_muldiv
    - lsr_get_font_index
    - INT2FIX
    - lsr_write_extension
    - lsr_write_paint
    - gf_list_get
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - lsr_write_any_uri
    - 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
    - GF_LOG
    - lsr_write_an_anim_value
    - gf_svg_attribute_type_to_string
    - GF_LSR_WRITE_INT
    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:
    - gf_list_count
    - svg_type_to_lsr_anim
    - GF_LOG
    - lsr_write_an_anim_value
    - lsr_write_vluimsbf5
    - gf_list_get
    - gf_svg_attribute_type_to_string
    - GF_LSR_WRITE_INT
    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_count
    - FIX2FLT
    - gf_list_get
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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_count
    - lsr_write_fixed_16_8
    - gf_list_get
    - lsr_write_vluimsbf5
    - 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:
    - gf_get_bit_size
    - gf_divfix
    - FIX2INT
    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_count
    - lsr_get_bit_size
    - lsr_translate_coords
    - gf_list_get
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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_count
    - gf_list_del
    - gf_list_get
    - gf_list_new
    - lsr_write_vluimsbf5
    - lsr_write_point_sequence
    - gf_list_add
    - GF_LSR_WRITE_INT
    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:
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - gf_assert
    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_count
    - lsr_translate_coords
    - gf_list_get
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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:
    - GF_LSR_WRITE_INT
    - lsr_write_byte_align_string
    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:
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    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_byte_align_string
    - lsr_write_rare
    - lsr_write_err
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_fill
    - lsr_write_href
    - lsr_write_any_attribute
    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_id
    - lsr_write_anim_value
    - lsr_write_calc_mode
    - lsr_write_additive
    - lsr_write_group_content
    - lsr_write_anim_restart
    - lsr_write_duration
    - lsr_write_accumulate
    - lsr_write_rare
    - lsr_write_anim_values
    - lsr_write_anim_fill
    - lsr_write_smil_times
    - lsr_write_href_anim
    - lsr_write_repeat_duration
    - lsr_write_attribute_type
    - lsr_write_fraction_12
    - GF_LSR_WRITE_INT
    - lsr_write_anim_repeat
    - lsr_write_animatable
    - gf_svg_flatten_attributes
    - lsr_write_any_attribute
    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_id
    - lsr_write_anim_value
    - lsr_write_calc_mode
    - lsr_write_additive
    - lsr_write_group_content
    - lsr_write_anim_restart
    - lsr_write_duration
    - lsr_write_path_type
    - lsr_write_accumulate
    - lsr_write_rare
    - lsr_write_anim_values
    - lsr_write_anim_fill
    - lsr_write_smil_times
    - lsr_write_href_anim
    - lsr_write_repeat_duration
    - lsr_write_rotate_type
    - lsr_write_attribute_type
    - lsr_write_fraction_12
    - GF_LSR_WRITE_INT
    - lsr_write_anim_repeat
    - lsr_write_float_list
    - gf_svg_flatten_attributes
    - lsr_write_any_attribute
    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_id
    - lsr_write_anim_value
    - lsr_write_calc_mode
    - lsr_write_additive
    - lsr_write_group_content
    - lsr_write_anim_restart
    - lsr_write_duration
    - lsr_write_accumulate
    - lsr_write_rare
    - lsr_write_anim_values
    - lsr_write_anim_fill
    - lsr_write_smil_times
    - lsr_write_href_anim
    - lsr_write_repeat_duration
    - lsr_write_attribute_type
    - lsr_write_fraction_12
    - GF_LSR_WRITE_INT
    - lsr_write_anim_repeat
    - lsr_write_animatable
    - gf_svg_flatten_attributes
    - lsr_write_any_attribute
    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_repeat_duration
    - lsr_write_anim_restart
    - lsr_write_any_uri
    - lsr_write_rare
    - lsr_write_sync_behavior
    - lsr_write_anim_repeat
    - lsr_write_content_type
    - lsr_write_sync_tolerance
    - gf_svg_flatten_attributes
    - lsr_write_smil_times
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_clip_time
    - lsr_write_any_attribute
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - lsr_write_fill
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_private_attributes
    - lsr_write_rare
    - gf_svg_flatten_attributes
    - lsr_write_command_list
    - lsr_write_smil_times
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_group_content
    - lsr_write_href
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - lsr_write_fill
    - lsr_write_any_attribute
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - lsr_write_fill
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - GF_LSR_WRITE_INT
    - lsr_write_fill
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - lsr_elt_has_same_base
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_fill
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    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_transform_behavior
    - lsr_write_preserve_aspect_ratio
    - lsr_write_rare
    - lsr_write_fixed_clamp
    - lsr_write_content_type
    - gf_svg_flatten_attributes
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - lsr_elt_has_same_base
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_fill
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - lsr_write_gradient_units
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - lsr_write_fill
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_group_content
    - lsr_write_href
    - lsr_write_any_attribute
    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_path_type
    - lsr_write_rare
    - lsr_write_fixed_16_8
    - lsr_elt_has_same_base
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_fill
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    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_point_sequence
    - lsr_write_rare
    - lsr_elt_has_same_base
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_fill
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    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_rare
    - lsr_write_gradient_units
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - lsr_write_fill
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - lsr_elt_has_same_base
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_fill
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_fill
    - lsr_write_any_attribute
    - 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_rare
    - gf_svg_flatten_attributes
    - lsr_write_script_type
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_any_attribute
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_fill
    - lsr_write_any_attribute
    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_repeat_duration
    - lsr_write_anim_value
    - lsr_write_rare
    - lsr_write_anim_repeat
    - lsr_write_attribute_type
    - lsr_write_animatable
    - gf_svg_flatten_attributes
    - lsr_write_anim_fill
    - lsr_write_group_content
    - lsr_write_smil_times
    - GF_LSR_WRITE_INT
    - lsr_write_anim_restart
    - lsr_write_any_attribute
    - lsr_write_href_anim
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_fill
    - lsr_write_any_attribute
    - 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_rare
    - lsr_write_fixed_16_8
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - lsr_write_fill
    - lsr_write_any_attribute
    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_string_attribute
    - lsr_write_rare
    - lsr_write_preserve_aspect_ratio
    - lsr_write_fixed_16_8
    - lsr_write_value_with_units
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_vluimsbf5
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_fill
    - lsr_write_any_attribute
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_fill
    - lsr_write_any_attribute
    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_rare
    - lsr_write_float_list
    - lsr_elt_has_same_base
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_fill
    - lsr_write_coord_list
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    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_rare
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_group_content
    - lsr_write_fill
    - lsr_write_any_attribute
    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_rare
    - lsr_elt_has_same_base
    - gf_svg_flatten_attributes
    - lsr_write_stroke
    - lsr_write_fill
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_href
    - lsr_write_any_attribute
    - lsr_write_coordinate_ptr
    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_id
    - lsr_write_sync_tolerance
    - lsr_write_group_content
    - lsr_write_anim_restart
    - lsr_write_duration
    - lsr_write_rare
    - lsr_write_smil_times
    - lsr_write_href
    - lsr_write_any_attribute
    - lsr_write_repeat_duration
    - lsr_write_sync_behavior
    - lsr_write_content_type
    - GF_LSR_WRITE_INT
    - lsr_write_coordinate_ptr
    - lsr_write_transform_behavior
    - lsr_write_preserve_aspect_ratio
    - lsr_write_anim_repeat
    - gf_svg_flatten_attributes
    - lsr_write_any_uri
    - lsr_write_clip_time
    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_codec_IDREF
    - gf_node_get_id
    - GF_LOG
    - lsr_write_rare
    - lsr_write_event_type
    - gf_svg_flatten_attributes
    - lsr_write_group_content
    - GF_LSR_WRITE_INT
    - lsr_write_any_uri
    - lsr_write_any_attribute
    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:
    - lsr_write_g
    - gf_node_get_tag
    - lsr_write_set
    - lsr_write_switch
    - gf_node_get_class_name
    - lsr_write_animate
    - lsr_write_text
    - lsr_write_mpath
    - lsr_write_ellipse
    - lsr_write_image
    - lsr_write_conditional
    - lsr_write_byte_align_string
    - lsr_write_listener
    - lsr_write_rectClip
    - lsr_write_use
    - lsr_write_linearGradient
    - lsr_write_path
    - lsr_write_animateTransform
    - lsr_write_defs
    - lsr_write_line
    - lsr_write_stop
    - lsr_write_simpleLayout
    - lsr_write_circle
    - GF_LSR_WRITE_INT
    - lsr_write_a
    - lsr_write_extend_class
    - lsr_write_private_element_container
    - lsr_write_foreignObject
    - lsr_write_cursorManager
    - lsr_write_video
    - GF_LOG
    - lsr_write_animateMotion
    - lsr_write_audio
    - lsr_write_selector
    - lsr_write_radialGradient
    - lsr_write_tspan
    - lsr_write_data
    - lsr_write_script
    - lsr_write_polygon
    - lsr_write_rect
    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:
    - lsr_write_g
    - gf_node_get_tag
    - lsr_write_set
    - lsr_write_switch
    - gf_node_get_class_name
    - lsr_write_animate
    - lsr_write_text
    - lsr_write_ellipse
    - lsr_write_mpath
    - lsr_write_image
    - lsr_write_conditional
    - lsr_write_listener
    - lsr_write_rectClip
    - lsr_write_use
    - lsr_write_linearGradient
    - lsr_write_path
    - lsr_write_animateTransform
    - lsr_write_svg
    - lsr_write_defs
    - lsr_write_line
    - lsr_write_stop
    - lsr_write_simpleLayout
    - lsr_write_circle
    - lsr_write_a
    - GF_LSR_WRITE_INT
    - lsr_write_foreignObject
    - lsr_write_cursorManager
    - lsr_write_video
    - GF_LOG
    - lsr_write_animateMotion
    - lsr_write_audio
    - lsr_write_selector
    - lsr_write_radialGradient
    - lsr_write_tspan
    - lsr_write_data
    - lsr_write_script
    - lsr_write_polygon
    - lsr_write_rect
    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:
    - lsr_write_private_attributes
    - gf_node_get_tag
    - lsr_write_byte_align_string
    - lsr_write_scene_content_model
    - GF_LOG
    - gf_node_get_class_name
    - lsr_write_vluimsbf5
    - 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:
    - gf_list_count
    - gf_assert
    - lsr_write_paint
    - lsr_get_font_index
    - lsr_write_value_with_units
    - lsr_write_coordinate
    - lsr_write_path_type
    - lsr_write_point_sequence
    - lsr_write_byte_align_string
    - lsr_write_fixed_16_8
    - gf_list_get
    - gf_node_get_id
    - lsr_write_fixed_clamp
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - lsr_write_smil_time
    - GF_LOG
    - lsr_write_float_list
    - lsr_write_matrix
    - lsr_write_any_uri
    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:
    - lsr_write_update_value
    - GF_LOG
    - gf_svg_get_attribute_name
    - gf_node_get_class_name
    - lsr_write_codec_IDREF_Node
    - lsr_write_update_content_model
    - gf_list_get
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - gf_lsr_anim_type_from_attribute
    - gf_node_list_get_count
    - lsr_write_any_attribute
    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_list_count
    - dom_to_lsr_key
    - lsr_write_add_replace_insert
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - INT2FIX
    - gf_bs_del
    - lsr_get_IDREF_nb_bits
    - gf_dom_get_key_name
    - gf_lsr_anim_type_from_attribute
    - lsr_write_coordinate
    - lsr_write_byte_align_string
    - gf_list_get
    - lsr_write_svg
    - ABS
    - gf_bs_write_data
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - gf_free
    - gf_bs_align
    - lsr_write_codec_IDREF_Node
    - lsr_write_event_type
    - lsr_write_any_attribute
    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:
    - gf_realloc
    - FIX2INT
    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_count
    - strcmp
    - gf_list_get
    - gf_strdup
    - 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_list_count
    - gf_node_get_tag
    - lsr_check_col_index
    - lsr_check_font_and_color
    - strcmp
    - gf_list_get
    - lsr_check_font_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_list_count
    - gf_free
    - gf_list_last
    - lsr_check_col_index
    - lsr_write_byte_align_string
    - lsr_check_font_and_color
    - lsr_write_svg
    - gf_sg_get_root_node
    - gf_list_rem_last
    - lsr_write_extension
    - gf_get_bit_size
    - lsr_write_command_list
    - gf_list_get
    - lsr_write_vluimsbf5
    - GF_LSR_WRITE_INT
    - lsr_write_any_attribute
    - lsr_check_font_index
    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: 41
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 41
    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: 48
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 48
    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: 66
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 66
    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:69,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 72
    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:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    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:84,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:85,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 2
    argNames:
    - mpd
    - child
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 87
    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:93,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:97,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - child
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 102
    functionName: gf_mpd_parse_text_content
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_string
    - gf_list_get
    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:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    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:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    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:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    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:126,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/mpd.c:130,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:131,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:134,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - attr
    - sep
    - res
    argTypes:
    - char*
    - char
    - GF_MPD_Fractional*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 137
    functionName: gf_mpd_parse_frac
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    - GF_SAFEALLOC
    - sscanf
    - snprintf
    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:142,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 148
    functionName: gf_mpd_parse_fraction
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - sscanf
    - atoi
    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:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 153
    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:165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:177,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:183,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: strchr
      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: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:197,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:205,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:207,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:213,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:215,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:221,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:222,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:226,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:227,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:230,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 76
    argCount: 1
    argNames:
    - duration
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 235
    functionName: gf_mpd_parse_duration
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - strchr
    - sscanf
    - atoi
    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:239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - duration
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 246
    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:251,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:253,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 255
    functionName: gf_mpd_parse_byte_range
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - sscanf
    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:263,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:265,1
    - Dst: gf_list_enum
      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_string
      Src: /src/gpac/src/media_tools/mpd.c:270,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:271,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:271,1
    - Dst: gf_mpd_parse_text_content
      Src: /src/gpac/src/media_tools/mpd.c:273,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - container
    - node
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 275
    functionName: gf_mpd_parse_base_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_string
    - gf_list_enum
    - gf_mpd_parse_text_content
    - GF_SAFEALLOC
    - gf_mpd_parse_byte_range
    - strcmp
    - gf_list_add
    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:284,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:288,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:289,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:290,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:291,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:292,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:294,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:299,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:302,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:303,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:305,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:307,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:308,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:310,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:313,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:315,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:318,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:322,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 277
    functionDepth: 1
    functionLinenumber: 277
    functionLinenumberEnd: 323
    functionName: gf_mpd_parse_program_info
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - MPD_STORE_EXTENSION_NODE
    - gf_mpd_parse_string
    - gf_list_enum
    - GF_SAFEALLOC
    - MPD_STORE_EXTENSION_ATTR
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_list_add
    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:331,1
    - Dst: gf_list_enum
      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_string
      Src: /src/gpac/src/media_tools/mpd.c:336,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:337,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:337,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 340
    functionName: gf_mpd_parse_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_string
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_mpd_parse_byte_range
    - strcmp
    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:351,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:352,1
    - Dst: gf_mpd_parse_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_long_int
      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_byte_range
      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_bool
      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_double
      Src: /src/gpac/src/media_tools/mpd.c:356,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:357,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:357,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:361,1
    - Dst: gf_mpd_valid_child
      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
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:364,1
    - Dst: gf_mpd_parse_url
      Src: /src/gpac/src/media_tools/mpd.c:364,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: 366
      start: 342
    functionDepth: 3
    functionLinenumber: 342
    functionLinenumberEnd: 366
    functionName: gf_mpd_parse_segment_base_generic
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_duration_u32
    - gf_mpd_valid_child
    - gf_mpd_parse_int
    - gf_mpd_parse_url
    - gf_list_enum
    - gf_mpd_parse_double
    - gf_mpd_parse_byte_range
    - gf_mpd_parse_bool
    - strcmp
    - gf_mpd_parse_long_int
    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:375,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:377,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:380,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:381,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:382,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:384,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:387,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:390,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:391,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:392,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:393,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:394,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:395,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:396,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:400,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:401,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 368
    functionDepth: 1
    functionLinenumber: 368
    functionLinenumberEnd: 410
    functionName: gf_mpd_parse_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_valid_child
    - gf_mpd_parse_int
    - gf_list_enum
    - GF_SAFEALLOC
    - strcmp
    - gf_list_new
    - gf_mpd_parse_long_int
    - gf_list_add
    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:415,1
    - Dst: gf_mpd_parse_segment_base_generic
      Src: /src/gpac/src/media_tools/mpd.c:417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 412
    functionDepth: 4
    functionLinenumber: 412
    functionLinenumberEnd: 419
    functionName: gf_mpd_parse_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_mpd_parse_segment_base_generic
    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:427,1
    - Dst: gf_list_enum
      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: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:433,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:433,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:437,1
    - Dst: gf_mpd_valid_child
      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_segment_timeline
      Src: /src/gpac/src/media_tools/mpd.c:439,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:440,1
    - Dst: gf_mpd_parse_url
      Src: /src/gpac/src/media_tools/mpd.c:440,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: 442
      start: 421
    functionDepth: 4
    functionLinenumber: 421
    functionLinenumberEnd: 442
    functionName: gf_mpd_parse_multiple_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_segment_base_generic
    - gf_mpd_valid_child
    - gf_mpd_parse_int
    - gf_mpd_parse_url
    - gf_list_enum
    - gf_mpd_parse_segment_timeline
    - strcmp
    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:448,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:449,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:453,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:458,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: 460
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 460
    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:469,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:471,1
    - Dst: gf_list_enum
      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_string
      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:478,1
    - Dst: gf_mpd_parse_byte_range
      Src: /src/gpac/src/media_tools/mpd.c:478,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:480,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:480,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:481,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/media_tools/mpd.c:482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:484,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:488,1
    - Dst: gf_mpd_parse_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_long_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_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_long_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
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:495,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:495,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 40
    argCount: 2
    argNames:
    - container
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 463
    functionDepth: 2
    functionLinenumber: 463
    functionLinenumberEnd: 497
    functionName: gf_mpd_parse_segment_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mpd_parse_int
    - gf_mpd_parse_string
    - gf_list_enum
    - gf_bin128_parse
    - GF_SAFEALLOC
    - gf_mpd_parse_byte_range
    - strcmp
    - gf_mpd_parse_long_int
    - gf_list_add
    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:506,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:508,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:511,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:512,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:512,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:513,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:513,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: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:517,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:518,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:518,1
    - Dst: gf_mpd_parse_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:520,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:523,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:524,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:526,1
    - Dst: gf_mpd_parse_segment_url
      Src: /src/gpac/src/media_tools/mpd.c:526,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:528,1
    - Dst: gf_mpd_parse_segment_url
      Src: /src/gpac/src/media_tools/mpd.c:528,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:531,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:532,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 38
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 499
    functionDepth: 5
    functionLinenumber: 499
    functionLinenumberEnd: 536
    functionName: gf_mpd_parse_segment_list
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - atoi
    - gf_mpd_parse_segment_url
    - gf_mpd_valid_child
    - gf_mpd_parse_int
    - gf_list_del
    - gf_mpd_parse_string
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_mpd_parse_multiple_segment_base
    - strcmp
    - gf_list_new
    - strstr
    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:544,1
    - Dst: gf_list_enum
      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: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:551,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:551,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:552,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:553,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:554,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:556,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:556,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:557,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:558,1
    - Dst: gf_mpd_parse_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:560,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 538
    functionDepth: 5
    functionLinenumber: 538
    functionLinenumberEnd: 562
    functionName: gf_mpd_parse_segment_template
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mpd_parse_int
    - stricmp
    - gf_mpd_parse_string
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_mpd_parse_multiple_segment_base
    - strcmp
    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:569,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:572,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:573,1
    - Dst: atoi
      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: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:575,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:575,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:577,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - comps
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 564
    functionDepth: 1
    functionLinenumber: 564
    functionLinenumberEnd: 579
    functionName: gf_mpd_parse_content_component
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    - gf_list_enum
    - GF_SAFEALLOC
    - strcmp
    - gf_strdup
    - gf_list_add
    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:585,1
    - Dst: gf_list_enum
      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: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:590,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:590,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:592,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - comps
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 594
    functionName: gf_mpd_parse_inband_event
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - GF_SAFEALLOC
    - strcmp
    - gf_strdup
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_inband_event(GF_List *comps, GF_XMLNode *root)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:602,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:604,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:606,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:611,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:612,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:612,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:613,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:613,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:617,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:620,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:622,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:624,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:628,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:629,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:629,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:630,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:630,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:631,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:631,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:635,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:637,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:640,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:642,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:645,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:648,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:649,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/media_tools/mpd.c:651,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:662,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 61
    argCount: 2
    argNames:
    - comps
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 596
    functionDepth: 1
    functionLinenumber: 596
    functionLinenumberEnd: 664
    functionName: gf_mpd_parse_event_streams
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_mpd_parse_int
    - gf_list_enum
    - gf_base64_decode
    - strlen
    - GF_SAFEALLOC
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - gf_mpd_parse_long_int
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_parse_event_streams(GF_List *comps, GF_XMLNode *root)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:674,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:677,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:678,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:678,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:679,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:679,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:680,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:680,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:682,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:686,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:688,1
    - Dst: gf_mpd_descriptor_free
      Src: /src/gpac/src/media_tools/mpd.c:689,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:695,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:698,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: 702
      start: 666
    functionDepth: 1
    functionLinenumber: 666
    functionLinenumberEnd: 702
    functionName: gf_mpd_parse_descriptor_ex
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - MPD_STORE_EXTENSION_NODE
    - gf_mpd_parse_string
    - gf_list_enum
    - gf_assert
    - GF_SAFEALLOC
    - gf_mpd_descriptor_free
    - MPD_STORE_EXTENSION_ATTR
    - strcmp
    - gf_list_add
    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:706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - container
    - root
    argTypes:
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 707
      start: 704
    functionDepth: 2
    functionLinenumber: 704
    functionLinenumberEnd: 707
    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:716,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:719,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:720,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:720,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:721,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:721,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:722,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:723,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:724,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:726,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:726,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:727,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:727,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:728,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:728,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:732,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:734,1
    - Dst: gf_mpd_parse_descriptor_ex
      Src: /src/gpac/src/media_tools/mpd.c:735,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 30
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 709
    functionDepth: 2
    functionLinenumber: 709
    functionLinenumberEnd: 738
    functionName: gf_mpd_parse_produce_ref_time
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_int
    - gf_list_enum
    - gf_mpd_parse_string
    - GF_SAFEALLOC
    - gf_mpd_parse_bool
    - strcmp
    - gf_mpd_parse_long_int
    - gf_mpd_parse_descriptor_ex
    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:742,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:742,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:743,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:743,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:744,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:744,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:745,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:746,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:747,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:749,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:750,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:751,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:753,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:753,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:754,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:754,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:755,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:755,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:756,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:756,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:757,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:757,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:758,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:759,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:760,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:762,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:762,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:763,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:763,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:764,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:765,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:766,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:768,1
    - Dst: gf_mpd_parse_int
      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_string
      Src: /src/gpac/src/media_tools/mpd.c:769,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:773,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: 776
      start: 740
    functionDepth: 2
    functionLinenumber: 740
    functionLinenumberEnd: 776
    functionName: gf_mpd_parse_common_representation_attr
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_parse_int
    - gf_mpd_parse_frac
    - gf_mpd_parse_string
    - gf_mpd_parse_double
    - gf_mpd_parse_bool
    - MPD_STORE_EXTENSION_ATTR
    - strcmp
    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:780,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:781,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:783,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:784,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:786,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:787,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:789,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:790,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:792,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:793,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:795,1
    - Dst: gf_mpd_parse_produce_ref_time
      Src: /src/gpac/src/media_tools/mpd.c:796,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:798,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:799,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:803,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: 806
      start: 778
    functionDepth: 3
    functionLinenumber: 778
    functionLinenumberEnd: 806
    functionName: gf_mpd_parse_common_representation_child
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - MPD_STORE_EXTENSION_NODE
    - gf_mpd_parse_produce_ref_time
    - strcmp
    - gf_list_new
    - gf_list_add
    - gf_mpd_parse_descriptor
    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:810,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:811,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:812,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:813,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - com
    argTypes:
    - GF_MPD_CommonAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 816
      start: 808
    functionDepth: 1
    functionLinenumber: 808
    functionLinenumberEnd: 816
    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:821,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:823,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:824,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:825,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 818
    functionDepth: 2
    functionLinenumber: 818
    functionLinenumberEnd: 828
    functionName: gf_mpd_representation_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_mpd_init_common_attributes
    - gf_list_new
    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:835,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:839,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:840,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:840,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:841,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:841,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:842,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:842,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:843,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:843,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:844,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:844,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:845,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:845,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:846,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:846,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:847,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:847,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:848,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:848,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:849,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:849,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:850,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/media_tools/mpd.c:850,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:851,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/media_tools/mpd.c:851,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:852,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:852,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:853,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:853,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:854,1
    - Dst: gf_mpd_parse_fraction
      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_long_int
      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_long_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_long_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_long_int
      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_int
      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_long_int
      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: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:862,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:862,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:863,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:863,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:864,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:864,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:865,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:865,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:866,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:866,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:867,1
    - Dst: gf_mpd_parse_double
      Src: /src/gpac/src/media_tools/mpd.c:867,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:868,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:868,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:869,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:869,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:870,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:870,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:871,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:871,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 72
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 874
    functionName: gf_mpd_parse_dasher_context
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_fraction
    - gf_mpd_parse_int
    - gf_parse_lfrac
    - gf_mpd_parse_string
    - gf_list_enum
    - gf_mpd_parse_double
    - GF_SAFEALLOC
    - gf_mpd_parse_bool
    - strcmp
    - gf_mpd_parse_long_int
    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:883,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:885,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:887,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:888,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:890,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:893,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:896,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:897,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:897,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:898,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:898,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:899,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:899,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:900,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:900,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:901,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:901,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:902,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:902,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:903,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:903,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:904,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:904,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:905,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:905,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 36
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 876
    functionDepth: 1
    functionLinenumber: 876
    functionLinenumberEnd: 910
    functionName: gf_mpd_parse_segments_context
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_valid_child
    - gf_mpd_parse_int
    - gf_list_enum
    - gf_mpd_parse_string
    - GF_SAFEALLOC
    - strcmp
    - gf_list_new
    - gf_mpd_parse_long_int
    - gf_list_add
    linkageType: ''
    returnType: GF_List
    signature: GF_List *gf_mpd_parse_segments_context(GF_MPD *mpd, GF_XMLNode *root)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_representation_new
      Src: /src/gpac/src/media_tools/mpd.c:920,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:921,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:925,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:926,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:926,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:927,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:927,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:928,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:928,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:929,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:929,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:930,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:930,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:931,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:931,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:932,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:932,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:933,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:933,1
    - Dst: gf_mpd_parse_common_representation_attr
      Src: /src/gpac/src/media_tools/mpd.c:934,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:939,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:940,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:942,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:943,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:946,1
    - Dst: gf_mpd_parse_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:948,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:950,1
    - Dst: gf_mpd_parse_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:951,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:953,1
    - Dst: gf_mpd_parse_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:955,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:963,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:964,1
    - Dst: gf_mpd_parse_dasher_context
      Src: /src/gpac/src/media_tools/mpd.c:965,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:967,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:968,1
    - Dst: gf_mpd_parse_segments_context
      Src: /src/gpac/src/media_tools/mpd.c:969,1
    - Dst: gf_mpd_parse_common_representation_child
      Src: /src/gpac/src/media_tools/mpd.c:971,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 61
    argCount: 3
    argNames:
    - mpd
    - container
    - root
    argTypes:
    - GF_MPD*
    - GF_List*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 912
    functionDepth: 6
    functionLinenumber: 912
    functionLinenumberEnd: 976
    functionName: gf_mpd_parse_representation
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_common_representation_attr
    - gf_mpd_representation_new
    - gf_mpd_parse_segment_template
    - gf_mpd_valid_child
    - gf_mpd_parse_int
    - gf_mpd_parse_base_url
    - gf_mpd_parse_common_representation_child
    - gf_mpd_parse_string
    - gf_list_enum
    - gf_assert
    - gf_mpd_parse_segments_context
    - gf_mpd_parse_segment_list
    - gf_mpd_parse_segment_base
    - strcmp
    - gf_list_add
    - gf_mpd_parse_dasher_context
    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:980,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:982,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:983,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:984,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:985,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:986,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:987,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:988,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:989,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:990,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:991,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 996
      start: 978
    functionDepth: 2
    functionLinenumber: 978
    functionLinenumberEnd: 996
    functionName: gf_mpd_adaptation_set_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_mpd_init_common_attributes
    - gf_list_new
    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:1006,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1009,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1013,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1014,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1014,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1015,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1015,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1016,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1016,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1017,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1017,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1018,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1018,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1019,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1019,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1020,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1021,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:1022,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1024,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1024,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1025,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1025,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1026,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1026,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1027,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1027,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1028,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1028,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1029,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1029,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1030,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:1030,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1031,1
    - Dst: gf_mpd_parse_frac
      Src: /src/gpac/src/media_tools/mpd.c:1031,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1032,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:1032,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1033,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:1033,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1034,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:1034,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1035,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1036,1
    - Dst: gf_mpd_parse_int
      Src: /src/gpac/src/media_tools/mpd.c:1037,1
    - Dst: gf_mpd_parse_common_representation_attr
      Src: /src/gpac/src/media_tools/mpd.c:1039,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1044,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:1045,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1046,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1047,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1050,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1051,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1054,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1055,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1058,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1059,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1062,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:1063,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1066,1
    - Dst: gf_mpd_parse_content_component
      Src: /src/gpac/src/media_tools/mpd.c:1067,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1069,1
    - Dst: gf_mpd_parse_inband_event
      Src: /src/gpac/src/media_tools/mpd.c:1070,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1072,1
    - Dst: gf_mpd_parse_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:1073,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1075,1
    - Dst: gf_mpd_parse_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:1076,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1078,1
    - Dst: gf_mpd_parse_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:1079,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1081,1
    - Dst: gf_mpd_parse_representation
      Src: /src/gpac/src/media_tools/mpd.c:1082,1
    - Dst: gf_mpd_parse_common_representation_child
      Src: /src/gpac/src/media_tools/mpd.c:1085,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: 1090
      start: 998
    functionDepth: 7
    functionLinenumber: 998
    functionLinenumberEnd: 1090
    functionName: gf_mpd_parse_adaptation_set
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_base_url
    - gf_mpd_parse_string
    - gf_list_add
    - gf_mpd_parse_inband_event
    - strstr
    - gf_mpd_parse_representation
    - gf_mpd_parse_frac
    - gf_mpd_parse_common_representation_attr
    - gf_mpd_parse_int
    - gf_list_enum
    - gf_mpd_parse_bool
    - gf_mpd_parse_segment_base
    - gf_mpd_adaptation_set_new
    - strcmp
    - gf_mpd_parse_segment_list
    - gf_mpd_parse_descriptor
    - gf_free
    - gf_mpd_parse_segment_template
    - gf_mpd_valid_child
    - gf_mpd_parse_common_representation_child
    - gf_mpd_parse_content_component
    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:1094,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1096,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1097,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1098,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1099,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1092
    functionDepth: 1
    functionLinenumber: 1092
    functionLinenumberEnd: 1101
    functionName: gf_mpd_period_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    linkageType: ''
    returnType: GF_MPD_Period
    signature: GF_MPD_Period *gf_mpd_period_new()
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1111,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1116,1
    - Dst: gf_mpd_period_new
      Src: /src/gpac/src/media_tools/mpd.c:1121,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1125,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1129,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1130,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1130,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1131,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1131,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1132,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1132,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1135,1
    - Dst: gf_mpd_parse_duration
      Src: /src/gpac/src/media_tools/mpd.c:1137,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1140,1
    - Dst: gf_mpd_parse_duration
      Src: /src/gpac/src/media_tools/mpd.c:1140,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1141,1
    - Dst: gf_mpd_parse_bool
      Src: /src/gpac/src/media_tools/mpd.c:1141,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:1143,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1149,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:1150,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1152,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:1153,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1155,1
    - Dst: gf_mpd_parse_event_streams
      Src: /src/gpac/src/media_tools/mpd.c:1156,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1159,1
    - Dst: gf_mpd_parse_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:1160,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1162,1
    - Dst: gf_mpd_parse_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:1163,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1165,1
    - Dst: gf_mpd_parse_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:1166,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1168,1
    - Dst: gf_mpd_parse_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:1169,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1172,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1175,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 73
    argCount: 2
    argNames:
    - mpd
    - root
    argTypes:
    - GF_MPD*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1103
    functionDepth: 8
    functionLinenumber: 1103
    functionLinenumberEnd: 1180
    functionName: gf_mpd_parse_period
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_base_url
    - gf_mpd_parse_string
    - gf_mpd_parse_event_streams
    - gf_mpd_parse_adaptation_set
    - gf_list_add
    - strstr
    - gf_list_get
    - gf_mpd_period_new
    - gf_list_enum
    - gf_mpd_parse_bool
    - MPD_STORE_EXTENSION_ATTR
    - strcmp
    - gf_mpd_parse_segment_base
    - gf_mpd_parse_segment_list
    - gf_mpd_parse_duration
    - MPD_STORE_EXTENSION_NODE
    - gf_mpd_parse_segment_template
    - GF_LOG
    - gf_mpd_valid_child
    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:1186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1182
    functionDepth: 1
    functionLinenumber: 1182
    functionLinenumberEnd: 1188
    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:1193,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpd.c:1194,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/mpd.c:1195,1
    - Dst: __destructor
      Src: /src/gpac/src/media_tools/mpd.c:1196,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:1198,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - list
    - reset_only
    argTypes:
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1199
      start: 1190
    functionDepth: 1
    functionLinenumber: 1190
    functionLinenumberEnd: 1199
    functionName: gf_mpd_del_list
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_del
    - __destructor
    - gf_list_rem_last
    - gf_list_last
    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:1204,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1205,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1206,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1207,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1201
    functionDepth: 0
    functionLinenumber: 1201
    functionLinenumberEnd: 1208
    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:1213,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1214,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1216
      start: 1210
    functionDepth: 0
    functionLinenumber: 1210
    functionLinenumberEnd: 1216
    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:1219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1220
      start: 1217
    functionDepth: 0
    functionLinenumber: 1217
    functionLinenumberEnd: 1220
    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:1225,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1226,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1227,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1228,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1229,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1230,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1231,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1232
      start: 1222
    functionDepth: 1
    functionLinenumber: 1222
    functionLinenumberEnd: 1232
    functionName: gf_mpd_prog_info_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - MPD_FREE_EXTENSION_NODE
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_prog_info_free(void *_item)
  - BBCount: 7
    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: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1239,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1240,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1241,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1242,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - _ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1243
      start: 1233
    functionDepth: 0
    functionLinenumber: 1233
    functionLinenumberEnd: 1243
    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:1247,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1248,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1249,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1250,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1244
    functionDepth: 1
    functionLinenumber: 1244
    functionLinenumberEnd: 1251
    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:1255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1253
    functionDepth: 0
    functionLinenumber: 1253
    functionLinenumberEnd: 1256
    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:1260,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1262
      start: 1257
    functionDepth: 2
    functionLinenumber: 1257
    functionLinenumberEnd: 1262
    functionName: gf_mpd_segment_timeline_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_del_list
    - gf_free
    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:1267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1265
    functionDepth: 2
    functionLinenumber: 1265
    functionLinenumberEnd: 1268
    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:1274,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1275,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1276,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1277,1
    - Dst: gf_mpd_segment_timeline_free
      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_free
      Src: /src/gpac/src/media_tools/mpd.c:1280,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1281,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1282,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 17
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1271
    functionDepth: 3
    functionLinenumber: 1271
    functionLinenumberEnd: 1283
    functionName: gf_mpd_segment_list_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_segment_timeline_free
    - gf_mpd_del_list
    - gf_mpd_url_free
    - gf_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:1288,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1289,1
    - Dst: gf_mpd_url_free
      Src: /src/gpac/src/media_tools/mpd.c:1290,1
    - Dst: gf_mpd_segment_timeline_free
      Src: /src/gpac/src/media_tools/mpd.c:1291,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1292,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1293,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1294,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1295,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1296,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1297
      start: 1285
    functionDepth: 3
    functionLinenumber: 1285
    functionLinenumberEnd: 1297
    functionName: gf_mpd_segment_template_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_segment_timeline_free
    - gf_mpd_url_free
    - gf_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:1302,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1304,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1305,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1306,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - id
    - schemeIdUri
    - value
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1308
      start: 1300
    functionDepth: 1
    functionLinenumber: 1300
    functionLinenumberEnd: 1308
    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:1313,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1314,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1315,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1316,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1318,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1319
      start: 1310
    functionDepth: 1
    functionLinenumber: 1310
    functionLinenumberEnd: 1319
    functionName: gf_mpd_descriptor_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - MPD_FREE_EXTENSION_NODE
    - gf_free
    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:1324,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1325,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1327
      start: 1321
    functionDepth: 0
    functionLinenumber: 1321
    functionLinenumberEnd: 1327
    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: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
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1334
      start: 1329
    functionDepth: 0
    functionLinenumber: 1329
    functionLinenumberEnd: 1334
    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:1339,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1340,1
    - Dst: gf_mpd_descriptor_free
      Src: /src/gpac/src/media_tools/mpd.c:1341,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1342,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 1336
    functionDepth: 2
    functionLinenumber: 1336
    functionLinenumberEnd: 1343
    functionName: gf_mpd_producer_reftime_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_descriptor_free
    - gf_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:1347,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_free
      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
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1353,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1354,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1355,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1356,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1357,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1358,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - GF_MPD_CommonAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1345
    functionDepth: 2
    functionLinenumber: 1345
    functionLinenumberEnd: 1359
    functionName: gf_mpd_common_attributes_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_del_list
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_common_attributes_free(GF_MPD_CommonAttributes *ptr)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_common_attributes_free
      Src: /src/gpac/src/media_tools/mpd.c:1364,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1365,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1366,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1367,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:1371,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:1373,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/media_tools/mpd.c:1374,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1375,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1376,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1379,1
    - Dst: gf_blob_unregister
      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:1385,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1387,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1388,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/mpd.c:1389,1
    - Dst: gf_mpd_segment_list_free
      Src: /src/gpac/src/media_tools/mpd.c:1390,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/mpd.c:1391,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1392,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1394,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/mpd.c:1395,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1396,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1397,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1398,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:1400,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1404,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1406,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1407,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1408,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1409,1
    - Dst: gf_free
      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_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1414,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/mpd.c:1415,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1416,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1417,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1418,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1419,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1420,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1421,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:1423,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1425,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1426,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1427,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:1428,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1429,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1430,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 83
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1361
    functionDepth: 4
    functionLinenumber: 1361
    functionLinenumberEnd: 1431
    functionName: gf_mpd_representation_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_del_list
    - gf_list_count
    - gf_free
    - gf_fclose
    - MPD_FREE_EXTENSION_NODE
    - gf_list_del
    - gf_mpd_segment_template_free
    - strnicmp
    - gf_blob_unregister
    - gf_mpd_segment_list_free
    - gf_mpd_common_attributes_free
    - gf_list_pop_back
    - sscanf
    - gf_mpd_segment_base_free
    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:1436,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1437,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1438,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1439,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1440,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1441,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1442,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1443,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1444,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1445,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1446,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/mpd.c:1447,1
    - Dst: gf_mpd_segment_list_free
      Src: /src/gpac/src/media_tools/mpd.c:1448,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/mpd.c:1449,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1450,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1451,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1452,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1453,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1433
    functionDepth: 4
    functionLinenumber: 1433
    functionLinenumberEnd: 1454
    functionName: gf_mpd_adaptation_set_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_del_list
    - gf_free
    - MPD_FREE_EXTENSION_NODE
    - gf_mpd_segment_template_free
    - gf_mpd_segment_list_free
    - gf_mpd_common_attributes_free
    - gf_mpd_segment_base_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_adaptation_set_free(void *_item)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1459,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1460,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1461,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1456
    functionDepth: 0
    functionLinenumber: 1456
    functionLinenumberEnd: 1462
    functionName: gf_mpd_event_stream_entry_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_event_stream_entry_free(void *_item)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1467,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1468,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1469,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1470
      start: 1464
    functionDepth: 2
    functionLinenumber: 1464
    functionLinenumberEnd: 1470
    functionName: gf_mpd_event_stream_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_del_list
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_mpd_event_stream_free(void *_item)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1475,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1476,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1477,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1478,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/mpd.c:1479,1
    - Dst: gf_mpd_segment_list_free
      Src: /src/gpac/src/media_tools/mpd.c:1480,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/mpd.c:1481,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1483,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1484,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1485,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1486,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1487,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1488,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - _item
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1489
      start: 1472
    functionDepth: 4
    functionLinenumber: 1472
    functionLinenumberEnd: 1489
    functionName: gf_mpd_period_free
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_del_list
    - gf_free
    - MPD_FREE_EXTENSION_NODE
    - gf_mpd_segment_template_free
    - gf_mpd_segment_list_free
    - gf_mpd_segment_base_free
    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:1496,1
    - Dst: gf_mpd_string_free
      Src: /src/gpac/src/media_tools/mpd.c:1497,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1501,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1502,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1503,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1504,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1505,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1506,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1507,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1508,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1509,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1510,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/media_tools/mpd.c:1511,1
    - Dst: MPD_FREE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1512,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1513,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1491
    functionDepth: 2
    functionLinenumber: 1491
    functionLinenumberEnd: 1514
    functionName: gf_mpd_del
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 2
    functionsReached:
    - gf_mpd_del_list
    - gf_free
    - gf_sys_is_cov_mode
    - MPD_FREE_EXTENSION_NODE
    - gf_mpd_string_free
    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:1529,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1530,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1531,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1531,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1535,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:1542,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1543,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1543,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1552,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1555,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1555,1
    - Dst: gf_mpd_parse_period
      Src: /src/gpac/src/media_tools/mpd.c:1556,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1560,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1561,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1562,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1563,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1564,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1565,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1566,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1567,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1568,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1569,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1570,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/mpd.c:1571,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1572,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/mpd.c:1573,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1574,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/mpd.c:1575,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1576,1
    - Dst: gf_mpd_parse_duration
      Src: /src/gpac/src/media_tools/mpd.c:1577,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1578,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1579,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1580,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1581,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1582,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1583,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1584,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1585,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1586,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1587,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1588,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1589,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1590,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:1591,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1592,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:1593,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1594,1
    - Dst: gf_mpd_parse_long_int
      Src: /src/gpac/src/media_tools/mpd.c:1595,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1596,1
    - Dst: gf_mpd_parse_duration_u32
      Src: /src/gpac/src/media_tools/mpd.c:1597,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1598,1
    - Dst: gf_mpd_parse_string
      Src: /src/gpac/src/media_tools/mpd.c:1599,1
    - Dst: MPD_STORE_EXTENSION_ATTR
      Src: /src/gpac/src/media_tools/mpd.c:1601,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:1609,1
    - Dst: gf_mpd_valid_child
      Src: /src/gpac/src/media_tools/mpd.c:1610,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1613,1
    - Dst: gf_mpd_parse_program_info
      Src: /src/gpac/src/media_tools/mpd.c:1614,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1616,1
    - Dst: gf_mpd_parse_text_content
      Src: /src/gpac/src/media_tools/mpd.c:1617,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1618,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1619,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1619,1
    - Dst: gf_mpd_parse_period
      Src: /src/gpac/src/media_tools/mpd.c:1620,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1623,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1624,1
    - Dst: gf_mpd_parse_base_url
      Src: /src/gpac/src/media_tools/mpd.c:1625,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1627,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1628,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1629,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1630,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1632,1
    - Dst: gf_mpd_parse_descriptor
      Src: /src/gpac/src/media_tools/mpd.c:1633,1
    - Dst: MPD_STORE_EXTENSION_NODE
      Src: /src/gpac/src/media_tools/mpd.c:1635,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: 1641
      start: 1517
    functionDepth: 9
    functionLinenumber: 1517
    functionLinenumberEnd: 1641
    functionName: gf_mpd_complete_from_dom
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_base_url
    - gf_mpd_parse_string
    - gf_mpd_parse_period
    - gf_list_add
    - gf_mpd_parse_text_content
    - gf_mpd_parse_program_info
    - gf_list_enum
    - MPD_STORE_EXTENSION_ATTR
    - strcmp
    - gf_mpd_parse_long_int
    - gf_mpd_parse_duration
    - gf_mpd_parse_descriptor
    - gf_mpd_parse_date
    - MPD_STORE_EXTENSION_NODE
    - gf_free
    - gf_mpd_parse_duration_u32
    - GF_LOG
    - gf_mpd_valid_child
    - strncmp
    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:1645,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1646,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1647,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1648,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1649,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1650,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1651,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1652,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1654
      start: 1643
    functionDepth: 1
    functionLinenumber: 1643
    functionLinenumberEnd: 1654
    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:1661,1
    - Dst: gf_mpd_complete_from_dom
      Src: /src/gpac/src/media_tools/mpd.c:1668,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: 1669
      start: 1656
    functionDepth: 10
    functionLinenumber: 1656
    functionLinenumberEnd: 1669
    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:1675,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1677,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1678,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1679,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1680,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:1691,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1694,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:1713,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:1715,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1718,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 55
    argCount: 3
    argNames:
    - pl
    - pe
    - bandwidth
    argTypes:
    - MasterPlaylist*
    - PlaylistElement*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1728
      start: 1672
    functionDepth: 1
    functionLinenumber: 1672
    functionLinenumberEnd: 1728
    functionName: group_to_codecs
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - strcmp
    - gf_list_get
    - gf_strdup
    - strstr
    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:1743,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1748,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1750,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1755,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1767,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1770,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1771,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1772,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:1772,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1773,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/mpd.c:1774,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1775,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/mpd.c:1775,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1777,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1778,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1779,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1781,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1783,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1784,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1785,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1786,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1787,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1802,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1808,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:1811,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1812,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1813,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1814,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1815,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1816,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1817,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1818,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:1819,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:1823,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1827,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1828,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1843,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1844,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1850,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1851,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:1854,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:1857,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:1858,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1876,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1879,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1881,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1883,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1885,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1887,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1889,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1891,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1894,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1895,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:1906,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1911,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:1913,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1915,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1929,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:1936,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:1939,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:1944,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/mpd.c:1946,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1961,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1967,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:1974,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:1979,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1981,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:1982,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1987,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:1987,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1988,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:1994,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:2009,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2016,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2017,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2018,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpd.c:2020,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2024,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2024,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:2025,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:2027,1
    - Dst: gf_dm_wget
      Src: /src/gpac/src/media_tools/mpd.c:2031,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2041,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/mpd.c:2041,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2043,1
    - Dst: gf_media_import
      Src: /src/gpac/src/media_tools/mpd.c:2046,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2050,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2051,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpd.c:2059,1
    - Dst: gf_fsize
      Src: /src/gpac/src/media_tools/mpd.c:2061,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:2062,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/mpd.c:2074,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:2079,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:2080,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2097,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2098,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2101,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:2103,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2104,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2105,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2108,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2115,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:2117,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2118,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2121,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2122,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/mpd.c:2124,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:2125,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:2125,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2129,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2131,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2134,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2136,1
    - Dst: group_to_codecs
      Src: /src/gpac/src/media_tools/mpd.c:2139,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2163,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2166,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:2167,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2168,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2169,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2170,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:2189,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:2190,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:2192,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/media_tools/mpd.c:2195,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2204,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2206,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2211,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2215,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2220,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2224,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2227,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2228,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2234,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2241,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2247,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2261,1
    - Dst: strpbrk
      Src: /src/gpac/src/media_tools/mpd.c:2272,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2275,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2277,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2278,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2281,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2283,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2284,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2289,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2290,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2291,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2293,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2296,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2298,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2301,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2303,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2305,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2315,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2320,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2324,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2327,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2346,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2367,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2369,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2371,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2375,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:2393,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2399,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2406,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2407,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2414,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2420,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2426,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2428,1
    CyclomaticComplexity: 205
    EdgeCount: 205
    ICount: 575
    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: 2432
      start: 1729
    functionDepth: 2
    functionLinenumber: 1729
    functionLinenumberEnd: 2432
    functionName: gf_m3u8_fill_mpd_struct
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_gpac_version
    - gf_file_basename
    - gf_url_concatenate
    - memset
    - GF_SAFEALLOC
    - gf_list_add
    - strstr
    - gf_url_concatenate_parent
    - strchr
    - gf_malloc
    - gf_fopen
    - gf_mpd_init_common_attributes
    - gf_mpd_init_struct
    - gf_fsize
    - gf_list_get
    - gf_sys_is_test_mode
    - gf_dynstrcat
    - memcpy
    - gf_file_ext_start
    - atoi
    - gf_file_exists
    - strrchr
    - strcmp
    - strlen
    - gf_list_new
    - sprintf
    - gf_free
    - gf_fclose
    - group_to_codecs
    - GF_LOG
    - strpbrk
    - stricmp
    - gf_media_import
    - gf_file_delete
    - gf_strdup
    - memmove
    - strncmp
    - 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:2451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2453,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/mpd.c:2453,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2454,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/mpd.c:2458,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2466,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2467,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:2468,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:2470,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2478,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2479,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2493,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2494,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2496,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2499,1
    - Dst: GF_FileDownload*::new_session
      Src: /src/gpac/src/media_tools/mpd.c:2504,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2506,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2511,1
    - Dst: GF_FileDownload*::get_cache_name
      Src: /src/gpac/src/media_tools/mpd.c:2511,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2516,1
    - Dst: gf_dm_wget
      Src: /src/gpac/src/media_tools/mpd.c:2518,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2520,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2524,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/mpd.c:2527,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2532,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2545,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2567,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2570,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:2575,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2578,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2579,1
    - Dst: gf_m3u8_fill_mpd_struct
      Src: /src/gpac/src/media_tools/mpd.c:2581,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2583,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: 2586
      start: 2434
    functionDepth: 3
    functionLinenumber: 2434
    functionLinenumberEnd: 2586
    functionName: gf_m3u8_to_mpd
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_FileDownload*::new_session
    - GF_LOG
    - gf_m3u8_parse_sub_playlist
    - gf_list_enum
    - gf_assert
    - gf_url_concatenate
    - gf_m3u8_parse_master_playlist
    - gf_file_delete
    - GF_FileDownload*::get_cache_name
    - gf_m3u8_master_playlist_del
    - gf_list_get
    - strcmp
    - gf_m3u8_fill_mpd_struct
    - strlen
    - strstr
    - gf_dm_wget
    - gf_error_to_string
    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: 55
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2609,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:2614,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:2616,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/mpd.c:2619,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2621,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2622,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/mpd.c:2625,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/media_tools/mpd.c:2627,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/media_tools/mpd.c:2628,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/mpd.c:2629,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2630,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/mpd.c:2634,1
    - Dst: GF_FileDownload*::new_session
      Src: /src/gpac/src/media_tools/mpd.c:2637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2639,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/mpd.c:2639,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2640,1
    - Dst: GF_FileDownload*::get_status
      Src: /src/gpac/src/media_tools/mpd.c:2644,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2647,1
    - Dst: GF_FileDownload*::get_cache_name
      Src: /src/gpac/src/media_tools/mpd.c:2654,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2656,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/mpd.c:2659,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/mpd.c:2661,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2662,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/mpd.c:2666,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2668,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2670,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2671,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2675,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2676,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2679,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2680,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:2684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2684,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:2687,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2693,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2694,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:2695,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2695,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2696,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2709,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2711,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2712,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2714,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2716,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2720,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2723,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2723,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2724,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:2725,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2731,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:2748,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2757,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:2762,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:2782,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2787,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2804,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2810,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:2814,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:2836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2849,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2854,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:2862,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:2866,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:2873,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:2874,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:2878,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/mpd.c:2882,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 227
    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: 2885
      start: 2588
    functionDepth: 1
    functionLinenumber: 2588
    functionLinenumberEnd: 2885
    functionName: gf_m3u8_solve_representation_xlink
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sha1_csum
    - gf_url_concatenate
    - gf_assert
    - GF_SAFEALLOC
    - GF_FileDownload*::get_cache_name
    - gf_blob_get
    - gf_blob_release
    - gf_list_add
    - strstr
    - GF_FileDownload*::new_session
    - gf_m3u8_parse_sub_playlist
    - gf_m3u8_master_playlist_del
    - gf_list_get
    - memcpy
    - gf_file_exists
    - memcmp
    - gf_url_is_local
    - strcmp
    - gf_list_new
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_strdup
    - gf_sha1_file
    - GF_FileDownload*::get_status
    - strncmp
    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:2890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2891
      start: 2887
    functionDepth: 6
    functionLinenumber: 2887
    functionLinenumberEnd: 2891
    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:2896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - segment_list
    argTypes:
    - GF_MPD_SegmentList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2897
      start: 2893
    functionDepth: 4
    functionLinenumber: 2893
    functionLinenumberEnd: 2897
    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:2902,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - out
    - indent
    argTypes:
    - FILE*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2903
      start: 2900
    functionDepth: 1
    functionLinenumber: 2900
    functionLinenumberEnd: 2903
    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:2909,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - out
    - indent
    argTypes:
    - FILE*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2913
      start: 2904
    functionDepth: 1
    functionLinenumber: 2904
    functionLinenumberEnd: 2913
    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:2927,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/mpd.c:2929,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:2937,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - out
    - name
    - time
    argTypes:
    - FILE*
    - char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2939
      start: 2916
    functionDepth: 1
    functionLinenumber: 2916
    functionLinenumberEnd: 2939
    functionName: gf_mpd_print_date
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_gmtime
    - gf_xml_dump_string
    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: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:2953,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2954,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2955,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: 2956
      start: 2941
    functionDepth: 1
    functionLinenumber: 2941
    functionLinenumberEnd: 2956
    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:2960,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2961,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:2963,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2965,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:2967,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2968,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: 2969
      start: 2958
    functionDepth: 2
    functionLinenumber: 2958
    functionLinenumberEnd: 2969
    functionName: gf_mpd_print_base_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_nl
    - gf_fprintf
    - gf_xml_dump_string
    - gf_mpd_lf
    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:2977,1
    - Dst: gf_mpd_print_base_url
      Src: /src/gpac/src/media_tools/mpd.c:2978,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - out
    - base_URLs
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2980
      start: 2971
    functionDepth: 3
    functionLinenumber: 2971
    functionLinenumberEnd: 2980
    functionName: gf_mpd_print_base_urls
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_base_url
    - gf_list_enum
    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:2984,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2985,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2986,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2987,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2988,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:2989,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: 2990
      start: 2982
    functionDepth: 2
    functionLinenumber: 2982
    functionLinenumberEnd: 2990
    functionName: gf_mpd_print_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_nl
    - gf_fprintf
    - gf_mpd_lf
    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:2994,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:2997,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:2998,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3001,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3002,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:3005,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 2
    argNames:
    - out
    - s
    argTypes:
    - FILE*
    - GF_MPD_SegmentBase*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3006
      start: 2992
    functionDepth: 2
    functionLinenumber: 2992
    functionLinenumberEnd: 3006
    functionName: gf_mpd_print_segment_base_attr
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_mpd_print_duration
    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:3010,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3011,1
    - Dst: gf_mpd_print_segment_base_attr
      Src: /src/gpac/src/media_tools/mpd.c:3012,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3013,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3014,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3016,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3017,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3019,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3020,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3021,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - out
    - s
    - indent
    argTypes:
    - FILE*
    - GF_MPD_SegmentBase*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3022
      start: 3008
    functionDepth: 3
    functionLinenumber: 3008
    functionLinenumberEnd: 3022
    functionName: gf_mpd_print_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_url
    - gf_fprintf
    - gf_mpd_lf
    - gf_mpd_print_segment_base_attr
    - gf_mpd_nl
    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:3030,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3031,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3032,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3034,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:3035,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:3039,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:3041,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3046,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3050,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3051,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3052,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3053,1
    - Dst: gf_mpd_nl
      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:3058,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3061,1
    - Dst: gf_fprintf
      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_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3073,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3074,1
    - 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_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3080,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 52
    argCount: 4
    argNames:
    - out
    - tl
    - indent
    - tsb_first_entry
    argTypes:
    - FILE*
    - GF_MPD_SegmentTimeline*
    - s32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3081
      start: 3024
    functionDepth: 2
    functionLinenumber: 3024
    functionLinenumberEnd: 3081
    functionName: gf_mpd_print_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fprintf
    - gf_mpd_lf
    - gf_list_get
    - gf_mpd_nl
    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:3086,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:3087,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3089
      start: 3083
    functionDepth: 1
    functionLinenumber: 3083
    functionLinenumberEnd: 3089
    functionName: gf_mpd_segmentimeline_new
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:3093,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3095,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3097,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3101,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3102,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3103,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3106,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3107,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3109,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3110,1
    - Dst: gf_mpd_print_segment_timeline
      Src: /src/gpac/src/media_tools/mpd.c:3112,1
    - Dst: gf_mpd_print_url
      Src: /src/gpac/src/media_tools/mpd.c:3113,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: 3115
      start: 3091
    functionDepth: 3
    functionLinenumber: 3091
    functionLinenumberEnd: 3115
    functionName: gf_mpd_print_multiple_segment_base
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_url
    - gf_mpd_print_segment_timeline
    - gf_mpd_lf
    - gf_mpd_print_segment_base_attr
    - gf_fprintf
    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:3119,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3120,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3122,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3124,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3127,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3128,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3129,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3130,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3131,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3132,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3133,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3134,1
    - Dst: gf_mpd_print_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3136,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3143,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3144,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3146,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3149,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3152,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3154,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3158,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3159,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3160,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3161,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3162,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3163,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3166,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3168,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3170,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3173,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3174,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3177,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3178,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3179,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 67
    argCount: 3
    argNames:
    - out
    - s
    - indent
    argTypes:
    - FILE*
    - GF_MPD_SegmentList*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3180
      start: 3117
    functionDepth: 4
    functionLinenumber: 3117
    functionLinenumberEnd: 3180
    functionName: gf_mpd_print_segment_list
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_enum
    - gf_mpd_print_multiple_segment_base
    - gf_mpd_lf
    - gf_xml_dump_string
    - gf_mpd_nl
    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:3184,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3185,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3187,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3188,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3189,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3190,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3191,1
    - Dst: gf_mpd_print_multiple_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3193,1
    - Dst: gf_mpd_nl
      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: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - out
    - s
    - indent
    argTypes:
    - FILE*
    - GF_MPD_SegmentTemplate*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3199
      start: 3182
    functionDepth: 4
    functionLinenumber: 3182
    functionLinenumberEnd: 3199
    functionName: gf_mpd_print_segment_template
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_mpd_print_multiple_segment_base
    - gf_mpd_lf
    - gf_xml_dump_string
    - gf_mpd_nl
    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:3206,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3207,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3208,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3209,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3210,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - out
    - attributes
    argTypes:
    - FILE*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3212
      start: 3201
    functionDepth: 1
    functionLinenumber: 3201
    functionLinenumberEnd: 3212
    functionName: gf_mpd_extensible_print_attr
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_xml_dump_string
    - gf_list_enum
    - strcmp
    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:3219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3222,1
    - Dst: gf_xml_dom_serialize
      Src: /src/gpac/src/media_tools/mpd.c:3231,1
    - Dst: gf_mpd_nl
      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_free
      Src: /src/gpac/src/media_tools/mpd.c:3234,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3235,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: 3241
      start: 3214
    functionDepth: 2
    functionLinenumber: 3214
    functionLinenumberEnd: 3241
    functionName: gf_mpd_extensible_print_nodes
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_xml_dom_serialize
    - gf_fprintf
    - gf_mpd_lf
    - gf_list_get
    - gf_mpd_nl
    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:3245,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3246,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3247,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3248,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3249,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:3251,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3255,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3256,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3257,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3258,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3259,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3262,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3263,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: 3265
      start: 3243
    functionDepth: 3
    functionLinenumber: 3243
    functionLinenumberEnd: 3265
    functionName: gf_mpd_print_desc
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_extensible_print_attr
    - gf_mpd_extensible_print_nodes
    - gf_fprintf
    - gf_mpd_lf
    - gf_xml_dump_string
    - gf_mpd_nl
    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:3270,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3271,1
    - Dst: gf_mpd_print_desc
      Src: /src/gpac/src/media_tools/mpd.c:3272,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: 3274
      start: 3266
    functionDepth: 4
    functionLinenumber: 3266
    functionLinenumberEnd: 3274
    functionName: gf_mpd_print_descriptors
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_extensible_print_nodes
    - gf_mpd_print_desc
    - gf_list_enum
    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:3282,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3283,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:3284,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/media_tools/mpd.c:3285,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/src/media_tools/mpd.c:3287,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3292,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - out
    - attVal
    - attName
    argTypes:
    - FILE*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3293
      start: 3278
    functionDepth: 1
    functionLinenumber: 3278
    functionLinenumberEnd: 3293
    functionName: mpd_print_lang
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_lang_get_2cc
    - gf_lang_find
    - gf_sys_old_arch_compat
    - strcmp
    - strlen
    - gf_fprintf
    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:3299,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3300,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3301,1
    - Dst: mpd_print_lang
      Src: /src/gpac/src/media_tools/mpd.c:3302,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3303,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - out
    - content_component
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3306
      start: 3295
    functionDepth: 2
    functionLinenumber: 3295
    functionLinenumberEnd: 3306
    functionName: gf_mpd_print_content_component
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_enum
    - gf_mpd_lf
    - gf_mpd_nl
    - mpd_print_lang
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_content_component(FILE *out, GF_List *content_component
      , s32 indent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3311,1
    - Dst: gf_mpd_nl
      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:3315,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3316,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3317,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - out
    - inband_event
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3319
      start: 3308
    functionDepth: 2
    functionLinenumber: 3308
    functionLinenumberEnd: 3319
    functionName: gf_mpd_print_inband_event
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_nl
    - gf_fprintf
    - gf_list_enum
    - gf_mpd_lf
    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:3324,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3326,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:3328,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: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:3335,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3336,1
    - Dst: gf_xml_dump_string
      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:3342,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3343,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:3347,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 39
    argCount: 2
    argNames:
    - out
    - ca
    argTypes:
    - FILE*
    - GF_MPD_CommonAttributes*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3349
      start: 3321
    functionDepth: 1
    functionLinenumber: 3321
    functionLinenumberEnd: 3349
    functionName: gf_mpd_print_common_attributes
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_xml_dump_string
    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:3353,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3354,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3355,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3356,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3357,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:3360,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3362,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3363,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3364,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3365,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3366,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3369,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3372,1
    - Dst: gf_fprintf
      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:3380,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3381,1
    - Dst: gf_mpd_print_desc
      Src: /src/gpac/src/media_tools/mpd.c:3382,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3383,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3386,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3387,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3394,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3395,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3396,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3397,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3398,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3399,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3400,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3401,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3403,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3404,1
    - Dst: gf_mpd_nl
      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_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3408,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: 3411
      start: 3351
    functionDepth: 5
    functionLinenumber: 3351
    functionLinenumberEnd: 3411
    functionName: gf_mpd_print_common_children
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fprintf
    - gf_mpd_print_desc
    - gf_list_enum
    - gf_mpd_lf
    - gf_mpd_print_descriptors
    - gf_list_get
    - gf_mpd_nl
    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:3415,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3416,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3417,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3418,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3419,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3421,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3422,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3423,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3424,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3425,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:3431,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3434,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_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3439,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3440,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3441,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3442,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3443,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3444,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3445,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3446,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3447,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3449,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3450,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3453,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3455,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3458,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3460,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3462,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3465,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3468,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3471,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3472,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 3
    argNames:
    - out
    - dasher
    - indent
    argTypes:
    - FILE*
    - GF_DASH_SegmenterContext*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3473
      start: 3413
    functionDepth: 2
    functionLinenumber: 3413
    functionLinenumberEnd: 3473
    functionName: gf_mpd_print_dasher_context
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_nl
    - gf_fprintf
    - gf_mpd_lf
    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:3477,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3480,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3481,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3483,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3484,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3485,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3486,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3487,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3488,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3489,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3490,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3492,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3493,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3496,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3497,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3501,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3502,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3505,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3506,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3507,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 3
    argNames:
    - out
    - segments
    - indent
    argTypes:
    - FILE*
    - GF_List*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3508
      start: 3475
    functionDepth: 2
    functionLinenumber: 3475
    functionLinenumberEnd: 3508
    functionName: gf_mpd_print_dasher_segments
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fprintf
    - gf_mpd_lf
    - gf_list_get
    - gf_mpd_nl
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_dasher_segments(FILE *out, GF_List *segments, s32
      indent)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - 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:3516,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:3525,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/mpd.c:3526,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3528,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:3531,1
    - Dst: gf_mpd_print_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:3536,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:3540,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:3542,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3544,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3545,1
    - Dst: gf_fprintf
      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_free
      Src: /src/gpac/src/media_tools/mpd.c:3554,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3558,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:3560,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3562,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3563,1
    - Dst: gf_mpd_print_dasher_context
      Src: /src/gpac/src/media_tools/mpd.c:3567,1
    - Dst: gf_mpd_print_dasher_segments
      Src: /src/gpac/src/media_tools/mpd.c:3570,1
    - Dst: gf_mpd_print_common_children
      Src: /src/gpac/src/media_tools/mpd.c:3574,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:3576,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3578,1
    - Dst: gf_mpd_print_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3579,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3582,1
    - Dst: gf_mpd_print_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:3583,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3586,1
    - Dst: gf_mpd_print_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:3587,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3594,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3596,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3597,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3598,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 72
    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: 3599
      start: 3510
    functionDepth: 6
    functionLinenumber: 3510
    functionLinenumberEnd: 3599
    functionName: gf_mpd_print_representation
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_print_dasher_context
    - gf_mpd_print_segment_base
    - gf_mpd_print_common_attributes
    - gf_mpd_extensible_print_attr
    - gf_mpd_extensible_print_nodes
    - gf_fprintf
    - gf_strdup
    - gf_mpd_lf
    - gf_mpd_print_common_children
    - gf_mpd_print_segment_list
    - gf_mpd_print_base_urls
    - gf_mpd_print_segment_template
    - snprintf
    - gf_dynstrcat
    - gf_mpd_nl
    - strstr
    - gf_mpd_print_dasher_segments
    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: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3606,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3607,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3608,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3610,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3611,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3612,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3613,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3615,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3616,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3617,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3619,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:3622,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/mpd.c:3624,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3626,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:3627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:3629,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3632,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3634,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3635,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3636,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3638,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3639,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3640,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: 2
    EdgeCount: 2
    ICount: 32
    argCount: 3
    argNames:
    - out
    - event_stream
    - indent
    argTypes:
    - FILE*
    - GF_MPD_EventStream*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3646
      start: 3601
    functionDepth: 2
    functionLinenumber: 3601
    functionLinenumberEnd: 3646
    functionName: gf_mpd_print_event_stream
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_fprintf
    - gf_list_enum
    - gf_mpd_lf
    - gf_base64_encode
    - gf_mpd_nl
    linkageType: ''
    returnType: void
    signature: void gf_mpd_print_event_stream(FILE *out, GF_MPD_EventStream *event_stream,
      s32 indent)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:3655,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/mpd.c:3663,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:3664,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:3665,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3668,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3675,1
    - 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_xml_dump_string
      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:3684,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3685,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:3687,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:3689,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3690,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:3694,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3696,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:3702,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3705,1
    - Dst: mpd_print_lang
      Src: /src/gpac/src/media_tools/mpd.c:3706,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3707,1
    - Dst: gf_mpd_print_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:3709,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3711,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3712,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3714,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3715,1
    - Dst: gf_mpd_print_common_children
      Src: /src/gpac/src/media_tools/mpd.c:3717,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:3719,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3721,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3722,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3723,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:3724,1
    - Dst: gf_mpd_print_content_component
      Src: /src/gpac/src/media_tools/mpd.c:3725,1
    - Dst: gf_mpd_print_inband_event
      Src: /src/gpac/src/media_tools/mpd.c:3726,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3729,1
    - Dst: gf_mpd_print_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3730,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3733,1
    - Dst: gf_mpd_print_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:3734,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3737,1
    - Dst: gf_mpd_print_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:3738,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3742,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3743,1
    - Dst: gf_mpd_print_representation
      Src: /src/gpac/src/media_tools/mpd.c:3744,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3746,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:3747,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3748,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3749,1
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:3755,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: 3758
      start: 3648
    functionDepth: 7
    functionLinenumber: 3648
    functionLinenumberEnd: 3758
    functionName: gf_mpd_print_adaptation_set
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_mpd_print_content_component
    - gf_list_count
    - gf_mpd_print_segment_base
    - gf_mpd_print_adaptation_set
    - gf_sys_old_arch_compat
    - gf_mpd_print_common_attributes
    - gf_mpd_extensible_print_nodes
    - gf_mpd_print_common_children
    - gf_mpd_print_base_urls
    - gf_xml_dump_string
    - gf_mpd_print_segment_list
    - gf_list_get
    - mpd_print_lang
    - gf_mpd_print_representation
    - gf_list_enum
    - gf_mpd_print_descriptors
    - strcmp
    - gf_fprintf
    - gf_mpd_print_inband_event
    - gf_mpd_lf
    - gf_mpd_print_segment_template
    - gf_mpd_nl
    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:3765,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3766,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:3768,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3770,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3773,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:3775,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:3777,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3779,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3781,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:3782,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:3784,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3787,1
    - Dst: gf_mpd_print_event_stream
      Src: /src/gpac/src/media_tools/mpd.c:3788,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3791,1
    - Dst: gf_mpd_print_segment_base
      Src: /src/gpac/src/media_tools/mpd.c:3792,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3795,1
    - Dst: gf_mpd_print_segment_list
      Src: /src/gpac/src/media_tools/mpd.c:3796,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3799,1
    - Dst: gf_mpd_print_segment_template
      Src: /src/gpac/src/media_tools/mpd.c:3800,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3804,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3805,1
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:3806,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:3808,1
    - Dst: gf_mpd_nl
      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_lf
      Src: /src/gpac/src/media_tools/mpd.c:3811,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 5
    argNames:
    - period
    - is_dynamic
    - out
    - write_context
    - indent
    argTypes:
    - GF_MPD_Period*
    - Bool
    - FILE*
    - Bool
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3812
      start: 3760
    functionDepth: 8
    functionLinenumber: 3760
    functionLinenumberEnd: 3812
    functionName: gf_mpd_print_period
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_mpd_print_segment_base
    - gf_mpd_extensible_print_nodes
    - gf_mpd_print_adaptation_set
    - gf_fprintf
    - gf_list_enum
    - gf_mpd_lf
    - gf_mpd_print_event_stream
    - gf_mpd_print_duration
    - gf_mpd_print_base_urls
    - gf_xml_dump_string
    - gf_mpd_print_segment_template
    - gf_mpd_print_segment_list
    - gf_mpd_nl
    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:3824,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/mpd.c:3827,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/mpd.c:3828,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3829,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/mpd.c:3829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:3832,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - mpd
    - out
    argTypes:
    - GF_MPD*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3835
      start: 3814
    functionDepth: 1
    functionLinenumber: 3814
    functionLinenumberEnd: 3835
    functionName: mpd_write_generation_comment
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_gpac_version
    - GF_LOG
    - gf_fprintf
    - gf_gmtime
    - gf_assert
    - gf_sys_is_test_mode
    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:3842,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3844,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3846,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3848,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3849,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3852,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3854,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3857,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3861,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3863,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3866,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3867,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3870,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3871,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3875,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3876,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3880,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3883,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:3888,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:3889,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3890,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3892,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3896,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3898,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: 3900
      start: 3837
    functionDepth: 1
    functionLinenumber: 3837
    functionLinenumberEnd: 3900
    functionName: gf_mpd_write_m3u8_playlist_tags_entry
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_list_enum
    - strstr
    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: 68
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3936,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3938,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3940,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3945,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3946,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3947,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3949,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3950,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3951,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3952,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3955,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:3955,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3958,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3961,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:3964,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3965,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3968,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3972,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3975,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:3976,1
    - Dst: gf_mpd_write_m3u8_playlist_tags_entry
      Src: /src/gpac/src/media_tools/mpd.c:3983,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4003,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4005,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4016,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:4018,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4039,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4047,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4048,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:4053,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:4057,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:4058,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:4059,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:4060,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/mpd.c:4065,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4069,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4070,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4076,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4077,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4078,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4084,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4085,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4088,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4092,1
    - Dst: gf_mpd_write_m3u8_playlist_tags_entry
      Src: /src/gpac/src/media_tools/mpd.c:4099,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4100,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4104,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4109,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4111,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4114,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4115,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 191
    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: 4116
      start: 3902
    functionDepth: 2
    functionLinenumber: 3902
    functionLinenumberEnd: 4116
    functionName: gf_mpd_write_m3u8_playlist_tags
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_enum
    - gf_mpd_write_m3u8_playlist_tags_entry
    - gf_dynstrcat
    - MAX
    - strcmp
    - strlen
    - gf_fprintf
    - strstr
    - strncmp
    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: 4133
      start: 4118
    functionDepth: 0
    functionLinenumber: 4118
    functionLinenumberEnd: 4133
    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:4146,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4150,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4151,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4152,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4156,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4160,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4162,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4163,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4165,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: 4174
      start: 4135
    functionDepth: 1
    functionLinenumber: 4135
    functionLinenumberEnd: 4174
    functionName: hls_insert_crypt_info
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_fprintf
    - strstr
    - strcmp
    linkageType: ''
    returnType: void
    signature: void hls_insert_crypt_info(FILE *out, GF_MPD_Representation *rep, GF_DASH_SegmentContext
      *sctx, const char **last_kms)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4180,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4183,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4185,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:4186,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4187,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4189,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4191,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4193,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4195,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4200,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 4
    argNames:
    - out
    - ast
    - period
    - sctx
    argTypes:
    - FILE*
    - u64
    - GF_MPD_Period*
    - GF_DASH_SegmentContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4205
      start: 4176
    functionDepth: 2
    functionLinenumber: 4176
    functionLinenumberEnd: 4205
    functionName: hls_insert_scte35_info
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_mpd_print_date
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void hls_insert_scte35_info(FILE *out, u64 ast, const GF_MPD_Period
      *period, GF_DASH_SegmentContext *sctx)
  - BBCount: 72
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4217,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpd.c:4219,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/media_tools/mpd.c:4223,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4224,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4229,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4230,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4233,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4234,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/mpd.c:4234,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4235,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4236,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4241,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4243,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4245,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4248,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4252,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4256,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4261,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:4262,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4263,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4268,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4275,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4280,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4282,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4286,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4293,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4294,1
    - Dst: hls_insert_crypt_info
      Src: /src/gpac/src/media_tools/mpd.c:4296,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4316,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/media_tools/mpd.c:4321,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4322,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4327,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4329,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4334,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4337,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4341,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4342,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4347,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4358,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4364,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/media_tools/mpd.c:4367,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4368,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4370,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4372,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4375,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:4381,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4384,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4387,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpd.c:4390,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4395,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4397,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4403,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4409,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:4410,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4412,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4413,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4419,1
    - Dst: hls_insert_scte35_info
      Src: /src/gpac/src/media_tools/mpd.c:4426,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4430,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4434,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4437,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4439,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4442,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4461,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4464,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4471,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4474,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4476,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4480,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4487,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4488,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:4489,1
    - Dst: hls_insert_crypt_info
      Src: /src/gpac/src/media_tools/mpd.c:4494,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4498,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4499,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4501,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4503,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4506,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4513,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:4516,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 239
    argCount: 11
    argNames:
    - mpd
    - period
    - as
    - rep
    - m3u8_name
    - hls_version
    - max_part_dur_session
    - force_base_url
    - delta_update
    - is_last
    - out_file
    argTypes:
    - GF_MPD*
    - GF_MPD_Period*
    - GF_MPD_AdaptationSet*
    - GF_MPD_Representation*
    - char*
    - u32
    - Double
    - char*
    - Bool
    - Bool
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4519
      start: 4207
    functionDepth: 3
    functionLinenumber: 4207
    functionLinenumberEnd: 4519
    functionName: gf_mpd_write_m3u8_playlist
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_file_basename
    - gf_url_concatenate
    - gf_assert
    - gf_mpd_print_date
    - hls_insert_scte35_info
    - gf_mpd_resolve_subnumber
    - strchr
    - gf_fopen
    - gf_file_temp
    - gf_dynstrcat
    - gf_list_get
    - gf_list_last
    - gf_list_enum
    - gf_ceil
    - strcmp
    - gf_fprintf
    - hls_insert_crypt_info
    - gf_fclose
    - gf_free
    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, Bool
      delta_update, Bool is_last, FILE* out_file)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4526,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpd.c:4530,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/mpd.c:4531,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/mpd.c:4533,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/mpd.c:4534,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/mpd.c:4536,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:4541,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4543,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: 4544
      start: 4521
    functionDepth: 1
    functionLinenumber: 4521
    functionLinenumberEnd: 4544
    functionName: get_rep_variant_filename
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_file_ext_start
    - gf_strcat
    - gf_file_basename
    - gf_url_concatenate
    - gf_strdup
    linkageType: ''
    returnType: char
    signature: char *get_rep_variant_filename(GF_MPD const * const mpd, GF_MPD_Representation
      *rep, const char * force_base_url)
  - BBCount: 86
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpd.c:4571,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4575,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4576,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4581,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4585,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4589,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4591,1
    - Dst: gf_mpd_m3u8_get_init_seg
      Src: /src/gpac/src/media_tools/mpd.c:4593,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4596,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:4608,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4615,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4616,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4617,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4631,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4632,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4634,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4637,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4638,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4642,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/media_tools/mpd.c:4643,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4646,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4646,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4648,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:4650,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:4652,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:4652,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4656,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4664,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4668,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4673,1
    - Dst: ceil
      Src: /src/gpac/src/media_tools/mpd.c:4696,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4706,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4707,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4717,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4719,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4720,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:4725,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:4727,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4729,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:4730,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4738,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4740,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4742,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/mpd.c:4749,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4753,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:4756,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4762,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4764,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4775,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4784,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4787,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4791,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4793,1
    - Dst: gf_mpd_write_m3u8_playlist
      Src: /src/gpac/src/media_tools/mpd.c:4804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4807,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4840,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4852,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/mpd.c:4853,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4856,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/mpd.c:4857,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4877,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4878,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/mpd.c:4881,1
    - Dst: get_rep_variant_filename
      Src: /src/gpac/src/media_tools/mpd.c:4884,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:4894,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4896,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4898,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:4899,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:4900,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:4904,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/media_tools/mpd.c:4905,1
    - Dst: get_rep_variant_filename
      Src: /src/gpac/src/media_tools/mpd.c:4906,1
    - Dst: gf_mpd_write_m3u8_playlist_tags
      Src: /src/gpac/src/media_tools/mpd.c:4908,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4909,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4910,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:4912,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:4913,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:4917,1
    - Dst: gf_mpd_write_m3u8_playlist_tags
      Src: /src/gpac/src/media_tools/mpd.c:4921,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4922,1
    - Dst: gf_mpd_write_m3u8_playlist_tags
      Src: /src/gpac/src/media_tools/mpd.c:4925,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4926,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4929,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:4932,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4933,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:4934,1
    CyclomaticComplexity: 157
    EdgeCount: 157
    ICount: 297
    argCount: 5
    argNames:
    - mpd
    - out
    - m3u8_name
    - periods
    - mode
    argTypes:
    - GF_MPD*
    - FILE*
    - char*
    - GF_List*
    - GF_M3U8WriteMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4936
      start: 4546
    functionDepth: 4
    functionLinenumber: 4546
    functionLinenumberEnd: 4936
    functionName: gf_mpd_write_m3u8_master_playlist
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_file_basename
    - gf_list_add
    - strstr
    - gf_malloc
    - ceil
    - gf_list_pop_front
    - gf_fileio_translate_url
    - gf_list_find
    - gf_list_get
    - gf_list_last
    - get_rep_variant_filename
    - gf_list_enum
    - strrchr
    - gf_mpd_write_m3u8_playlist_tags
    - strcmp
    - strlen
    - gf_fprintf
    - gf_list_new
    - sprintf
    - gf_mpd_write_m3u8_playlist
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_mpd_m3u8_get_init_seg
    - gf_strdup
    - strncmp
    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_List *periods, GF_M3U8WriteMode mode)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:4942,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4947,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4950
      start: 4938
    functionDepth: 1
    functionLinenumber: 4938
    functionLinenumberEnd: 4950
    functionName: mpd_skip_serialization
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_enum
    linkageType: ''
    returnType: Bool
    signature: Bool mpd_skip_serialization(GF_MPD const * const mpd)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: mpd_skip_serialization
      Src: /src/gpac/src/media_tools/mpd.c:4961,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:4965,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4968,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4969,1
    - Dst: mpd_write_generation_comment
      Src: /src/gpac/src/media_tools/mpd.c:4970,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4972,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4973,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4976,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4979,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4982,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4984,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:4985,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4989,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:4992,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:4996,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:4999,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5001,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:5005,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:5007,1
    - Dst: gf_mpd_print_date
      Src: /src/gpac/src/media_tools/mpd.c:5009,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:5011,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:5013,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:5015,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:5017,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:5019,1
    - Dst: gf_mpd_print_duration
      Src: /src/gpac/src/media_tools/mpd.c:5021,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:5024,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:5027,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5031,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5033,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5035,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5038,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5039,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5043,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5045,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5047,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5048,1
    - Dst: mpd_print_lang
      Src: /src/gpac/src/media_tools/mpd.c:5049,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:5051,1
    - Dst: gf_mpd_extensible_print_attr
      Src: /src/gpac/src/media_tools/mpd.c:5053,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5054,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5056,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5058,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5059,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:5060,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5061,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5064,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5065,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:5066,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5067,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5070,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5071,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:5072,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5073,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5075,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5076,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5077,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5078,1
    - Dst: gf_mpd_print_base_urls
      Src: /src/gpac/src/media_tools/mpd.c:5081,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5083,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:5086,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5087,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5088,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/media_tools/mpd.c:5089,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5090,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5094,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5095,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5096,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5097,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5098,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5099,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5100,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5101,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5102,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5103,1
    - Dst: gf_mpd_nl
      Src: /src/gpac/src/media_tools/mpd.c:5104,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5105,1
    - Dst: gf_mpd_lf
      Src: /src/gpac/src/media_tools/mpd.c:5106,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5117,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5120,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5128,1
    - Dst: gf_mpd_print_period
      Src: /src/gpac/src/media_tools/mpd.c:5129,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5132,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5133,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:5134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5136,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5137,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:5138,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5140,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5141,1
    - Dst: gf_mpd_print_descriptors
      Src: /src/gpac/src/media_tools/mpd.c:5142,1
    - Dst: gf_mpd_extensible_print_nodes
      Src: /src/gpac/src/media_tools/mpd.c:5144,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5147,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/mpd.c:5149,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 153
    argCount: 3
    argNames:
    - mpd
    - out
    - compact
    argTypes:
    - GF_MPD*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5152
      start: 4954
    functionDepth: 9
    functionLinenumber: 4954
    functionLinenumberEnd: 5152
    functionName: gf_mpd_write
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_mpd_extensible_print_attr
    - gf_mpd_extensible_print_nodes
    - gf_list_enum
    - gf_mpd_lf
    - gf_mpd_print_period
    - mpd_write_generation_comment
    - gf_mpd_print_duration
    - mpd_skip_serialization
    - gf_xml_dump_string
    - gf_mpd_nl
    - gf_mpd_print_base_urls
    - gf_list_get
    - gf_fprintf
    - gf_mpd_print_date
    - gf_mpd_print_descriptors
    - mpd_print_lang
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_mpd_write(GF_MPD const * const mpd, FILE *out, Bool compact)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mpd_skip_serialization
      Src: /src/gpac/src/media_tools/mpd.c:5160,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5163,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpd.c:5165,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/media_tools/mpd.c:5169,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:5170,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - mpd
    - file_name
    argTypes:
    - GF_MPD*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5172
      start: 5154
    functionDepth: 10
    functionLinenumber: 5154
    functionLinenumberEnd: 5172
    functionName: gf_mpd_write_file
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_fopen
    - mpd_skip_serialization
    - 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:5180,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5182,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5184,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5186,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: 5190
      start: 5175
    functionDepth: 1
    functionLinenumber: 5175
    functionLinenumberEnd: 5190
    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:5196,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/media_tools/mpd.c:5198,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5213,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5215,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5216,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: 5220
      start: 5192
    functionDepth: 1
    functionLinenumber: 5192
    functionLinenumberEnd: 5220
    functionName: gf_mpd_get_base_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_url_concatenate
    - gf_get_bit_size
    - gf_list_get
    linkageType: ''
    returnType: char
    signature: char *gf_mpd_get_base_url(GF_List *baseURLs, char *parent_url, u32
      *base_url_index)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5227,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5238,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - print_fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5243
      start: 5222
    functionDepth: 0
    functionLinenumber: 5222
    functionLinenumberEnd: 5243
    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:5263,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:5265,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:5266,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:5267,1
    - Dst: gf_mpd_get_base_url
      Src: /src/gpac/src/media_tools/mpd.c:5268,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpd.c:5269,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5281,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5310,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5312,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5314,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5330,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5361,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5368,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5370,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5372,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5388,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5392,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5396,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5400,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5400,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:5401,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5404,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpd.c:5406,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5410,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5411,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5423,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5427,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5429,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5430,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5440,1
    - Dst: gf_mpd_resolve_segment_duration
      Src: /src/gpac/src/media_tools/mpd.c:5483,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5491,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5493,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5512,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5516,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5520,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5520,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:5521,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/media_tools/mpd.c:5526,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5527,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5530,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5535,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5537,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5538,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5542,1
    - Dst: gf_mpd_check_print_format
      Src: /src/gpac/src/media_tools/mpd.c:5545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5546,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5547,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5548,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpd.c:5552,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpd.c:5555,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5558,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5559,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5561,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5565,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5566,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5567,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5572,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5574,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5576,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5577,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5580,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5581,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5584,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5585,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5593,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5594,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5599,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5601,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5602,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5603,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5608,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5610,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5611,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5613,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5614,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5616,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5617,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5621,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5622,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5623,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5625,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5626,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5627,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:5629,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5632,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5633,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5636,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5641,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5645,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5654,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5655,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5667,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/mpd.c:5668,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5669,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5670,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5675,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5676,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:5677,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5682,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5684,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5685,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:5692,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:5694,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:5695,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/mpd.c:5699,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5700,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:5701,1
    CyclomaticComplexity: 150
    EdgeCount: 150
    ICount: 434
    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: 5703
      start: 5245
    functionDepth: 2
    functionLinenumber: 5245
    functionLinenumberEnd: 5703
    functionName: gf_mpd_resolve_url
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_url_concatenate
    - gf_mpd_check_print_format
    - gf_mpd_resolve_segment_duration
    - strchr
    - gf_malloc
    - gf_list_get
    - memcpy
    - gf_strcpy
    - strcmp
    - strlen
    - gf_mpd_get_base_url
    - gf_strlcpy
    - sprintf
    - gf_free
    - GF_LOG
    - gf_strcat
    - gf_strdup
    - gf_strlcat
    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:5712,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5718
      start: 5705
    functionDepth: 1
    functionLinenumber: 5705
    functionLinenumberEnd: 5718
    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:5785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5789,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: 5792
      start: 5720
    functionDepth: 1
    functionLinenumber: 5720
    functionLinenumberEnd: 5792
    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:5799,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5800,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: 5813
      start: 5794
    functionDepth: 1
    functionLinenumber: 5794
    functionLinenumberEnd: 5813
    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:5840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5847,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5853,1
    - Dst: gf_mpd_segment_timeline_start
      Src: /src/gpac/src/media_tools/mpd.c:5858,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5865,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5883,1
    - Dst: gf_mpd_segment_timeline_start
      Src: /src/gpac/src/media_tools/mpd.c:5910,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: 5922
      start: 5815
    functionDepth: 2
    functionLinenumber: 5815
    functionLinenumberEnd: 5922
    functionName: gf_mpd_get_segment_start_time_with_timescale
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - gf_mpd_segment_timeline_start
    - gf_list_get
    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:5931,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:5932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:5936,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:5944,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: 5955
      start: 5925
    functionDepth: 1
    functionLinenumber: 5925
    functionLinenumberEnd: 5955
    functionName: mpd_seek_periods
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - 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:5977,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: 6010
      start: 5959
    functionDepth: 3
    functionLinenumber: 5959
    functionLinenumberEnd: 6010
    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:6034,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6036,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6038,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6039,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6040,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6045,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6046,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6047,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:6048,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: 6052
      start: 6028
    functionDepth: 1
    functionLinenumber: 6028
    functionLinenumberEnd: 6052
    functionName: smooth_parse_chunk
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    - gf_list_enum
    - GF_SAFEALLOC
    - strcmp
    - gf_list_add
    - sscanf
    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:6057,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:6059,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6060,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6067,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6067,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6067,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6067,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:6068,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/media_tools/mpd.c:6069,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6070,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6071,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6071,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6074,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: 6077
      start: 6054
    functionDepth: 1
    functionLinenumber: 6054
    functionLinenumberEnd: 6077
    functionName: smooth_replace_string
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - strlen
    - gf_strdup
    - gf_strlcat
    - strstr
    - gf_strlcpy
    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:6088,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:6090,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6091,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6092,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6093,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:6096,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6115,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6116,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:6116,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6117,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6117,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6118,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6119,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6120,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6122,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6123,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6124,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6126,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6127,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6129,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6130,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6132,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6133,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6135,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6136,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6139,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6140,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6143,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6144,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6147,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6148,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6154,1
    - Dst: ISBMFFI_ADD_KEYWORD
      Src: /src/gpac/src/media_tools/mpd.c:6157,1
    - Dst: ISBMFFI_ADD_KEYWORD_CONST
      Src: /src/gpac/src/media_tools/mpd.c:6160,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:6162,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:6163,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: 6167
      start: 6079
    functionDepth: 2
    functionLinenumber: 6079
    functionLinenumberEnd: 6167
    functionName: smooth_parse_quality_level
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - sprintf
    - atoi
    - ISBMFFI_ADD_KEYWORD
    - gf_list_enum
    - gf_mpd_init_common_attributes
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - gf_dynstrcat
    - gf_strdup
    - gf_list_add
    - ISBMFFI_ADD_KEYWORD_CONST
    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: 6106
      start: 6099
    functionDepth: 0
    functionLinenumber: 6099
    functionLinenumberEnd: 6106
    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: 6113
      start: 6107
    functionDepth: 0
    functionLinenumber: 6107
    functionLinenumberEnd: 6113
    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:6176,1
    - Dst: gf_mpd_init_common_attributes
      Src: /src/gpac/src/media_tools/mpd.c:6179,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6181,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6183,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6184,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6185,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6186,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6187,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6188,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6189,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6190,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6196,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6197,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6198,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6199,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6200,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6202,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6202,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6203,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6203,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6204,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:6206,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:6207,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:6208,1
    - Dst: smooth_replace_string
      Src: /src/gpac/src/media_tools/mpd.c:6209,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:6212,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:6216,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6219,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6224,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6225,1
    - Dst: smooth_parse_quality_level
      Src: /src/gpac/src/media_tools/mpd.c:6226,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6228,1
    - Dst: smooth_parse_chunk
      Src: /src/gpac/src/media_tools/mpd.c:6229,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: 6234
      start: 6169
    functionDepth: 3
    functionLinenumber: 6169
    functionLinenumberEnd: 6234
    functionName: smooth_parse_stream_index
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    - smooth_parse_quality_level
    - gf_list_enum
    - gf_mpd_init_common_attributes
    - GF_SAFEALLOC
    - strcmp
    - gf_list_new
    - gf_list_add
    - smooth_parse_chunk
    - smooth_replace_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err smooth_parse_stream_index(GF_MPD *mpd, GF_List *container, GF_XMLNode
      *root, u32 timescale)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_init_struct
      Src: /src/gpac/src/media_tools/mpd.c:6248,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6258,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6259,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6260,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6261,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6262,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6263,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/mpd.c:6263,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6265,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:6266,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpd.c:6274,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6276,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6277,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6279,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6283,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6284,1
    - Dst: smooth_parse_stream_index
      Src: /src/gpac/src/media_tools/mpd.c:6285,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 3
    argNames:
    - root
    - mpd
    - default_base_url
    argTypes:
    - GF_XMLNode*
    - GF_MPD*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6291
      start: 6236
    functionDepth: 4
    functionLinenumber: 6236
    functionLinenumberEnd: 6291
    functionName: gf_mpd_init_smooth_from_dom
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - atoi
    - smooth_parse_stream_index
    - stricmp
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_mpd_init_struct
    - strcmp
    - gf_list_new
    - gf_list_add
    - sscanf
    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:6296,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/mpd.c:6297,1
    - Dst: gf_mpd_init_smooth_from_dom
      Src: /src/gpac/src/media_tools/mpd.c:6299,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/mpd.c:6299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6304,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6306,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: 6308
      start: 6293
    functionDepth: 5
    functionLinenumber: 6293
    functionLinenumberEnd: 6308
    functionName: gf_mpd_smooth_to_mpd
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - gf_xml_dom_get_root
    - gf_xml_dom_parse
    - gf_xml_dom_del
    - gf_mpd_init_smooth_from_dom
    - GF_LOG
    - gf_xml_dom_new
    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: 6325
      start: 6309
    functionDepth: 0
    functionLinenumber: 6309
    functionLinenumberEnd: 6325
    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:6346,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/media_tools/mpd.c:6357,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpd.c:6358,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6375,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6378,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6382,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6382,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6385,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6387,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6394,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6399,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6403,1
    - Dst: EXTRACT_FORMAT
      Src: /src/gpac/src/media_tools/mpd.c:6404,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6406,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6407,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6410,1
    - Dst: EXTRACT_FORMAT
      Src: /src/gpac/src/media_tools/mpd.c:6411,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6414,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6420,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/mpd.c:6421,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6422,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6423,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6426,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6429,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6436,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6437,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6444,1
    - Dst: EXTRACT_FORMAT
      Src: /src/gpac/src/media_tools/mpd.c:6445,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6449,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6454,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6455,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6458,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6459,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6462,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6465,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6468,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6469,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/media_tools/mpd.c:6472,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6477,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6480,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6481,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpd.c:6484,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6486,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6489,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6490,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6493,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6496,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6499,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6500,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6503,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6505,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6508,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6509,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6512,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6514,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/mpd.c:6517,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6518,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpd.c:6521,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6523,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6531,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6532,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6536,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6536,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6538,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6540,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6545,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6547,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6551,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6552,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6555,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6556,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpd.c:6561,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6562,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6563,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6566,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/mpd.c:6567,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/mpd.c:6575,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/media_tools/mpd.c:6579,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/media_tools/mpd.c:6580,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: 6587
      start: 6325
    functionDepth: 1
    functionLinenumber: 6325
    functionLinenumberEnd: 6587
    functionName: gf_media_mpd_format_segment_name
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - strchr
    - GF_LOG
    - EXTRACT_FORMAT
    - gf_strcat
    - gf_dir_exists
    - gf_sys_old_arch_compat
    - strnicmp
    - strrchr
    - gf_mkdir
    - strlen
    - gf_strlcat
    - strstr
    - gf_strlcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_media_mpd_format_segment_name(GF_DashTemplateSegmentType
      seg_type, Bool is_bs_switching, char segment_name[GF_MAX_PATH], 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:6595,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/mpd.c:6596,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6599,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/mpd.c:6599,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/mpd.c:6602,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6604,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6605,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6608,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6609,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6610,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6615,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6621,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6626,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6627,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6627,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6628,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6628,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6629,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6629,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6630,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6630,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6638,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6640,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:6643,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6646,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpd.c:6649,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6654,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6656,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/mpd.c:6659,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6660,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpd.c:6660,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6661,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:6661,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6662,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/mpd.c:6662,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6670,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpd.c:6673,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: 6677
      start: 6590
    functionDepth: 1
    functionLinenumber: 6590
    functionLinenumberEnd: 6677
    functionName: gf_mpd_load_cues
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_xml_dom_parse
    - gf_xml_dom_del
    - atoi
    - gf_malloc
    - GF_LOG
    - gf_list_enum
    - gf_xml_dom_new
    - strcmp
    - memset
    - sscanf
    - gf_error_to_string
    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:6684,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6687,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6690,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6699,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6700,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6702,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6704,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6706,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6709,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpd.c:6713,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/media_tools/mpd.c:6714,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6720,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/mpd.c:6721,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpd.c:6722,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpd.c:6723,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6725,1
    - Dst: gf_mpd_print_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:6735,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/mpd.c:6736,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpd.c:6737,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/mpd.c:6738,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/mpd.c:6739,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpd.c:6742,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/media_tools/mpd.c:6746,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/mpd.c:6749,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/mpd.c:6750,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/mpd.c:6751,1
    - Dst: gf_mpd_parse_adaptation_set
      Src: /src/gpac/src/media_tools/mpd.c:6752,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/mpd.c:6753,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6754,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpd.c:6755,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/media_tools/mpd.c:6756,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpd.c:6757,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/mpd.c:6760,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:6761,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpd.c:6765,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 61
    argCount: 1
    argNames:
    - mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6769
      start: 6679
    functionDepth: 8
    functionLinenumber: 6679
    functionLinenumberEnd: 6769
    functionName: gf_mpd_split_adaptation_sets
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_xml_dom_del
    - gf_mpd_print_adaptation_set
    - gf_mpd_parse_adaptation_set
    - gf_list_add
    - gf_xml_dom_parse
    - gf_malloc
    - gf_mpd_representation_free
    - gf_file_temp
    - gf_list_get
    - gf_ftell
    - gf_xml_dom_new
    - gf_blob_register
    - gf_blob_unregister
    - gf_list_new
    - gf_xml_dom_get_root
    - gf_free
    - gf_fclose
    - gf_list_del
    - gf_fseek
    - gf_fread
    - memset
    - 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:6773,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpd.c:6775,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/mpd.c:6776,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - desclist
    - scheme_id
    argTypes:
    - GF_List*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6779
      start: 6771
    functionDepth: 1
    functionLinenumber: 6771
    functionLinenumberEnd: 6779
    functionName: gf_mpd_get_descriptor
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:6786,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/mpd.c:6787,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:6789,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6792,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/mpd.c:6795,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6798,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6800,1
    - Dst: gf_mpd_check_print_format
      Src: /src/gpac/src/media_tools/mpd.c:6802,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpd.c:6803,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:6806,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/mpd.c:6807,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/mpd.c:6808,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: 6810
      start: 6781
    functionDepth: 1
    functionLinenumber: 6781
    functionLinenumberEnd: 6810
    functionName: gf_mpd_resolve_subnumber
    functionSourceFile: /src/gpac/src/media_tools/mpd.c
    functionUses: 1
    functionsReached:
    - sprintf
    - strchr
    - gf_dynstrcat
    - gf_strdup
    - strstr
    - 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_SAFEALLOC
    - gf_malloc
    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:
    - file_close
    - gf_free
    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_read_bytes
    - file_skip_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_read_bytes
    - gf_mv12_next_start_code
    - memcpy
    - file_skip_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:
    - memmove
    - gf_realloc
    - gf_fread
    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:
    - file_skip_bytes
    - file_read_bytes
    - convert32
    - convert16
    - adv_past_pack_hdr
    - find_pack_start
    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_read_bytes
    - file_skip_bytes
    - read_pts
    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:
    - read_pes_header_data
    - file_skip_bytes
    - file_read_bytes
    - file_location
    - read_to_next_pes_header
    - mpeg2ps_record_pts
    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:
    - search_for_next_pes_header
    - copy_bytes_to_pes_buffer
    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:
    - IS_MPEG_START
    - gf_mv12_next_start_code
    - mpeg2ps_stream_read_next_pes_buffer
    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_get_next_header_mem
    - mpeg2ps_stream_read_next_pes_buffer
    - gf_mp3_frame_size
    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_mpeg_video_frame
    - mpeg2ps_stream_find_mp3_frame
    - mpeg2ps_stream_find_ac3_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_FLOAT_TO_U64
      Src: /src/gpac/src/media_tools/mpeg2_ps.c:1004,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_sampling_rate
    - gf_mp3_num_channels
    - gf_mp3_bit_rate
    - gf_mp3_layer
    - GF_4CC
    - gf_ac3_parser
    - MPEG12_ParseSeqHdr
    - GF_FLOAT_TO_U64
    - memset
    - gf_ac3_get_bitrate
    - gf_mp3_window_size
    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_create
    - mpeg2ps_stream_destroy
    - 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:
    - mpeg2ps_stream_read_frame
    - advance_frame
    - clear_stream_buffer
    - get_info_from_frame
    - file_seek_to
    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:
    - mpeg2ps_stream_read_frame
    - read_pes_header_data
    - file_skip_bytes
    - file_read_bytes
    - file_size
    - convert_ts
    - get_info_for_all_streams
    - MAX
    - read_to_next_pes_header
    - file_location
    - add_stream
    - memset
    - find_stream_from_id
    - clear_stream_buffer
    - file_seek_to
    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:
    - mpeg2ps_scan_file
    - gf_free
    - mpeg2ps_close
    - file_okay
    - file_open
    - GF_SAFEALLOC
    - gf_strdup
    - memset
    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:
    - file_close
    - gf_free
    - mpeg2ps_stream_destroy
    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:
    - advance_frame
    - invalid_video_streamno
    - mpeg2ps_stream_find_mpeg_video_frame
    - check_fd_for_stream
    - MPEG12_PictHdrType
    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:
    - mpeg2ps_stream_read_frame
    - advance_frame
    - stream_convert_frame_ts_to_msec
    - invalid_audio_streamno
    - check_fd_for_stream
    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:
    - gf_ftell
    - invalid_video_streamno
    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:
    - file_skip_bytes
    - search_for_next_pes_header
    - clear_stream_buffer
    - mpeg2ps_record_pts
    - file_seek_to
    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:
    - mpeg2ps_stream_read_frame
    - advance_frame
    - stream_convert_frame_ts_to_msec
    - mpeg2ps_binary_seek
    - check_fd_for_stream
    - clear_stream_buffer
    - search_for_ts
    - file_seek_to
    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_list_rem
    - gf_free
    - gf_list_get
    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_gather_ipdatagram_information
    - gf_m2ts_process_ipdatagram
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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_list_del
    - gf_free
    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_mpe_send_datagram
    - gf_list_count
    - resetMFF
    - GF_LOG
    - gf_m2ts_crc32_check
    - gf_list_get
    - setIpDatagram
    - gf_assert
    - memset
    - GF_SAFEALLOC
    - gf_list_new
    - init_frame
    - 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_list_count
    - gf_free
    - empty_list
    - GF_LOG
    - gf_list_del
    - socket_simu
    - gf_m2ts_ipdatagram_reader
    - GF_SAFEALLOC
    - gf_m2ts_compare_ip
    - gf_list_get
    - gf_m2ts_Delete_IpPacket
    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:
    - GF_LOG
    - socket_simu
    - memcpy
    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:
    - GF_LOG
    - memcpy
    - 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:
    - section_DSMCC_INT
    - GF_SAFEALLOC
    - gf_assert
    - gf_list_new
    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: 4
    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:539,1
    - Dst: dsmcc_pto_descriptor_loop
      Src: /src/gpac/src/media_tools/dvb_mpe.c:541,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:547,1
    - Dst: dsmcc_pto_descriptor_loop
      Src: /src/gpac/src/media_tools/dvb_mpe.c:551,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:554,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 3
    argNames:
    - ip_platform
    - data
    - data_size
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 516
    functionDepth: 1
    functionLinenumber: 516
    functionLinenumberEnd: 558
    functionName: section_DSMCC_INT
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - dsmcc_pto_descriptor_loop
    - gf_free
    - dsmcc_pto_platform_descriptor_loop
    - GF_SAFEALLOC
    - gf_list_add
    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:567,1
    - Dst: platform_descriptorDSMCC_INT_UNT
      Src: /src/gpac/src/media_tools/dvb_mpe.c:574,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ip_platform
    - data
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 580
    functionName: dsmcc_pto_platform_descriptor_loop
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - platform_descriptorDSMCC_INT_UNT
    - gf_assert
    linkageType: ''
    returnType: u32
    signature: u32 dsmcc_pto_platform_descriptor_loop(GF_M2TS_IP_PLATFORM* ip_platform,
      u8 *data)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_ip_platform_descriptor
      Src: /src/gpac/src/media_tools/dvb_mpe.c:599,1
    - Dst: gf_ip_platform_provider_descriptor
      Src: /src/gpac/src/media_tools/dvb_mpe.c:604,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ip_platform
    - data
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 612
    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:618,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_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_malloc
    - gf_assert
    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:631,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:632,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:633,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ip_platform
    - data
    argTypes:
    - GF_M2TS_IP_PLATFORM*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 626
    functionDepth: 1
    functionLinenumber: 626
    functionLinenumberEnd: 636
    functionName: gf_ip_platform_provider_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - memcpy
    - gf_malloc
    - gf_assert
    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:651,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 641
    functionDepth: 1
    functionLinenumber: 641
    functionLinenumberEnd: 657
    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: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_m2ts_target_ip
      Src: /src/gpac/src/media_tools/dvb_mpe.c:676,1
    - Dst: descriptorTime_slice_fec_identifier
      Src: /src/gpac/src/media_tools/dvb_mpe.c:682,1
    - Dst: descriptorLocation
      Src: /src/gpac/src/media_tools/dvb_mpe.c:687,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 660
    functionDepth: 1
    functionLinenumber: 660
    functionLinenumberEnd: 696
    functionName: descriptorDSMCC_INT_UNT
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 2
    functionsReached:
    - descriptorLocation
    - descriptorTime_slice_fec_identifier
    - gf_m2ts_target_ip
    linkageType: ''
    returnType: u32
    signature: u32 descriptorDSMCC_INT_UNT(GF_M2TS_IP_Stream *ip_str,u8 *data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:707,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 711
    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: 721
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 721
    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:727,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:732,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:736,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:739,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - ip_str
    - data
    argTypes:
    - GF_M2TS_IP_Stream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 723
    functionDepth: 1
    functionLinenumber: 723
    functionLinenumberEnd: 743
    functionName: gf_m2ts_target_ip
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_list_add
    - GF_SAFEALLOC
    - memcpy
    - gf_list_new
    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:758,1
    - Dst: encode_data
      Src: /src/gpac/src/media_tools/dvb_mpe.c:761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:763,1
    - Dst: setRowRS
      Src: /src/gpac/src/media_tools/dvb_mpe.c:765,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - mff
    argTypes:
    - MPE_FEC_FRAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 747
    functionDepth: 1
    functionLinenumber: 747
    functionLinenumberEnd: 768
    functionName: encode_fec
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - getRowFromADT
    - setRowRS
    - encode_data
    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:779,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:780,1
    - Dst: initialize_ecc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:782,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:784,1
    - Dst: getRowFromADT
      Src: /src/gpac/src/media_tools/dvb_mpe.c:790,1
    - Dst: getRowFromRS
      Src: /src/gpac/src/media_tools/dvb_mpe.c:791,1
    - Dst: encode_data
      Src: /src/gpac/src/media_tools/dvb_mpe.c:793,1
    - Dst: decode_data
      Src: /src/gpac/src/media_tools/dvb_mpe.c:795,1
    - Dst: check_syndrome
      Src: /src/gpac/src/media_tools/dvb_mpe.c:796,1
    - Dst: correct_errors_erasures
      Src: /src/gpac/src/media_tools/dvb_mpe.c:801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:803,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:809,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:812,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - mff
    argTypes:
    - MPE_FEC_FRAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 771
    functionDepth: 1
    functionLinenumber: 771
    functionLinenumberEnd: 813
    functionName: decode_fec
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - GF_LOG
    - getRowFromADT
    - decode_data
    - check_syndrome
    - memset
    - initialize_ecc
    - memcpy
    - correct_errors_erasures
    - getRowFromRS
    - encode_data
    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:829,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:832,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:833,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:840,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:843,1
    - Dst: gf_m2ts_ipdatagram_reader
      Src: /src/gpac/src/media_tools/dvb_mpe.c:853,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:865,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:876,1
    - Dst: gf_m2ts_compare_ip
      Src: /src/gpac/src/media_tools/dvb_mpe.c:878,1
    - Dst: empty_list
      Src: /src/gpac/src/media_tools/dvb_mpe.c:905,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dvb_mpe.c:906,1
    - Dst: gf_m2ts_Delete_IpPacket
      Src: /src/gpac/src/media_tools/dvb_mpe.c:908,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 2
    argNames:
    - mff
    - ts
    argTypes:
    - MPE_FEC_FRAME*
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 816
    functionDepth: 2
    functionLinenumber: 816
    functionLinenumberEnd: 910
    functionName: gf_m2ts_gather_ipdatagram_information
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - empty_list
    - gf_list_del
    - gf_assert
    - gf_m2ts_ipdatagram_reader
    - GF_SAFEALLOC
    - gf_m2ts_compare_ip
    - gf_list_get
    - gf_m2ts_Delete_IpPacket
    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:922,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:924,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:925,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:927,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:928,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:930,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:938,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:945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:949,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:956,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:961,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:971,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:972,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:978,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:984,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:997,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1002,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1003,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1004,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1005,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1006,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 63
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1008
      start: 912
    functionDepth: 1
    functionLinenumber: 912
    functionLinenumberEnd: 1008
    functionName: gf_dvb_mpe_print_info
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - 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:1019,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1021,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1023,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1024,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1026,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1035,1
    - Dst: gf_sk_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1039,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1041,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1045,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1047,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1049,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1061,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1061,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1064,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1071,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1073,1
    - Dst: gf_sleep
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1075,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: 1077
      start: 1011
    functionDepth: 1
    functionLinenumber: 1011
    functionLinenumberEnd: 1077
    functionName: socket_simu
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - sprintf
    - gf_free
    - gf_sk_is_multicast_address
    - gf_sk_send
    - gf_sleep
    - gf_sk_setup_multicast
    - GF_LOG
    - GF_4CC
    - gf_list_new
    - GF_SAFEALLOC
    - gf_sk_new
    - gf_sk_bind
    - gf_list_get
    - gf_list_add
    - gf_error_to_string
    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:1087,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1092,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1096,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1099,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1100,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1105,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - mff
    - rows
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    assertStmts:
    - condition: (mff != NULL)
      pos:
        line_end: 1086
        line_start: 1086
        source_file: /src/gpac/src/media_tools/dvb_mpe.c
    constantsTouched: []
    func_position:
      end: 1108
      start: 1085
    functionDepth: 1
    functionLinenumber: 1085
    functionLinenumberEnd: 1108
    functionName: init_frame
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - assert
    - gf_calloc
    - gf_list_new
    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:1114,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1115,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1116,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1117,1
    - Dst: empty_list
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - mff
    argTypes:
    - MPE_FEC_FRAME*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1110
    functionDepth: 2
    functionLinenumber: 1110
    functionLinenumberEnd: 1125
    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: 1137
      start: 1128
    functionDepth: 0
    functionLinenumber: 1128
    functionLinenumberEnd: 1137
    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:1144,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: 1143
        line_start: 1143
        source_file: /src/gpac/src/media_tools/dvb_mpe.c
    constantsTouched: []
    func_position:
      end: 1150
      start: 1140
    functionDepth: 0
    functionLinenumber: 1140
    functionLinenumberEnd: 1150
    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:1156,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: 1155
        line_start: 1155
        source_file: /src/gpac/src/media_tools/dvb_mpe.c
    constantsTouched: []
    func_position:
      end: 1163
      start: 1152
    functionDepth: 0
    functionLinenumber: 1152
    functionLinenumberEnd: 1163
    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:1167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - mff
    - offset
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1170
      start: 1164
    functionDepth: 1
    functionLinenumber: 1164
    functionLinenumberEnd: 1170
    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:1179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1182,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1185,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - data
    - length
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1172
    functionDepth: 1
    functionLinenumber: 1172
    functionLinenumberEnd: 1190
    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:1198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1205,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1209,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1212,1
    - Dst: setErrorIndicator
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1214,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1217,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1221,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: 1224
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1224
    functionName: setIpDatagram
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 1
    functionsReached:
    - setErrorIndicator
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_add
    - memcpy
    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:1229,1
    - Dst: setErrorIndicator
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1230,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1233,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1234,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: 1237
      start: 1226
    functionDepth: 1
    functionLinenumber: 1226
    functionLinenumberEnd: 1237
    functionName: setColRS
    functionSourceFile: /src/gpac/src/media_tools/dvb_mpe.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - setErrorIndicator
    - memcpy
    - gf_assert
    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:1241,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: 1242
      start: 1239
    functionDepth: 0
    functionLinenumber: 1239
    functionLinenumberEnd: 1242
    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: 1258
      start: 1244
    functionDepth: 0
    functionLinenumber: 1244
    functionLinenumberEnd: 1258
    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:1273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dvb_mpe.c:1275,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - mff
    - row
    - errasures
    argTypes:
    - MPE_FEC_FRAME*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1260
    functionDepth: 1
    functionLinenumber: 1260
    functionLinenumberEnd: 1277
    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:1281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - offset
    - length
    argTypes:
    - u32*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1279
    functionDepth: 0
    functionLinenumber: 1279
    functionLinenumberEnd: 1282
    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_dom_event_target_new
    - GF_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - GF_HTML_SourceBuffer*::parser::CloseService
    - gf_mse_source_buffer_del
    - gf_list_get
    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:
    - gf_sg_fire_dom_event
    - memset
    - 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_node_get_graph
    - gf_event_target_get_node
    - 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_dom_event_target_new
    - sprintf
    - gf_th_new
    - GF_SAFEALLOC
    - gf_html_timeranges_new
    - gf_list_new
    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_list_add
    - gf_mse_fire_event
    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_arraybuffer_del
    - gf_list_rem
    - gf_list_get
    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_mse_reset_input_buffer
    - gf_list_count
    - 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_source_buffer_reset_parser
    - gf_mse_fire_event
    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_mse_remove_active_source_buffer
    - gf_mse_source_buffer_abort
    - gf_list_find
    - gf_mse_source_buffer_del
    - 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_mse_reset_input_buffer
    - gf_list_count
    - gf_odf_desc_del
    - gf_th_del
    - gf_free
    - gf_list_del
    - gf_arraybuffer_del
    - gf_list_get
    - 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:
    - strchr
    - GF_LOG
    - gf_modules_load_by_name
    - strrchr
    - gf_opts_get_key
    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:
    - sprintf
    - gf_mx_new
    - gf_html_media_track_new
    - gf_list_new
    - gf_list_add
    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_HTML_SourceBuffer*::parser::GetServiceDescriptor
    - gf_list_count
    - gf_mse_source_buffer_add_track
    - gf_list_get
    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_mse_source_buffer_add_track
    - gf_list_get
    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_list_count
    - gf_html_timeranges_new
    - gf_list_get
    - gf_html_timeranges_add_start
    - gf_html_timeranges_add_end
    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_list_count
    - gf_html_timeranges_reset
    - gf_free
    - gf_list_del
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - gf_html_timeranges_del
    - gf_html_timeranges_intersection
    - gf_mse_timeranges_from_track_packets
    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_mx_v
    - gf_list_get
    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_list_count
    - GF_LOG
    - gf_mx_v
    - TIMESCALE_TO_SECONDS
    - gf_mx_p
    - gf_list_get
    - 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_count
    - GF_LOG
    - gf_mx_v
    - TIMESCALE_TO_SECONDS
    - gf_mx_p
    - gf_list_get
    - gf_list_insert
    - 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_count
    - gf_mse_process_coded_frame
    - gf_mse_source_buffer_set_timescale
    - gf_mse_remove_frames_from_to
    - gf_mse_find_overlapped_packet
    - gf_list_get
    - SECONDS_TO_TIMESCALE
    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_list_count
    - gf_free
    - gf_malloc
    - GF_HTML_SourceBuffer*::parser::ConnectService
    - GF_LOG
    - gf_mse_process_coded_frame
    - GF_HTML_SourceBuffer*::parser::ChannelReleaseSLP
    - TIMESCALE_TO_SECONDS
    - GF_HTML_SourceBuffer*::parser::ChannelGetSLP
    - gf_mse_source_buffer_set_update
    - GF_SAFEALLOC
    - gf_arraybuffer_del
    - gf_list_get
    - assert
    - memcpy
    - 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:
    - sprintf
    - gf_malloc
    - GF_LOG
    - gf_th_new
    - gf_mse_source_buffer_set_update
    - gf_isom_probe_file
    - assert
    - gf_list_add
    - gf_th_run
    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_list_count
    - gf_mse_remove_frames_from_to
    - GF_LOG
    - gf_mse_source_buffer_set_timescale
    - gf_mx_v
    - gf_mse_source_buffer_set_update
    - gf_mx_p
    - gf_list_get
    - SECONDS_TO_TIMESCALE
    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_list_add
    - gf_th_new
    - gf_th_run
    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_mse_source_buffer_setup_tracks
    - gf_service_command
    - gf_service_disconnect_ack
    - GF_LOG
    - gf_mse_source_buffer_set_update
    - gf_service_declare_media
    - gf_list_get
    - gf_service_connect_ack
    - gf_mse_source_buffer_store_track_desc
    - 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_list_count
    - gf_free
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - 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_list_count
    - GF_LOG
    - gf_mx_v
    - TIMESCALE_TO_SECONDS
    - gf_mx_p
    - gf_list_get
    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_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_route_static_files_del(GF_List *files)
  - BBCount: 8
    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:295,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:296,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:298,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:299,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:300,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - routedmx
    - rs
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTESession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 301
    functionName: gf_route_route_session_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_route_static_files_del
    - gf_sk_group_unregister
    - gf_list_pop_back
    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:305,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:308,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:309,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:312,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:313,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 1
    argNames:
    - o
    argTypes:
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 314
    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:319,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:320,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:322,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:323,1
    - Dst: gf_route_lct_obj_del
      Src: /src/gpac/src/media_tools/route_dmx.c:324,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:328,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:329,1
    - Dst: gf_route_route_session_del
      Src: /src/gpac/src/media_tools/route_dmx.c:330,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:332,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_free
      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
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:339,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:340,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 2
    argNames:
    - routedmx
    - s
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 316
    functionDepth: 3
    functionLinenumber: 316
    functionLinenumberEnd: 341
    functionName: gf_route_service_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_list_count
    - gf_route_route_session_del
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_sk_group_unregister
    - gf_list_pop_back
    - gf_route_lct_obj_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:348,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:349,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:350,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/route_dmx.c:351,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:352,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:354,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:355,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:356,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:358,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/media_tools/route_dmx.c:360,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:362,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:363,1
    - Dst: gf_route_lct_obj_del
      Src: /src/gpac/src/media_tools/route_dmx.c:364,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:366,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/route_dmx.c:368,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:369,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 343
    functionDepth: 4
    functionLinenumber: 343
    functionLinenumberEnd: 370
    functionName: gf_route_dmx_del
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_list_count
    - gf_free
    - gf_xml_dom_del
    - gf_route_service_del
    - gf_route_lct_obj_del
    - gf_list_del
    - gf_bs_del
    - gf_mx_del
    - gf_list_pop_back
    - gf_sk_group_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:376,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/media_tools/route_dmx.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:379,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/media_tools/route_dmx.c:382,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/media_tools/route_dmx.c:385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:387,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: 391
      start: 372
    functionDepth: 1
    functionLinenumber: 372
    functionLinenumberEnd: 391
    functionName: routedmx_setup_socket
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_connect
    - gf_sk_is_multicast_address
    - gf_sk_setup_multicast
    - GF_LOG
    - gf_sk_bind
    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:399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:401,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/route_dmx.c:407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:409,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:410,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:413,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:415,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:416,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:421,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:422,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/media_tools/route_dmx.c:425,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:427,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:428,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:436,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:438,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:439,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:444,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:445,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/media_tools/route_dmx.c:449,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:452,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/route_dmx.c:457,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:469,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:472,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:475,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:478,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:480,1
    - Dst: gf_route_dmx_del
      Src: /src/gpac/src/media_tools/route_dmx.c:482,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:485,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:488,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 80
    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: 490
      start: 393
    functionDepth: 5
    functionLinenumber: 393
    functionLinenumberEnd: 490
    functionName: gf_route_dmx_new_internal
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_set_buffer_size
    - routedmx_setup_socket
    - gf_route_dmx_del
    - gf_malloc
    - GF_LOG
    - gf_mx_new
    - gf_bs_new
    - gf_sk_group_new
    - gf_xml_dom_new
    - GF_SAFEALLOC
    - gf_sk_has_nrt_netcap
    - gf_sk_new_ex
    - gf_list_new
    - gf_sk_group_register
    - gf_sk_set_usec_wait
    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:496,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:497,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:502,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:504,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:505,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: 507
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 507
    functionName: gf_route_register_service_sockets
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_sk_group_unregister
    - 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:515,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/route_dmx.c:517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:529,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:533,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:543,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:544,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:546,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:547,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:548,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:553,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:554,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:557,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:559,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:561,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:564,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:571,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:587,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:593,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:596,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: 599
      start: 509
    functionDepth: 4
    functionLinenumber: 509
    functionLinenumberEnd: 599
    functionName: gf_route_create_service
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - sprintf
    - routedmx_setup_socket
    - gf_route_service_del
    - gf_sk_set_buffer_size
    - gf_route_register_service_sockets
    - GF_LOG
    - gf_sk_group_register
    - GF_SAFEALLOC
    - GF_ROUTEDmx*::on_event
    - gf_sk_has_nrt_netcap
    - gf_sk_new_ex
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - gf_sk_set_usec_wait
    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:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 601
    functionDepth: 6
    functionLinenumber: 601
    functionLinenumberEnd: 607
    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:613,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 608
    functionDepth: 6
    functionLinenumber: 608
    functionLinenumberEnd: 617
    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_create_service
    - gf_route_dmx_new_internal
    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:625,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 620
    functionDepth: 6
    functionLinenumber: 620
    functionLinenumberEnd: 626
    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:632,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 627
    functionDepth: 6
    functionLinenumber: 627
    functionLinenumberEnd: 636
    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_create_service
    - gf_route_dmx_new_internal
    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:640,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:643,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: 645
      start: 638
    functionDepth: 6
    functionLinenumber: 638
    functionLinenumberEnd: 645
    functionName: gf_dvb_mabr_dmx_new
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_create_service
    - gf_route_dmx_new_internal
    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:663,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:679,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:686,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: 691
      start: 647
    functionDepth: 2
    functionLinenumber: 647
    functionLinenumberEnd: 691
    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: 700
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 700
    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: 708
      start: 702
    functionDepth: 0
    functionLinenumber: 702
    functionLinenumberEnd: 708
    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:715,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:717,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:720,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:729,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:730,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:730,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:734,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:736,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:738,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:739,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:739,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:740,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:741,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:756,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:762,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:763,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:768,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:769,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:773,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:774,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:776,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:779,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:780,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:781,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:785,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:786,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 62
    argCount: 2
    argNames:
    - routedmx
    - root
    argTypes:
    - GF_ROUTEDmx*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 711
    functionDepth: 5
    functionLinenumber: 711
    functionLinenumberEnd: 788
    functionName: gf_route_dmx_process_slt
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_route_service_del
    - atoi
    - GF_LOG
    - gf_list_del
    - gf_list_enum
    - gf_list_del_item
    - gf_route_create_service
    - GF_ROUTEDmx*::on_event
    - strcmp
    - gf_list_get
    - gf_list_pop_back
    - sscanf
    - gf_list_clone
    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: 800
      start: 791
    functionDepth: 0
    functionLinenumber: 791
    functionLinenumberEnd: 800
    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:805,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:808,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:809,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:810,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:815,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:818,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:822,1
    - Dst: get_lct_obj_status_name
      Src: /src/gpac/src/media_tools/route_dmx.c:822,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:837,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:838,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:850,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:854,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:856,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:857,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/route_dmx.c:857,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:858,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/route_dmx.c:861,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:862,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:865,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:867,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:871,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:873,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: 877
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 877
    functionName: gf_route_obj_to_reservoir
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_list_get
    - gf_list_del_item
    - gf_assert
    - gf_list_find
    - GF_ROUTEDmx*::on_event
    - gf_log_tool_level_on
    - gf_mx_p
    - gf_mx_v
    - memset
    - gf_list_add
    - get_lct_obj_status_name
    linkageType: ''
    returnType: void
    signature: void gf_route_obj_to_reservoir(GF_ROUTEDmx *routedmx, GF_ROUTEService
      *s, GF_LCTObject *obj)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:881,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:883,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:886,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:892,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:894,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:895,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:899,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:900,1
    - Dst: gf_route_static_files_del
      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
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:913,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:914,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:915,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:916,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:917,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 3
    argNames:
    - routedmx
    - s
    - lc
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_ROUTELCTChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 879
    functionDepth: 2
    functionLinenumber: 879
    functionLinenumberEnd: 918
    functionName: gf_route_lct_removed
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_route_obj_to_reservoir
    - gf_sk_del
    - gf_free
    - gf_route_static_files_del
    - gf_list_del_item
    - gf_sk_group_unregister
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_route_lct_removed(GF_ROUTEDmx *routedmx, GF_ROUTEService *s,
      GF_ROUTELCTChannel *lc)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:955,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:958,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:970,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/route_dmx.c:974,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/route_dmx.c:975,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/route_dmx.c:976,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/route_dmx.c:978,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:986,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:993,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:1002,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:1011,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1016,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:1042,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:1050,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1056,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 112
    argCount: 4
    argNames:
    - routedmx
    - s
    - obj
    - final_push
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - GF_LCTObject*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1059
      start: 920
    functionDepth: 2
    functionLinenumber: 920
    functionLinenumberEnd: 1059
    functionName: gf_route_dmx_push_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - gf_route_obj_to_reservoir
    - gf_crc_32
    - gf_strcat
    - GF_LOG
    - gf_assert
    - GF_ROUTEDmx*::on_event
    - gf_mx_p
    - gf_mx_v
    - memset
    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:1067,1
    - Dst: isprint
      Src: /src/gpac/src/media_tools/route_dmx.c:1078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1079,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1083,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:1084,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1085,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1088,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1088,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:1088,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1092,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1095,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1097,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1105,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1107,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1119,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1121,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1122,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1123,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1123,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1124,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1124,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1125,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1125,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1126,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:1126,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1140,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1141,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1143,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1143,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1167,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1168,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1177,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/route_dmx.c:1182,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1187,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/route_dmx.c:1188,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1189,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1196,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1197,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1213,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:1226,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1230,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:1234,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1247,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1248,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/route_dmx.c:1250,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1258,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1265,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1269,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:1277,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1287,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1289,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1292,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1292,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1305,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:1317,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1318,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:1322,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1327,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1330,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1338,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:1342,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:1356,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/route_dmx.c:1356,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/route_dmx.c:1357,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1358,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: 1362
      start: 1063
    functionDepth: 2
    functionLinenumber: 1063
    functionLinenumberEnd: 1362
    functionName: gf_route_dmx_process_dvb_flute_signaling
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_parse_string
    - gf_list_count
    - gf_route_obj_to_reservoir
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_add
    - strstr
    - gf_xml_dom_get_error
    - gf_malloc
    - gf_crc_32
    - gf_list_find
    - isprint
    - gf_list_get
    - gf_mx_v
    - gf_realloc
    - atoi
    - gf_list_enum
    - gf_sys_clock_high_res
    - gf_sys_clock
    - strrchr
    - gf_mx_p
    - strcmp
    - gf_list_pop_back
    - sscanf
    - gf_error_to_string
    - gf_xml_dom_get_root
    - GF_LOG
    - gf_list_del_item
    - gf_strdup
    - memset
    - 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:1371,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1372,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - n
    - att_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1366
    functionDepth: 1
    functionLinenumber: 1366
    functionLinenumberEnd: 1375
    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:1382,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1383,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - n
    - child_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1377
    functionDepth: 1
    functionLinenumber: 1377
    functionLinenumberEnd: 1386
    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:1392,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1395,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 2
    argNames:
    - n
    - child_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1387
    functionDepth: 1
    functionLinenumber: 1387
    functionLinenumberEnd: 1400
    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:1406,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1407,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - n
    - child_name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1410
      start: 1401
    functionDepth: 1
    functionLinenumber: 1401
    functionLinenumberEnd: 1410
    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:1416,1
    - Dst: isprint
      Src: /src/gpac/src/media_tools/route_dmx.c:1422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1423,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1428,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:1429,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1433,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:1433,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:1433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1436,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:1437,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1438,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1443,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1446,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1448,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1457,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1460,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1463,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1464,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1465,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1469,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1471,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: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1485,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1487,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1491,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1492,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1493,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1501,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1504,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1507,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1508,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1509,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1512,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:1514,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1518,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1519,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:1522,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1525,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1526,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1528,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1530,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1536,1
    - Dst: gf_route_create_service
      Src: /src/gpac/src/media_tools/route_dmx.c:1537,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1539,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1541,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:1543,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:1544,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1545,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1547,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1548,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1549,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1550,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1561,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1563,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1564,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1565,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:1570,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1572,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1573,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1575,1
    - Dst: _xml_get_child_text
      Src: /src/gpac/src/media_tools/route_dmx.c:1579,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1582,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1583,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1587,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1588,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1589,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1591,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1597,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1598,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1599,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:1604,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1606,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:1608,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1611,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1613,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:1617,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:1618,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:1621,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:1623,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1625,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1626,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1627,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1628,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:1631,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:1634,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1637,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:1642,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:1646,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:1657,1
    - Dst: _xml_get_child_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1661,1
    - Dst: gf_route_service_setup_dash
      Src: /src/gpac/src/media_tools/route_dmx.c:1683,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:1686,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1687,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1689,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1691,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1693,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:1695,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1698,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1709,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1710,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1711,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1713,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:1714,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:1716,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:1717,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:1718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1722,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1723,1
    - Dst: gf_route_lct_removed
      Src: /src/gpac/src/media_tools/route_dmx.c:1724,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1729,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1730,1
    - Dst: gf_route_route_session_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1731,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1733,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:1736,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1741,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:1742,1
    - Dst: gf_route_service_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1743,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:1745,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: 1748
      start: 1413
    functionDepth: 5
    functionLinenumber: 1413
    functionLinenumberEnd: 1748
    functionName: gf_route_dmx_process_dvb_mcast_signaling
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_parse_string
    - gf_list_count
    - _xml_get_child_text
    - _xml_get_child_count
    - GF_SAFEALLOC
    - gf_sk_has_nrt_netcap
    - gf_route_service_setup_dash
    - gf_sk_group_register
    - gf_list_add
    - gf_sk_set_usec_wait
    - gf_xml_dom_get_error
    - strstr
    - gf_route_route_session_del
    - gf_route_service_del
    - gf_route_register_service_sockets
    - gf_crc_32
    - gf_route_lct_removed
    - _xml_get_child
    - gf_route_create_service
    - isprint
    - gf_list_get
    - gf_list_clone
    - gf_sk_set_buffer_size
    - atoi
    - gf_list_enum
    - strcmp
    - gf_list_new
    - gf_sk_new_ex
    - gf_list_pop_back
    - sscanf
    - gf_error_to_string
    - gf_xml_dom_get_root
    - routedmx_setup_socket
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_list_del_item
    - _xml_get_attr
    - gf_strdup
    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:1756,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1758,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1760,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1762,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:1764,1
    - Dst: gf_route_dmx_process_dvb_flute_signaling
      Src: /src/gpac/src/media_tools/route_dmx.c:1772,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1775,1
    - Dst: gf_route_dmx_process_dvb_mcast_signaling
      Src: /src/gpac/src/media_tools/route_dmx.c:1780,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:1789,1
    - Dst: gf_route_service_setup_dash
      Src: /src/gpac/src/media_tools/route_dmx.c:1801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1809,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1817,1
    - Dst: gf_route_dmx_push_object
      Src: /src/gpac/src/media_tools/route_dmx.c:1826,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: 1827
      start: 1750
    functionDepth: 6
    functionLinenumber: 1750
    functionLinenumberEnd: 1827
    functionName: gf_route_dmx_process_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_obj_to_reservoir
    - gf_crc_32
    - GF_LOG
    - gf_route_dmx_push_object
    - gf_route_dmx_process_dvb_flute_signaling
    - gf_route_dmx_process_dvb_mcast_signaling
    - gf_route_service_setup_dash
    - strstr
    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:1833,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - GF_ROUTEService*
    - GF_LCTObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1847
      start: 1829
    functionDepth: 0
    functionLinenumber: 1829
    functionLinenumberEnd: 1847
    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:1853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1856,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:1879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1885,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1893,1
    - Dst: gf_route_service_flush_object
      Src: /src/gpac/src/media_tools/route_dmx.c:1896,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:1898,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:1900,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1902,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: 1909
      start: 1849
    functionDepth: 7
    functionLinenumber: 1849
    functionLinenumberEnd: 1909
    functionName: gf_route_service_purge_old_objects
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_route_obj_to_reservoir
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_route_service_flush_object
    - gf_list_get
    - 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:1929,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:1946,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:1947,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1955,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:1956,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1964,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:1966,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:1970,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:1972,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:1977,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:1979,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:1998,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:1999,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2003,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2040,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2045,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2047,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2049,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2053,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:2062,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2066,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2067,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2071,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2076,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2080,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2089,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2091,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/route_dmx.c:2094,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2095,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/route_dmx.c:2095,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2096,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2102,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2108,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2109,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2119,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2125,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2126,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2130,1
    - Dst: gf_route_service_flush_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2142,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2143,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:2146,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:2149,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2157,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2162,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2177,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2186,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:2187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2190,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:2194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2198,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2235,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:2237,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/route_dmx.c:2245,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/route_dmx.c:2246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2260,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:2261,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2275,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2276,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:2285,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:2286,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:2290,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2292,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2293,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2296,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2299,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:2300,1
    - Dst: gf_route_dmx_push_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2318,1
    - Dst: gf_route_service_flush_object
      Src: /src/gpac/src/media_tools/route_dmx.c:2333,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: 2334
      start: 1911
    functionDepth: 8
    functionLinenumber: 1911
    functionLinenumberEnd: 2334
    functionName: gf_route_service_gather_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_route_obj_to_reservoir
    - gf_route_service_purge_old_objects
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_add
    - gf_route_dmx_process_object
    - gf_malloc
    - gf_list_find
    - gf_route_dmx_push_object
    - GF_ROUTEDmx*::on_event
    - gf_mx_v
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_sys_clock_high_res
    - gf_sys_clock
    - gf_mx_p
    - memmove
    - MAX
    - gf_list_pop_back
    - GF_LOG
    - MIN
    - gf_route_service_flush_object
    - memset
    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:2338,1
    - Dst: gf_route_register_service_sockets
      Src: /src/gpac/src/media_tools/route_dmx.c:2344,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2352,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/route_dmx.c:2353,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2375,1
    - Dst: GF_ROUTEDmx*::on_event
      Src: /src/gpac/src/media_tools/route_dmx.c:2376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2378,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: 2381
      start: 2336
    functionDepth: 2
    functionLinenumber: 2336
    functionLinenumberEnd: 2381
    functionName: gf_route_service_setup_dash
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 2
    functionsReached:
    - gf_route_register_service_sockets
    - GF_LOG
    - GF_ROUTEDmx*::on_event
    - strlen
    - memset
    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:2390,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:2391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2393,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2393,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:2393,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2398,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2403,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2406,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2407,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2409,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2409,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2412,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2412,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2414,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: 2418
      start: 2383
    functionDepth: 1
    functionLinenumber: 2383
    functionLinenumberEnd: 2418
    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_xml_dom_parse_string
    - atoi
    - GF_LOG
    - gf_list_enum
    - stricmp
    - strcmp
    - gf_xml_dom_get_error
    - gf_error_to_string
    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: 92
    BranchProfiles: []
    Callsites:
    - Dst: gf_crc_32
      Src: /src/gpac/src/media_tools/route_dmx.c:2431,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:2431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2435,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:2437,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2439,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2440,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2441,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2442,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2443,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2443,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2451,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:2452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2454,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2454,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:2454,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2455,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2456,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2460,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2467,1
    - Dst: _xml_get_child_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2468,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2471,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2472,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2473,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2475,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2476,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2477,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2480,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2481,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2482,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2490,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2491,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2493,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2494,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2498,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2499,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2507,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2508,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2510,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2511,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2512,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2515,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2518,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2519,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:2522,1
    - Dst: gf_sk_has_nrt_netcap
      Src: /src/gpac/src/media_tools/route_dmx.c:2523,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:2526,1
    - Dst: routedmx_setup_socket
      Src: /src/gpac/src/media_tools/route_dmx.c:2527,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2529,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2530,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2531,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2532,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2533,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2534,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2535,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:2538,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:2541,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2548,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2552,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2556,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2557,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2559,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2560,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2567,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2568,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2569,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2574,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2579,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2580,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2581,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2587,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2589,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2592,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2593,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2594,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2599,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2602,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2606,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2607,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2611,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2614,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2616,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2621,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2622,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2622,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2623,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2628,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2631,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2635,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2638,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2639,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2645,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2647,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2652,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2653,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2654,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/media_tools/route_dmx.c:2655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2659,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2669,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2671,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2672,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2675,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2676,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2683,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2684,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2689,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2692,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2694,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2695,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2696,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/route_dmx.c:2699,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2710,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/media_tools/route_dmx.c:2712,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2713,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2715,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:2717,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:2717,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:2718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2721,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2722,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/route_dmx.c:2723,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2729,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2731,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2733,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2734,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2735,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2737,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2739,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2741,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2742,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2746,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:2747,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:2749,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2754,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2755,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2757,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2759,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2761,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/route_dmx.c:2764,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/route_dmx.c:2766,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2770,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2772,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2774,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2778,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:2784,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2787,1
    - Dst: gf_mpd_check_print_format
      Src: /src/gpac/src/media_tools/route_dmx.c:2789,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2792,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2793,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/route_dmx.c:2799,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2810,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2812,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:2817,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2818,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2818,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2819,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2819,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2820,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2820,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2821,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2822,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2825,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/route_dmx.c:2825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2828,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2835,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2840,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2844,1
    - Dst: _xml_get_child
      Src: /src/gpac/src/media_tools/route_dmx.c:2845,1
    - Dst: _xml_get_attr
      Src: /src/gpac/src/media_tools/route_dmx.c:2847,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2849,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2850,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2858,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2859,1
    - Dst: gf_route_lct_removed
      Src: /src/gpac/src/media_tools/route_dmx.c:2860,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2862,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:2864,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/route_dmx.c:2865,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/route_dmx.c:2866,1
    - Dst: gf_route_route_session_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2867,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/route_dmx.c:2869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2872,1
    CyclomaticComplexity: 150
    EdgeCount: 150
    ICount: 401
    argCount: 4
    argNames:
    - routedmx
    - s
    - content
    - content_location
    argTypes:
    - GF_ROUTEDmx*
    - GF_ROUTEService*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2876
      start: 2422
    functionDepth: 3
    functionLinenumber: 2422
    functionLinenumberEnd: 2876
    functionName: gf_route_service_setup_stsid
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_xml_dom_parse_string
    - gf_route_obj_to_reservoir
    - _xml_get_child_count
    - GF_SAFEALLOC
    - gf_sk_has_nrt_netcap
    - gf_sk_group_register
    - gf_list_add
    - gf_sk_set_usec_wait
    - gf_xml_dom_get_error
    - strstr
    - gf_mpd_check_print_format
    - gf_route_route_session_del
    - strchr
    - gf_crc_32
    - gf_route_lct_removed
    - _xml_get_child
    - gf_list_get
    - gf_dynstrcat
    - gf_list_clone
    - gf_sk_set_buffer_size
    - atoi
    - gf_strict_atoui
    - gf_list_enum
    - strcmp
    - gf_list_new
    - strlen
    - gf_sk_new_ex
    - gf_list_pop_back
    - sscanf
    - gf_error_to_string
    - gf_xml_dom_get_root
    - gf_sk_del
    - routedmx_setup_socket
    - gf_free
    - GF_LOG
    - gf_list_del
    - stricmp
    - gf_list_del_item
    - _xml_get_attr
    - gf_strdup
    - 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:2890,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2893,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:2895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2897,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2897,1
    - Dst: isprint
      Src: /src/gpac/src/media_tools/route_dmx.c:2909,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2910,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2914,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2917,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2918,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2920,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2924,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2926,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/route_dmx.c:2930,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2940,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:2942,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2943,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2951,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2953,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/route_dmx.c:2954,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2956,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/route_dmx.c:2957,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2958,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2961,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/route_dmx.c:2962,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/route_dmx.c:2963,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:2974,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2975,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2979,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:2979,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2984,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2986,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2990,1
    - Dst: gf_route_service_parse_mbms_enveloppe
      Src: /src/gpac/src/media_tools/route_dmx.c:2991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:2994,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:2994,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:2995,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2998,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:2999,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3000,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3001,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:3003,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3004,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:3008,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:3008,1
    - Dst: gf_route_service_setup_dash
      Src: /src/gpac/src/media_tools/route_dmx.c:3010,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3012,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3016,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3016,1
    - Dst: gf_route_service_setup_stsid
      Src: /src/gpac/src/media_tools/route_dmx.c:3019,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:3021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3028,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/route_dmx.c:3035,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:3036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3038,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3044,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3045,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3048,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: 3053
      start: 2878
    functionDepth: 4
    functionLinenumber: 2878
    functionLinenumberEnd: 3053
    functionName: gf_route_dmx_process_service_signaling
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_gz_decompress_payload_ex
    - gf_route_service_setup_dash
    - strstr
    - gf_route_service_parse_mbms_enveloppe
    - strchr
    - isprint
    - gf_realloc
    - memcpy
    - gf_list_enum
    - strnicmp
    - strcmp
    - strlen
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - MIN
    - gf_route_service_setup_stsid
    - gf_strdup
    - strncmp
    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:3070,1
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3072,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:3076,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:3080,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/route_dmx.c:3083,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3087,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3088,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3089,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3090,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3091,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3092,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3093,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3094,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3095,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3096,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3100,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3104,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3108,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3116,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3129,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3133,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3134,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3135,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3154,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3167,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3200,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3207,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3208,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3211,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3216,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3217,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3221,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3222,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3234,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3244,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3248,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3251,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3254,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3262,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3266,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3269,1
    - Dst: gf_route_service_gather_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3271,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3276,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3281,1
    - Dst: gf_route_dmx_process_service_signaling
      Src: /src/gpac/src/media_tools/route_dmx.c:3287,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3295,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3298,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: 3303
      start: 3058
    functionDepth: 9
    functionLinenumber: 3058
    functionLinenumberEnd: 3303
    functionName: dmx_process_service_route
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_route_obj_to_reservoir
    - gf_route_dmx_process_service_signaling
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_assert
    - gf_list_enum
    - gf_bs_read_long_int
    - gf_route_service_gather_object
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_reassign_buffer
    - gf_route_dmx_process_object
    - gf_sk_receive_no_select
    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:3318,1
    - Dst: gf_sk_receive_no_select
      Src: /src/gpac/src/media_tools/route_dmx.c:3320,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:3324,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:3328,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/route_dmx.c:3331,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3335,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3336,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3337,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3338,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3339,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3340,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3341,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3342,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3343,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3344,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3345,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3348,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3372,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3376,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3378,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3379,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3382,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/route_dmx.c:3383,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3389,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3390,1
    - Dst: gf_bs_read_u8
      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:3398,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3399,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3407,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/route_dmx.c:3408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3413,1
    - Dst: GF_LOG
      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:3420,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/route_dmx.c:3423,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3430,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/route_dmx.c:3431,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/route_dmx.c:3432,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3445,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3449,1
    - Dst: gf_route_service_gather_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3464,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3469,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: 3473
      start: 3305
    functionDepth: 9
    functionLinenumber: 3305
    functionLinenumberEnd: 3473
    functionName: dmx_process_service_dvb_flute
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_assert
    - gf_list_enum
    - gf_route_service_gather_object
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_reassign_buffer
    - gf_bs_read_u16
    - gf_route_dmx_process_object
    - gf_sk_receive_no_select
    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:3484,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/media_tools/route_dmx.c:3490,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3498,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:3524,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3526,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:3526,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3532,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/route_dmx.c:3535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3537,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/route_dmx.c:3537,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/route_dmx.c:3537,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/route_dmx.c:3541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3543,1
    - Dst: gf_route_dmx_process_slt
      Src: /src/gpac/src/media_tools/route_dmx.c:3549,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 71
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3557
      start: 3475
    functionDepth: 6
    functionLinenumber: 3475
    functionLinenumberEnd: 3557
    functionName: gf_route_dmx_process_lls
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_xml_dom_parse_string
    - gf_route_dmx_process_slt
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_sk_receive_no_select
    - gf_gz_decompress_payload_ex
    - gf_xml_dom_get_error
    - gf_error_to_string
    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:3566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3570,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:3572,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3576,1
    - Dst: gf_route_dmx_process_object
      Src: /src/gpac/src/media_tools/route_dmx.c:3579,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/media_tools/route_dmx.c:3591,1
    - Dst: gf_route_dmx_process_lls
      Src: /src/gpac/src/media_tools/route_dmx.c:3592,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3597,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:3601,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3604,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/media_tools/route_dmx.c:3612,1
    - Dst: GF_ROUTEService*::process_service
      Src: /src/gpac/src/media_tools/route_dmx.c:3613,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3626,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/media_tools/route_dmx.c:3627,1
    - Dst: GF_ROUTEService*::process_service
      Src: /src/gpac/src/media_tools/route_dmx.c:3628,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 67
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3643
      start: 3559
    functionDepth: 7
    functionLinenumber: 3559
    functionLinenumberEnd: 3643
    functionName: gf_route_dmx_process
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_sk_group_select
    - gf_list_count
    - gf_sk_group_sock_is_set
    - gf_list_enum
    - gf_route_dmx_process_lls
    - GF_ROUTEService*::process_service
    - gf_list_get
    - 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:3647,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:3649,1
    - Dst: gf_route_service_purge_old_objects
      Src: /src/gpac/src/media_tools/route_dmx.c:3652,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3654
      start: 3645
    functionDepth: 8
    functionLinenumber: 3645
    functionLinenumberEnd: 3654
    functionName: gf_route_dmx_check_timeouts
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_route_service_purge_old_objects
    - gf_list_get
    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: 3659
      start: 3656
    functionDepth: 0
    functionLinenumber: 3656
    functionLinenumberEnd: 3659
    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:3666,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3671
      start: 3661
    functionDepth: 1
    functionLinenumber: 3661
    functionLinenumberEnd: 3671
    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:3679,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:3681,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3686
      start: 3674
    functionDepth: 1
    functionLinenumber: 3674
    functionLinenumberEnd: 3686
    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:3694,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3700,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/route_dmx.c:3701,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3703
      start: 3689
    functionDepth: 1
    functionLinenumber: 3689
    functionLinenumberEnd: 3703
    functionName: gf_route_dmx_print_objects
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void gf_route_dmx_print_objects(GF_ROUTEDmx *routedmx, u32 service_id)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/media_tools/route_dmx.c:3708,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3709,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:3713,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3714,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/route_dmx.c:3716,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - rlct
    - filename
    - toi
    argTypes:
    - GF_ROUTELCTChannel*
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3719
      start: 3706
    functionDepth: 0
    functionLinenumber: 3706
    functionLinenumberEnd: 3719
    functionName: rlct_file_match_template
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - strstr
    - strcmp
    - strlen
    - sscanf
    - strncmp
    linkageType: ''
    returnType: Bool
    signature: Bool rlct_file_match_template(GF_ROUTELCTChannel *rlct, char *filename,
      u32 *toi)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3726,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3734,1
    - Dst: rlct_file_match_template
      Src: /src/gpac/src/media_tools/route_dmx.c:3736,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3758,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3761,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3780,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:3787,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3794,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:3799,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/route_dmx.c:3799,1
    - Dst: gf_route_dmx_keep_or_remove_object_by_name
      Src: /src/gpac/src/media_tools/route_dmx.c:3806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:3813,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: 3818
      start: 3721
    functionDepth: 2
    functionLinenumber: 3721
    functionLinenumberEnd: 3818
    functionName: gf_route_dmx_keep_or_remove_object_by_name
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 1
    functionsReached:
    - gf_route_obj_to_reservoir
    - gf_route_dmx_keep_or_remove_object_by_name
    - GF_LOG
    - gf_list_enum
    - strcmp
    - rlct_file_match_template
    - strstr
    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:3823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - routedmx
    - service_id
    - fileName
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3824
      start: 3820
    functionDepth: 3
    functionLinenumber: 3820
    functionLinenumberEnd: 3824
    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:3829,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: 3830
      start: 3826
    functionDepth: 3
    functionLinenumber: 3826
    functionLinenumberEnd: 3830
    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:3839,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3845,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: 3854
      start: 3832
    functionDepth: 1
    functionLinenumber: 3832
    functionLinenumberEnd: 3854
    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:3863,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3870,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3882,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 22
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3886
      start: 3857
    functionDepth: 2
    functionLinenumber: 3857
    functionLinenumberEnd: 3886
    functionName: gf_route_dmx_remove_first_object
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_obj_to_reservoir
    - gf_list_enum
    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:3894,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3901,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:3911,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 20
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3913
      start: 3888
    functionDepth: 2
    functionLinenumber: 3888
    functionLinenumberEnd: 3913
    functionName: gf_route_dmx_purge_objects
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_route_obj_to_reservoir
    - gf_list_enum
    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:3920,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - routedmx
    - service_id
    - udta
    argTypes:
    - GF_ROUTEDmx*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3926
      start: 3915
    functionDepth: 1
    functionLinenumber: 3915
    functionLinenumberEnd: 3926
    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:3933,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - routedmx
    - service_id
    argTypes:
    - GF_ROUTEDmx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3939
      start: 3928
    functionDepth: 1
    functionLinenumber: 3928
    functionLinenumberEnd: 3939
    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: 3945
      start: 3941
    functionDepth: 0
    functionLinenumber: 3941
    functionLinenumberEnd: 3945
    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: 3951
      start: 3947
    functionDepth: 0
    functionLinenumber: 3947
    functionLinenumberEnd: 3951
    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: 3957
      start: 3953
    functionDepth: 0
    functionLinenumber: 3953
    functionLinenumberEnd: 3957
    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: 3963
      start: 3959
    functionDepth: 0
    functionLinenumber: 3959
    functionLinenumberEnd: 3963
    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: 3969
      start: 3965
    functionDepth: 0
    functionLinenumber: 3965
    functionLinenumberEnd: 3969
    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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3980
      start: 3971
    functionDepth: 0
    functionLinenumber: 3971
    functionLinenumberEnd: 3980
    functionName: gf_route_dmx_reset_stats
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_route_dmx_reset_stats(GF_ROUTEDmx *routedmx)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3990,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:3997,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:4003,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4010,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:4035,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4039,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4043,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:4054,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4058,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4077,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4090,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: 4092
      start: 3982
    functionDepth: 1
    functionLinenumber: 3982
    functionLinenumberEnd: 4092
    functionName: gf_route_dmx_patch_frag_info
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_mx_p
    - gf_mx_v
    - memmove
    - 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:4100,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4107,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:4113,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4117,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4123,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4129,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4140,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4144,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:4149,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/route_dmx.c:4151,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/route_dmx.c:4153,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4163,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: 4165
      start: 4094
    functionDepth: 1
    functionLinenumber: 4094
    functionLinenumberEnd: 4165
    functionName: gf_route_dmx_add_frag_hole
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_assert
    - gf_mx_p
    - gf_mx_v
    - memmove
    - 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:4173,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4179,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:4186,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4188,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/media_tools/route_dmx.c:4195,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/route_dmx.c:4198,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/media_tools/route_dmx.c:4208,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: 4210
      start: 4166
    functionDepth: 1
    functionLinenumber: 4166
    functionLinenumberEnd: 4210
    functionName: gf_route_dmx_patch_blob_size
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - gf_list_enum
    - gf_mx_v
    - gf_mx_p
    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:4219,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4225,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: 4233
      start: 4212
    functionDepth: 1
    functionLinenumber: 4212
    functionLinenumberEnd: 4233
    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:4240,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:4248,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4250,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/route_dmx.c:4251,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4253,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:4255,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/route_dmx.c:4260,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/media_tools/route_dmx.c:4271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:4274,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/media_tools/route_dmx.c:4290,1
    - Dst: gf_sk_set_usec_wait
      Src: /src/gpac/src/media_tools/route_dmx.c:4292,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/media_tools/route_dmx.c:4295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/route_dmx.c:4297,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/media_tools/route_dmx.c:4300,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/media_tools/route_dmx.c:4301,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/media_tools/route_dmx.c:4319,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/media_tools/route_dmx.c:4320,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: 4327
      start: 4235
    functionDepth: 1
    functionLinenumber: 4235
    functionLinenumberEnd: 4327
    functionName: gf_route_dmx_mark_active_quality
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sk_set_buffer_size
    - gf_sk_is_multicast_address
    - gf_sk_del
    - gf_sk_setup_multicast
    - GF_LOG
    - gf_sk_group_register
    - gf_list_enum
    - gf_sk_group_unregister
    - strcmp
    - gf_list_get
    - gf_sk_new_ex
    - gf_sk_set_usec_wait
    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:4332,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4334,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/route_dmx.c:4338,1
    - Dst: gf_route_obj_to_reservoir
      Src: /src/gpac/src/media_tools/route_dmx.c:4340,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - routedmx
    argTypes:
    - GF_ROUTEDmx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4343
      start: 4329
    functionDepth: 2
    functionLinenumber: 4329
    functionLinenumberEnd: 4343
    functionName: gf_route_dmx_reset_all
    functionSourceFile: /src/gpac/src/media_tools/route_dmx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_route_obj_to_reservoir
    - gf_list_enum
    - gf_list_get
    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:4350,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/route_dmx.c:4352,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: 4360
      start: 4345
    functionDepth: 1
    functionLinenumber: 4345
    functionLinenumberEnd: 4360
    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:4368,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: 4374
      start: 4362
    functionDepth: 0
    functionLinenumber: 4362
    functionLinenumberEnd: 4374
    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_get_sample_info
    - gf_isom_get_media_duration
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_count
    - gf_isom_sample_del
    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_isom_rtp_packet_set_flags
    - gf_assert
    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_isom_rtp_packet_begin
    - gf_isom_rtp_packet_set_offset
    - gf_isom_end_hint_sample
    - gf_assert
    - 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_isom_setup_hint_track
    - gf_isom_get_media_type
    - InitSL_RTP
    - gf_isom_get_edit
    - gf_isom_get_sample_count
    - GF_SAFEALLOC
    - gf_isom_get_sample
    - gf_isom_remove_edits
    - gf_isom_mvc_config_get
    - gf_isom_get_edits_count
    - gf_isom_new_hint_description
    - gf_odf_vvc_cfg_del
    - gf_isom_is_track_enabled
    - gf_m4v_get_config
    - gf_odf_hevc_cfg_del
    - gf_isom_get_media_timescale
    - gf_isom_set_track_priority_in_group
    - gf_mp3_num_channels
    - gf_isom_get_esd
    - gf_isom_has_time_offset
    - gf_isom_has_sync_points
    - gf_hinter_track_del
    - gf_isom_hevc_config_get
    - gf_isom_get_sample_description_count
    - gf_isom_has_sync_shadows
    - gf_m4a_get_config
    - gf_media_get_sample_average_infos
    - gf_isom_rtp_set_timescale
    - gf_rtp_builder_init
    - gf_isom_svc_config_get
    - gf_get_bit_size
    - gf_rtp_builder_new
    - gf_odf_avc_cfg_del
    - gf_isom_new_track
    - gf_isom_set_track_interleaving_group
    - gf_isom_set_extraction_slc
    - gf_isom_get_track_id
    - gf_isom_get_media_subtype
    - gf_odf_desc_del
    - gf_isom_get_data_reference
    - GF_LOG
    - gf_isom_has_sample_dependency
    - gf_isom_get_ismacryp_info
    - GF_4CC
    - gf_isom_get_track_by_id
    - gf_isom_sample_del
    - gf_isom_get_audio_info
    - gf_isom_avc_config_get
    - gf_isom_vvc_config_get
    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_sequence_offset
    - gf_isom_rtp_set_time_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: 2
    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_rtp_builder_del
    - gf_free
    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_isom_ismacryp_delete_sample
    - gf_free
    - gf_isom_last_error
    - gf_isom_get_sample_padding_bits
    - gf_rtp_builder_process
    - GF_LOG
    - gf_isom_get_sample_count
    - gf_isom_end_hint_sample
    - gf_rtp_builder_set_cryp_info
    - gf_set_progress
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_isom_get_ismacryp_sample
    - gf_isom_get_sample_duration
    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_dynstrcat
    - gf_base64_encode
    - gf_list_get
    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
    - strlen
    - write_nalu_config_array
    - 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_isom_get_media_type
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_isom_is_video_handler_type
    - gf_bs_new
    - gf_bs_del
    - snprintf
    - write_avc_config
    - gf_isom_get_visual_info
    - gf_isom_get_esd
    - gf_isom_get_track_layout_info
    - gf_dynstrcat
    - gf_rtp_builder_get_payload_name
    - gf_isom_get_sample_description_count
    - gf_isom_text_get_encoded_tx3g
    - gf_isom_sdp_clean_track
    - gf_isom_get_dims_description
    - gf_isom_sdp_add_track_line
    - strnicmp
    - gf_isom_svc_config_get
    - gf_base64_encode
    - gf_bs_write_data
    - gf_odf_avc_cfg_del
    - strlen
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_free
    - gf_media_format_ttxt_sdp
    - gf_rtp_builder_format_sdp
    - sprintf
    - gf_isom_set_track_enabled
    - gf_isom_get_ismacryp_info
    - MIN
    - gf_strdup
    - gf_isom_avc_config_get
    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:
    - gf_base64_encode
    - strlen
    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: gf_strlcpy
      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: gf_strlcpy
      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: gf_strlcpy
      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_list_count
    - gf_isom_get_media_type
    - gf_gpac_version
    - gf_isom_get_sample_count
    - snprintf
    - gf_isom_get_sample
    - gf_list_add
    - gf_isom_is_track_in_root_od
    - gf_isom_get_media_timescale
    - gf_malloc
    - gf_odf_desc_write
    - gf_isom_get_esd
    - InitSL_NULL
    - gf_list_get
    - gf_sys_is_test_mode
    - gf_isom_sdp_add_line
    - gf_isom_get_root_od
    - gf_base64_encode
    - strlen
    - gf_isom_set_extraction_slc
    - gf_strlcpy
    - gf_isom_sdp_clean
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_free
    - GF_LOG
    - gf_hinter_can_embbed_data
    - gf_isom_sample_del
    - gf_gpac_copyright
    - 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:
    - gf_ait_destroy
    - gf_m2ts_process_ait
    - check_ait_already_received
    - 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_bs_get_position
    - gf_free
    - GF_LOG
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_list_new
    - gf_list_add
    - gf_calloc
    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_list_count
    - gf_m2ts_is_dmscc_app
    - GF_SAFEALLOC
    - gf_list_add
    - gf_list_get
    - gf_m2ts_delete_dsmcc_overlord
    - gf_dir_cleanup
    - strlen
    - gf_list_new
    - gf_rmdir
    - sprintf
    - gf_m2ts_get_dmscc_overlord
    - gf_m2ts_get_channel_application_info
    - GF_LOG
    - gf_m2ts_init_dsmcc_overlord
    - gf_mkdir
    - gf_strdup
    - memset
    - gf_calloc
    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_count
    - GF_LOG
    - gf_m2ts_free_ait_application
    - gf_list_get
    - 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_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_ait_application_decode_destroy
    - 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_list_count
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_list_get
    - 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_list_count
    - gf_free
    - gf_list_del
    - gf_m2ts_free_ait_application
    - gf_list_get
    - gf_list_rem
    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_SAFEALLOC
    - gf_list_new
    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_del
      Src: /src/gpac/src/media_tools/dsmcc.c:148,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:151,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:153,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/dsmcc.c:154,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:157,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:160,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:164,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/dsmcc.c:165,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:171,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/dsmcc.c:172,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:175,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:181,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:186,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:192,1
    - Dst: gf_m2ts_dsmcc_download_data
      Src: /src/gpac/src/media_tools/dsmcc.c:193,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:203,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:209,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:211,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:214,1
    - Dst: gf_m2ts_dsmcc_section_delete
      Src: /src/gpac/src/media_tools/dsmcc.c:222,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/dsmcc.c:223,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 63
    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: 226
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 226
    functionName: gf_m2ts_process_dsmcc
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_m2ts_dsmcc_section_delete
    - GF_LOG
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - 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:231,1
    - Dst: gf_m2ts_dsmcc_process_message_header
      Src: /src/gpac/src/media_tools/dsmcc.c:234,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:242,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:246,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:247,1
    - Dst: gf_m2ts_dsmcc_process_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:248,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:249,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:250,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:251,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:258,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:262,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:263,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:264,1
    - Dst: gf_bs_read_int
      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_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:267,1
    - Dst: gf_m2ts_dsmcc_process_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:270,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:271,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:275,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:277,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:278,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:279,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:280,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:281,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:282,1
    - Dst: dsmcc_create_module_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:283,1
    - Dst: dsmcc_create_module
      Src: /src/gpac/src/media_tools/dsmcc.c:285,1
    - Dst: dsmcc_get_biop_module_info
      Src: /src/gpac/src/media_tools/dsmcc.c:288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:290,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:291,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:297,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:300,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:301,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:302,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:310,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:315,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:320,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:322,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:325,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:328,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:331,1
    - Dst: dsmcc_download_data_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:337,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:340,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:341,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:342,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dsmcc.c:343,1
    - Dst: dsmcc_module_complete
      Src: /src/gpac/src/media_tools/dsmcc.c:348,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:359,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:361,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:362,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:363,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:370,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:372,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:373,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:374,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:375,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:376,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:377,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:379,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:380,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:389,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:391,1
    - Dst: gf_m2ts_dsmcc_process_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:392,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:393,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:399,1
    - Dst: dsmcc_biop_get_ior
      Src: /src/gpac/src/media_tools/dsmcc.c:402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:404,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:408,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:409,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:413,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:414,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:415,1
    - Dst: gf_bs_read_int
      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_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:419,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:420,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:421,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:422,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:424,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:425,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:428,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:429,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:430,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:434,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:435,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:444,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: 452
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 452
    functionName: gf_m2ts_dsmcc_download_data
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_m2ts_dsmcc_process_message_header
    - dsmcc_create_module
    - dsmcc_get_biop_module_info
    - dsmcc_module_complete
    - gf_calloc
    - gf_list_get
    - memcpy
    - dsmcc_biop_get_ior
    - gf_bs_read_int
    - gf_m2ts_dsmcc_process_compatibility_descriptor
    - gf_list_new
    - gf_free
    - GF_LOG
    - dsmcc_download_data_validation
    - dsmcc_biop_get_context
    - dsmcc_create_module_validation
    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:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:465,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:468,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:472,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:474,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:478,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:481,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:482,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:483,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:486,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:487,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:489,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:490,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:494,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: 497
      start: 457
    functionDepth: 1
    functionLinenumber: 457
    functionLinenumberEnd: 497
    functionName: gf_m2ts_dsmcc_process_message_header
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_calloc
    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:503,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:505,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:508,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:510,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_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:514,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:515,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:516,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_int
      Src: /src/gpac/src/media_tools/dsmcc.c:522,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:523,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:525,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:526,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:537,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: 542
      start: 499
    functionDepth: 1
    functionLinenumber: 499
    functionLinenumberEnd: 542
    functionName: gf_m2ts_dsmcc_process_compatibility_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_calloc
    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:551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:554,1
    - Dst: dsmcc_module_delete
      Src: /src/gpac/src/media_tools/dsmcc.c:555,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:556,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: 564
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 564
    functionName: dsmcc_create_module_validation
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - dsmcc_module_delete
    - gf_list_rem
    - gf_list_get
    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: 602
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 602
    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:609,1
    - Dst: gf_gz_decompress_payload_ex
      Src: /src/gpac/src/media_tools/dsmcc.c:618,1
    - Dst: dsmcc_process_biop_data
      Src: /src/gpac/src/media_tools/dsmcc.c:622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:624,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:625,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:627,1
    - Dst: dsmcc_process_biop_data
      Src: /src/gpac/src/media_tools/dsmcc.c:632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:635,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:636,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:638,1
    - Dst: dsmcc_module_delete
      Src: /src/gpac/src/media_tools/dsmcc.c:643,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:644,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: 650
      start: 604
    functionDepth: 1
    functionLinenumber: 604
    functionLinenumberEnd: 650
    functionName: dsmcc_module_complete
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_LOG
    - dsmcc_process_biop_data
    - gf_gz_decompress_payload_ex
    - dsmcc_module_delete
    - gf_calloc
    - 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:663,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:666,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:669,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - CompatibilityDesc
    argTypes:
    - GF_M2TS_DSMCC_COMPATIBILITY_DESCRIPTOR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 654
    functionDepth: 0
    functionLinenumber: 654
    functionLinenumberEnd: 673
    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:678,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:679,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - MessageHeader
    argTypes:
    - GF_M2TS_DSMCC_MESSAGE_DATA_HEADER*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 682
    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:698,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:700,1
    - Dst: gf_m2ts_dsmcc_delete_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:711,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:713,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:720,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:722,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:728,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:735,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:737,1
    - Dst: gf_m2ts_dsmcc_delete_compatibility_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:743,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:745,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:752,1
    - Dst: gf_m2ts_dsmcc_delete_message_header
      Src: /src/gpac/src/media_tools/dsmcc.c:758,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:759,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:760,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 55
    argCount: 1
    argNames:
    - dsmcc
    argTypes:
    - GF_M2TS_DSMCC_SECTION*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 684
    functionDepth: 1
    functionLinenumber: 684
    functionLinenumberEnd: 762
    functionName: gf_m2ts_dsmcc_section_delete
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_free
    - gf_m2ts_dsmcc_delete_compatibility_descriptor
    - gf_m2ts_dsmcc_delete_message_header
    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:767,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - dsmcc_module
    argTypes:
    - GF_M2TS_DSMCC_MODULE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 770
    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:781,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:782,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:783,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:785,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:786,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:787,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:788,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:790,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:791,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:792,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:796,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:798,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:799,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:800,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:801,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:803,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:807,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:808,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:809,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:810,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:814,1
    - Dst: dsmcc_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:819,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:821,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:827,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:851,1
    - Dst: dsmcc_free_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:859,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:863,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:866,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:867,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: 870
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 870
    functionName: dsmcc_get_biop_module_info
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - dsmcc_biop_descriptor
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_list_get
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - dsmcc_free_biop_descriptor
    - gf_list_new
    - gf_calloc
    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:883,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:885,1
    - Dst: dsmcc_process_biop_header
      Src: /src/gpac/src/media_tools/dsmcc.c:889,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:892,1
    - Dst: dsmcc_process_biop_file
      Src: /src/gpac/src/media_tools/dsmcc.c:893,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:894,1
    - Dst: dsmcc_process_biop_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:895,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:896,1
    - Dst: dsmcc_process_biop_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:897,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:901,1
    - Dst: dsmcc_process_biop_stream_message
      Src: /src/gpac/src/media_tools/dsmcc.c:902,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:903,1
    - Dst: dsmcc_process_biop_stream_event
      Src: /src/gpac/src/media_tools/dsmcc.c:904,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:906,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:909,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:912,1
    - Dst: dsmcc_free_biop_header
      Src: /src/gpac/src/media_tools/dsmcc.c:916,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: 926
      start: 872
    functionDepth: 1
    functionLinenumber: 872
    functionLinenumberEnd: 926
    functionName: dsmcc_process_biop_data
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - dsmcc_process_biop_stream_event
    - dsmcc_process_biop_stream_message
    - GF_LOG
    - gf_bs_new
    - dsmcc_process_biop_directory
    - gf_bs_read_int
    - strcmp
    - dsmcc_process_biop_file
    - dsmcc_free_biop_header
    - dsmcc_process_biop_header
    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:931,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:935,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:939,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:941,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:942,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:943,1
    - Dst: gf_bs_read_int
      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
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:949,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:950,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:952,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 928
    functionDepth: 1
    functionLinenumber: 928
    functionLinenumberEnd: 955
    functionName: dsmcc_process_biop_header
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_calloc
    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:964,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:969,1
    - Dst: dsmcc_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:974,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:977,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:979,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:985,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:994,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1001,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1003,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1004,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1006,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1007,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1009,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1010,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1013,1
    - Dst: dsmcc_get_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1014,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1017,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dsmcc.c:1018,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/dsmcc.c:1020,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dsmcc.c:1021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1022,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1023,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1028,1
    - Dst: dsmcc_free_biop_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1031,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: 1034
      start: 957
    functionDepth: 1
    functionLinenumber: 957
    functionLinenumberEnd: 1034
    functionName: dsmcc_process_biop_file
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - dsmcc_biop_descriptor
    - gf_list_count
    - gf_fclose
    - GF_LOG
    - gf_fopen
    - gf_fwrite
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - dsmcc_biop_get_context
    - strcmp
    - gf_list_get
    - gf_calloc
    - dsmcc_free_biop_file
    - dsmcc_get_file
    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:1043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1051,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1060,1
    - Dst: dsmcc_get_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:1063,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1066,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1068,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1069,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1071,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1072,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1073,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1080,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1081,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1083,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1084,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1088,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1092,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1093,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1096,1
    - Dst: dsmcc_biop_get_ior
      Src: /src/gpac/src/media_tools/dsmcc.c:1098,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1100,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1104,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1105,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1106,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:1113,1
    - Dst: dsmcc_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:1114,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1117,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1119,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1133,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1140,1
    - Dst: dsmcc_check_element_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:1141,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1143,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1144,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1145,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:1146,1
    - Dst: dsmcc_get_file_namepath
      Src: /src/gpac/src/media_tools/dsmcc.c:1151,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/media_tools/dsmcc.c:1152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1154,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1156,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1158,1
    - Dst: dsmcc_check_element_validation
      Src: /src/gpac/src/media_tools/dsmcc.c:1159,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1161,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1162,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1163,1
    - Dst: dsmcc_get_file_namepath
      Src: /src/gpac/src/media_tools/dsmcc.c:1168,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1169,1
    - Dst: dsmcc_free_biop_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:1173,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: 1176
      start: 1036
    functionDepth: 1
    functionLinenumber: 1036
    functionLinenumberEnd: 1176
    functionName: dsmcc_process_biop_directory
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_list_add
    - gf_list_get
    - dsmcc_free_biop_directory
    - dsmcc_biop_get_ior
    - gf_bs_read_int
    - dsmcc_check_element_validation
    - strcmp
    - gf_list_new
    - dsmcc_biop_descriptor
    - GF_LOG
    - dsmcc_get_file_namepath
    - dsmcc_biop_get_context
    - gf_mkdir
    - gf_strdup
    - dsmcc_get_directory
    - gf_calloc
    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:1184,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1188,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1190,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1191,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1193,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1194,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1195,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1196,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1197,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1200,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1202,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1204,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1206,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1207,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1212,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1214,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1215,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_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1220,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1222,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1223,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1224,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1227,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1233,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1236,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1238,1
    - Dst: dsmcc_free_biop_stream_event
      Src: /src/gpac/src/media_tools/dsmcc.c:1242,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: 1245
      start: 1178
    functionDepth: 1
    functionLinenumber: 1178
    functionLinenumberEnd: 1245
    functionName: dsmcc_process_biop_stream_event
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - dsmcc_biop_get_context
    - dsmcc_free_biop_stream_event
    - gf_calloc
    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:1252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1256,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1258,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1259,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1261,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1262,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1263,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1264,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1265,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1267,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1269,1
    - Dst: dsmcc_biop_get_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1270,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_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1275,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1277,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1278,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1279,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1280,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1282,1
    - Dst: dsmcc_free_biop_stream_message
      Src: /src/gpac/src/media_tools/dsmcc.c:1287,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: 1290
      start: 1247
    functionDepth: 1
    functionLinenumber: 1247
    functionLinenumberEnd: 1290
    functionName: dsmcc_process_biop_stream_message
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - dsmcc_free_biop_stream_message
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - dsmcc_biop_get_context
    - gf_calloc
    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:1299,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1305,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1306,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1310,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: 1313
      start: 1295
    functionDepth: 1
    functionLinenumber: 1295
    functionLinenumberEnd: 1313
    functionName: dsmcc_create_module
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_SAFEALLOC
    - gf_calloc
    - gf_list_add
    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:1319,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1323,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1330,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1332,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1333,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1334,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1335,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1341,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1343,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1344,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1346,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1347,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1354,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1356,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1357,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1358,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1364,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1366,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1367,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dsmcc.c:1371,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 41
    argCount: 3
    argNames:
    - bs
    - list
    - size
    argTypes:
    - GF_BitStream*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1373
      start: 1315
    functionDepth: 1
    functionLinenumber: 1315
    functionLinenumberEnd: 1373
    functionName: dsmcc_biop_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 3
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_list_add
    - gf_calloc
    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:1380,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1381,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1383,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1384,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: 1387
      start: 1375
    functionDepth: 1
    functionLinenumber: 1375
    functionLinenumberEnd: 1387
    functionName: dsmcc_biop_get_context
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 5
    functionsReached:
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_calloc
    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:1393,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1397,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1398,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1399,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dsmcc.c:1400,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1403,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dsmcc.c:1404,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1405,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1407,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1412,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1418,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1421,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1424,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1425,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1426,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_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1434,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1437,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1439,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1445,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1448,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1449,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1450,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_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1459,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1462,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_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1470,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1473,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1474,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1477,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1478,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1486,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1489,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1492,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1493,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1495,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_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1502,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1503,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1504,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1505,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1508,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1511,1
    - Dst: gf_calloc
      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:1519,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1521,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1522,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1525,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1527,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dsmcc.c:1535,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1539,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1541,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/dsmcc.c:1542,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/dsmcc.c:1544,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/dsmcc.c:1545,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 149
    argCount: 2
    argNames:
    - bs
    - IOR
    argTypes:
    - GF_BitStream*
    - GF_M2TS_DSMCC_IOR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1551
      start: 1389
    functionDepth: 1
    functionLinenumber: 1389
    functionLinenumberEnd: 1551
    functionName: dsmcc_biop_get_ior
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_list_new
    - gf_list_add
    - gf_calloc
    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:1557,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1558,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1561,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1562,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dsmcc.c:1562,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: 1570
      start: 1553
    functionDepth: 1
    functionLinenumber: 1553
    functionLinenumberEnd: 1570
    functionName: dsmcc_check_element_validation
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:1575,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1578,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1582,1
    - Dst: dsmcc_get_directory
      Src: /src/gpac/src/media_tools/dsmcc.c:1584,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - List
    - objectKey_data
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1591
      start: 1572
    functionDepth: 1
    functionLinenumber: 1572
    functionLinenumberEnd: 1591
    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:1595,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1597,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: 1603
      start: 1593
    functionDepth: 1
    functionLinenumber: 1593
    functionLinenumberEnd: 1603
    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:1609,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dsmcc.c:1610,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dsmcc.c:1613,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dsmcc.c:1615,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1616,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - Dir
    - name
    argTypes:
    - GF_M2TS_DSMCC_DIR*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1620
      start: 1605
    functionDepth: 0
    functionLinenumber: 1605
    functionLinenumberEnd: 1620
    functionName: dsmcc_get_file_namepath
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - sprintf
    - gf_free
    - gf_calloc
    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:1628,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - module
    argTypes:
    - GF_M2TS_DSMCC_MODULE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1632
      start: 1625
    functionDepth: 0
    functionLinenumber: 1625
    functionLinenumberEnd: 1632
    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:1637,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1640,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - File
    argTypes:
    - GF_M2TS_DSMCC_FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1642
      start: 1634
    functionDepth: 0
    functionLinenumber: 1634
    functionLinenumberEnd: 1642
    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:1649,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1652,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1655,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1657,1
    - Dst: dmscc_delete_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1658,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1662,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1664,1
    - Dst: dmscc_delete_dir
      Src: /src/gpac/src/media_tools/dsmcc.c:1665,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1667,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1668,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - Dir
    argTypes:
    - GF_M2TS_DSMCC_DIR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1669
      start: 1644
    functionDepth: 1
    functionLinenumber: 1644
    functionLinenumberEnd: 1669
    functionName: dmscc_delete_dir
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - dmscc_delete_file
    - dmscc_delete_dir
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void dmscc_delete_dir(GF_M2TS_DSMCC_DIR* Dir)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1679,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1681,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1683,1
    - Dst: dmscc_delete_file
      Src: /src/gpac/src/media_tools/dsmcc.c:1684,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1686,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1690,1
    - Dst: dmscc_delete_dir
      Src: /src/gpac/src/media_tools/dsmcc.c:1691,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1693,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1694,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - Servicegateway
    argTypes:
    - GF_M2TS_DSMCC_SERVICE_GATEWAY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1695
      start: 1671
    functionDepth: 2
    functionLinenumber: 1671
    functionLinenumberEnd: 1695
    functionName: dmscc_delete_servicegateway
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - dmscc_delete_file
    - dmscc_delete_dir
    - gf_list_get
    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:1701,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1703,1
    - Dst: dsmcc_delete_module
      Src: /src/gpac/src/media_tools/dsmcc.c:1704,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1706,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dsmcc.c:1709,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1711,1
    - Dst: dsmcc_delete_module
      Src: /src/gpac/src/media_tools/dsmcc.c:1712,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1714,1
    - Dst: dmscc_delete_servicegateway
      Src: /src/gpac/src/media_tools/dsmcc.c:1716,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1719,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1722,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 1
    argNames:
    - dsmcc_overlord
    argTypes:
    - GF_M2TS_DSMCC_OVERLORD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1723
      start: 1697
    functionDepth: 3
    functionLinenumber: 1697
    functionLinenumberEnd: 1723
    functionName: gf_m2ts_delete_dsmcc_overlord
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - dsmcc_delete_module
    - gf_list_del
    - dmscc_delete_servicegateway
    - gf_list_get
    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:1727,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - BIOP_Header
    argTypes:
    - GF_M2TS_DSMCC_BIOP_HEADER*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1729
      start: 1725
    functionDepth: 0
    functionLinenumber: 1725
    functionLinenumberEnd: 1729
    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:1733,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1734,1
    - Dst: dsmcc_free_biop_name
      Src: /src/gpac/src/media_tools/dsmcc.c:1735,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1736,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - BIOP_Directory
    argTypes:
    - GF_M2TS_DSMCC_BIOP_DIRECTORY*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1731
    functionDepth: 1
    functionLinenumber: 1731
    functionLinenumberEnd: 1737
    functionName: dsmcc_free_biop_directory
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - dsmcc_free_biop_name
    - gf_free
    - 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:1741,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1742,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1744,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1746,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - BIOP_File
    argTypes:
    - GF_M2TS_DSMCC_BIOP_FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1747
      start: 1739
    functionDepth: 1
    functionLinenumber: 1739
    functionLinenumberEnd: 1747
    functionName: dsmcc_free_biop_file
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - gf_free
    - dsmcc_free_biop_descriptor
    - dsmcc_free_biop_context
    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:1754,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1758,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1764,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1767,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1771,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1774,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1777,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - BIOP_StreamEvent
    argTypes:
    - GF_M2TS_DSMCC_BIOP_STREAM_EVENT*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1779
      start: 1749
    functionDepth: 1
    functionLinenumber: 1749
    functionLinenumberEnd: 1779
    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:1784,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1788,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1792,1
    - Dst: dsmcc_free_biop_context
      Src: /src/gpac/src/media_tools/dsmcc.c:1795,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - BIOP_StreamMessage
    argTypes:
    - GF_M2TS_DSMCC_BIOP_STREAM_MESSAGE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 1781
    functionDepth: 1
    functionLinenumber: 1781
    functionLinenumberEnd: 1796
    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:1803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1806,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dsmcc.c:1814,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1816,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1818,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1820,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1832,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1835,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1838,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1841,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1850,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1854,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1855,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1856,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1858,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 1
    argNames:
    - IOR
    argTypes:
    - GF_M2TS_DSMCC_IOR*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1859
      start: 1798
    functionDepth: 1
    functionLinenumber: 1798
    functionLinenumberEnd: 1859
    functionName: dsmcc_free_biop_ior
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_del
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_rem
    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:1863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1865,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1871,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1872,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1878,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1879,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1880,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dsmcc.c:1886,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dsmcc.c:1887,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1889,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1891,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dsmcc.c:1902,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1903
      start: 1861
    functionDepth: 1
    functionLinenumber: 1861
    functionLinenumberEnd: 1903
    functionName: dsmcc_free_biop_descriptor
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:1912,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1915,1
    - Dst: dsmcc_free_biop_ior
      Src: /src/gpac/src/media_tools/dsmcc.c:1918,1
    - Dst: dsmcc_free_biop_descriptor
      Src: /src/gpac/src/media_tools/dsmcc.c:1919,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: 1921
      start: 1906
    functionDepth: 2
    functionLinenumber: 1906
    functionLinenumberEnd: 1921
    functionName: dsmcc_free_biop_name
    functionSourceFile: /src/gpac/src/media_tools/dsmcc.c
    functionUses: 1
    functionsReached:
    - dsmcc_free_biop_ior
    - gf_free
    - 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:1928,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dsmcc.c:1931,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: 1932
      start: 1923
    functionDepth: 0
    functionLinenumber: 1923
    functionLinenumberEnd: 1932
    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_bs_get_position
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_read_data
    - gf_bs_write_u8
    - gf_bs_seek
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_available
    - 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:
    - gf_free
    - gf_malloc
    - jpeg_read_scanlines
    - GF_LOG
    - gf_sys_is_cov_mode
    - gf_jpeg_nonfatal_error2
    - setjmp
    - gf_jpeg_fatal_error
    - jpeg_std_error
    - jpeg_create_decompress
    - jpeg_finish_decompress
    - gf_jpeg_fill_input_buffer
    - gf_jpeg_skip_input_data
    - jpeg_destroy_decompress
    - memcpy
    - jpeg_read_header
    - jpeg_start_decompress
    - gf_jpeg_output_message
    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_get_io_ptr
    - memcpy
    - png_error
    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:
    - png_destroy_info_struct
    - gf_png_user_error_fn
    - png_get_image_width
    - png_set_read_fn
    - png_create_read_struct
    - png_get_tRNS
    - png_set_error_fn
    - gf_malloc
    - png_set_expand
    - png_jmpbuf
    - png_get_color_type
    - png_sig_cmp
    - png_get_image_height
    - png_get_rowbytes
    - png_destroy_read_struct
    - png_create_info_struct
    - png_read_image
    - setjmp
    - png_read_update_info
    - png_set_tRNS_to_alpha
    - gf_free
    - GF_LOG
    - png_read_end
    - gf_sys_is_cov_mode
    - png_read_info
    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:
    - png_get_io_ptr
    - memcpy
    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:
    - png_destroy_write_struct
    - png_write_end
    - png_create_write_struct
    - png_set_write_fn
    - png_write_image
    - gf_malloc
    - gf_png_flush
    - png_jmpbuf
    - png_write_info
    - png_set_shift
    - png_create_info_struct
    - png_set_text
    - setjmp
    - png_set_filler
    - gf_free
    - gf_sys_is_cov_mode
    - png_set_bgr
    - png_set_packing
    - png_set_sBIT
    - png_set_IHDR
    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_SAFEALLOC
    - gf_list_new
    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_rem
    - gf_list_get
    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_list_del
    - gf_html_timeranges_reset
    - gf_free
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_new
    - gf_list_get
    - gf_list_add
    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_list_count
    - gf_html_timeranges_new
    - gf_html_timeranges_merge
    - gf_list_get
    - 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_list_count
    - gf_list_add
    - gf_html_timeranges_new
    - gf_list_get
    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
    - strcmp
    - gf_list_get
    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
    - strcmp
    - gf_list_get
    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_count
    - gf_list_del
    - gf_list_get
    - gf_html_track_del
    - gf_list_rem
    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_list_count
    - gf_free
    - assert
    - gf_list_del
    - gf_mx_v
    - gf_mx_p
    - gf_mse_packet_del
    - gf_list_get
    - gf_mx_del
    - gf_list_rem
    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_SAFEALLOC
    - gf_html_timeranges_new
    - gf_list_new
    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_html_timeranges_del
    - gf_free
    - 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_SAFEALLOC
    - gf_html_timeranges_new
    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_html_timeranges_del
    - gf_free
    - gf_list_get
    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_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_crc_32
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    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_sl_packetize
    - gf_free
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_crc_32
    - gf_sl_get_header_size
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    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_long_int
    - gf_bs_write_byte
    - gf_bs_write_data
    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_LOG
    - gf_bs_write_int
    - gf_assert
    - memset
    - gf_m2ts_time_inc
    - gf_m2ts_add_adaptation
    - gf_bs_reassign_buffer
    - memcpy
    - 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_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_data
    - strlen
    - gf_m2ts_mux_table_update
    - gf_bs_write_u8
    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_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_m2ts_mux_table_update
    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_list_count
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_odf_av1_cfg_del
    - gf_m2ts_mux_table_update
    - gf_bs_write_u8
    - gf_odf_av1_cfg_read
    - gf_odf_hevc_cfg_del
    - gf_m2ts_program_stream_format_updated
    - gf_odf_hevc_cfg_read
    - gf_odf_avc_cfg_read
    - gf_list_get
    - memcpy
    - gf_odf_write_descriptor
    - gf_list_enum
    - abort
    - gf_bs_write_long_int
    - gf_bs_write_data
    - gf_odf_avc_cfg_del
    - gf_free
    - GF_LOG
    - GF_4CC
    - gf_bs_write_u16
    - gf_m2ts_find_stream
    - gf_bs_write_u32
    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
    - id3_write_size
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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: gf_strcat
      Src: /src/gpac/src/media_tools/m2ts_mux.c:1750,1
    - Dst: gf_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_bs_get_position
    - gf_sl_packetize
    - gf_rand
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_m2ts_adjust_next_stream_time_for_pcr
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - gf_m4a_write_config_bs
    - gf_m2ts_time_inc
    - gf_m2ts_mux_table_update_mpeg4
    - gf_bs_write_u8
    - gf_malloc
    - gf_timestamp_rescale
    - gf_mx_v
    - memcpy
    - gf_m2ts_remap_timestamps_for_pes
    - gf_m4a_get_config
    - m2ts_id3_tag_create
    - GF_M2TS_Mux_Stream*::ifce::input_ctrl
    - gf_mx_p
    - gf_bs_write_data
    - strlen
    - sprintf
    - tx3g_format_time
    - gf_free
    - gf_bs_align
    - GF_LOG
    - gf_strcat
    - gf_m4a_write_program_config_element_bs
    - gf_utf8_is_legal
    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_m2ts_get_pcr
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_long_int
    - 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_m2ts_get_pcr
    - gf_bs_get_position
    - gf_bs_write_int
    - gf_assert
    - gf_m2ts_stream_add_pes_header
    - gf_m2ts_stream_compute_pes_length
    - gf_m2ts_time_inc
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_m2ts_time_diff_us
    - gf_m2ts_stream_update_data_following
    - memcpy
    - gf_sys_clock_high_res
    - GF_M2TS_Mux_Stream*::process
    - gf_log_tool_level_on
    - gf_m2ts_stream_get_pes_header_length
    - gf_free
    - GF_LOG
    - gf_m2ts_add_adaptation
    - memset
    - gf_m2ts_time_less
    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_LOG
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_mx_v
    - gf_realloc
    - memcpy
    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_get_content
    - gf_bs_write_int
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_m2ts_find_stream
    - gf_bs_del
    - 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_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_write_u32
    - gf_list_add
    - 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_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u16
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_write_u32
    - gf_list_add
    - 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_m2ts_stream_set_default_slconfig
    - gf_codecid_name
    - GF_LOG
    - gf_m2ts_stream_add_metadata_pointer_descriptor
    - gf_m2ts_stream_add_metadata_descriptor
    - gf_m2ts_stream_add_hierarchy_descriptor
    - gf_m2ts_find_stream
    - gf_4cc_to_str
    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_m2ts_stream_new
    - gf_m2ts_stream_set_default_slconfig
    - gf_mx_new
    - gf_m2ts_program_stream_format_updated
    - gf_list_new
    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_SAFEALLOC
    - gf_m2ts_stream_new
    - gf_list_new
    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_strdup
    - gf_free
    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_m2ts_stream_new
    - gf_free
    - gf_bs_write_int
    - gf_bs_new
    - gf_rand_init
    - GF_SAFEALLOC
    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_list_count
    - gf_free
    - gf_list_last
    - gf_list_del
    - gf_list_rem_last
    - 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_odf_desc_del
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_m2ts_mux_stream_del
    - gf_list_last
    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_bs_del
    - gf_free
    - gf_m2ts_mux_program_del
    - gf_m2ts_mux_stream_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_m2ts_mux_table_get_next_packet
    - gf_m2ts_mux_process
    - gf_m2ts_time_equal
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_assert
    - gf_m2ts_mux_pes_get_next_packet
    - GF_M2TS_Mux_Program*::pmt::process
    - GF_M2TS_Mux*::pat::process
    - GF_M2TS_Mux_Stream*::process
    - gf_m2ts_mux_update_config
    - GF_M2TS_Mux*::sdt::process
    - gf_m2ts_stream_too_early
    - gf_m2ts_time_inc
    - gf_m2ts_time_less_or_equal
    - gf_m2ts_time_less
    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_SAFEALLOC
    - gf_bs_new
    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_bs_del
    - gf_free
    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_get_position
    - gf_bs_read_u8
    - gf_bs_read_data
    - gf_bs_seek
    - 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:
    - memcpy
    - gf_malloc
    - gf_free
    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_bs_seek
    - gf_fatal_assert
    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_get_position
    - memset
    - M4V_LoadObject
    - gf_bs_read_data
    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:
    - gf_bs_read_u8
    - gf_bs_get_position
    - M4V_LoadObject
    - gf_bs_align
    - gf_m4v_parse_vol
    - memset
    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_read_u8
    - gf_bs_get_position
    - M4V_Reset
    - M4V_LoadObject
    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:
    - gf_bs_get_position
    - M4V_Reset
    - M4V_LoadObject
    - gf_bs_align
    - gf_bs_read_int
    - gf_m4v_parse_vol
    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_mpeg12
    - gf_m4v_parse_frame_mpeg4
    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_bs_get_position
    - M4V_LoadObject
    - gf_free
    - gf_bs_write_int
    - m4v_get_sar_idx
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_write_data
    - assert
    - gf_m4v_parser_new
    - gf_bs_bits_available
    - gf_m4v_parser_del
    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_parser_new
    - gf_m4v_parser_del
    - gf_m4v_parse_config
    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_parser_new
    - gf_m4v_parser_del
    - gf_m4v_parse_config
    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_int_log_idx
    - gf_bs_align
    - gf_bs_read_data
    - gf_bs_available
    - gf_bs_read_int_log
    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_available
    - gf_bs_peek_bits
    - gf_m4a_get_profile
    - memset
    - gf_m4a_parse_program_config_element
    - gf_bs_read_int_log
    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_int
    - gf_bs_align
    - gf_bs_write_data
    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_LOG
    - gf_bs_write_int
    - gf_m4a_get_channel_cfg
    - gf_m4a_write_program_config_element_bs
    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_bs_get_content
    - gf_bs_del
    - gf_bs_new
    - gf_m4a_write_config_bs
    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:
    - log
    - gf_bs_read_int
    - gf_bs_log
    - gf_assert
    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:
    - gf_bs_read_int_log_idx
    - decoder_model_info
    - operating_parameters_info
    - timing_info
    - av1_color_config
    - gf_bs_read_int_log
    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_4CC
    - gf_bs_available
    - gf_bs_peek_bits
    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_LOG
    - GF_4CC
    - gf_assert
    - gf_bs_read_u32_le
    - gf_bs_read_u32
    - gf_bs_read_u16_le
    - gf_bs_available
    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_LOG
    - gf_bs_read_u32_le
    - gf_bs_read_u64_le
    - gf_bs_available
    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_get_position
    - gf_bs_read_u8
    - gf_bs_is_overflow
    - gf_assert
    - gf_bs_mark_overflow
    - gf_bs_read_data
    - gf_bs_seek
    - memset
    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:
    - gf_bs_read_int_log_idx
    - vp9_s
    - 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:
    - vp9_delta_q
    - gf_bs_read_int_log
    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:
    - vp9_read_prob
    - gf_bs_read_int_log
    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:
    - gf_bs_read_int_log
    - calc_max_log2_tile_cols
    - calc_min_log2_tile_cols
    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
    - vp9_frame_size
    - vp9_render_size
    - gf_bs_read_int_log
    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: 17
    BranchProfiles: []
    Callsites:
    - 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:2279,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2284,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2289,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2291,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: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2297,1
    - Dst: vp9_frame_sync_code
      Src: /src/gpac/src/media_tools/av_parsers.c:2299,1
    - Dst: vp9_color_config
      Src: /src/gpac/src/media_tools/av_parsers.c:2301,1
    - Dst: vp9_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2303,1
    - Dst: vp9_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2304,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2314,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2319,1
    - Dst: vp9_frame_sync_code
      Src: /src/gpac/src/media_tools/av_parsers.c:2323,1
    - Dst: vp9_color_config
      Src: /src/gpac/src/media_tools/av_parsers.c:2327,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2338,1
    - Dst: vp9_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2339,1
    - Dst: vp9_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2340,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2343,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:2346,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:2347,1
    - Dst: vp9_frame_size_with_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:2349,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2350,1
    - Dst: vp9_read_interpolation_filter
      Src: /src/gpac/src/media_tools/av_parsers.c:2351,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:2357,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2360,1
    - Dst: vp9_loop_filter_params
      Src: /src/gpac/src/media_tools/av_parsers.c:2366,1
    - Dst: vp9_quantization_params
      Src: /src/gpac/src/media_tools/av_parsers.c:2367,1
    - Dst: vp9_segmentation_params
      Src: /src/gpac/src/media_tools/av_parsers.c:2368,1
    - Dst: vp9_tile_info
      Src: /src/gpac/src/media_tools/av_parsers.c:2369,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2371,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 87
    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: 2382
      start: 2266
    functionDepth: 3
    functionLinenumber: 2266
    functionLinenumberEnd: 2382
    functionName: gf_vp9_parse_sample
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vp9_frame_size
    - gf_bs_read_int_log_idx
    - GF_LOG
    - vp9_quantization_params
    - vp9_frame_size_with_refs
    - vp9_color_config
    - vp9_loop_filter_params
    - vp9_frame_sync_code
    - vp9_segmentation_params
    - vp9_read_interpolation_filter
    - vp9_render_size
    - vp9_tile_info
    - gf_bs_read_int_log
    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:2390,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2391,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:2396,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:2399,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:2402,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:2404,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:2407,1
    - Dst: gf_bs_write_u32
      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
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:2411,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - mdcv_in
    - mdcv_out
    argTypes:
    - u8[]
    - u8[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2412
      start: 2385
    functionDepth: 1
    functionLinenumber: 2385
    functionLinenumberEnd: 2412
    functionName: gf_av1_format_mdcv_to_mpeg
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:2417,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2418,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2421,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_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2429,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2433,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2434,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
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:2439,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: 2443
      start: 2414
    functionDepth: 1
    functionLinenumber: 2414
    functionLinenumberEnd: 2443
    functionName: gf_av1_parse_obu_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_bs_bits_available
    - gf_bs_seek
    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: 2470
      start: 2447
    functionDepth: 0
    functionLinenumber: 2447
    functionLinenumberEnd: 2470
    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: 2481
      start: 2472
    functionDepth: 0
    functionLinenumber: 2472
    functionLinenumberEnd: 2481
    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: 2496
      start: 2485
    functionDepth: 0
    functionLinenumber: 2485
    functionLinenumberEnd: 2496
    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: 2501
      start: 2498
    functionDepth: 0
    functionLinenumber: 2498
    functionLinenumberEnd: 2501
    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:2505,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - obu_type
    argTypes:
    - IamfObuType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2510
      start: 2503
    functionDepth: 1
    functionLinenumber: 2503
    functionLinenumberEnd: 2510
    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: 2523
      start: 2512
    functionDepth: 0
    functionLinenumber: 2512
    functionLinenumberEnd: 2523
    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:2530,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - opt_Leb128Bytes
    argTypes:
    - GF_BitStream*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2542
      start: 2525
    functionDepth: 1
    functionLinenumber: 2525
    functionLinenumberEnd: 2542
    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: 2552
      start: 2544
    functionDepth: 0
    functionLinenumber: 2544
    functionLinenumberEnd: 2552
    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:2556,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2561,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2565
      start: 2554
    functionDepth: 1
    functionLinenumber: 2554
    functionLinenumberEnd: 2565
    functionName: gf_av1_leb128_write
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_av1_leb128_size
    - gf_bs_write_u8
    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:2577,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/av_parsers.c:2579,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:2585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2587,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2592,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2593,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2594,1
    - Dst: gf_malloc
      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:2599,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2607,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2608,1
    - Dst: gf_av1_leb128_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2616,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:2620,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2623,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2630,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/media_tools/av_parsers.c:2632,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2633,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2633,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:2634,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:2635,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:2636,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:2637,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2639,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2640,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2640,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2645,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:2647,1
    - Dst: gf_av1_leb128_write
      Src: /src/gpac/src/media_tools/av_parsers.c:2650,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2655,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:2656,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2659,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2659,1
    - Dst: GF_LOG
      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_free
      Src: /src/gpac/src/media_tools/av_parsers.c:2666,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:2671,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:2672,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: 2673
      start: 2568
    functionDepth: 2
    functionLinenumber: 2568
    functionLinenumberEnd: 2673
    functionName: av1_add_obu_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_av1_leb128_write
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_list_add
    - gf_bs_write_u8
    - gf_malloc
    - gf_av1_leb128_size
    - memcpy
    - gf_bs_write_data
    - gf_list_new
    - gf_av1_parse_obu_header
    - gf_free
    - GF_LOG
    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:2677,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2679,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2680,1
    - Dst: gf_av1_parse_obu_header
      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_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2686,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2688,1
    - Dst: av1_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:2696,1
    - Dst: av1_is_obu_frame
      Src: /src/gpac/src/media_tools/av_parsers.c:2698,1
    - Dst: av1_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:2700,1
    - Dst: av1_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:2703,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: 2706
      start: 2675
    functionDepth: 3
    functionLinenumber: 2675
    functionLinenumberEnd: 2706
    functionName: av1_populate_state_from_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - av1_add_obu_internal
    - gf_av1_leb128_read
    - gf_bs_seek
    - av1_is_obu_header
    - av1_is_obu_frame
    - gf_av1_parse_obu_header
    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:2717,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2720,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2725,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2728,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2729,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2729,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2736,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2746,1
    - Dst: av1_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2747,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2751
      start: 2708
    functionDepth: 4
    functionLinenumber: 2708
    functionLinenumberEnd: 2751
    functionName: aom_av1_parse_temporal_unit_from_section5
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - gf_av1_parse_obu
    - gf_bs_seek
    - gf_bs_available
    - av1_populate_state_from_obu
    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:2756,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2757,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2761,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2776,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2781,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2786,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2793,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2804,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:2812,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:2816,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2818
      start: 2753
    functionDepth: 2
    functionLinenumber: 2753
    functionLinenumberEnd: 2818
    functionName: gf_media_aom_probe_annexb
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_av1_leb128_read
    - gf_bs_seek
    - gf_bs_skip_bytes
    - gf_av1_parse_obu_header
    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:2827,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2828,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2831,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2835,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2838,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:2840,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2844,1
    - Dst: Leb128Bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:2844,1
    - Dst: frame_unit_size
      Src: /src/gpac/src/media_tools/av_parsers.c:2844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2847,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:2851,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:2853,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2857,1
    - Dst: Leb128Bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:2857,1
    - Dst: obu_length
      Src: /src/gpac/src/media_tools/av_parsers.c:2857,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2860,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2861,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2866,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2870,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2870,1
    - Dst: av1_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2876,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:2882,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2883,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2884,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2884,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2888
      start: 2820
    functionDepth: 4
    functionLinenumber: 2820
    functionLinenumberEnd: 2888
    functionName: aom_av1_parse_temporal_unit_from_annexb
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - gf_bs_is_overflow
    - frame_unit_size
    - gf_bs_mark_overflow
    - obu_length
    - Leb128Bytes
    - gf_av1_parse_obu
    - gf_av1_leb128_read
    - gf_assert
    - av1_populate_state_from_obu
    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:2894,1
    - Dst: gf_media_parse_ivf_frame_header
      Src: /src/gpac/src/media_tools/av_parsers.c:2895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2897,1
    - Dst: if
      Src: /src/gpac/src/media_tools/av_parsers.c:2899,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:2899,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2902,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2904,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2907,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2909,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:2910,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:2910,1
    - Dst: av1_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:2914,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2919
      start: 2890
    functionDepth: 4
    functionLinenumber: 2890
    functionLinenumberEnd: 2919
    functionName: aom_av1_parse_temporal_unit_from_ivf
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - gf_media_parse_ivf_frame_header
    - gf_av1_parse_obu
    - if
    - gf_bs_available
    - av1_populate_state_from_obu
    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: 2940
      start: 2934
    functionDepth: 0
    functionLinenumber: 2934
    functionLinenumberEnd: 2940
    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:2946,1
    - Dst: gf_bs_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2949,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - bs
    - n
    - name
    argTypes:
    - GF_BitStream*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2951
      start: 2942
    functionDepth: 1
    functionLinenumber: 2942
    functionLinenumberEnd: 2951
    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: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: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:2967,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:2967,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:2968,1
    - Dst: aom_av1_tile_log2
      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:2969,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2974,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:2987,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:2990,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:3009,1
    - Dst: av1_read_ns
      Src: /src/gpac/src/media_tools/av_parsers.c:3010,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:3012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:3016,1
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:3020,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:3026,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:3030,1
    - Dst: av1_read_ns
      Src: /src/gpac/src/media_tools/av_parsers.c:3031,1
    - Dst: aom_av1_tile_log2
      Src: /src/gpac/src/media_tools/av_parsers.c:3037,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3040,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3041,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3043
      start: 2954
    functionDepth: 2
    functionLinenumber: 2954
    functionLinenumberEnd: 3043
    functionName: av1_parse_tile_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - MIN
    - aom_av1_tile_log2
    - MAX
    - av1_read_ns
    - gf_bs_read_int_log
    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:3051,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3057,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3065
      start: 3045
    functionDepth: 1
    functionLinenumber: 3045
    functionLinenumberEnd: 3065
    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:3072,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3074,1
    - Dst: superres_params
      Src: /src/gpac/src/media_tools/av_parsers.c:3081,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: 3083
      start: 3067
    functionDepth: 2
    functionLinenumber: 3067
    functionLinenumberEnd: 3083
    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:3087,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3089,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3090,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3085
    functionDepth: 1
    functionLinenumber: 3085
    functionLinenumberEnd: 3098
    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:3102,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3106
      start: 3100
    functionDepth: 1
    functionLinenumber: 3100
    functionLinenumberEnd: 3106
    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:3113,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3122,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3123,1
    - Dst: superres_params
      Src: /src/gpac/src/media_tools/av_parsers.c:3126,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: 3129
      start: 3108
    functionDepth: 3
    functionLinenumber: 3108
    functionLinenumberEnd: 3129
    functionName: frame_size_with_refs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - av1_frame_size
    - gf_bs_read_int_log_idx
    - av1_render_size
    - superres_params
    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:3133,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - bs
    - name_flag
    - name
    argTypes:
    - GF_BitStream*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3142
      start: 3131
    functionDepth: 1
    functionLinenumber: 3131
    functionLinenumberEnd: 3142
    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: 3165
      start: 3147
    functionDepth: 0
    functionLinenumber: 3147
    functionLinenumberEnd: 3165
    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:3205,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:3209,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:3215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - numSyms
    argTypes:
    - GF_BitStream*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3220
      start: 3196
    functionDepth: 2
    functionLinenumber: 3196
    functionLinenumberEnd: 3220
    functionName: av1_decode_subexp
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - av1_read_ns
    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: 3230
      start: 3222
    functionDepth: 0
    functionLinenumber: 3222
    functionLinenumberEnd: 3230
    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:3234,1
    - Dst: inverse_recenter
      Src: /src/gpac/src/media_tools/av_parsers.c:3236,1
    - Dst: inverse_recenter
      Src: /src/gpac/src/media_tools/av_parsers.c:3239,1
    - Dst: inverse_recenter
      Src: /src/gpac/src/media_tools/av_parsers.c:3242,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - mx
    - r
    argTypes:
    - GF_BitStream*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3244
      start: 3232
    functionDepth: 3
    functionLinenumber: 3232
    functionLinenumberEnd: 3244
    functionName: av1_decode_unsigned_subexp_with_ref
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_decode_subexp
    - inverse_recenter
    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:3247,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: 3249
      start: 3245
    functionDepth: 4
    functionLinenumber: 3245
    functionLinenumberEnd: 3249
    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:3270,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: 3279
      start: 3251
    functionDepth: 5
    functionLinenumber: 3251
    functionLinenumberEnd: 3279
    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: 3289
      start: 3281
    functionDepth: 0
    functionLinenumber: 3281
    functionLinenumberEnd: 3289
    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: 3299
      start: 3291
    functionDepth: 0
    functionLinenumber: 3291
    functionLinenumberEnd: 3299
    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:3305,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: 3312
      start: 3301
    functionDepth: 1
    functionLinenumber: 3301
    functionLinenumberEnd: 3312
    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: 3335
      start: 3314
    functionDepth: 0
    functionLinenumber: 3314
    functionLinenumberEnd: 3335
    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: 3350
      start: 3337
    functionDepth: 0
    functionLinenumber: 3337
    functionLinenumberEnd: 3350
    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:3374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:3382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:3386,1
    - Dst: find_latest_forward
      Src: /src/gpac/src/media_tools/av_parsers.c:3442,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: 3463
      start: 3353
    functionDepth: 1
    functionLinenumber: 3353
    functionLinenumberEnd: 3463
    functionName: av1_set_frame_refs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - av1_get_relative_dist
    - 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:3492,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3494,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3498,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3503,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3514,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3516,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3524,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3531,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3536,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3550,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3552,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3559,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3572,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3579,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3581,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3586,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3590,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3599,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3610,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3616,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3627,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3628,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3630,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3635,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3636,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3638,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3645,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3647,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3648,1
    - Dst: av1_set_frame_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:3649,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3654,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3658,1
    - Dst: frame_size_with_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:3664,1
    - Dst: av1_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3667,1
    - Dst: av1_render_size
      Src: /src/gpac/src/media_tools/av_parsers.c:3668,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3672,1
    - Dst: read_interpolation_filter
      Src: /src/gpac/src/media_tools/av_parsers.c:3675,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3677,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3679,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3704,1
    - Dst: av1_setup_past_independence
      Src: /src/gpac/src/media_tools/av_parsers.c:3708,1
    - Dst: av1_load_previous
      Src: /src/gpac/src/media_tools/av_parsers.c:3712,1
    - Dst: av1_parse_tile_info
      Src: /src/gpac/src/media_tools/av_parsers.c:3715,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3717,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3722,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3726,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:3729,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3731,1
    - Dst: av1_delta_q
      Src: /src/gpac/src/media_tools/av_parsers.c:3732,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:3737,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3739,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3747,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3752,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3754,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3755,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:3761,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:3768,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:3771,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3785,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3788,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3797,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3800,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3801,1
    - Dst: av1_get_qindex
      Src: /src/gpac/src/media_tools/av_parsers.c:3808,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:3818,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:3822,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:3826,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3828,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3832,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3834,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3838,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3840,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3848,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3849,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:3853,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:3856,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3867,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3878,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3881,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3883,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3888,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3896,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3904,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:3920,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:3926,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3945,1
    - Dst: av1_get_relative_dist
      Src: /src/gpac/src/media_tools/av_parsers.c:3946,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3963,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3971,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:3974,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3988,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3990,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:3995,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:4003,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:4006,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4015,1
    - Dst: av1_read_global_param
      Src: /src/gpac/src/media_tools/av_parsers.c:4016,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4025,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4027,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4030,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4033,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4036,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4039,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4043,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4052,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4055,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4057,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4060,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4063,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4064,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4070,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4075,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4080,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:4084,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:4088,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:4093,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4095,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4096,1
    CyclomaticComplexity: 187
    EdgeCount: 187
    ICount: 440
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4102
      start: 3466
    functionDepth: 6
    functionLinenumber: 3466
    functionLinenumberEnd: 4102
    functionName: av1_parse_uncompressed_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_frame_size
    - frame_size_with_refs
    - gf_bs_read_int_log_idx
    - gf_bs_read_int_log_idx2
    - av1_delta_q
    - av1_get_relative_dist
    - av1_read_global_param
    - av1_setup_past_independence
    - read_interpolation_filter
    - av1_parse_tile_info
    - av1_load_previous
    - av1_get_qindex
    - av1_render_size
    - av1_set_frame_refs
    - gf_bs_read_int_log
    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:4108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - state
    argTypes:
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4112
      start: 4104
    functionDepth: 0
    functionLinenumber: 4104
    functionLinenumberEnd: 4112
    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:4120,1
    - Dst: gf_list_pop_back
      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_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4123,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:4128,1
    - Dst: gf_list_pop_back
      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: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4131,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:4136,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4141,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4142,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4150,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4154,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4162,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - state
    - is_destroy
    argTypes:
    - AV1State*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4164
      start: 4114
    functionDepth: 1
    functionLinenumber: 4114
    functionLinenumberEnd: 4164
    functionName: gf_av1_reset_state
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_bs_del
    - gf_bs_seek
    - memset
    - gf_list_pop_back
    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:4172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 21
    argCount: 1
    argNames:
    - state
    argTypes:
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4193
      start: 4166
    functionDepth: 0
    functionLinenumber: 4166
    functionLinenumberEnd: 4193
    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:4201,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:4202,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4204,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4205,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:4210,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:4211,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4213,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4214,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4227,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4228,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4231,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4235,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4243,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - state
    - is_destroy
    argTypes:
    - IAMFState*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4245
      start: 4195
    functionDepth: 1
    functionLinenumber: 4195
    functionLinenumberEnd: 4245
    functionName: gf_iamf_reset_state
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_bs_del
    - gf_bs_seek
    - gf_list_pop_back
    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:4254,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4264,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4265,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:4269,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:4271,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4280,1
    - Dst: aom_av1_le
      Src: /src/gpac/src/media_tools/av_parsers.c:4286,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4294,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:4301,1
    - Dst: av1_decode_frame_wrapup
      Src: /src/gpac/src/media_tools/av_parsers.c:4305,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: 4308
      start: 4247
    functionDepth: 2
    functionLinenumber: 4247
    functionLinenumberEnd: 4308
    functionName: av1_parse_tile_group
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - av1_decode_frame_wrapup
    - gf_bs_align
    - GF_ARRAY_LENGTH
    - GF_LOG
    - aom_av1_le
    - gf_bs_skip_bytes
    - gf_bs_read_int_log
    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:4314,1
    - Dst: av1_parse_uncompressed_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4317,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4319,1
    - Dst: av1_decode_frame_wrapup
      Src: /src/gpac/src/media_tools/av_parsers.c:4322,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4330
      start: 4310
    functionDepth: 7
    functionLinenumber: 4310
    functionLinenumberEnd: 4330
    functionName: av1_parse_frame_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - av1_parse_uncompressed_header
    - av1_decode_frame_wrapup
    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:4334,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:4337,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:4338,1
    - Dst: av1_parse_tile_group
      Src: /src/gpac/src/media_tools/av_parsers.c:4340,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: 4341
      start: 4332
    functionDepth: 8
    functionLinenumber: 4332
    functionLinenumberEnd: 4341
    functionName: av1_parse_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - av1_parse_tile_group
    - av1_parse_frame_header
    - 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: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:4354,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:4359,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4361,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:4364,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:4367,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4369,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4374,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4376,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - sei
    - bs
    argTypes:
    - GF_SEIInfo*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4378
      start: 4343
    functionDepth: 1
    functionLinenumber: 4343
    functionLinenumberEnd: 4378
    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:4386,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4387,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4388,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_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4401,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 16
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - AV1State*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4408
      start: 4380
    functionDepth: 1
    functionLinenumber: 4380
    functionLinenumberEnd: 4408
    functionName: av1_parse_itu_t_t35_metadata
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_int
    - GF_LOG
    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:4412,1
    - Dst: av1_parse_itu_t_t35_metadata
      Src: /src/gpac/src/media_tools/av_parsers.c:4416,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:4419,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:4423,1
    - Dst: av1_parse_timecode_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4427,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - state
    - bs
    argTypes:
    - AV1State*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4432
      start: 4410
    functionDepth: 2
    functionLinenumber: 4410
    functionLinenumberEnd: 4432
    functionName: av1_parse_obu_metadata
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_av1_leb128_read
    - av1_parse_itu_t_t35_metadata
    - av1_parse_timecode_obu
    - gf_bs_read_data
    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:4439,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4444,1
    - Dst: gf_av1_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4449,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4450,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4463,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4467,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4468,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4468,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4469,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4485,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4499,1
    - Dst: av1_parse_sequence_header_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4508,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4509,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4510,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4514,1
    - Dst: av1_parse_obu_metadata
      Src: /src/gpac/src/media_tools/av_parsers.c:4518,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4519,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4520,1
    - Dst: av1_parse_frame_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4526,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4527,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4528,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4532,1
    - Dst: av1_parse_frame
      Src: /src/gpac/src/media_tools/av_parsers.c:4535,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4536,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4537,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4540,1
    - Dst: av1_parse_tile_group
      Src: /src/gpac/src/media_tools/av_parsers.c:4544,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4545,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4546,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4550,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4559,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4573,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: 4581
      start: 4434
    functionDepth: 9
    functionLinenumber: 4434
    functionLinenumberEnd: 4581
    functionName: gf_av1_parse_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 5
    functionsReached:
    - gf_bs_get_position
    - av1_parse_tile_group
    - GF_LOG
    - gf_bs_is_overflow
    - gf_bs_mark_overflow
    - gf_av1_leb128_read
    - av1_parse_frame
    - av1_parse_frame_header
    - gf_bs_seek
    - av1_parse_obu_metadata
    - av1_parse_sequence_header_obu
    - gf_bs_available
    - gf_av1_parse_obu_header
    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:4589,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4591,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4592,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:4595,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:4596,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4597,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4598,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/av_parsers.c:4598,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4599,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4603,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:4604,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4605,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4606,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4609,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4610,1
    - Dst: gf_bs_read_u32
      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_u16
      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_int
      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_u8
      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_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4627,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4631,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4638,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4644,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4645,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4649,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 60
    argCount: 2
    argNames:
    - bs
    - prores_frame
    argTypes:
    - GF_BitStream*
    - GF_ProResFrameInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4652
      start: 4584
    functionDepth: 1
    functionLinenumber: 4584
    functionLinenumberEnd: 4652
    functionName: gf_media_prores_parse_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_seek
    - GF_LOG
    - GF_4CC
    - gf_bs_read_int
    - gf_4cc_to_str
    - gf_bs_read_u32
    - memset
    - gf_bs_read_u16
    - gf_bs_available
    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: 4695
      start: 4656
    functionDepth: 0
    functionLinenumber: 4656
    functionLinenumberEnd: 4695
    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:4709,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4711,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4713,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4714,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/media_tools/av_parsers.c:4714,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4719,1
    - Dst: iamf_is_audio_frame_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4722,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/media_tools/av_parsers.c:4722,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:4726,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4737,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:4744,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4754,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4755,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:4759,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: 4764
      start: 4699
    functionDepth: 2
    functionLinenumber: 4699
    functionLinenumberEnd: 4764
    functionName: gf_iamf_parse_obu_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - iamf_is_temporal_unit_obu
    - iamf_is_audio_frame_obu
    - GF_LOG
    - gf_av1_leb128_read
    - gf_bs_read_int
    - gf_iamf_get_obu_name
    - 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: 4769
      start: 4766
    functionDepth: 0
    functionLinenumber: 4766
    functionLinenumberEnd: 4769
    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:4773,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4774,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4777,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4779,1
    - Dst: iamf_is_profile_supported
      Src: /src/gpac/src/media_tools/av_parsers.c:4781,1
    - Dst: iamf_is_profile_supported
      Src: /src/gpac/src/media_tools/av_parsers.c:4781,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4787
      start: 4771
    functionDepth: 1
    functionLinenumber: 4771
    functionLinenumberEnd: 4787
    functionName: iamf_parse_iamf_sequence_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - iamf_is_profile_supported
    - GF_4CC
    - gf_bs_read_int_log
    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:4793,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4794,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4795,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4796,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4798,1
    - Dst: GF_4CC
      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_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4812,1
    - Dst: GF_4CC
      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_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4818,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:4821,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/media_tools/av_parsers.c:4825,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:4839,1
    - Dst: gf_m4a_parse_config
      Src: /src/gpac/src/media_tools/av_parsers.c:4841,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:4845,1
    - Dst: gf_odf_delete_descriptor
      Src: /src/gpac/src/media_tools/av_parsers.c:4854,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4857
      start: 4789
    functionDepth: 4
    functionLinenumber: 4789
    functionLinenumberEnd: 4857
    functionName: iamf_parse_codec_config
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_m4a_parse_config
    - gf_odf_parse_descriptor
    - gf_odf_delete_descriptor
    - GF_4CC
    - gf_bs_new
    - gf_av1_leb128_read
    - gf_bs_del
    - gf_bs_read_int_log
    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:4861,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:4862,1
    - Dst: gf_bs_read_int_log
      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
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/media_tools/av_parsers.c:4865,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4875
      start: 4859
    functionDepth: 2
    functionLinenumber: 4859
    functionLinenumberEnd: 4875
    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:4884,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4890,1
    - Dst: gf_iamf_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4891,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4893,1
    - Dst: iamf_parse_iamf_sequence_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4897,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4898,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4900
      start: 4877
    functionDepth: 3
    functionLinenumber: 4877
    functionLinenumberEnd: 4900
    functionName: gf_media_probe_iamf
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_iamf_parse_obu_header
    - gf_bs_peek_bits
    - iamf_parse_iamf_sequence_header
    - gf_bs_seek
    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:4906,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4912,1
    - Dst: gf_iamf_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4914,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4917,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4918,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:4918,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4919,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4923,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4924,1
    - Dst: iamf_parse_iamf_sequence_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4932,1
    - Dst: iamf_parse_codec_config
      Src: /src/gpac/src/media_tools/av_parsers.c:4938,1
    - Dst: iamf_parse_audio_element
      Src: /src/gpac/src/media_tools/av_parsers.c:4941,1
    - Dst: iamf_is_descriptor_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4946,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4948,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:4953,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:4953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4954,1
    - Dst: gf_iamf_get_obu_name
      Src: /src/gpac/src/media_tools/av_parsers.c:4954,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4958,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: 4961
      start: 4902
    functionDepth: 5
    functionLinenumber: 4902
    functionLinenumberEnd: 4961
    functionName: gf_iamf_parse_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - iamf_is_temporal_unit_obu
    - GF_LOG
    - gf_bs_is_overflow
    - gf_iamf_parse_obu_header
    - gf_bs_mark_overflow
    - iamf_is_descriptor_obu
    - gf_iamf_get_obu_name
    - iamf_parse_iamf_sequence_header
    - iamf_parse_codec_config
    - gf_bs_seek
    - iamf_parse_audio_element
    - gf_bs_available
    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:4967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:4969,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:4974,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4976,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:4982,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:4984,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/media_tools/av_parsers.c:4986,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4991,1
    - Dst: gf_iamf_parse_obu_header
      Src: /src/gpac/src/media_tools/av_parsers.c:4992,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:4993,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:4995,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:4996,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:4999,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:5000,1
    - Dst: GF_LOG
      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_free
      Src: /src/gpac/src/media_tools/av_parsers.c:5006,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:5011,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:5012,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: 5013
      start: 4963
    functionDepth: 3
    functionLinenumber: 4963
    functionLinenumberEnd: 5013
    functionName: iamf_add_obu_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - iamf_is_temporal_unit_obu
    - GF_LOG
    - gf_bs_get_content
    - gf_iamf_parse_obu_header
    - gf_bs_new
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_write_data
    - gf_list_new
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_list_add
    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:5018,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5020,1
    - Dst: iamf_add_obu_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:5029,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: 5030
      start: 5015
    functionDepth: 4
    functionLinenumber: 5015
    functionLinenumberEnd: 5030
    functionName: iamf_populate_state_from_obu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - iamf_is_temporal_unit_obu
    - iamf_add_obu_internal
    - 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:5040,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:5043,1
    - Dst: gf_iamf_parse_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5045,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:5050,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:5050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5060,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5066,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:5070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5074,1
    - Dst: iamf_populate_state_from_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5075,1
    - Dst: iamf_is_temporal_unit_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5077,1
    - Dst: iamf_is_audio_frame_obu
      Src: /src/gpac/src/media_tools/av_parsers.c:5081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5088,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 60
    argCount: 2
    argNames:
    - bs
    - state
    argTypes:
    - GF_BitStream*
    - IAMFState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5112
      start: 5032
    functionDepth: 6
    functionLinenumber: 5032
    functionLinenumberEnd: 5112
    functionName: aom_iamf_parse_temporal_unit
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - iamf_is_temporal_unit_obu
    - gf_iamf_parse_obu
    - iamf_is_audio_frame_obu
    - GF_LOG
    - gf_bs_seek
    - iamf_populate_state_from_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: 5120
      start: 5116
    functionDepth: 0
    functionLinenumber: 5116
    functionLinenumberEnd: 5120
    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:5125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5138
      start: 5122
    functionDepth: 1
    functionLinenumber: 5122
    functionLinenumberEnd: 5138
    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: 5146
      start: 5142
    functionDepth: 0
    functionLinenumber: 5142
    functionLinenumberEnd: 5146
    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: 5153
      start: 5148
    functionDepth: 0
    functionLinenumber: 5148
    functionLinenumberEnd: 5153
    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:5160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5174,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5185
      start: 5155
    functionDepth: 1
    functionLinenumber: 5155
    functionLinenumberEnd: 5185
    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:5190,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/media_tools/av_parsers.c:5191,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5199
      start: 5187
    functionDepth: 1
    functionLinenumber: 5187
    functionLinenumberEnd: 5199
    functionName: gf_mp3_window_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_mp3_layer
    - gf_mp3_version
    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:5204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5213
      start: 5201
    functionDepth: 1
    functionLinenumber: 5201
    functionLinenumberEnd: 5213
    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:5242,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/media_tools/av_parsers.c:5243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5249,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5263,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5267
      start: 5240
    functionDepth: 1
    functionLinenumber: 5240
    functionLinenumberEnd: 5267
    functionName: gf_mp3_bit_rate
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_mp3_layer
    - gf_mp3_version
    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:5274,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/media_tools/av_parsers.c:5275,1
    - Dst: gf_mp3_bit_rate
      Src: /src/gpac/src/media_tools/av_parsers.c:5277,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/media_tools/av_parsers.c:5278,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5292
      start: 5271
    functionDepth: 2
    functionLinenumber: 5271
    functionLinenumberEnd: 5292
    functionName: gf_mp3_frame_size
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_mp3_sampling_rate
    - gf_mp3_bit_rate
    - gf_mp3_layer
    - gf_mp3_version
    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:5304,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/av_parsers.c:5308,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 43
    argCount: 1
    argNames:
    - in
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5348
      start: 5295
    functionDepth: 1
    functionLinenumber: 5295
    functionLinenumberEnd: 5348
    functionName: gf_mp3_get_next_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_4CC
    - gf_fread
    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:5368,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:5369,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 3
    argNames:
    - buffer
    - size
    - pos
    argTypes:
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5414
      start: 5350
    functionDepth: 3
    functionLinenumber: 5350
    functionLinenumberEnd: 5414
    functionName: gf_mp3_get_next_header_mem
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - GF_4CC
    - gf_mp3_frame_size
    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: 5429
      start: 5418
    functionDepth: 0
    functionLinenumber: 5418
    functionLinenumberEnd: 5429
    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: 5456
      start: 5430
    functionDepth: 0
    functionLinenumber: 5430
    functionLinenumberEnd: 5456
    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: 5471
      start: 5458
    functionDepth: 0
    functionLinenumber: 5458
    functionLinenumberEnd: 5471
    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: 5485
      start: 5472
    functionDepth: 0
    functionLinenumber: 5472
    functionLinenumberEnd: 5485
    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:5496,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:5501,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:5504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5507,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:5509,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:5516,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5525,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: 5528
      start: 5487
    functionDepth: 1
    functionLinenumber: 5487
    functionLinenumberEnd: 5528
    functionName: gf_bs_read_ue_log_idx3
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_is_overflow
    - gf_bs_mark_overflow
    - gf_bs_log_idx
    - gf_bs_read_int
    - gf_bs_available
    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: 5531
      start: 5530
    functionDepth: 0
    functionLinenumber: 5530
    functionLinenumberEnd: 5531
    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: 5532
      start: 5531
    functionDepth: 0
    functionLinenumber: 5531
    functionLinenumberEnd: 5532
    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: 5533
      start: 5532
    functionDepth: 0
    functionLinenumber: 5532
    functionLinenumberEnd: 5533
    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:5537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5538
      start: 5535
    functionDepth: 1
    functionLinenumber: 5535
    functionLinenumberEnd: 5538
    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:5542,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5545
      start: 5540
    functionDepth: 2
    functionLinenumber: 5540
    functionLinenumberEnd: 5545
    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:5549,1
    - Dst: gf_bs_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5551,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: 5553
      start: 5547
    functionDepth: 3
    functionLinenumber: 5547
    functionLinenumberEnd: 5553
    functionName: gf_bs_read_se_log_idx2
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_log_idx
    - gf_bs_read_se
    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: 5555
      start: 5554
    functionDepth: 0
    functionLinenumber: 5554
    functionLinenumberEnd: 5555
    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: 5556
      start: 5555
    functionDepth: 0
    functionLinenumber: 5555
    functionLinenumberEnd: 5556
    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:5568,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:5569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - num
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5570
      start: 5559
    functionDepth: 1
    functionLinenumber: 5559
    functionLinenumberEnd: 5570
    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: 5582
      start: 5572
    functionDepth: 0
    functionLinenumber: 5572
    functionLinenumberEnd: 5582
    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:5592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - num
    argTypes:
    - GF_BitStream*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5593
      start: 5584
    functionDepth: 2
    functionLinenumber: 5584
    functionLinenumberEnd: 5593
    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: 5625
      start: 5596
    functionDepth: 0
    functionLinenumber: 5596
    functionLinenumberEnd: 5625
    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: 5658
      start: 5627
    functionDepth: 0
    functionLinenumber: 5627
    functionLinenumberEnd: 5658
    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: 5696
      start: 5661
    functionDepth: 0
    functionLinenumber: 5661
    functionLinenumberEnd: 5696
    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: 5739
      start: 5702
    functionDepth: 0
    functionLinenumber: 5702
    functionLinenumberEnd: 5739
    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:5749,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 3
    argNames:
    - data
    - data_len
    - sc_size
    argTypes:
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5779
      start: 5741
    functionDepth: 0
    functionLinenumber: 5741
    functionLinenumberEnd: 5779
    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: 5792
      start: 5781
    functionDepth: 0
    functionLinenumber: 5781
    functionLinenumberEnd: 5792
    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:5804,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - avc
    argTypes:
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5805
      start: 5795
    functionDepth: 1
    functionLinenumber: 5795
    functionLinenumberEnd: 5805
    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:5824,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5826,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5829,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5830,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5834,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5835,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5836,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
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5841,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 2
    argNames:
    - bs
    - hrd
    argTypes:
    - GF_BitStream*
    - AVC_HRD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5843
      start: 5820
    functionDepth: 1
    functionLinenumber: 5820
    functionLinenumberEnd: 5843
    functionName: avc_parse_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - GF_LOG
    - gf_bs_read_ue_log
    - gf_bs_read_ue_log_idx
    - gf_bs_read_int_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:5858,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:5868,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5870,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5872,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5877,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5882,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5906,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5909,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5917,1
    - Dst: gf_bs_read_ue_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:5919,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5921,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5924,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/media_tools/av_parsers.c:5929,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5943,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5945,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5950,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5958,1
    - Dst: gf_bs_read_int_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_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5967,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5968,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:5969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:5970,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:5974,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5979,1
    - Dst: gf_bs_read_int_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_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5982,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5988,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:5994,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:5996,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:6010,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_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6022,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:6037,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6040,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6042,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6044,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6046,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6047,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:6049,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6054,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6057,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6059,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6070,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:6074,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:6078,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6082,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6084,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6085,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6088,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:6092,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6095,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:6097,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6100,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:6102,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6106,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6108,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:6118,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6120,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6123,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6127,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6128,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_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6133,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:6136,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6138,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6140,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6141,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:6148,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:6152,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6154,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6158,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6163,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6170,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6175,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6179,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: 6182
      start: 5850
    functionDepth: 3
    functionLinenumber: 5850
    functionLinenumberEnd: 6182
    functionName: gf_avc_read_sps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_read_se_log_idx
    - GF_ARRAY_LENGTH
    - GF_LOG
    - gf_bs_read_se_log
    - gf_bs_is_overflow
    - gf_assert
    - gf_bs_read_se
    - gf_bs_read_ue_log
    - avc_parse_hrd_parameters
    - gf_bs_get_bit_offset
    - gf_bs_read_int_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:6187,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: 6188
      start: 6184
    functionDepth: 4
    functionLinenumber: 6184
    functionLinenumberEnd: 6188
    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:6200,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:6201,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:6202,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:6207,1
    - Dst: gf_avc_read_sps_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:6215,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:6218,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:6219,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: 6221
      start: 6190
    functionDepth: 5
    functionLinenumber: 6190
    functionLinenumberEnd: 6221
    functionName: gf_avc_read_sps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_avc_read_sps_bs
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_new
    - gf_bs_del
    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:6233,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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6238,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6240,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6248,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6260,1
    - Dst: gf_bs_read_int_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:6262,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6265,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6268,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6272,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6273,1
    - Dst: gf_bs_read_int_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:6278,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6282,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6284,1
    - Dst: ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6284,1
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:6284,1
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:6284,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6288,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6289,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6295,1
    - Dst: gf_bs_read_int_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_se_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_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6302,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6304,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 60
    argCount: 3
    argNames:
    - bs
    - avc
    - nal_hdr
    argTypes:
    - GF_BitStream*
    - AVCState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6307
      start: 6228
    functionDepth: 1
    functionLinenumber: 6228
    functionLinenumberEnd: 6307
    functionName: gf_avc_read_pps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_enable_emulation_byte_removal
    - ceil
    - gf_bs_read_se_log
    - gf_bs_is_overflow
    - gf_bs_read_ue_log
    - gf_bs_read_ue_log_idx
    - log
    - gf_bs_read_int_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:6312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6313
      start: 6309
    functionDepth: 2
    functionLinenumber: 6309
    functionLinenumberEnd: 6313
    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:6322,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:6326,1
    - Dst: gf_avc_read_pps_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:6327,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:6328,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - pps_data
    - pps_size
    - avc
    argTypes:
    - u8*
    - u32
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6330
      start: 6315
    functionDepth: 3
    functionLinenumber: 6315
    functionLinenumberEnd: 6330
    functionName: gf_avc_read_pps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_avc_read_pps_bs
    - gf_bs_new
    - gf_bs_del
    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:6339,1
    - Dst: gf_avc_read_sps_ext_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:6340,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:6342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - spse_data
    - spse_size
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6344
      start: 6334
    functionDepth: 1
    functionLinenumber: 6334
    functionLinenumberEnd: 6344
    functionName: gf_avc_read_sps_ext
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_bs_new
    - gf_avc_read_sps_ext_bs
    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: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
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6359,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - NalHeader
    argTypes:
    - GF_BitStream*
    - SVC_NALUHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6361
      start: 6347
    functionDepth: 1
    functionLinenumber: 6347
    functionLinenumberEnd: 6361
    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:6365,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6368,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6370,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6373,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6376,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:6379,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6383,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6386,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6388,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6391,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6394,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:6397,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: 6400
      start: 6363
    functionDepth: 1
    functionLinenumber: 6363
    functionLinenumberEnd: 6400
    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:6404,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6406,1
    - Dst: gf_bs_read_int_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_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6411,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6414,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6416,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6417,1
    - Dst: gf_bs_read_int_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_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6425,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6428,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6430,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:6431,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: 6437
      start: 6402
    functionDepth: 4
    functionLinenumber: 6402
    functionLinenumberEnd: 6437
    functionName: avc_pred_weight_table
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_ue_log
    - gf_bs_read_se_log_idx
    - gf_bs_read_se_log_idx2
    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:6441,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6442,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6445,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6448,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6450,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6452,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6454,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6456,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - IdrPicFlag
    argTypes:
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6461
      start: 6439
    functionDepth: 1
    functionLinenumber: 6439
    functionLinenumberEnd: 6461
    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:6468,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6469,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6472,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6482,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6487,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6489,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6493,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6496,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6498,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6502,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6504,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6508,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6512,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6519,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6521,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6523,1
    - Dst: avc_ref_pic_list_modification
      Src: /src/gpac/src/media_tools/av_parsers.c:6529,1
    - Dst: avc_ref_pic_list_modification
      Src: /src/gpac/src/media_tools/av_parsers.c:6531,1
    - Dst: avc_pred_weight_table
      Src: /src/gpac/src/media_tools/av_parsers.c:6536,1
    - Dst: dec_ref_pic_marking
      Src: /src/gpac/src/media_tools/av_parsers.c:6540,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6544,1
    - Dst: gf_bs_read_se
      Src: /src/gpac/src/media_tools/av_parsers.c:6547,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6550,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6552,1
    - Dst: gf_bs_read_ue_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_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6558,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6563,1
    - Dst: ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6563,1
    - Dst: log1p
      Src: /src/gpac/src/media_tools/av_parsers.c:6563,1
    - Dst: log
      Src: /src/gpac/src/media_tools/av_parsers.c:6563,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: 6566
      start: 6463
    functionDepth: 5
    functionLinenumber: 6463
    functionLinenumberEnd: 6566
    functionName: avc_parse_slice
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - ceil
    - gf_bs_read_se_log
    - log1p
    - gf_bs_read_se
    - gf_bs_read_ue_log
    - avc_ref_pic_list_modification
    - avc_pred_weight_table
    - dec_ref_pic_marking
    - log
    - gf_bs_read_int_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:6574,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6575,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6578,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6591,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6598,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6599,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6602,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6605,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6607,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6611,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6613,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6616,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 42
    argCount: 3
    argNames:
    - bs
    - avc
    - si
    argTypes:
    - GF_BitStream*
    - AVCState*
    - AVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6619
      start: 6569
    functionDepth: 1
    functionLinenumber: 6569
    functionLinenumberEnd: 6619
    functionName: svc_parse_slice
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_se_log
    - gf_bs_read_ue_log
    - gf_bs_read_int_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: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
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6629,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6633
      start: 6622
    functionDepth: 1
    functionLinenumber: 6622
    functionLinenumberEnd: 6633
    functionName: avc_parse_recovery_point_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log
    - gf_bs_read_int_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:6644,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:6649,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:6655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:6657,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6663,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:6673,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:6677,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:6685,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6690,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6693,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6702
      start: 6636
    functionDepth: 1
    functionLinenumber: 6636
    functionLinenumberEnd: 6702
    functionName: avc_parse_pic_timing_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - GF_LOG
    - gf_assert
    - gf_ceil
    - gf_bs_read_int_log
    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:6709,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:6711,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6715,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6716,1
    - Dst: gf_bs_read_int
      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_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6719,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:6721,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:6725,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_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:6732,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:6738,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6745
      start: 6704
    functionDepth: 1
    functionLinenumber: 6704
    functionLinenumberEnd: 6745
    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:6749,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:6750,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:6751,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:6752,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - dovi
    argTypes:
    - GF_BitStream*
    - AVCSeiItuTT35DolbyVision*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6756
      start: 6747
    functionDepth: 1
    functionLinenumber: 6747
    functionLinenumberEnd: 6756
    functionName: avc_parse_itu_t_t35_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:6873,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 73
    argCount: 1
    argNames:
    - si
    argTypes:
    - AVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6878
      start: 6758
    functionDepth: 1
    functionLinenumber: 6758
    functionLinenumberEnd: 6878
    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:6888,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:6889,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6890,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:6892,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:6895,1
    - Dst: SVC_ReadNal_header_extension
      Src: /src/gpac/src/media_tools/av_parsers.c:6909,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6910,1
    - Dst: svc_parse_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:6913,1
    - Dst: avc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:6918,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:6921,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:6924,1
    - Dst: SVC_ReadNal_header_extension
      Src: /src/gpac/src/media_tools/av_parsers.c:6928,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6929,1
    - Dst: avc_parse_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:6939,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:6940,1
    - Dst: gf_avc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:7001,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7002,1
    - Dst: gf_avc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:7008,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7009,1
    - Dst: gf_avc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:7013,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7014,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7018,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:7019,1
    - Dst: avc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:7050,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:7051,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 155
    argCount: 2
    argNames:
    - bs
    - avc
    argTypes:
    - GF_BitStream*
    - AVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7053
      start: 6880
    functionDepth: 6
    functionLinenumber: 6880
    functionLinenumberEnd: 7053
    functionName: gf_avc_parse_nalu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_avc_read_pps_bs_internal
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_is_overflow
    - gf_avc_read_sps_bs_internal
    - gf_bs_mark_overflow
    - SVC_ReadNal_header_extension
    - avc_parse_slice
    - svc_parse_slice
    - avc_compute_poc
    - gf_bs_read_ue
    - memcpy
    - gf_bs_available
    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:7069,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7071,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:7072,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7074,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7075,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7078,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7082,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7089,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7109,1
    - Dst: GF_LOG
      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_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:7127,1
    - Dst: avc_parse_recovery_point_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:7132,1
    - Dst: avc_parse_pic_timing_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:7137,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7161,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7164,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7168,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7171,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7172,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:7177,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:7177,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7183,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7186,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:7187,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7192,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7193,1
    - Dst: GF_LOG
      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_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7197,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7200,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7204,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7207,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:7215,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:7217,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:7221,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7223,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7226,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: 7228
      start: 7055
    functionDepth: 2
    functionLinenumber: 7055
    functionLinenumberEnd: 7228
    functionName: gf_avc_reformat_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_enable_emulation_byte_removal
    - gf_media_nalu_emulation_bytes_add_count
    - gf_free
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - avc_parse_pic_timing_sei
    - gf_bs_read_int
    - gf_bs_del
    - avc_parse_recovery_point_sei
    - gf_bs_seek
    - gf_bs_write_u8
    - gf_bs_available
    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:7232,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - w
    - h
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7238
      start: 7230
    functionDepth: 1
    functionLinenumber: 7230
    functionLinenumberEnd: 7238
    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:7243,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:7247,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7249,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7250,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:7252,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: 7254
      start: 7240
    functionDepth: 2
    functionLinenumber: 7240
    functionLinenumberEnd: 7254
    functionName: sub_layer_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx3
    - gf_bs_read_ue_log_idx3
    - gf_bs_available
    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:7264,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7265,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7267,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:7272,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:7275,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7277,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:7281,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7285,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7290,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7293,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7295,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7297,1
    - Dst: sub_layer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7300,1
    - Dst: sub_layer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7303,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: 7306
      start: 7256
    functionDepth: 3
    functionLinenumber: 7256
    functionLinenumberEnd: 7306
    functionName: hevc_parse_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - sub_layer_hrd_parameters
    - gf_bs_read_ue_log_idx
    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:7311,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7361,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7362,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7363,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:7368,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7370,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7374,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7376,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:7379,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7384,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7386,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7390,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:7396,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:7404,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7412,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7415,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7417,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7418,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7423,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7425,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7426,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_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7433,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_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7438,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7442,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:7445,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7447,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7449,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7451,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7452,1
    - Dst: hevc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7453,1
    - Dst: avc_hevc_get_sar_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7478,1
    - Dst: gf_get_ue_nb_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7521,1
    - Dst: gf_get_ue_nb_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7523,1
    - Dst: gf_get_ue_nb_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7524,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7532,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7538,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7539,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7540,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:7546,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7549,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7552,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7554,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:7557,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7564,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7566,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7569,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:7574,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:7582,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7584,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7600,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7603,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7605,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7606,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7613,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7614,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7620,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7629,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:7632,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7640,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7641,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7644,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7646,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7647,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:7648,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7655,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7657,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7658,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_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7665,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_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7670,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7674,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:7677,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7679,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7681,1
    - Dst: gf_bs_write_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7683,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7691,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7692,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7694,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7695,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7696,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7697,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7698,1
    - Dst: gf_bs_seek
      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:7702,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7706,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7707,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7711,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7712,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7714,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:7715,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7716,1
    - Dst: avc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:7717,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:7718,1
    - Dst: gf_bs_seek
      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:7722,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7726,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7727,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7732,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7733,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7736,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:7741,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7744,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7750,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7753,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7755,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: 7759
      start: 7308
    functionDepth: 4
    functionLinenumber: 7308
    functionLinenumberEnd: 7759
    functionName: avc_hevc_vvc_rewrite_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - hevc_parse_hrd_parameters
    - gf_bs_align
    - gf_bs_seek
    - gf_bs_write_int
    - gf_bs_is_align
    - gf_bs_peek_bits
    - gf_bs_read_int
    - avc_hevc_get_sar_idx
    - avc_parse_hrd_parameters
    - gf_bs_read_ue
    - gf_bs_get_bit_position
    - gf_bs_write_ue
    - gf_get_ue_nb_bits
    - gf_bs_get_bit_offset
    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:7771,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:7776,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/av_parsers.c:7780,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:7786,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:7787,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7789,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:7790,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:7791,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:7792,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7796,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7797,1
    - Dst: avc_hevc_vvc_rewrite_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:7801,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:7804,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7805,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7806,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7808,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7810,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:7813,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:7814,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/av_parsers.c:7816,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:7817,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7819,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7820,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7822,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 2
    argNames:
    - avcc
    - vui_info
    argTypes:
    - GF_AVCConfig*
    - GF_VUIInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7824
      start: 7761
    functionDepth: 6
    functionLinenumber: 7761
    functionLinenumberEnd: 7824
    functionName: gf_avc_change_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_list_enum
    - gf_media_nalu_add_emulation_bytes
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_new
    - avc_hevc_vvc_rewrite_vui
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_read_int
    - gf_bs_del
    - gf_realloc
    - gf_bs_seek
    - gf_avc_read_sps
    - gf_bs_bits_available
    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:7830,1
    - Dst: gf_avc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:7838,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: 7839
      start: 7826
    functionDepth: 7
    functionLinenumber: 7826
    functionLinenumberEnd: 7839
    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:7845,1
    - Dst: gf_avc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:7853,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: 7854
      start: 7841
    functionDepth: 7
    functionLinenumber: 7841
    functionLinenumberEnd: 7854
    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:7862,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/av_parsers.c:7866,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7868,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:7878,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: 7880
      start: 7857
    functionDepth: 6
    functionLinenumber: 7857
    functionLinenumberEnd: 7880
    functionName: gf_avc_get_sps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - gf_avc_read_sps
    - GF_SAFEALLOC
    - gf_free
    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:7888,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:7893,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:7894,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7896,1
    - Dst: gf_bs_read_ue
      Src: /src/gpac/src/media_tools/av_parsers.c:7897,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:7900,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: 7902
      start: 7882
    functionDepth: 2
    functionLinenumber: 7882
    functionLinenumberEnd: 7902
    functionName: gf_avc_get_pps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - 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: 7921
      start: 7908
    functionDepth: 0
    functionLinenumber: 7908
    functionLinenumberEnd: 7921
    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: 7937
      start: 7923
    functionDepth: 0
    functionLinenumber: 7923
    functionLinenumberEnd: 7937
    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:7944,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7955,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7961,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:7962,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:7970,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:7973,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8004,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8017,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8021,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8026,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8030,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: 8034
      start: 7939
    functionDepth: 1
    functionLinenumber: 7939
    functionLinenumberEnd: 8034
    functionName: hevc_parse_short_term_ref_pic_set
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_int_log_idx
    - gf_bs_read_ue_log_idx2
    - gf_bs_read_ue_log_idx
    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:8045,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8047,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8051,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8057,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:8063,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:8067,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8069,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8070,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: 8080
      start: 8036
    functionDepth: 1
    functionLinenumber: 8036
    functionLinenumberEnd: 8080
    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_ue_log
    - gf_bs_read_se_log_idx
    - gf_bs_read_int_log_idx
    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:8085,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8090,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8090,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8091,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8095,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8097,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8097,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8098,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: 8102
      start: 8082
    functionDepth: 1
    functionLinenumber: 8082
    functionLinenumberEnd: 8102
    functionName: hevc_ref_pic_lists_modification
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - MIN
    - GF_ARRAY_LENGTH
    - gf_bs_read_int_log
    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:8113,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8114,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8131,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8134,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8145,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8152,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8169,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8171,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8174,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8177,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8187,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8193,1
    - Dst: hevc_parse_short_term_ref_pic_set
      Src: /src/gpac/src/media_tools/av_parsers.c:8194,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8205,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:8215,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8218,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8220,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8228,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/media_tools/av_parsers.c:8228,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:8232,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8234,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8236,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8238,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8243,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8273,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8278,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8285,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8296,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8298,1
    - Dst: gf_bs_read_int_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:8309,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8311,1
    - Dst: hevc_ref_pic_lists_modification
      Src: /src/gpac/src/media_tools/av_parsers.c:8332,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8337,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8339,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8345,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8350,1
    - Dst: hevc_pred_weight_table
      Src: /src/gpac/src/media_tools/av_parsers.c:8357,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8359,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8361,1
    - Dst: gf_bs_get_bit_position
      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:8362,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8365,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8366,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8369,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8373,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8375,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8376,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8382,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8391,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8391,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8394,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8396,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8404,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8408,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8416,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8418,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8418,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8422,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8427,1
    - Dst: gf_bs_get_bit_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8427,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8430,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:8433,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8434,1
    CyclomaticComplexity: 97
    EdgeCount: 97
    ICount: 229
    argCount: 3
    argNames:
    - bs
    - hevc
    - si
    argTypes:
    - GF_BitStream*
    - HEVCState*
    - HEVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8436
      start: 8104
    functionDepth: 2
    functionLinenumber: 8104
    functionLinenumberEnd: 8436
    functionName: hevc_parse_slice_segment
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - hevc_parse_short_term_ref_pic_set
    - gf_bs_read_int_log_idx
    - hevc_ref_pic_lists_modification
    - gf_bs_align
    - hevc_pred_weight_table
    - gf_bs_read_se_log
    - GF_LOG
    - gf_bs_read_ue_log
    - gf_bs_read_int
    - gf_get_bit_size
    - gf_bs_read_ue_log_idx
    - gf_bs_get_bit_position
    - memset
    - gf_bs_available
    - gf_bs_read_int_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:8444,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - si
    - poc
    argTypes:
    - HEVCSliceInfo*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8447
      start: 8438
    functionDepth: 1
    functionLinenumber: 8438
    functionLinenumberEnd: 8447
    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:8459,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8471,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8471,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8471,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8479,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8479,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8479,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8489,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8489,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8500,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8500,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8503,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8503,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:8506,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8506,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/av_parsers.c:8509,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8516,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8516,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8521,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8521,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8526,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8526,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/av_parsers.c:8530,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8535,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8539,1
    - Dst: gf_hevc_push_ref_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:8540,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8546,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:8550,1
    - Dst: gf_hevc_push_ref_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:8551,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: 8508
        line_start: 8508
        source_file: /src/gpac/src/media_tools/av_parsers.c
    - condition: (nb_poc_l1 == num_poc_total)
      pos:
        line_end: 8529
        line_start: 8529
        source_file: /src/gpac/src/media_tools/av_parsers.c
    constantsTouched: []
    func_position:
      end: 8554
      start: 8449
    functionDepth: 2
    functionLinenumber: 8449
    functionLinenumberEnd: 8554
    functionName: gf_hevc_compute_ref_list
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - GF_LOG
    - MIN
    - gf_hevc_push_ref_poc
    - assert
    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:8578,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:8580,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:8581,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8583,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8584,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8587,1
    - Dst: gf_bs_peek_bits
      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:8592,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8595,1
    - Dst: gf_bs_peek_bits
      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:8598,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8601,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8618,1
    - Dst: GF_LOG
      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_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8622,1
    - Dst: gf_bs_get_emulation_byte_removed
      Src: /src/gpac/src/media_tools/av_parsers.c:8626,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8631,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8634,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8638,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8641,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:8642,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8647,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8647,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:8652,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8657,1
    - Dst: gf_bs_get_emulation_byte_removed
      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_align
      Src: /src/gpac/src/media_tools/av_parsers.c:8664,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8665,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8670,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8674,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8675,1
    - Dst: GF_LOG
      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_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8679,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8682,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8686,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8689,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:8697,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:8699,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:8703,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:8705,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8708,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: 8710
      start: 8556
    functionDepth: 1
    functionLinenumber: 8556
    functionLinenumberEnd: 8710
    functionName: gf_hevc_vvc_reformat_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_enable_emulation_byte_removal
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_align
    - gf_free
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_get_emulation_byte_removed
    - gf_bs_new
    - gf_bs_peek_bits
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_seek
    - gf_bs_write_u8
    - gf_bs_available
    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:8722,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:8723,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8725,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8728,1
    - Dst: gf_bs_peek_bits
      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:8732,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8735,1
    - Dst: gf_bs_peek_bits
      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:8738,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8741,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8743,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:8745,1
    - Dst: gf_bs_get_emulation_byte_removed
      Src: /src/gpac/src/media_tools/av_parsers.c:8749,1
    - Dst: avc_parse_itu_t_t35_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:8753,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8759,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8767,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8774,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8776,1
    - Dst: hevc_parse_pic_timing_sei
      Src: /src/gpac/src/media_tools/av_parsers.c:8785,1
    - Dst: gf_bs_read_u32
      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_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:8792,1
    - Dst: gf_bs_get_emulation_byte_removed
      Src: /src/gpac/src/media_tools/av_parsers.c:8798,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:8800,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:8801,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:8806,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:8809,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:8812,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: 8813
      start: 8712
    functionDepth: 2
    functionLinenumber: 8712
    functionLinenumberEnd: 8813
    functionName: gf_hevc_vvc_parse_sei
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_align
    - GF_LOG
    - gf_bs_get_emulation_byte_removed
    - gf_bs_peek_bits
    - gf_bs_new
    - gf_bs_read_int
    - avc_parse_itu_t_t35_sei
    - gf_bs_del
    - hevc_parse_pic_timing_sei
    - gf_bs_read_u32
    - gf_bs_read_u16
    - 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:8817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - buffer
    - nal_size
    - hevc
    argTypes:
    - char*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8818
      start: 8815
    functionDepth: 3
    functionLinenumber: 8815
    functionLinenumberEnd: 8818
    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:8822,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: 8823
      start: 8820
    functionDepth: 2
    functionLinenumber: 8820
    functionLinenumberEnd: 8823
    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: 8853
      start: 8825
    functionDepth: 0
    functionLinenumber: 8825
    functionLinenumberEnd: 8853
    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:8859,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8862,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8865,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8868,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: 8874
      start: 8856
    functionDepth: 1
    functionLinenumber: 8856
    functionLinenumberEnd: 8874
    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: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:8883,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8885,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_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8890,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8891,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:8893,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8895,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8896,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8900,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_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8913,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/media_tools/av_parsers.c:8914,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:8917,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: 8919
      start: 8877
    functionDepth: 1
    functionLinenumber: 8877
    functionLinenumberEnd: 8919
    functionName: hevc_profile_tier_level
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_int_log_idx
    - gf_bs_read_long_int
    - gf_bs_read_int
    - gf_bs_read_int_log
    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: 8928
      start: 8921
    functionDepth: 0
    functionLinenumber: 8921
    functionLinenumberEnd: 8928
    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:8937,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: 8939
      start: 8933
    functionDepth: 1
    functionLinenumber: 8933
    functionLinenumberEnd: 8939
    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:8943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - vps
    - id
    argTypes:
    - HEVC_VPS*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8944
      start: 8941
    functionDepth: 2
    functionLinenumber: 8941
    functionLinenumberEnd: 8944
    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:8951,1
    - Dst: lhvc_get_scalability_id
      Src: /src/gpac/src/media_tools/av_parsers.c:8951,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - vps
    argTypes:
    - HEVC_VPS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8956
      start: 8946
    functionDepth: 3
    functionLinenumber: 8946
    functionLinenumberEnd: 8956
    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: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:8963,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8965,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:8970,1
    - Dst: gf_bs_read_int_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
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:8976,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - fmt
    - bs
    - idx
    argTypes:
    - HEVC_RepFormat*
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8978
      start: 8958
    functionDepth: 1
    functionLinenumber: 8958
    functionLinenumberEnd: 8978
    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:9002,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9004,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9007,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9028,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9036,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9047,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9055,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9076,1
    - Dst: lhvc_get_num_views
      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:9079,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9085,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:9122,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9173,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9180,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9184,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9186,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9194,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9198,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9202,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9206,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9212,1
    - Dst: hevc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:9213,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9220,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9227,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9240,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9248,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9292,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9305,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9310,1
    - Dst: lhvc_parse_rep_format
      Src: /src/gpac/src/media_tools/av_parsers.c:9316,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9319,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9329,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9335,1
    CyclomaticComplexity: 99
    EdgeCount: 99
    ICount: 277
    argCount: 2
    argNames:
    - vps
    - bs
    argTypes:
    - HEVC_VPS*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9339
      start: 8981
    functionDepth: 4
    functionLinenumber: 8981
    functionLinenumberEnd: 9339
    functionName: hevc_parse_vps_extension
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_int_log_idx
    - GF_LOG
    - hevc_profile_tier_level
    - gf_bs_read_ue_log
    - lhvc_parse_rep_format
    - memset
    - lhvc_get_num_views
    - gf_bs_read_int_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:9355,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_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9370,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: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9375,1
    - Dst: hevc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:9376,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9378,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_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9382,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9386,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9389,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9391,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9396,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9412,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_int_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:9418,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9424,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9430,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9432,1
    - Dst: hevc_parse_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:9433,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9440,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:9443,1
    - Dst: hevc_parse_vps_extension
      Src: /src/gpac/src/media_tools/av_parsers.c:9444,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9446,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9449,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:9451,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9452,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: 9459
      start: 9346
    functionDepth: 5
    functionLinenumber: 9346
    functionLinenumberEnd: 9459
    functionName: gf_hevc_read_vps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - hevc_parse_hrd_parameters
    - gf_bs_align
    - GF_LOG
    - hevc_profile_tier_level
    - gf_bs_read_ue_log
    - gf_bs_read_int
    - gf_bs_read_ue_log_idx
    - hevc_parse_vps_extension
    - gf_bs_available
    - gf_bs_read_int_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:9470,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:9472,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:9473,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:9477,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:9478,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:9479,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9484,1
    - Dst: gf_hevc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9486,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:9492,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:9493,1
    - Dst: gf_bs_seek
      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_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9498,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:9498,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:9499,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:9499,1
    - Dst: gf_bs_read_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:9503,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9507,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:9509,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:9510,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:9512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9514,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:9517,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:9520,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:9525,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:9526,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: 9528
      start: 9461
    functionDepth: 6
    functionLinenumber: 9461
    functionLinenumberEnd: 9528
    functionName: gf_hevc_read_vps_ex
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_del
    - gf_bs_seek
    - gf_bs_write_u8
    - gf_hevc_read_vps_bs_internal
    - gf_malloc
    - gf_media_nalu_emulation_bytes_remove_count
    - gf_bs_enable_emulation_byte_removal
    - hevc_parse_nal_header
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_read_int
    - gf_bs_read_u16
    - gf_media_nalu_emulation_bytes_add_count
    - gf_free
    - GF_LOG
    - gf_bs_write_u16
    - gf_bs_get_bit_offset
    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:9533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - size
    - hevc
    argTypes:
    - u8*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9534
      start: 9530
    functionDepth: 7
    functionLinenumber: 9530
    functionLinenumberEnd: 9534
    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:9540,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9541,1
    - Dst: gf_hevc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9542,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9543
      start: 9536
    functionDepth: 6
    functionLinenumber: 9536
    functionLinenumberEnd: 9543
    functionName: gf_hevc_read_vps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_hevc_read_vps_bs_internal
    - hevc_parse_nal_header
    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:9551,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9553,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:9557,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9559,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9562,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9567
      start: 9545
    functionDepth: 4
    functionLinenumber: 9545
    functionLinenumberEnd: 9567
    functionName: hevc_scaling_list_data
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - gf_bs_read_se_log_idx2
    - MIN
    - gf_bs_read_ue_log_idx
    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:9598,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:9602,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9606,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9608,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9613,1
    - Dst: hevc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:9614,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9617,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9641,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9652,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9666,1
    - Dst: gf_bs_read_int_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_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9670,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9671,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:9688,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:9694,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9697,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9699,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9704,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9708,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:9713,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9721,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9722,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:9727,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9731,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9732,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9747,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9752,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9755,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9758,1
    - Dst: hevc_scaling_list_data
      Src: /src/gpac/src/media_tools/av_parsers.c:9760,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_int_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_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9770,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9771,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9773,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9775,1
    - Dst: hevc_parse_short_term_ref_pic_set
      Src: /src/gpac/src/media_tools/av_parsers.c:9780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9783,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9787,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9789,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:9792,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9795,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9796,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:9799,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:9802,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9804,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:9807,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:9816,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9818,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:9825,1
    - Dst: gf_bs_read_int_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_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9831,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:9836,1
    - Dst: gf_bs_read_int_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_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9842,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9845,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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9849,1
    - Dst: gf_bs_read_ue_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:9852,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_int_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_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9866,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9870,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:9872,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:9873,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:9878,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: 9881
      start: 9585
    functionDepth: 5
    functionLinenumber: 9585
    functionLinenumberEnd: 9881
    functionName: gf_hevc_read_sps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - hevc_parse_short_term_ref_pic_set
    - gf_bs_read_int_log_idx
    - GF_LOG
    - gf_bs_is_overflow
    - hevc_profile_tier_level
    - MIN
    - gf_bs_read_ue_log
    - gf_bs_read_int
    - hevc_scaling_list_data
    - gf_bs_read_ue_log_idx
    - gf_bs_get_bit_offset
    - memset
    - gf_bs_available
    - gf_bs_read_int_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:9892,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:9894,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9896,1
    - Dst: gf_hevc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9897,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:9900,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: 9902
      start: 9883
    functionDepth: 6
    functionLinenumber: 9883
    functionLinenumberEnd: 9902
    functionName: gf_hevc_read_sps_ex
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - hevc_parse_nal_header
    - gf_bs_new
    - 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:9907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - size
    - hevc
    argTypes:
    - u8*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9908
      start: 9904
    functionDepth: 7
    functionLinenumber: 9904
    functionLinenumberEnd: 9908
    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:9915,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:9916,1
    - Dst: gf_hevc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:9917,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9918
      start: 9910
    functionDepth: 6
    functionLinenumber: 9910
    functionLinenumberEnd: 9918
    functionName: gf_hevc_read_sps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_hevc_read_sps_bs_internal
    - gf_bs_enable_emulation_byte_removal
    - hevc_parse_nal_header
    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:9930,1
    - Dst: hevc_color_map_octants
      Src: /src/gpac/src/media_tools/av_parsers.c:9935,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:9944,1
    - Dst: gf_bs_read_ue_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:9947,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:9949,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: 9955
      start: 9925
    functionDepth: 2
    functionLinenumber: 9925
    functionLinenumberEnd: 9955
    functionName: hevc_color_map_octants
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int_log_idx3
    - gf_bs_read_int_log_idx2
    - gf_bs_read_ue_log_idx3
    - hevc_color_map_octants
    - gf_bs_read_int_log
    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:9964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9967,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:9978,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9982,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_int_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_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9989,1
    - Dst: gf_bs_read_se_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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9993,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9994,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:9996,1
    - Dst: gf_bs_read_se_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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10003,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10005,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:10007,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10010,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:10012,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10015,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10018,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10021,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10024,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_int_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_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10031,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10034,1
    - Dst: hevc_scaling_list_data
      Src: /src/gpac/src/media_tools/av_parsers.c:10035,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10037,1
    - Dst: gf_bs_read_ue_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:10039,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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10050,1
    - Dst: gf_bs_read_ue_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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10056,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10058,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10059,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10061,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10062,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10065,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10066,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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10071,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10073,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10075,1
    - Dst: gf_bs_read_int_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_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10080,1
    - Dst: gf_bs_read_int_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_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10086,1
    - Dst: gf_bs_read_int_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_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10092,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10095,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10096,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10098,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10100,1
    - Dst: gf_bs_read_int_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_ue_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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10107,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10109,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10110,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:10114,1
    - Dst: hevc_color_map_octants
      Src: /src/gpac/src/media_tools/av_parsers.c:10117,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
      Src: /src/gpac/src/media_tools/av_parsers.c:10124,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10126,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10129,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:10134,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10137,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10142,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10147,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:10152,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:10158,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_int_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_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10173,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10175,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10176,1
    - Dst: gf_bs_read_int_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:10179,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10182,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:10186,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:10193,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 190
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10196
      start: 9957
    functionDepth: 5
    functionLinenumber: 9957
    functionLinenumberEnd: 10196
    functionName: gf_hevc_read_pps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_se_log_idx
    - gf_bs_read_int_log_idx
    - GF_LOG
    - gf_bs_read_se_log
    - gf_bs_is_overflow
    - gf_bs_read_ue_log
    - hevc_color_map_octants
    - hevc_scaling_list_data
    - MAX
    - gf_bs_read_ue_log_idx
    - gf_bs_read_int_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:10205,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:10207,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:10209,1
    - Dst: gf_hevc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10211,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10214,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - data
    - size
    - hevc
    argTypes:
    - u8*
    - u32
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10216
      start: 10199
    functionDepth: 6
    functionLinenumber: 10199
    functionLinenumberEnd: 10216
    functionName: gf_hevc_read_pps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_hevc_read_pps_bs_internal
    - hevc_parse_nal_header
    - gf_bs_new
    - 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:10222,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:10223,1
    - Dst: gf_hevc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10224,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - hevc
    argTypes:
    - GF_BitStream*
    - HEVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10225
      start: 10218
    functionDepth: 6
    functionLinenumber: 10218
    functionLinenumberEnd: 10225
    functionName: gf_hevc_read_pps_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_hevc_read_pps_bs_internal
    - hevc_parse_nal_header
    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:10234,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:10235,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:10237,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:10239,1
    - Dst: hevc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:10240,1
    - Dst: hevc_parse_slice_segment
      Src: /src/gpac/src/media_tools/av_parsers.c:10272,1
    - Dst: hevc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:10275,1
    - Dst: gf_hevc_compute_ref_list
      Src: /src/gpac/src/media_tools/av_parsers.c:10277,1
    - Dst: gf_hevc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10293,1
    - Dst: gf_hevc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10297,1
    - Dst: gf_hevc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:10301,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:10309,1
    - Dst: hevc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:10322,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:10323,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: 10326
      start: 10227
    functionDepth: 6
    functionLinenumber: 10227
    functionLinenumberEnd: 10326
    functionName: gf_hevc_parse_nalu_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - hevc_parse_slice_segment
    - gf_hevc_read_vps_bs_internal
    - gf_hevc_read_pps_bs_internal
    - hevc_parse_nal_header
    - gf_bs_is_overflow
    - gf_bs_mark_overflow
    - hevc_compute_poc
    - gf_hevc_compute_ref_list
    - gf_hevc_read_sps_bs_internal
    - memcpy
    - gf_bs_available
    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:10348,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:10350,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:10352,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10354,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: 10356
      start: 10328
    functionDepth: 7
    functionLinenumber: 10328
    functionLinenumberEnd: 10356
    functionName: gf_hevc_parse_nalu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_hevc_parse_nalu_bs
    - gf_bs_new
    - gf_bs_del
    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:10369,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:10375,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10381,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:10386,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:10391,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10392,1
    - Dst: gf_hevc_read_sps_ex
      Src: /src/gpac/src/media_tools/av_parsers.c:10394,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10397,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10398,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10402,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10403,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10407,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10408,1
    - Dst: avc_hevc_vvc_rewrite_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:10412,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:10415,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10416,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10417,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10419,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10421,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:10424,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:10425,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/av_parsers.c:10427,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10429,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10431,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10432,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10434,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 53
    argCount: 2
    argNames:
    - hvcc
    - vui_info
    argTypes:
    - GF_HEVCConfig*
    - GF_VUIInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10436
      start: 10358
    functionDepth: 7
    functionLinenumber: 10358
    functionLinenumberEnd: 10436
    functionName: gf_hevc_change_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_list_enum
    - gf_media_nalu_add_emulation_bytes
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_new
    - avc_hevc_vvc_rewrite_vui
    - gf_hevc_read_sps_ex
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_read_int
    - gf_realloc
    - gf_bs_bits_available
    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:10443,1
    - Dst: gf_hevc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:10451,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: 10452
      start: 10439
    functionDepth: 8
    functionLinenumber: 10439
    functionLinenumberEnd: 10452
    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:10458,1
    - Dst: gf_hevc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:10466,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: 10467
      start: 10454
    functionDepth: 8
    functionLinenumber: 10454
    functionLinenumberEnd: 10467
    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:10474,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: 10485
      start: 10470
    functionDepth: 8
    functionLinenumber: 10470
    functionLinenumberEnd: 10485
    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:10491,1
    - Dst: gf_hevc_get_sps_info_with_state
      Src: /src/gpac/src/media_tools/av_parsers.c:10494,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:10495,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: 10497
      start: 10487
    functionDepth: 9
    functionLinenumber: 10487
    functionLinenumberEnd: 10497
    functionName: gf_hevc_get_sps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - gf_hevc_get_sps_info_with_state
    - gf_free
    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: 10510
      start: 10499
    functionDepth: 0
    functionLinenumber: 10499
    functionLinenumberEnd: 10510
    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:10516,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10517,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/media_tools/av_parsers.c:10518,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:10521,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:10523,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10525,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10532
      start: 10513
    functionDepth: 1
    functionLinenumber: 10513
    functionLinenumberEnd: 10532
    functionName: AC3_FindSyncCodeBS
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_get_size
    - gf_bs_seek
    - gf_bs_available
    linkageType: ''
    returnType: Bool
    signature: Bool AC3_FindSyncCodeBS(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:10566,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - acmod
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10569
      start: 10562
    functionDepth: 1
    functionLinenumber: 10562
    functionLinenumberEnd: 10569
    functionName: gf_ac3_get_total_channels
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_get_total_channels(u32 acmod)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:10575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - acmod
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10578
      start: 10571
    functionDepth: 1
    functionLinenumber: 10571
    functionLinenumberEnd: 10578
    functionName: gf_ac3_get_surround_channels
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_ac3_get_surround_channels(u32 acmod)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:10583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - brcode
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10586
      start: 10580
    functionDepth: 1
    functionLinenumber: 10580
    functionLinenumberEnd: 10586
    functionName: gf_ac3_get_bitrate
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    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:10595,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:10598,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:10599,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:10600,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: 10603
      start: 10588
    functionDepth: 1
    functionLinenumber: 10588
    functionLinenumberEnd: 10603
    functionName: gf_ac3_parser
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 3
    functionsReached:
    - gf_bs_del
    - AC3_FindSyncCode
    - gf_ac3_parser_bs
    - gf_bs_new
    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:10610,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:10612,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10613,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:10615,1
    - Dst: GF_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:10620,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10621,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10622,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10623,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10624,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10625,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10663,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10664,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10665,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10667,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10672,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: 10675
      start: 10605
    functionDepth: 2
    functionLinenumber: 10605
    functionLinenumberEnd: 10675
    functionName: gf_ac3_parser_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - AC3_FindSyncCodeBS
    - GF_LOG
    - gf_bs_seek
    - memset
    - gf_bs_read_u16
    - gf_bs_read_int_log
    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: 10721
      start: 10677
    functionDepth: 0
    functionLinenumber: 10677
    functionLinenumberEnd: 10721
    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: 10737
      start: 10723
    functionDepth: 0
    functionLinenumber: 10723
    functionLinenumberEnd: 10737
    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: 10753
      start: 10739
    functionDepth: 0
    functionLinenumber: 10739
    functionLinenumberEnd: 10753
    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:10761,1
    - Dst: gf_eac3_get_chan_loc_count
      Src: /src/gpac/src/media_tools/av_parsers.c:10762,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - hdr
    argTypes:
    - GF_AC3Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10768
      start: 10755
    functionDepth: 1
    functionLinenumber: 10755
    functionLinenumberEnd: 10768
    functionName: eac3_update_channels
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - eac3_chanmap_to_chan_loc
    - gf_eac3_get_chan_loc_count
    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:10781,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10785,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:10791,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:10794,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:10796,1
    - Dst: eac3_update_channels
      Src: /src/gpac/src/media_tools/av_parsers.c:10803,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10804,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:10807,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10808,1
    - Dst: gf_ac3_get_bitrate
      Src: /src/gpac/src/media_tools/av_parsers.c:10817,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10819,1
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10820,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10821,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:10830,1
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10831,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10832,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:10837,1
    - Dst: GF_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:10844,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10845,1
    - Dst: eac3_update_channels
      Src: /src/gpac/src/media_tools/av_parsers.c:10851,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10852,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:10866,1
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:10867,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:10868,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10874,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10876,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10878,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10881,1
    - Dst: gf_bs_align
      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: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:10907,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:10914,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10915,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:10921,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:10922,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:10929,1
    - Dst: eac3_update_channels
      Src: /src/gpac/src/media_tools/av_parsers.c:10951,1
    - Dst: gf_bs_seek
      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: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:10959,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10960,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:10967,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10968,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:10975,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:10977,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10979,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:10983,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10986,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:10993,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:10996,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:11002,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:11008,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11009,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:11017,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11018,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:11021,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11024,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11024,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11026,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:11032,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11033,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:11037,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11040,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11041,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11043,1
    - Dst: gf_bs_seek
      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
    - Dst: AC3_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:11058,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:11059,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: 11064
      start: 10770
    functionDepth: 3
    functionLinenumber: 10770
    functionLinenumberEnd: 11064
    functionName: gf_eac3_parser_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_align
    - AC3_FindSyncCodeBS
    - eac3_update_channels
    - GF_LOG
    - gf_assert
    - gf_bs_peek_bits
    - gf_bs_read_int
    - gf_bs_seek
    - memset
    - gf_ac3_get_bitrate
    - gf_bs_read_u16
    - gf_ac3_parser_bs
    - gf_bs_skip_bytes
    - gf_bs_read_int_log
    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:11069,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: 11070
      start: 11066
    functionDepth: 4
    functionLinenumber: 11066
    functionLinenumberEnd: 11070
    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:11079,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:11082,1
    - Dst: gf_eac3_parser_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:11083,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11084,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: 11086
      start: 11072
    functionDepth: 4
    functionLinenumber: 11072
    functionLinenumberEnd: 11086
    functionName: gf_eac3_parser
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_eac3_parser_internal
    - gf_bs_del
    - AC3_FindSyncCode
    - gf_bs_new
    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:11093,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:11096,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:11099,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11100,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11102,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11105
      start: 11090
    functionDepth: 1
    functionLinenumber: 11090
    functionLinenumberEnd: 11105
    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:11116,1
    - Dst: pow
      Src: /src/gpac/src/media_tools/av_parsers.c:11116,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - entries
    - dim
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11131
      start: 11114
    functionDepth: 0
    functionLinenumber: 11114
    functionLinenumberEnd: 11131
    functionName: vorbis_book_maptype1_quantvals
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - floor
    - pow
    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: 11142
      start: 11133
    functionDepth: 0
    functionLinenumber: 11133
    functionLinenumberEnd: 11142
    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: 11152
      start: 11144
    functionDepth: 0
    functionLinenumber: 11144
    functionLinenumberEnd: 11152
    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:11163,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11164,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11167,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11171,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:11181,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:11184,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:11187,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11188,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11190,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:11213,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11214,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:11217,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11218,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11220,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11221,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11230,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11238,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11240,1
    - Dst: ilog
      Src: /src/gpac/src/media_tools/av_parsers.c:11240,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:11253,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11254,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11255,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11256,1
    - Dst: vorbis_book_maptype1_quantvals
      Src: /src/gpac/src/media_tools/av_parsers.c:11257,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11261,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11269,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11270,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11271,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11273,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11280,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:11281,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11283,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11285,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:11291,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11294,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11295,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11296,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11298,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11300,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11301,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11306,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11307,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11312,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11314,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:11320,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:11321,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:11325,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:11327,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11328,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11329,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11331,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11338,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:11346,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:11349,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11350,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11352,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:11353,1
    - Dst: icount
      Src: /src/gpac/src/media_tools/av_parsers.c:11354,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11356,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11358,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11365,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11366,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11366,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11367,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11368,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11374,1
    - Dst: ilog
      Src: /src/gpac/src/media_tools/av_parsers.c:11374,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11375,1
    - Dst: ilog
      Src: /src/gpac/src/media_tools/av_parsers.c:11375,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11378,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:11385,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11386,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11389,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11395,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11396,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11397,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11398,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 232
    argCount: 3
    argNames:
    - vp
    - data
    - data_len
    argTypes:
    - GF_VorbisParser*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11409
      start: 11155
    functionDepth: 1
    functionLinenumber: 11155
    functionLinenumberEnd: 11409
    functionName: gf_vorbis_parse_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - oggpack_read
    - icount
    - strcmp
    - oggpack_readinit
    - vorbis_book_maptype1_quantvals
    - ilog
    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:11417,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11419,1
    - Dst: oggpack_read
      Src: /src/gpac/src/media_tools/av_parsers.c:11420,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - vp
    - data
    - data_length
    argTypes:
    - GF_VorbisParser*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11423
      start: 11411
    functionDepth: 1
    functionLinenumber: 11411
    functionLinenumberEnd: 11423
    functionName: gf_vorbis_check_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - oggpack_read
    - oggpack_readinit
    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:11434,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:11435,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11438,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11439,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11443,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11446,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11449,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:11450,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/media_tools/av_parsers.c:11451,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/media_tools/av_parsers.c:11452,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11453,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11455,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:11456,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:11457,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11459,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 3
    argNames:
    - ocfg
    - data
    - data_len
    argTypes:
    - GF_OpusConfig*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11461
      start: 11431
    functionDepth: 1
    functionLinenumber: 11431
    functionLinenumberEnd: 11461
    functionName: gf_opus_parse_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_LOG
    - memcmp
    - gf_bs_read_u32_le
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_bs_read_u16_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:11470,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11471,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - ocfg
    - data
    - data_length
    argTypes:
    - GF_OpusConfig*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11491
      start: 11465
    functionDepth: 0
    functionLinenumber: 11465
    functionLinenumberEnd: 11491
    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:11496,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11508,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: 11514
      start: 11494
    functionDepth: 1
    functionLinenumber: 11494
    functionLinenumberEnd: 11514
    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:11525,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/av_parsers.c:11527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11533,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:11536,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11549,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11615,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11629,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11677,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11686,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11691,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11708,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11776,1
    - Dst: gf_opus_read_length
      Src: /src/gpac/src/media_tools/av_parsers.c:11779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:11844,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: 11857
      start: 11516
    functionDepth: 2
    functionLinenumber: 11516
    functionLinenumberEnd: 11857
    functionName: gf_opus_parse_packet_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memset
    - memcmp
    - gf_opus_read_length
    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:11861,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11863,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11866,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: 11871
      start: 11859
    functionDepth: 1
    functionLinenumber: 11859
    functionLinenumberEnd: 11871
    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:11891,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:11892,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:11894,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/media_tools/av_parsers.c:11895,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/media_tools/av_parsers.c:11896,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/media_tools/av_parsers.c:11897,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:11898,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:11904,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11906,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11907,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11908,1
    - Dst: gf_bs_read_int
      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:11912,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/media_tools/av_parsers.c:11914,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11914,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:11919,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:11921,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 3
    argNames:
    - ptr
    - size
    - ch_layout
    argTypes:
    - u8*
    - u32
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11923
      start: 11873
    functionDepth: 2
    functionLinenumber: 11873
    functionLinenumberEnd: 11923
    functionName: gf_mpegh_get_mhas_pl
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_audio_fmt_get_layout_from_cicp
    - gf_mpegh_escaped_value
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_available
    - gf_bs_skip_bytes
    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:11928,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - buffer
    - nal_size
    - vvc
    argTypes:
    - char*
    - u32
    - VVCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11929
      start: 11925
    functionDepth: 3
    functionLinenumber: 11925
    functionLinenumberEnd: 11929
    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:11934,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: 11935
      start: 11931
    functionDepth: 2
    functionLinenumber: 11931
    functionLinenumberEnd: 11935
    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:11940,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11942,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11945,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11948,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:11951,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: 11956
      start: 11937
    functionDepth: 1
    functionLinenumber: 11937
    functionLinenumberEnd: 11956
    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:11962,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11963,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11965,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11966,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11967,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11971,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11975,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/av_parsers.c:11977,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11978,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:11981,1
    - Dst: gf_bs_read_int
      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_align
      Src: /src/gpac/src/media_tools/av_parsers.c:11989,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:11992,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:11995,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:11997,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - bs
    - ptl
    - idx
    argTypes:
    - GF_BitStream*
    - VVC_ProfileTierLevel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12000
      start: 11958
    functionDepth: 1
    functionLinenumber: 11958
    functionLinenumberEnd: 12000
    functionName: vvc_profile_tier_level
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_int_log_idx
    - gf_bs_align
    - gf_bs_read_data
    - gf_bs_read_int
    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:12015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12018,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12026,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12028,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12031,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12034,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12037,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_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12043,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12045,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12047,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12049,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:12063,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12066,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12069,1
    - Dst: gf_bs_read_int_log
      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:12079,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12081,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:12086,1
    - Dst: vvc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:12089,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:12095,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: 12098
      start: 12007
    functionDepth: 2
    functionLinenumber: 12007
    functionLinenumberEnd: 12098
    functionName: gf_vvc_read_vps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_int_log_idx
    - gf_bs_align
    - GF_LOG
    - gf_bs_is_overflow
    - vvc_profile_tier_level
    - gf_bs_read_int_log
    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:12106,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12109,1
    - Dst: gf_bs_read_int_log_idx2
      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:12123,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12129,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12134,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12145,1
    - Dst: gf_bs_read_int_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12160,1
    - Dst: gf_bs_read_ue_log_idx3
      Src: /src/gpac/src/media_tools/av_parsers.c:12165,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: 12171
      start: 12100
    functionDepth: 2
    functionLinenumber: 12100
    functionLinenumberEnd: 12171
    functionName: vvc_parse_ref_pic_list_struct
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx3
    - gf_bs_read_int_log_idx2
    - GF_LOG
    - gf_bs_read_ue_log_idx3
    - gf_bs_read_ue_log_idx2
    - memset
    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:12176,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:12179,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:12182,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12183,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12185,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12186,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12187,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12189,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12190,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: 12192
      start: 12173
    functionDepth: 1
    functionLinenumber: 12173
    functionLinenumberEnd: 12192
    functionName: vvc_parse_general_timing_hrd_parameters
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_ue_log
    - gf_bs_read_int_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:12198,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12199,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12201,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12202,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12204,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: 12206
      start: 12194
    functionDepth: 1
    functionLinenumber: 12194
    functionLinenumberEnd: 12206
    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:12213,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12214,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12217,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12221,1
    - Dst: vvc_parse_sublayer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:12224,1
    - Dst: vvc_parse_sublayer_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:12227,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: 12230
      start: 12208
    functionDepth: 2
    functionLinenumber: 12208
    functionLinenumberEnd: 12230
    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: 12244
      start: 12237
    functionDepth: 0
    functionLinenumber: 12237
    functionLinenumberEnd: 12244
    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:12255,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12259,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12276,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12277,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12278,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12281,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:12289,1
    - Dst: vvc_profile_tier_level
      Src: /src/gpac/src/media_tools/av_parsers.c:12292,1
    - Dst: gf_bs_read_int_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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12297,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_int_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:12303,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12304,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12305,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12319,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12326,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12331,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12337,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12338,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:12340,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:12341,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12348,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12350,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12352,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12354,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12360,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12361,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12366,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12367,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12369,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12373,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:12381,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12382,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12383,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12384,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12385,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:12392,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12394,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12401,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12404,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12405,1
    - Dst: gf_bs_read_ue_log_idx
      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:12409,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12410,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12411,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12412,1
    - Dst: gf_bs_read_ue_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:12415,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12419,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12422,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12423,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:12430,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12431,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12433,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12434,1
    - Dst: gf_bs_read_int_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:12440,1
    - Dst: gf_bs_read_ue_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:12444,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12446,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12447,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:12450,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12453,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12454,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12457,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12458,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12460,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:12464,1
    - Dst: gf_bs_read_ue_log_idx2
      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: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: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_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12477,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12479,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12480,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12481,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12484,1
    - Dst: vvc_parse_ref_pic_list_struct
      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:12492,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12493,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:12502,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12504,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12505,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12508,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12509,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:12514,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12515,1
    - Dst: gf_bs_read_ue_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:12519,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:12526,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12527,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12529,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12531,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12534,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12536,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12537,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:12540,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12543,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12544,1
    - Dst: gf_bs_read_int_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:12552,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12554,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12555,1
    - Dst: gf_bs_read_int_log
      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:12558,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12559,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12561,1
    - Dst: gf_bs_read_ue_log_idx
      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:12565,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12567,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:12574,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12576,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12577,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12578,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12580,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12584,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12588,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:12592,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:12596,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12602,1
    - Dst: vvc_parse_general_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:12608,1
    - Dst: vvc_parse_ols_timing_hrd_parameters
      Src: /src/gpac/src/media_tools/av_parsers.c:12611,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12616,1
    - Dst: gf_bs_get_bit_offset
      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:12621,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12622,1
    - Dst: gf_bs_is_align
      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:12627,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:12630,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:12633,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12634,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12636,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:12640,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:12644,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12646,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12647,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12648,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12649,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12651,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12653,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12655,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:12656,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:12663,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: 12666
      start: 12246
    functionDepth: 3
    functionLinenumber: 12246
    functionLinenumberEnd: 12666
    functionName: gf_vvc_read_sps_bs_internal
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - vvc_ceillog2
    - GF_LOG
    - vvc_parse_ref_pic_list_struct
    - gf_bs_read_se_log
    - gf_bs_is_align
    - gf_bs_is_overflow
    - vvc_profile_tier_level
    - vvc_parse_general_timing_hrd_parameters
    - gf_bs_read_ue_log
    - vvc_parse_ols_timing_hrd_parameters
    - gf_bs_read_ue_log_idx2
    - gf_bs_read_ue_log_idx
    - gf_bs_get_bit_offset
    - memset
    - gf_bs_read_int_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:12988,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:13011,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13012,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/av_parsers.c:13017,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13022,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13026,1
    - Dst: vvc_parse_ref_pic_list_struct
      Src: /src/gpac/src/media_tools/av_parsers.c:13029,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13039,1
    - Dst: gf_bs_read_int_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13041,1
    - Dst: gf_bs_read_ue_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13042,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: 13048
      start: 12976
    functionDepth: 3
    functionLinenumber: 12976
    functionLinenumberEnd: 13048
    functionName: vvc_parse_ref_pic_lists
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx2
    - gf_bs_read_int_log_idx
    - GF_LOG
    - vvc_parse_ref_pic_list_struct
    - gf_assert
    - gf_bs_read_ue_log_idx2
    - memcpy
    - vvc_ceillog2
    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:13054,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13056,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13059,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13064,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13068,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13070,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13075,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13081,1
    - Dst: gf_bs_read_se_log_idx
      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:13085,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13086,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13087,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13088,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13098,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13102,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13104,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13109,1
    - Dst: gf_bs_read_se_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13115,1
    - Dst: gf_bs_read_se_log_idx
      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:13119,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13120,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13121,1
    - Dst: gf_bs_read_se_log_idx2
      Src: /src/gpac/src/media_tools/av_parsers.c:13122,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: 13126
      start: 13050
    functionDepth: 4
    functionLinenumber: 13050
    functionLinenumberEnd: 13126
    functionName: vvc_pred_weight_table
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log_idx
    - gf_bs_read_se_log_idx2
    - gf_bs_read_se_log
    - GF_LOG
    - gf_bs_read_ue_log
    - memset
    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:13134,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:13137,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13140,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13141,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13143,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13148,1
    - Dst: gf_bs_read_ue_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:13156,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13159,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:13165,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13166,1
    - Dst: gf_bs_read_int_log_idx
      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:13172,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13173,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13176,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13179,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13180,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13182,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13183,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13190,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13192,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13194,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13200,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13202,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13206,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13207,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13209,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13211,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13213,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13218,1
    - Dst: vvc_parse_ref_pic_lists
      Src: /src/gpac/src/media_tools/av_parsers.c:13221,1
    - Dst: gf_bs_read_int_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:13230,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13231,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:13234,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13238,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13241,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13247,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13248,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:13251,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13255,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13258,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13261,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13265,1
    - Dst: gf_bs_read_ue_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:13275,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13285,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13287,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13289,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13292,1
    - Dst: vvc_pred_weight_table
      Src: /src/gpac/src/media_tools/av_parsers.c:13295,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13300,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:13308,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13311,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13316,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_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13322,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13323,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13324,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13325,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13331,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13333,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 185
    argCount: 3
    argNames:
    - bs
    - vvc
    - si
    argTypes:
    - GF_BitStream*
    - VVCState*
    - VVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13338
      start: 13128
    functionDepth: 5
    functionLinenumber: 13128
    functionLinenumberEnd: 13338
    functionName: vvc_parse_picture_header
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int_log_idx
    - gf_bs_read_se_log
    - vvc_parse_ref_pic_lists
    - vvc_pred_weight_table
    - gf_bs_read_ue_log
    - gf_bs_read_ue_log_idx
    - gf_bs_read_int_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: 13416
      start: 13340
    functionDepth: 0
    functionLinenumber: 13340
    functionLinenumberEnd: 13416
    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: 13431
      start: 13418
    functionDepth: 0
    functionLinenumber: 13418
    functionLinenumberEnd: 13431
    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: 13445
      start: 13433
    functionDepth: 0
    functionLinenumber: 13433
    functionLinenumberEnd: 13445
    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:13457,1
    - Dst: vvc_get_ctb_info_in_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:13465,1
    - Dst: vvc_ctb_to_tile_row_bd
      Src: /src/gpac/src/media_tools/av_parsers.c:13470,1
    - Dst: vvc_ctb_to_tile_col_bd
      Src: /src/gpac/src/media_tools/av_parsers.c:13471,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: 13487
      start: 13447
    functionDepth: 1
    functionLinenumber: 13447
    functionLinenumberEnd: 13487
    functionName: vvc_get_num_entry_points
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - vvc_ctb_to_tile_col_bd
    - vvc_ctb_to_tile_row_bd
    - vvc_get_ctb_info_in_slice
    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:13493,1
    - Dst: vvc_parse_picture_header
      Src: /src/gpac/src/media_tools/av_parsers.c:13495,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13520,1
    - Dst: vvc_ceillog2
      Src: /src/gpac/src/media_tools/av_parsers.c:13524,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_int_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:13538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13540,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13546,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:13559,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13560,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:13567,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13568,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13571,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13574,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13575,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13577,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13578,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13584,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13587,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13594,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/av_parsers.c:13595,1
    - Dst: vvc_parse_ref_pic_lists
      Src: /src/gpac/src/media_tools/av_parsers.c:13601,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13611,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13615,1
    - Dst: gf_bs_read_ue_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13622,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13651,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13656,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13664,1
    - Dst: vvc_pred_weight_table
      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:13678,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13681,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13682,1
    - Dst: gf_bs_read_se_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:13687,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13689,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13691,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13695,1
    - Dst: gf_bs_read_int_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:13702,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13703,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13705,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13706,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13707,1
    - Dst: gf_bs_read_se_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13708,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13716,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13720,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13724,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13727,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13730,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13733,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13735,1
    - Dst: vvc_get_num_entry_points
      Src: /src/gpac/src/media_tools/av_parsers.c:13741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13744,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:13746,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:13747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13750,1
    - Dst: gf_bs_read_ue_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13754,1
    - Dst: gf_bs_read_int_log_idx
      Src: /src/gpac/src/media_tools/av_parsers.c:13756,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:13761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13763,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:13769,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:13771,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 233
    argCount: 3
    argNames:
    - bs
    - vvc
    - si
    argTypes:
    - GF_BitStream*
    - VVCState*
    - VVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13773
      start: 13489
    functionDepth: 6
    functionLinenumber: 13489
    functionLinenumberEnd: 13773
    functionName: vvc_parse_slice
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_int_log_idx
    - gf_bs_align
    - GF_LOG
    - gf_bs_read_se_log
    - vvc_get_num_entry_points
    - vvc_parse_ref_pic_lists
    - vvc_pred_weight_table
    - vvc_parse_picture_header
    - gf_bs_read_int_log
    - gf_bs_read_ue_log
    - gf_bs_read_int
    - gf_bs_read_ue_log_idx
    - memset
    - vvc_ceillog2
    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: 13793
      start: 13775
    functionDepth: 0
    functionLinenumber: 13775
    functionLinenumberEnd: 13793
    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:13801,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - si
    - poc
    argTypes:
    - VVCSliceInfo*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13804
      start: 13795
    functionDepth: 1
    functionLinenumber: 13795
    functionLinenumberEnd: 13804
    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:13819,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13826,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:13834,1
    - Dst: vvc_push_ref_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:13840,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - vvc
    - si
    argTypes:
    - VVCState*
    - VVCSliceInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13843
      start: 13806
    functionDepth: 2
    functionLinenumber: 13806
    functionLinenumberEnd: 13843
    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:13853,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:13854,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:13855,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13857,1
    - Dst: vvc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:13858,1
    - Dst: vvc_parse_slice
      Src: /src/gpac/src/media_tools/av_parsers.c:13880,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13882,1
    - Dst: vvc_compute_poc
      Src: /src/gpac/src/media_tools/av_parsers.c:13891,1
    - Dst: vvc_compute_refs
      Src: /src/gpac/src/media_tools/av_parsers.c:13893,1
    - Dst: vvc_parse_picture_header
      Src: /src/gpac/src/media_tools/av_parsers.c:13907,1
    - Dst: gf_vvc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:13922,1
    - Dst: gf_vvc_read_pps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:13926,1
    - Dst: gf_vvc_read_vps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:13930,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:13938,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:13945,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/av_parsers.c:13957,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: 13960
      start: 13845
    functionDepth: 7
    functionLinenumber: 13845
    functionLinenumberEnd: 13960
    functionName: gf_vvc_parse_nalu_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_vvc_read_vps_bs_internal
    - vvc_parse_slice
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_is_overflow
    - gf_bs_mark_overflow
    - vvc_parse_picture_header
    - gf_bs_read_int_log
    - vvc_compute_poc
    - gf_vvc_read_sps_bs_internal
    - gf_vvc_read_pps_bs_internal
    - memcpy
    - vvc_compute_refs
    - gf_bs_available
    - vvc_parse_nal_header
    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:13976,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:13978,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:13980,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:13981,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: 13983
      start: 13962
    functionDepth: 8
    functionLinenumber: 13962
    functionLinenumberEnd: 13983
    functionName: gf_vvc_parse_nalu
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_vvc_parse_nalu_bs
    - gf_bs_new
    - gf_bs_del
    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: 13998
      start: 13985
    functionDepth: 0
    functionLinenumber: 13985
    functionLinenumberEnd: 13998
    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:14012,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:14018,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14024,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/av_parsers.c:14029,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:14035,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:14036,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14038,1
    - Dst: vvc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:14039,1
    - Dst: gf_vvc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:14040,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14044,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14047,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:14051,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14052,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14056,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14057,1
    - Dst: avc_hevc_vvc_rewrite_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:14061,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/av_parsers.c:14064,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14065,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14066,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14068,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14070,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/av_parsers.c:14073,1
    - Dst: gf_media_nalu_emulation_bytes_add_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14074,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/av_parsers.c:14076,1
    - Dst: gf_media_nalu_add_emulation_bytes
      Src: /src/gpac/src/media_tools/av_parsers.c:14078,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14080,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14081,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14083,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 57
    argCount: 2
    argNames:
    - vvcc
    - vui_info
    argTypes:
    - GF_VVCConfig*
    - GF_VUIInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14085
      start: 14001
    functionDepth: 5
    functionLinenumber: 14001
    functionLinenumberEnd: 14085
    functionName: gf_vvc_change_vui
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_list_enum
    - gf_media_nalu_add_emulation_bytes
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_new
    - avc_hevc_vvc_rewrite_vui
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_read_int
    - gf_vvc_read_sps_bs_internal
    - gf_bs_seek
    - gf_realloc
    - gf_bs_bits_available
    - vvc_parse_nal_header
    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:14092,1
    - Dst: gf_vvc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:14100,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: 14101
      start: 14088
    functionDepth: 6
    functionLinenumber: 14088
    functionLinenumberEnd: 14101
    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:14107,1
    - Dst: gf_vvc_change_vui
      Src: /src/gpac/src/media_tools/av_parsers.c:14115,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: 14116
      start: 14103
    functionDepth: 6
    functionLinenumber: 14103
    functionLinenumberEnd: 14116
    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:14124,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:14128,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/av_parsers.c:14129,1
    - Dst: vvc_parse_nal_header
      Src: /src/gpac/src/media_tools/av_parsers.c:14133,1
    - Dst: gf_vvc_read_sps_bs_internal
      Src: /src/gpac/src/media_tools/av_parsers.c:14134,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14135,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14137,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:14147,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: 14149
      start: 14119
    functionDepth: 4
    functionLinenumber: 14119
    functionLinenumberEnd: 14149
    functionName: gf_vvc_get_sps_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_enable_emulation_byte_removal
    - gf_free
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_vvc_read_sps_bs_internal
    - vvc_parse_nal_header
    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: 14183
      start: 14152
    functionDepth: 0
    functionLinenumber: 14152
    functionLinenumberEnd: 14183
    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:14191,1
    - Dst: gf_bs_new
      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: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_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14204,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14205,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14206,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14207,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14208,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14210,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/av_parsers.c:14214,1
    - Dst: gf_bs_new
      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_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14225,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14226,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14227,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14228,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14229,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/av_parsers.c:14230,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/av_parsers.c:14231,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:14232,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: 14234
      start: 14186
    functionDepth: 1
    functionLinenumber: 14186
    functionLinenumberEnd: 14234
    functionName: gf_media_vc1_seq_header_to_dsi
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - memchr
    - gf_malloc
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    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:14241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14242,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14244,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14246,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/media_tools/av_parsers.c:14247,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - hevccfg
    - hevc
    - nal_type
    argTypes:
    - GF_HEVCConfig*
    - HEVCState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14250
      start: 14236
    functionDepth: 8
    functionLinenumber: 14236
    functionLinenumberEnd: 14250
    functionName: gf_hevc_parse_ps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_hevc_parse_nalu
    - gf_list_get
    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:14257,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14258,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:14260,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:14262,1
    - Dst: gf_vvc_parse_nalu
      Src: /src/gpac/src/media_tools/av_parsers.c:14263,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - vvccfg
    - vvc
    - nal_type
    argTypes:
    - GF_VVCConfig*
    - VVCState*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14266
      start: 14252
    functionDepth: 9
    functionLinenumber: 14252
    functionLinenumberEnd: 14266
    functionName: gf_vvc_parse_ps
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_vvc_parse_nalu
    - gf_list_get
    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:14408,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14412,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14413,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:14418,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - bits
    argTypes:
    - GF_BitStream*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14420
      start: 14405
    functionDepth: 1
    functionLinenumber: 14405
    functionLinenumberEnd: 14420
    functionName: gf_ac4_variable_bits
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_available
    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:14430,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14431,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14442,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: 14453
      start: 14422
    functionDepth: 1
    functionLinenumber: 14422
    functionLinenumberEnd: 14453
    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:14458,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: 14462
      start: 14455
    functionDepth: 1
    functionLinenumber: 14455
    functionLinenumberEnd: 14462
    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:14466,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14470
      start: 14464
    functionDepth: 2
    functionLinenumber: 14464
    functionLinenumberEnd: 14470
    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:14475,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14476,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14480,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14483,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14486,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14495,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14498,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14501,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 40
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14507
      start: 14472
    functionDepth: 1
    functionLinenumber: 14472
    functionLinenumberEnd: 14507
    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:14511,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14513,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14515,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14517,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14520,1
    - Dst: gf_ac4_emdf_payloads_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:14521,1
    - Dst: gf_ac4_emdf_protection
      Src: /src/gpac/src/media_tools/av_parsers.c:14523,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: 14525
      start: 14509
    functionDepth: 3
    functionLinenumber: 14509
    functionLinenumberEnd: 14525
    functionName: gf_ac4_emdf_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_emdf_payloads_substream_info
    - gf_ac4_variable_bits
    - gf_ac4_emdf_protection
    - gf_bs_read_int_log
    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:14537,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14545,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14546,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: 14559
      start: 14527
    functionDepth: 1
    functionLinenumber: 14527
    functionLinenumberEnd: 14559
    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:14567,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14571,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14575,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14584,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14609,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14616,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14626,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: 14629
      start: 14561
    functionDepth: 2
    functionLinenumber: 14561
    functionLinenumberEnd: 14629
    functionName: gf_ac4_get_channel_mode
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_ac4_variable_bits
    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:14635,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14637,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: 14644
      start: 14631
    functionDepth: 1
    functionLinenumber: 14631
    functionLinenumberEnd: 14644
    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:14649,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:14651,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - bs
    - substream
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14654
      start: 14646
    functionDepth: 1
    functionLinenumber: 14646
    functionLinenumberEnd: 14654
    functionName: gf_ac4_bitreate_indicator
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_int_log
    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:14659,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14660,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14664
      start: 14656
    functionDepth: 2
    functionLinenumber: 14656
    functionLinenumberEnd: 14664
    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: 14675
      start: 14666
    functionDepth: 0
    functionLinenumber: 14666
    functionLinenumberEnd: 14675
    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:14693,1
    - Dst: gf_compare_ch_mode
      Src: /src/gpac/src/media_tools/av_parsers.c:14699,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14700,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14701,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14702,1
    - Dst: gf_ac4_dsi_sf_mutiplier
      Src: /src/gpac/src/media_tools/av_parsers.c:14729,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14731,1
    - Dst: gf_ac4_bitreate_indicator
      Src: /src/gpac/src/media_tools/av_parsers.c:14733,1
    - Dst: gf_compare_ch_mode
      Src: /src/gpac/src/media_tools/av_parsers.c:14736,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14737,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14740,1
    - Dst: gf_ac4_substream_index_info
      Src: /src/gpac/src/media_tools/av_parsers.c:14743,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: 14746
      start: 14677
    functionDepth: 3
    functionLinenumber: 14677
    functionLinenumberEnd: 14746
    functionName: gf_ac4_substream_info_chan
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_substream_index_info
    - gf_ac4_bitreate_indicator
    - gf_compare_ch_mode
    - gf_ac4_dsi_sf_mutiplier
    - gf_ac4_get_channel_mode
    - gf_bs_read_int_log
    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:14751,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14756
      start: 14748
    functionDepth: 2
    functionLinenumber: 14748
    functionLinenumberEnd: 14756
    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:14760,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14762,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:14763,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - b_substreams_present
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14767
      start: 14758
    functionDepth: 2
    functionLinenumber: 14758
    functionLinenumberEnd: 14767
    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: 14782
      start: 14769
    functionDepth: 0
    functionLinenumber: 14769
    functionLinenumberEnd: 14782
    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: 14799
      start: 14784
    functionDepth: 0
    functionLinenumber: 14784
    functionLinenumberEnd: 14799
    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: 14811
      start: 14801
    functionDepth: 0
    functionLinenumber: 14801
    functionLinenumberEnd: 14811
    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: 14824
      start: 14813
    functionDepth: 0
    functionLinenumber: 14813
    functionLinenumberEnd: 14824
    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:14834,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14835,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14836,1
    - Dst: gf_ac4_obj_num_from_is_config
      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:14846,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14847,1
    - Dst: gf_ac4_bed_num_from_assign_code
      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:14857,1
    - Dst: gf_bs_read_int_log
      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:14859,1
    - Dst: gf_ac4_bed_num_from_non_std_mask
      Src: /src/gpac/src/media_tools/av_parsers.c:14863,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14872,1
    - Dst: gf_ac4_bed_num_from_std_mask
      Src: /src/gpac/src/media_tools/av_parsers.c:14876,1
    - Dst: gf_ceil
      Src: /src/gpac/src/media_tools/av_parsers.c:14887,1
    - Dst: log2
      Src: /src/gpac/src/media_tools/av_parsers.c:14887,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14888,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14893,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: 14915
      start: 14826
    functionDepth: 1
    functionLinenumber: 14826
    functionLinenumberEnd: 14915
    functionName: gf_ac4_bed_dyn_obj_assignment
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_bed_num_from_non_std_mask
    - gf_ac4_bed_num_from_assign_code
    - log2
    - gf_ac4_bed_num_from_std_mask
    - gf_ceil
    - gf_ac4_obj_num_from_is_config
    - gf_bs_read_int_log
    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: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: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:14931,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14932,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:14934,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14935,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14938,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14941,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14944,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14947,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14948,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14951,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14952,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14960
      start: 14917
    functionDepth: 1
    functionLinenumber: 14917
    functionLinenumberEnd: 14960
    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:14964,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14965,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14968,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14969,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14971,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14976
      start: 14962
    functionDepth: 1
    functionLinenumber: 14962
    functionLinenumberEnd: 14976
    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:14980,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14981,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14984,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14987
      start: 14978
    functionDepth: 1
    functionLinenumber: 14978
    functionLinenumberEnd: 14987
    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:14991,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14992,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14995,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14996,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:14998,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15003
      start: 14989
    functionDepth: 1
    functionLinenumber: 14989
    functionLinenumberEnd: 15003
    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:15007,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15008,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15011,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15014
      start: 15005
    functionDepth: 1
    functionLinenumber: 15005
    functionLinenumberEnd: 15014
    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:15018,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15019,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15022,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15023,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15025,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15030
      start: 15016
    functionDepth: 1
    functionLinenumber: 15016
    functionLinenumberEnd: 15030
    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:15034,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15035,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15038,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15041
      start: 15032
    functionDepth: 1
    functionLinenumber: 15032
    functionLinenumberEnd: 15041
    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:15045,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:15048,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15049,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15051,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15052,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15054,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15056
      start: 15043
    functionDepth: 1
    functionLinenumber: 15043
    functionLinenumberEnd: 15056
    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:15063,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15064,1
    - Dst: gf_ac4_stereo_dmx_coeff
      Src: /src/gpac/src/media_tools/av_parsers.c:15065,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:15068,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:15071,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15072,1
    - Dst: gf_bs_read_int_log
      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:15075,1
    - Dst: gf_ac4_tool_t2_to_f_s_b
      Src: /src/gpac/src/media_tools/av_parsers.c:15076,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15078,1
    - Dst: gf_ac4_tool_t2_to_f_s
      Src: /src/gpac/src/media_tools/av_parsers.c:15079,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15082,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15084,1
    - Dst: gf_ac4_tool_tb_to_f_s_b
      Src: /src/gpac/src/media_tools/av_parsers.c:15085,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15087,1
    - Dst: gf_ac4_tool_tb_to_f_s
      Src: /src/gpac/src/media_tools/av_parsers.c:15088,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15091,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15093,1
    - Dst: gf_ac4_tool_tf_to_f_s_b
      Src: /src/gpac/src/media_tools/av_parsers.c:15094,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15096,1
    - Dst: gf_ac4_tool_tf_to_f_s
      Src: /src/gpac/src/media_tools/av_parsers.c:15097,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15101,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15102,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 46
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15108
      start: 15058
    functionDepth: 2
    functionLinenumber: 15058
    functionLinenumberEnd: 15108
    functionName: gf_ac4_bed_render_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_tool_tb_to_f_s
    - gf_ac4_stereo_dmx_coeff
    - gf_ac4_tool_tb_to_f_s_b
    - gf_ac4_tool_tf_to_f_s_b
    - gf_ac4_tool_tf_to_f_s
    - gf_ac4_tool_t2_to_f_s
    - gf_ac4_tool_t2_to_f_s_b
    - gf_bs_read_int_log
    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:15115,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15116,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15118,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15119,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15120,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15122,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:15125,1
    - Dst: gf_ac4_trim
      Src: /src/gpac/src/media_tools/av_parsers.c:15127,1
    - Dst: gf_ac4_bed_render_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15128,1
    - Dst: gf_bs_get_bit_offset
      Src: /src/gpac/src/media_tools/av_parsers.c:15130,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:15131,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:15131,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/av_parsers.c:15132,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:15132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15135
      start: 15110
    functionDepth: 3
    functionLinenumber: 15110
    functionLinenumberEnd: 15135
    functionName: gf_ac4_oamd_common_data
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_bed_render_info
    - MIN
    - gf_bs_read_int_log
    - gf_bs_read_int
    - gf_ac4_variable_bits
    - gf_ac4_trim
    - gf_bs_available
    - gf_bs_get_bit_offset
    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:15147,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15148,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15157,1
    - Dst: gf_ac4_bed_dyn_obj_assignment
      Src: /src/gpac/src/media_tools/av_parsers.c:15160,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15168,1
    - Dst: gf_ac4_oamd_common_data
      Src: /src/gpac/src/media_tools/av_parsers.c:15169,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15172,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15174,1
    - Dst: gf_ac4_bed_dyn_obj_assignment
      Src: /src/gpac/src/media_tools/av_parsers.c:15179,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15182,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15183,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15187,1
    - Dst: gf_ac4_bitreate_indicator
      Src: /src/gpac/src/media_tools/av_parsers.c:15189,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15193,1
    - Dst: gf_ac4_substream_index_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15196,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: 15200
      start: 15137
    functionDepth: 4
    functionLinenumber: 15137
    functionLinenumberEnd: 15200
    functionName: gf_ac4_substream_info_ajoc
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_bed_dyn_obj_assignment
    - gf_ac4_substream_index_info
    - gf_ac4_bitreate_indicator
    - gf_ac4_variable_bits
    - gf_ac4_oamd_common_data
    - gf_bs_read_int_log
    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:15212,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15231,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15232,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:15244,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:15247,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15248,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15250,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15258,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15259,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15260,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15266,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15268,1
    - Dst: gf_ac4_dsi_sf_mutiplier
      Src: /src/gpac/src/media_tools/av_parsers.c:15274,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15276,1
    - Dst: gf_ac4_bitreate_indicator
      Src: /src/gpac/src/media_tools/av_parsers.c:15278,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15282,1
    - Dst: gf_ac4_substream_index_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15285,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: 15288
      start: 15202
    functionDepth: 3
    functionLinenumber: 15202
    functionLinenumberEnd: 15288
    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_bitreate_indicator
    - gf_ac4_dsi_sf_mutiplier
    - gf_bs_read_int_log
    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:15294,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15295,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15297,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15298,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15299,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15301,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15303,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - bs
    - ginfo
    argTypes:
    - GF_BitStream*
    - GF_AC4SubStreamGroupV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15308
      start: 15290
    functionDepth: 1
    functionLinenumber: 15290
    functionLinenumberEnd: 15308
    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:15324,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15325,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15326,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15329,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15331,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:15336,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15338,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:15347,1
    - Dst: gf_ac4_substream_info_chan
      Src: /src/gpac/src/media_tools/av_parsers.c:15348,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15357,1
    - Dst: gf_ac4_hsf_ext_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15360,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15370,1
    - Dst: gf_ac4_oamd_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15371,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:15375,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:15377,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:15380,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15383,1
    - Dst: gf_ac4_substream_info_ajoc
      Src: /src/gpac/src/media_tools/av_parsers.c:15385,1
    - Dst: gf_ac4_hsf_ext_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15393,1
    - Dst: gf_ac4_substream_info_obj
      Src: /src/gpac/src/media_tools/av_parsers.c:15396,1
    - Dst: gf_ac4_hsf_ext_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15404,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15407,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15417,1
    - Dst: gf_ac4_content_type
      Src: /src/gpac/src/media_tools/av_parsers.c:15419,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: 15422
      start: 15310
    functionDepth: 5
    functionLinenumber: 15310
    functionLinenumberEnd: 15422
    functionName: gf_ac4_substream_group_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_substream_info_ajoc
    - gf_ac4_oamd_substream_info
    - gf_list_del
    - gf_ac4_hsf_ext_substream_info
    - gf_ac4_substream_info_chan
    - GF_SAFEALLOC
    - gf_ac4_variable_bits
    - gf_list_new
    - gf_ac4_content_type
    - gf_list_add
    - gf_ac4_substream_info_obj
    - gf_bs_read_int_log
    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:15430,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15432,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - bs
    - bitstream_version
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15436
      start: 15424
    functionDepth: 2
    functionLinenumber: 15424
    functionLinenumberEnd: 15436
    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:15444,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15445,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15446,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15452,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: 15455
      start: 15438
    functionDepth: 2
    functionLinenumber: 15438
    functionLinenumberEnd: 15455
    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:15460,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15461,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15462,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15467
      start: 15457
    functionDepth: 2
    functionLinenumber: 15457
    functionLinenumberEnd: 15467
    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:15475,1
    - Dst: gf_ac4_sgi_specifier
      Src: /src/gpac/src/media_tools/av_parsers.c:15476,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15477,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:15480,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: 15482
      start: 15469
    functionDepth: 3
    functionLinenumber: 15469
    functionLinenumberEnd: 15482
    functionName: gf_ac4_sgi_specifier_add
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - MAX
    - gf_ac4_sgi_specifier
    - gf_list_add
    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:15491,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15494,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15496,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15498,1
    - Dst: gf_ac4_presentation_version
      Src: /src/gpac/src/media_tools/av_parsers.c:15510,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15518,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15520,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15522,1
    - Dst: gf_ac4_frame_rate_multiply_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15525,1
    - Dst: gf_ac4_frame_rate_fractions_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15526,1
    - Dst: gf_ac4_emdf_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15527,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15531,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15533,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15537,1
    - Dst: gf_bs_read_int_log
      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:15545,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:15551,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15552,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15559,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:15565,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15566,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:15572,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15573,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15574,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15580,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15582,1
    - Dst: gf_ac4_sgi_specifier_add
      Src: /src/gpac/src/media_tools/av_parsers.c:15586,1
    - Dst: gf_ac4_presentation_config_ext_info
      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_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15601,1
    - Dst: gf_ac4_presentation_substream_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15602,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15605,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15607,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:15609,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:15609,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:15609,1
    - Dst: gf_ac4_emdf_info
      Src: /src/gpac/src/media_tools/av_parsers.c:15610,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/av_parsers.c:15618,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: 15622
      start: 15484
    functionDepth: 4
    functionLinenumber: 15484
    functionLinenumberEnd: 15622
    functionName: gf_ac4_presentation_v1_info
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_frame_rate_fractions_info
    - gf_ac4_sgi_specifier_add
    - gf_ac4_presentation_config_ext_info
    - GF_ARRAY_LENGTH
    - gf_ac4_presentation_version
    - MIN
    - gf_ac4_frame_rate_multiply_info
    - gf_ac4_variable_bits
    - MAX
    - gf_list_new
    - gf_ac4_emdf_info
    - gf_ac4_presentation_substream_info
    - gf_bs_read_int_log
    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:15630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:15632,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15636,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - stream
    - idx
    argTypes:
    - GF_AC4StreamInfo*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15643
      start: 15624
    functionDepth: 1
    functionLinenumber: 15624
    functionLinenumberEnd: 15643
    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:15648,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15651,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - presentation_v1
    - idx
    argTypes:
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15657
      start: 15645
    functionDepth: 1
    functionLinenumber: 15645
    functionLinenumberEnd: 15657
    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: 15723
      start: 15659
    functionDepth: 0
    functionLinenumber: 15659
    functionLinenumberEnd: 15723
    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: 15731
      start: 15725
    functionDepth: 0
    functionLinenumber: 15725
    functionLinenumberEnd: 15731
    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:15742,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15745,1
    - Dst: gf_ac4_cfg_super_set
      Src: /src/gpac/src/media_tools/av_parsers.c:15748,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15758
      start: 15733
    functionDepth: 1
    functionLinenumber: 15733
    functionLinenumberEnd: 15758
    functionName: gf_ac4_presentation_ch_mode
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_cfg_super_set
    - gf_list_get
    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:15769,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15772,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15790
      start: 15760
    functionDepth: 1
    functionLinenumber: 15760
    functionLinenumberEnd: 15790
    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:15801,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15804,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15809
      start: 15792
    functionDepth: 1
    functionLinenumber: 15792
    functionLinenumberEnd: 15809
    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:15820,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15823,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_AC4PresentationV1*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15841
      start: 15811
    functionDepth: 1
    functionLinenumber: 15811
    functionLinenumberEnd: 15841
    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: 15863
      start: 15843
    functionDepth: 0
    functionLinenumber: 15843
    functionLinenumberEnd: 15863
    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:15875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:15878,1
    - Dst: gf_ac4_get_ch_mode_core
      Src: /src/gpac/src/media_tools/av_parsers.c:15881,1
    - Dst: gf_ac4_cfg_super_set
      Src: /src/gpac/src/media_tools/av_parsers.c:15886,1
    - Dst: gf_ac4_get_ch_mode_core
      Src: /src/gpac/src/media_tools/av_parsers.c:15890,1
    - Dst: gf_ac4_cfg_super_set
      Src: /src/gpac/src/media_tools/av_parsers.c:15895,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 33
    argCount: 2
    argNames:
    - p
    - pres_ch_mode
    argTypes:
    - GF_AC4PresentationV1*
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15912
      start: 15865
    functionDepth: 1
    functionLinenumber: 15865
    functionLinenumberEnd: 15912
    functionName: gf_ac4_get_b_presentation_core_differs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_ac4_cfg_super_set
    - gf_ac4_get_ch_mode_core
    - gf_list_get
    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:15919,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15921,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15924,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/av_parsers.c:15929,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15930,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15931,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15934,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - hdr
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15939
      start: 15914
    functionDepth: 2
    functionLinenumber: 15914
    functionLinenumberEnd: 15939
    functionName: gf_ac4_substream_index_table
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_available
    - gf_ac4_variable_bits
    - gf_bs_read_int_log
    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:15958,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15960,1
    - Dst: gf_ac4_variable_bits
      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:15965,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15966,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15967,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:15974,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15975,1
    - Dst: gf_bs_read_int_log
      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:15977,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15980,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15981,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15988,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:15989,1
    - Dst: gf_ac4_variable_bits
      Src: /src/gpac/src/media_tools/av_parsers.c:15991,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16010,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16012,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16013,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16016,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16047,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:16056,1
    - Dst: gf_ac4_presentation_v1_info
      Src: /src/gpac/src/media_tools/av_parsers.c:16057,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:16062,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:16064,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16071,1
    - Dst: gf_ac4_get_presentation_by_substreamgroup
      Src: /src/gpac/src/media_tools/av_parsers.c:16074,1
    - Dst: gf_ac4_is_substream_group_part_of_default_presentation
      Src: /src/gpac/src/media_tools/av_parsers.c:16081,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/av_parsers.c:16083,1
    - Dst: gf_ac4_substream_group_info
      Src: /src/gpac/src/media_tools/av_parsers.c:16084,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:16094,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/media_tools/av_parsers.c:16099,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16107,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16113,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16116,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16118,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/av_parsers.c:16120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16123,1
    - Dst: gf_ac4_presentation_ch_mode
      Src: /src/gpac/src/media_tools/av_parsers.c:16131,1
    - Dst: gf_ac4_pres_b_4_back_channels_present
      Src: /src/gpac/src/media_tools/av_parsers.c:16136,1
    - Dst: gf_ac4_pres_top_channel_pairs
      Src: /src/gpac/src/media_tools/av_parsers.c:16137,1
    - Dst: gf_ac4_presentation_channel_mask_v1
      Src: /src/gpac/src/media_tools/av_parsers.c:16139,1
    - Dst: gf_ac4_get_b_presentation_core_differs
      Src: /src/gpac/src/media_tools/av_parsers.c:16147,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:16158,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16159,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:16160,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16162,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16167,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:16171,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16172,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/av_parsers.c:16174,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/av_parsers.c:16180,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/av_parsers.c:16182,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/av_parsers.c:16183,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:16184,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16186,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/av_parsers.c:16188,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16190,1
    - Dst: gf_ac4_get_channel_count_from_speaker_group_index_mask
      Src: /src/gpac/src/media_tools/av_parsers.c:16194,1
    - Dst: gf_ac4_substream_index_table
      Src: /src/gpac/src/media_tools/av_parsers.c:16201,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/av_parsers.c:16202,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:16204,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: 16207
      start: 15941
    functionDepth: 6
    functionLinenumber: 15941
    functionLinenumberEnd: 16207
    functionName: gf_ac4_raw_frame
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - GF_SAFEALLOC
    - gf_ac4_get_b_presentation_core_differs
    - gf_ac4_get_channel_count_from_speaker_group_index_mask
    - gf_list_add
    - gf_ac4_pres_b_4_back_channels_present
    - gf_ac4_presentation_ch_mode
    - gf_list_get
    - gf_bs_read_int_log
    - gf_bs_is_overflow
    - gf_ac4_substream_index_table
    - gf_ac4_substream_group_info
    - gf_ac4_presentation_channel_mask_v1
    - gf_list_new
    - gf_ac4_pres_top_channel_pairs
    - gf_ac4_is_substream_group_part_of_default_presentation
    - gf_list_pop_back
    - gf_free
    - gf_ac4_presentation_v1_info
    - gf_bs_align
    - GF_LOG
    - gf_list_del
    - gf_list_del_item
    - gf_ac4_get_presentation_by_substreamgroup
    - gf_ac4_variable_bits
    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:16212,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:16213,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/media_tools/av_parsers.c:16214,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:16217,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/av_parsers.c:16219,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16221,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16228
      start: 16209
    functionDepth: 1
    functionLinenumber: 16209
    functionLinenumberEnd: 16228
    functionName: AC4_FindSyncCodeBS
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_get_size
    - gf_bs_seek
    - 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: 16243
      start: 16230
    functionDepth: 0
    functionLinenumber: 16230
    functionLinenumberEnd: 16243
    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:16251,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/av_parsers.c:16254,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/media_tools/av_parsers.c:16255,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/av_parsers.c:16256,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: 16259
      start: 16245
    functionDepth: 1
    functionLinenumber: 16245
    functionLinenumberEnd: 16259
    functionName: gf_ac4_parser
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 0
    functionsReached:
    - AC4_FindSyncCode
    - gf_bs_del
    - gf_ac4_parser_bs
    - gf_bs_new
    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:16263,1
    - Dst: gf_bs_read_int_log
      Src: /src/gpac/src/media_tools/av_parsers.c:16266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - hdr
    argTypes:
    - GF_BitStream*
    - GF_AC4Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16270
      start: 16261
    functionDepth: 1
    functionLinenumber: 16261
    functionLinenumberEnd: 16270
    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:16280,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/media_tools/av_parsers.c:16285,1
    - Dst: AC4_FindSyncCodeBS
      Src: /src/gpac/src/media_tools/av_parsers.c:16292,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/av_parsers.c:16295,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/av_parsers.c:16297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16299,1
    - Dst: gf_ac4_frame_size
      Src: /src/gpac/src/media_tools/av_parsers.c:16304,1
    - Dst: gf_ac4_raw_frame
      Src: /src/gpac/src/media_tools/av_parsers.c:16307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16308,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16310,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16317,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16330,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16331,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:16337,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16337,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16338,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16339,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/av_parsers.c:16347,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16347,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/av_parsers.c:16347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/av_parsers.c:16348,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16349,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/av_parsers.c:16357,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: 16359
      start: 16272
    functionDepth: 7
    functionLinenumber: 16272
    functionLinenumberEnd: 16359
    functionName: gf_ac4_parser_bs
    functionSourceFile: /src/gpac/src/media_tools/av_parsers.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_ac4_raw_frame
    - AC4_FindSyncCodeBS
    - gf_odf_ac4_cfg_clean_list
    - GF_LOG
    - GF_ARRAY_LENGTH
    - MIN
    - gf_ac4_frame_size
    - gf_bs_seek
    - gf_bs_read_u16
    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_sys_get_arg
    - GF_LOG
    - gf_sys_get_argc
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - strstr
    - strncmp
    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_strdup
    - gf_free
    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_del
    - gf_fs_print_unused_args
    - 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_dasher_clean_inputs
    - gf_free
    - 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_strdup
    - gf_free
    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
    - gf_list_add
    - stricmp
    - strcmp
    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_LOG
    - strcmp
    - gf_fs_get_filter_stats
    - gf_fs_get_filters_count
    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_list_count
    - gf_fs_enable_reporting
    - gf_fs_set_ui_callback
    - strstr
    - strchr
    - gf_url_colon_suffix
    - gf_fs_load_destination
    - gf_list_get
    - gf_dynstrcat
    - gf_sys_is_test_mode
    - gf_filter_set_source
    - gf_sys_is_quiet
    - strrchr
    - strcmp
    - gf_fs_load_filter
    - strlen
    - sscanf
    - gf_error_to_string
    - gf_fs_new_defaults
    - sprintf
    - gf_free
    - gf_sys_find_global_arg
    - GF_LOG
    - stricmp
    - gf_log_get_tool_level
    - gf_fs_load_source
    - strncmp
    - gf_4cc_to_str
    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_get_root
    - gf_xml_dom_parse
    - gf_xml_dom_del
    - gf_net_get_ntp_ms
    - gf_file_exists
    - gf_list_enum
    - gf_xml_dom_new
    - strcmp
    - sscanf
    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_dasher_setup
    - on_dasher_event
    - gf_fs_get_last_process_error
    - gf_fs_print_stats
    - gf_fs_get_last_connect_error
    - GF_LOG
    - gf_file_exists
    - GF_FEVT_INIT
    - gf_fs_run
    - gf_fs_print_non_connected
    - gf_fs_print_unused_args
    - gf_filter_send_event
    - dash_state_check_timing
    - gf_fs_del
    - gf_filter_send_update
    - gf_filter_get_ipid
    - gf_fs_print_connections
    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_count
    - playlist_element_del
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    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:
    - cleanup_list_of_elements
    - memset
    - gf_free
    - gf_assert
    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:
    - playlist_element_del
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - memset
    - memcpy
    - 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_malloc
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - cleanup_list_of_elements
    - gf_list_get
    - gf_list_rem
    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_sha1_csum
    - gf_assert
    - strlen
    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_malloc
      Src: /src/gpac/src/media_tools/m3u8.c:327,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/m3u8.c:328,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:351,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 298
    functionDepth: 1
    functionLinenumber: 298
    functionLinenumberEnd: 355
    functionName: extract_attributes
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - safe_start_equals
    - gf_free
    - gf_malloc
    - strlen
    - memcpy
    - gf_calloc
    - strncmp
    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: 360
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 360
    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:365,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attributes
    argTypes:
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 369
    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:379,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:381,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:383,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:389,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:393,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:398,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:401,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:405,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:411,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:414,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:418,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:423,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:427,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:429,1
    - Dst: strtod
      Src: /src/gpac/src/media_tools/m3u8.c:433,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:437,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:438,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:442,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:443,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:447,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:451,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:452,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:453,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:456,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: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:466,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:468,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:469,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:471,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:472,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:474,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:480,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:482,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:483,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:484,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:492,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:499,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:502,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/m3u8.c:505,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:506,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:512,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:513,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:516,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/m3u8.c:518,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:519,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:522,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:529,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:531,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:533,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:534,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:537,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:540,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:548,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:554,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:557,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:562,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:565,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:567,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:570,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:572,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:575,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:576,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:578,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:579,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:580,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:582,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:585,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:585,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:589,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:590,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:591,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:593,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:594,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:595,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:596,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:597,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:599,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:600,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:601,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:606,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:607,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/m3u8.c:612,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:614,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:617,1
    - Dst: strtol
      Src: /src/gpac/src/media_tools/m3u8.c:620,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:625,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:628,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:638,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:642,1
    - Dst: extract_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:645,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:648,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:657,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:658,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:660,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:662,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:664,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:667,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:669,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:671,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:672,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:673,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:677,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:679,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:681,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:682,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:683,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:685,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:686,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:687,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:689,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:690,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:691,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:693,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:694,1
    - Dst: GROUP_ID_TO_PROGRAM_ID
      Src: /src/gpac/src/media_tools/m3u8.c:695,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:697,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:698,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:701,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:705,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:706,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:711,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:713,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:714,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:715,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:716,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:718,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:719,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:724,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:726,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:727,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:729,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:732,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:734,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:735,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:736,1
    - Dst: safe_start_equals
      Src: /src/gpac/src/media_tools/m3u8.c:738,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/m3u8.c:739,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:747,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:752,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:753,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:758,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:759,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:763,1
    - Dst: free_attrs
      Src: /src/gpac/src/media_tools/m3u8.c:764,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:770,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:770,1
    - Dst: M3U8_COMPATIBILITY_VERSION
      Src: /src/gpac/src/media_tools/m3u8.c:772,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:775,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:775,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:780,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:780,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:783,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:783,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:788,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:788,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:792,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:792,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:796,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:796,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:800,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:800,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:803,1
    CyclomaticComplexity: 132
    EdgeCount: 132
    ICount: 434
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 373
    functionDepth: 2
    functionLinenumber: 373
    functionLinenumberEnd: 805
    functionName: parse_attributes
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - safe_start_equals
    - extract_attributes
    - gf_free
    - free_attrs
    - GF_LOG
    - strtol
    - gf_strdup
    - M3U8_COMPATIBILITY_VERSION
    - sscanf
    - gf_assert
    - GROUP_ID_TO_PROGRAM_ID
    - stricmp
    - gf_net_parse_date
    - strlen
    - strtod
    - strcmp
    - strstr
    - strncmp
    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:814,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m3u8.c:818,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:820,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 811
    functionDepth: 1
    functionLinenumber: 811
    functionLinenumberEnd: 826
    functionName: master_playlist_new
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_free
    - gf_list_new
    linkageType: ''
    returnType: MasterPlaylist
    signature: MasterPlaylist * master_playlist_new()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:835,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:836,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:838,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:840,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/m3u8.c:841,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m3u8.c:843,1
    - Dst: stream_del
      Src: /src/gpac/src/media_tools/m3u8.c:845,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/m3u8.c:846,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/m3u8.c:848,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:850,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - playlist
    argTypes:
    - MasterPlaylist**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 831
    functionDepth: 3
    functionLinenumber: 831
    functionLinenumberEnd: 854
    functionName: gf_m3u8_master_playlist_del
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - playlist_element_del
    - gf_free
    - stream_del
    - gf_list_del
    - gf_assert
    - gf_list_get
    - 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:858,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:859,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:860,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:863,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:864,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - pl
    - stream_id
    argTypes:
    - MasterPlaylist*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 856
    functionDepth: 1
    functionLinenumber: 856
    functionLinenumberEnd: 871
    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:882,1
    - Dst: string2num
      Src: /src/gpac/src/media_tools/m3u8.c:883,1
    - Dst: gf_m3u8_parse_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:886,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - file
    - playlist
    - baseURL
    argTypes:
    - char*
    - MasterPlaylist**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 878
    functionDepth: 2
    functionLinenumber: 878
    functionLinenumberEnd: 887
    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:897,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:901,1
    - Dst: master_playlist_find_matching_stream
      Src: /src/gpac/src/media_tools/m3u8.c:908,1
    - Dst: stream_new
      Src: /src/gpac/src/media_tools/m3u8.c:911,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:914,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:917,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:924,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:925,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:926,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:930,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:931,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/m3u8.c:935,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:950,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/m3u8.c:955,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:960,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:963,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:964,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:965,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:966,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:967,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/m3u8.c:972,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/m3u8.c:973,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:978,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:981,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:985,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:986,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:988,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:989,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:991,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:992,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:994,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:997,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/m3u8.c:999,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:1000,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1006,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1011,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:1012,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:1015,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1018,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1019,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:1022,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1024,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:1028,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:1029,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:1032,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:1033,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: gf_assert
      Src: /src/gpac/src/media_tools/m3u8.c:1037,1
    - Dst: playlist_element_new
      Src: /src/gpac/src/media_tools/m3u8.c:1039,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/m3u8.c:1043,1
    - Dst: gf_m3u8_master_playlist_del
      Src: /src/gpac/src/media_tools/m3u8.c:1046,1
    - Dst: playlist_element_del
      Src: /src/gpac/src/media_tools/m3u8.c:1047,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/m3u8.c:1050,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1079,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1089,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1093,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1097,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1101,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1105,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1109,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1113,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: 1117
      start: 889
    functionDepth: 4
    functionLinenumber: 889
    functionLinenumberEnd: 1117
    functionName: declare_sub_playlist
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_list_add
    - strstr
    - strchr
    - gf_malloc
    - playlist_element_new
    - stream_new
    - gf_m3u8_master_playlist_del
    - gf_dynstrcat
    - gf_list_get
    - gf_realloc
    - playlist_element_del
    - strcmp
    - gf_list_new
    - gf_free
    - GF_LOG
    - master_playlist_find_matching_stream
    - gf_strdup
    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: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:1138,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:1141,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1143,1
    - Dst: RST_ATTR
      Src: /src/gpac/src/media_tools/m3u8.c:1144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - attribs
    - is_cleanup
    argTypes:
    - s_accumulated_attributes*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1127
    functionDepth: 1
    functionLinenumber: 1127
    functionLinenumberEnd: 1145
    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: 1131
      start: 1130
    functionDepth: 0
    functionLinenumber: 1130
    functionLinenumberEnd: 1131
    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:1159,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/m3u8.c:1160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1162,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/m3u8.c:1167,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1169,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/m3u8.c:1174,1
    - Dst: master_playlist_new
      Src: /src/gpac/src/media_tools/m3u8.c:1183,1
    - Dst: reset_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:1190,1
    - Dst: gf_fgets
      Src: /src/gpac/src/media_tools/m3u8.c:1196,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1215,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1218,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/m3u8.c:1221,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:1226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1227,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:1235,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:1240,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/m3u8.c:1242,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1248,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/m3u8.c:1250,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1256,1
    - Dst: atof
      Src: /src/gpac/src/media_tools/m3u8.c:1258,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/m3u8.c:1264,1
    - Dst: declare_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:1274,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/m3u8.c:1290,1
    - Dst: parse_attributes
      Src: /src/gpac/src/media_tools/m3u8.c:1291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1298,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1303,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1304,1
    - Dst: declare_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:1321,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/m3u8.c:1322,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/m3u8.c:1340,1
    - Dst: declare_sub_playlist
      Src: /src/gpac/src/media_tools/m3u8.c:1341,1
    - Dst: reset_attribs
      Src: /src/gpac/src/media_tools/m3u8.c:1351,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:1359,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:1361,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/m3u8.c:1363,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/m3u8.c:1364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/m3u8.c:1374,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: 1377
      start: 1148
    functionDepth: 5
    functionLinenumber: 1148
    functionLinenumberEnd: 1377
    functionName: gf_m3u8_parse_sub_playlist
    functionSourceFile: /src/gpac/src/media_tools/m3u8.c
    functionUses: 3
    functionsReached:
    - atof
    - gf_list_count
    - gf_file_basename
    - gf_blob_get
    - reset_attribs
    - strstr
    - strchr
    - gf_fopen
    - parse_attributes
    - gf_list_get
    - gf_fgets
    - master_playlist_new
    - declare_sub_playlist
    - strlen
    - sscanf
    - gf_free
    - GF_LOG
    - reset_attributes
    - memset
    - strncmp
    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_SAFEALLOC
    - gf_list_new
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    - saf_stream_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_malloc
    - saf_get_stream
    - gf_mx_v
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - memcpy
    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:
    - saf_get_stream
    - gf_mx_p
    - 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:
    - saf_get_stream
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_mx_v
    - gf_list_add
    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_list_count
    - gf_free
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_mx_v
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_mx_p
    - gf_bs_write_data
    - gf_list_get
    - saf_stream_del
    - strlen
    - 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_malloc
    - memcmp
    - strlen
    - gf_strdup
    - memcpy
    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_u32
    - gf_bs_write_data
    - gf_bs_write_u64
    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_id3_to_bitstream
    - gf_bs_write_u32
    - gf_list_get
    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_u32
    - gf_bs_read_u64
    - gf_bs_read_data
    - 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_list_rem
    - gf_free
    - gf_list_get
    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_m2ts_reset_sections
    - gf_free
    - 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_m2ts_section_filter_reset
    - gf_free
    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_dvb_mpe_section_del
    - gf_list_del_item
    - gf_m2ts_section_filter_del
    - gf_m2ts_metadata_descriptor_del
    - GF_M2TS_Demuxer*::on_event
    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_list_last
    - gf_list_rem_last
    - gf_free
    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_list_count
    - on_dsmcc_section
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_m2ts_crc32_check
    - gf_m2ts_reset_sections
    - gf_list_get
    - GF_M2TS_Demuxer*::on_mpe_event
    - on_ait_section
    - GF_SAFEALLOC
    - GF_M2TS_SectionFilter*::process_section
    - gf_list_new
    - gf_list_add
    - memcpy
    - GF_M2TS_Demuxer*::on_event
    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_malloc
    - gf_m2ts_section_complete
    - GF_LOG
    - gf_m2ts_get_section_length
    - gf_realloc
    - memcpy
    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_list_count
    - gf_free
    - gf_malloc
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - gf_m2ts_reset_sdt
    - memcpy
    - GF_M2TS_Demuxer*::on_event
    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_LOG
    - gf_list_count
    - GF_M2TS_Demuxer*::on_event
    - gf_list_get
    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:
    - memset
    - GF_M2TS_Demuxer*::on_event
    - gf_list_count
    - gf_list_get
    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: 24
    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_FLOAT_TO_U32
      Src: /src/gpac/src/media_tools/mpegts.c:966,1
    - Dst: GF_FLOAT_TO_U32
      Src: /src/gpac/src/media_tools/mpegts.c:967,1
    - Dst: GF_FLOAT_TO_U32
      Src: /src/gpac/src/media_tools/mpegts.c:968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:981,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:985,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:987,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1007,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1008,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1009,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1010,1
    - Dst: dvb_decode_mjd_to_unix_time
      Src: /src/gpac/src/media_tools/mpegts.c:1014,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1016,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1017,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:1018,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/mpegts.c:1019,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1026,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1031,1
    - Dst: gf_m2ts_crc32_check
      Src: /src/gpac/src/media_tools/mpegts.c:1034,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1035,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1038,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1040,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/mpegts.c:1043,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1050,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 116
    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: 1052
      start: 913
    functionDepth: 2
    functionLinenumber: 913
    functionLinenumberEnd: 1052
    functionName: gf_m2ts_process_tdt_tot
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - sprintf
    - gf_free
    - atoi
    - GF_LOG
    - gf_m2ts_crc32_check
    - gf_assert
    - GF_SAFEALLOC
    - dvb_decode_mjd_to_unix_time
    - gf_list_get
    - GF_FLOAT_TO_U32
    - GF_M2TS_Demuxer*::on_event
    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:1058,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1060,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1063,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1066,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1069,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1072,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1073,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1074,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1075,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1078,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1079,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1081,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1084,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1088,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1089,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1094,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1095,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - bs
    - length
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1054
    functionDepth: 1
    functionLinenumber: 1054
    functionLinenumberEnd: 1098
    functionName: gf_m2ts_read_metadata_pointer_descriptor
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:1103,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1104,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1105,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - metapd
    argTypes:
    - GF_M2TS_MetadataPointerDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1107
      start: 1100
    functionDepth: 0
    functionLinenumber: 1100
    functionLinenumberEnd: 1107
    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:1113,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/media_tools/mpegts.c:1115,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1118,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1121,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:1124,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1127,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1128,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1129,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1130,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1133,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1134,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1136,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1139,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1140,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1142,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1145,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:1146,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:1148,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1151,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 2
    argNames:
    - bs
    - length
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1155
      start: 1109
    functionDepth: 1
    functionLinenumber: 1109
    functionLinenumberEnd: 1155
    functionName: gf_m2ts_read_metadata_descriptor
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_read_int
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_bs_read_u16
    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:1178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1188,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1190,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1214,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1225,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:1226,1
    - Dst: gf_odf_parse_descriptor
      Src: /src/gpac/src/media_tools/mpegts.c:1228,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1231,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:1232,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1240,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:1241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1247,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1256,1
    - Dst: gf_m2ts_read_metadata_pointer_descriptor
      Src: /src/gpac/src/media_tools/mpegts.c:1257,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1258,1
    - Dst: gf_m2ts_metadata_pointer_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1264,1
    - Dst: gf_m2ts_metadata_pointer_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1268,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1272,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/mpegts.c:1272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1310,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1317,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1341,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1363,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/media_tools/mpegts.c:1364,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1413,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1423,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1425,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1436,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1445,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:1448,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1464,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1478,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1480,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1483,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1489,1
    - Dst: gf_dvb_mpe_section_new
      Src: /src/gpac/src/media_tools/mpegts.c:1491,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1524,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1532,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1542,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:1576,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/mpegts.c:1598,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:1603,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:1605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1609,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/mpegts.c:1609,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1621,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:1635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1643,1
    - Dst: gf_bs_new
      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_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1666,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1667,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1668,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1669,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:1678,1
    - Dst: gf_m2ts_read_metadata_descriptor
      Src: /src/gpac/src/media_tools/mpegts.c:1679,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1680,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1686,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1691,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1697,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1702,1
    - Dst: gf_m2ts_metadata_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:1706,1
    - Dst: gf_bs_new
      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_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1722,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1723,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1724,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1726,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:1727,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/media_tools/mpegts.c:1729,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:1730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1768,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1776,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:1783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1785,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1802,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1805,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/media_tools/mpegts.c:1806,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:1822,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:1825,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1833,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/media_tools/mpegts.c:1834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1848,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1849,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1878,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1880,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1886,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1890,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1896,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1899,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: 1901
      start: 1158
    functionDepth: 5
    functionLinenumber: 1158
    functionLinenumberEnd: 1901
    functionName: gf_m2ts_process_pmt
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_list_count
    - gf_odf_parse_descriptor
    - memset
    - gf_bs_new
    - gf_bs_del
    - GF_SAFEALLOC
    - gf_m2ts_metadata_descriptor_del
    - gf_list_add
    - GF_M2TS_Demuxer*::on_event
    - gf_m2ts_set_pes_framing
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_dvb_mpe_section_new
    - gf_m2ts_es_del
    - gf_bs_read_int
    - gf_list_new
    - gf_m2ts_read_metadata_pointer_descriptor
    - gf_odf_desc_del
    - gf_m2ts_section_filter_new
    - gf_free
    - GF_LOG
    - GF_4CC
    - gf_m2ts_read_metadata_descriptor
    - gf_opts_get_bool
    - gf_m2ts_metadata_pointer_descriptor_del
    - gf_4cc_to_str
    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:1921,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1925,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1927,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:1930,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:1934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1938,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1954,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1956,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1958,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:1961,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1965,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/mpegts.c:1966,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:1968,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/mpegts.c:1972,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:1976,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:1986,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: 1988
      start: 1903
    functionDepth: 2
    functionLinenumber: 1903
    functionLinenumberEnd: 1988
    functionName: gf_m2ts_process_pat
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_m2ts_section_filter_new
    - GF_LOG
    - gf_list_new
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - GF_M2TS_Demuxer*::on_event
    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:2011,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2053,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: 2054
      start: 1990
    functionDepth: 0
    functionLinenumber: 1990
    functionLinenumberEnd: 2054
    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: 2066
      start: 2056
    functionDepth: 0
    functionLinenumber: 2056
    functionLinenumberEnd: 2066
    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:2073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2076,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:2109,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:2115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2122,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2128,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: 2131
      start: 2068
    functionDepth: 1
    functionLinenumber: 2068
    functionLinenumberEnd: 2131
    functionName: gf_m2ts_pes_header
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memset
    - 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:2135,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2136,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2137,1
    - Dst: gf_bs_read_int
      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: memset
      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_int
      Src: /src/gpac/src/media_tools/mpegts.c:2144,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2145,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2146,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2148,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/media_tools/mpegts.c:2150,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2152,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/media_tools/mpegts.c:2155,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:2157,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - ts
    - pes
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_PES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2160
      start: 2133
    functionDepth: 1
    functionLinenumber: 2133
    functionLinenumberEnd: 2160
    functionName: gf_m2ts_store_temi
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_read_u32
    - memset
    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:2192,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2197,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2243,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2265,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2273,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2288,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2295,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2297,1
    - Dst: gf_m2ts_store_temi
      Src: /src/gpac/src/media_tools/mpegts.c:2302,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2310,1
    - Dst: GF_M2TS_PES*::reframe
      Src: /src/gpac/src/media_tools/mpegts.c:2314,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:2318,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/mpegts.c:2322,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2333,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: 2340
      start: 2162
    functionDepth: 2
    functionLinenumber: 2162
    functionLinenumberEnd: 2340
    functionName: gf_m2ts_flush_pes
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_m2ts_store_temi
    - GF_M2TS_PES*::reframe
    - memset
    - memcpy
    - gf_m2ts_pes_header
    - GF_M2TS_Demuxer*::on_event
    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:2352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2374,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:2402,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2404,1
    - Dst: gf_m2ts_flush_pes
      Src: /src/gpac/src/media_tools/mpegts.c:2413,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2418,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:2424,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2432,1
    - Dst: gf_m2ts_flush_pes
      Src: /src/gpac/src/media_tools/mpegts.c:2435,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: 2438
      start: 2342
    functionDepth: 3
    functionLinenumber: 2342
    functionLinenumberEnd: 2438
    functionName: gf_m2ts_process_pes
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_realloc
    - memcpy
    - gf_m2ts_flush_pes
    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:2446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ts
    - no_force_flush
    argTypes:
    - GF_M2TS_Demuxer*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2449
      start: 2440
    functionDepth: 3
    functionLinenumber: 2440
    functionLinenumberEnd: 2449
    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:2489,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2499,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2539,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/mpegts.c:2544,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/mpegts.c:2551,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_int
      Src: /src/gpac/src/media_tools/mpegts.c:2556,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2557,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2558,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2560,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/media_tools/mpegts.c:2561,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2565,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/mpegts.c:2566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2568,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2574,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2578,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/mpegts.c:2583,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/mpegts.c:2584,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/mpegts.c:2584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2588,1
    - Dst: GF_M2TS_Demuxer*::on_event
      Src: /src/gpac/src/media_tools/mpegts.c:2589,1
    - Dst: gf_m2ts_store_temi
      Src: /src/gpac/src/media_tools/mpegts.c:2597,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/mpegts.c:2600,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:2603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2606,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/mpegts.c:2610,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:2619,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: 2620
      start: 2452
    functionDepth: 2
    functionLinenumber: 2452
    functionLinenumberEnd: 2620
    functionName: gf_m2ts_get_adaptation_field
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - GF_ARRAY_LENGTH
    - GF_LOG
    - gf_m2ts_store_temi
    - MIN
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_read_u32
    - memset
    - gf_realloc
    - memcpy
    - GF_M2TS_Demuxer*::on_event
    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:3023,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3025,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
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3037,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3039,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 24
    argCount: 1
    argNames:
    - es
    argTypes:
    - GF_M2TS_ES*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3048
      start: 3016
    functionDepth: 1
    functionLinenumber: 3016
    functionLinenumberEnd: 3048
    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: 3057
      start: 3049
    functionDepth: 0
    functionLinenumber: 3049
    functionLinenumberEnd: 3057
    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:3074,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3080,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3087,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: 3102
      start: 3063
    functionDepth: 3
    functionLinenumber: 3063
    functionLinenumberEnd: 3102
    functionName: gf_m2ts_reset_parsers_for_program_ex
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_section_filter_reset
    - gf_free
    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:3107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ts
    - prog
    argTypes:
    - GF_M2TS_Demuxer*
    - GF_M2TS_Program*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3109
      start: 3104
    functionDepth: 4
    functionLinenumber: 3104
    functionLinenumberEnd: 3109
    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:3113,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
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3121,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3122,1
    - Dst: gf_m2ts_section_filter_reset
      Src: /src/gpac/src/media_tools/mpegts.c:3123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3125
      start: 3110
    functionDepth: 5
    functionLinenumber: 3110
    functionLinenumberEnd: 3125
    functionName: gf_m2ts_reset_parsers
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    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: 3142
      start: 3127
    functionDepth: 0
    functionLinenumber: 3127
    functionLinenumberEnd: 3142
    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: 3161
      start: 3146
    functionDepth: 0
    functionLinenumber: 3146
    functionLinenumberEnd: 3161
    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:3170,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/media_tools/mpegts.c:3194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3196,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:3197,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 74
    argCount: 2
    argNames:
    - pes
    - mode
    argTypes:
    - GF_M2TS_PES*
    - GF_M2TSPesFraming
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3253
      start: 3165
    functionDepth: 5
    functionLinenumber: 3165
    functionLinenumberEnd: 3253
    functionName: gf_m2ts_set_pes_framing
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - gf_m2ts_es_del
    - gf_m2ts_set_pes_framing
    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:3260,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:3262,1
    - Dst: gf_list_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: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_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3268,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3269,1
    - Dst: gf_m2ts_section_filter_new
      Src: /src/gpac/src/media_tools/mpegts.c:3270,1
    - Dst: gf_dvb_mpe_init
      Src: /src/gpac/src/media_tools/mpegts.c:3273,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/mpegts.c:3277,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3279
      start: 3255
    functionDepth: 2
    functionLinenumber: 3255
    functionLinenumberEnd: 3279
    functionName: GF_M2TS_Demuxer *gf_m2ts_demux_new()
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_m2ts_section_filter_new
    - gf_dvb_mpe_init
    - gf_list_new
    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:3288,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/mpegts.c:3291,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/media_tools/mpegts.c:3291,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpegts.c:3292,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/mpegts.c:3297,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpegts.c:3297,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/mpegts.c:3297,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/mpegts.c:3298,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/media_tools/mpegts.c:3299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3304
      start: 3281
    functionDepth: 1
    functionLinenumber: 3281
    functionLinenumberEnd: 3304
    functionName: gf_m2ts_demux_dmscc_init
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - GF_LOG
    - gf_get_default_cache_directory
    - gf_list_new
    - gf_mkdir
    - strlen
    - gf_calloc
    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: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_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3313,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3314,1
    - Dst: gf_m2ts_section_filter_del
      Src: /src/gpac/src/media_tools/mpegts.c:3315,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:3320,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3323,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3324,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpegts.c:3325,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/mpegts.c:3326,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3328,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/mpegts.c:3329,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/mpegts.c:3330,1
    - Dst: gf_m2ts_es_del
      Src: /src/gpac/src/media_tools/mpegts.c:3333,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3335,1
    - Dst: gf_odf_desc_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3338,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3339,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/mpegts.c:3341,1
    - Dst: gf_m2ts_metadata_pointer_descriptor_del
      Src: /src/gpac/src/media_tools/mpegts.c:3342,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3343,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3345,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3347,1
    - Dst: gf_m2ts_reset_sdt
      Src: /src/gpac/src/media_tools/mpegts.c:3348,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3350,1
    - Dst: gf_dvb_mpe_shutdown
      Src: /src/gpac/src/media_tools/mpegts.c:3353,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3357,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3359,1
    - Dst: gf_dir_cleanup
      Src: /src/gpac/src/media_tools/mpegts.c:3360,1
    - Dst: gf_rmdir
      Src: /src/gpac/src/media_tools/mpegts.c:3361,1
    - Dst: gf_m2ts_delete_dsmcc_overlord
      Src: /src/gpac/src/media_tools/mpegts.c:3362,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3364,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3368,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/mpegts.c:3371,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/mpegts.c:3373,1
    - Dst: gf_m2ts_delete_channel_application_info
      Src: /src/gpac/src/media_tools/mpegts.c:3374,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/mpegts.c:3375,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/mpegts.c:3378,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3380,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/mpegts.c:3381,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 64
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3382
      start: 3306
    functionDepth: 5
    functionLinenumber: 3306
    functionLinenumberEnd: 3382
    functionName: gf_m2ts_demux_del
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    functionsReached:
    - gf_dvb_mpe_shutdown
    - gf_list_count
    - gf_odf_desc_del
    - gf_free
    - gf_m2ts_delete_dsmcc_overlord
    - gf_m2ts_es_del
    - gf_m2ts_metadata_pointer_descriptor_del
    - gf_m2ts_delete_channel_application_info
    - gf_list_del
    - gf_list_rem_last
    - gf_odf_desc_list_del
    - gf_m2ts_section_filter_del
    - gf_dir_cleanup
    - gf_list_get
    - gf_list_last
    - gf_m2ts_reset_sdt
    - gf_rmdir
    - gf_list_rem
    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:3388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ts
    argTypes:
    - GF_M2TS_Demuxer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3390
      start: 3385
    functionDepth: 2
    functionLinenumber: 3385
    functionLinenumberEnd: 3390
    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:3401,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/media_tools/mpegts.c:3402,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/media_tools/mpegts.c:3404,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/media_tools/mpegts.c:3406,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/media_tools/mpegts.c:3426,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/media_tools/mpegts.c:3428,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - buf
    - size
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3433
      start: 3395
    functionDepth: 6
    functionLinenumber: 3395
    functionLinenumberEnd: 3433
    functionName: gf_m2ts_probe_buffer
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 0
    functionsReached:
    - gf_log_set_tool_level
    - gf_m2ts_process_data
    - gf_log_get_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:3440,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/mpegts.c:3442,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/mpegts.c:3446,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/mpegts.c:3447,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/mpegts.c:3449,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/mpegts.c:3451,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/mpegts.c:3452,1
    - Dst: gf_m2ts_probe_buffer
      Src: /src/gpac/src/media_tools/mpegts.c:3455,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - fileName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3456
      start: 3434
    functionDepth: 7
    functionLinenumber: 3434
    functionLinenumberEnd: 3456
    functionName: gf_m2ts_probe_file
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    functionsReached:
    - gf_fclose
    - gf_m2ts_probe_buffer
    - gf_fopen
    - gf_blob_get
    - gf_fread
    - gf_blob_release
    - memcpy
    - strncmp
    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:3464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3465
      start: 3458
    functionDepth: 7
    functionLinenumber: 3458
    functionLinenumberEnd: 3465
    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:3479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - ptr
    - TS
    argTypes:
    - unsigned char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3480
      start: 3468
    functionDepth: 1
    functionLinenumber: 3468
    functionLinenumberEnd: 3480
    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: 3487
      start: 3482
    functionDepth: 0
    functionLinenumber: 3482
    functionLinenumberEnd: 3487
    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:3505,1
    - Dst: ADJUST_TIMESTAMP
      Src: /src/gpac/src/media_tools/mpegts.c:3518,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3526,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3553,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:3558,1
    - Dst: ADJUST_TIMESTAMP
      Src: /src/gpac/src/media_tools/mpegts.c:3559,1
    - Dst: rewrite_pts_dts
      Src: /src/gpac/src/media_tools/mpegts.c:3560,1
    - Dst: gf_m2ts_get_pts
      Src: /src/gpac/src/media_tools/mpegts.c:3564,1
    - Dst: ADJUST_TIMESTAMP
      Src: /src/gpac/src/media_tools/mpegts.c:3565,1
    - Dst: rewrite_pts_dts
      Src: /src/gpac/src/media_tools/mpegts.c:3566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/mpegts.c:3569,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: 3574
      start: 3487
    functionDepth: 2
    functionLinenumber: 3487
    functionLinenumberEnd: 3574
    functionName: gf_m2ts_restamp
    functionSourceFile: /src/gpac/src/media_tools/mpegts.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_m2ts_get_pts
    - rewrite_pts_dts
    - ADJUST_TIMESTAMP
    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_FLOAT_TO_U32
      Src: /src/gpac/src/media_tools/media_import.c:89,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_odf_desc_del
    - gf_isom_get_media_timescale
    - gf_isom_get_media_type
    - gf_isom_get_media_duration
    - gf_isom_change_mpeg4_description
    - gf_isom_get_sample_count
    - gf_isom_get_esd
    - gf_isom_get_constant_sample_size
    - gf_isom_get_sample_info_ex
    - memset
    - GF_FLOAT_TO_U32
    - 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:
    - GF_LOG
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    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_isom_last_error
    - gf_isom_add_sample
    - gf_isom_get_sample_count
    - gf_isom_sample_new
    - gf_isom_set_track_magic
    - gf_isom_new_mpeg4_description
    - gf_malloc
    - gf_isom_update_duration
    - gf_set_progress
    - gf_isom_new_track
    - gf_isom_set_track_enabled
    - gf_import_message
    - gf_isom_get_track_id
    - gf_free
    - gf_odf_desc_del
    - gf_file_load_data
    - gf_isom_get_track_by_id
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_isom_sample_del
    - gf_isom_add_sample_reference
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_import_afx_sc3dmc(GF_MediaImporter *import, Bool mult_desc_allowed)
  - BBCount: 137
    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_LOG
      Src: /src/gpac/src/media_tools/media_import.c:322,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:326,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:327,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_import.c:348,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:350,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/media_tools/media_import.c:353,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/media_import.c:355,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:356,1
    - Dst: gf_media_get_rfc_6381_codec_name
      Src: /src/gpac/src/media_tools/media_import.c:359,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:368,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:368,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:369,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_import.c:371,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:372,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_import.c:374,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:384,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/media_tools/media_import.c:385,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:387,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:390,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_import.c:394,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/media_import.c:402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:407,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_import.c:428,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:437,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/media_import.c:447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:455,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_import.c:467,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/media_import.c:474,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:478,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:479,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_import.c:482,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/media_import.c:484,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/media_tools/media_import.c:485,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_import.c:491,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:492,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/media_tools/media_import.c:502,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/src/media_tools/media_import.c:507,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:510,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/media_import.c:510,1
    - Dst: gf_isom_get_creation_time
      Src: /src/gpac/src/media_tools/media_import.c:512,1
    - Dst: gf_isom_set_creation_time
      Src: /src/gpac/src/media_tools/media_import.c:513,1
    - Dst: gf_isom_set_track_id
      Src: /src/gpac/src/media_tools/media_import.c:519,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:523,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/media_import.c:525,1
    - Dst: gf_isom_remove_track_references
      Src: /src/gpac/src/media_tools/media_import.c:529,1
    - Dst: gf_isom_set_track_magic
      Src: /src/gpac/src/media_tools/media_import.c:533,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_import.c:535,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:538,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:541,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:549,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:551,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:553,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:556,1
    - Dst: gf_isom_set_audio_info
      Src: /src/gpac/src/media_tools/media_import.c:557,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:562,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/media_tools/media_import.c:567,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_import.c:568,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:569,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_import.c:569,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:570,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_import.c:570,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:577,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:580,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/media_tools/media_import.c:583,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/media_tools/media_import.c:584,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/media_tools/media_import.c:585,1
    - Dst: gf_isom_get_constant_sample_duration
      Src: /src/gpac/src/media_tools/media_import.c:588,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/src/media_tools/media_import.c:589,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_import.c:591,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:596,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:600,1
    - Dst: GF_LOG
      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:606,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/src/media_tools/media_import.c:607,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:610,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/src/media_tools/media_import.c:611,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:614,1
    - Dst: gf_isom_vvc_set_inband_config
      Src: /src/gpac/src/media_tools/media_import.c:615,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:637,1
    - Dst: gf_isom_cenc_get_sample_aux_info
      Src: /src/gpac/src/media_tools/media_import.c:642,1
    - Dst: gf_isom_piff_allocate_storage
      Src: /src/gpac/src/media_tools/media_import.c:646,1
    - Dst: gf_isom_cenc_allocate_storage
      Src: /src/gpac/src/media_tools/media_import.c:648,1
    - Dst: gf_isom_clone_pssh
      Src: /src/gpac/src/media_tools/media_import.c:651,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:656,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/media_import.c:658,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/media_import.c:663,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/media_tools/media_import.c:663,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:664,1
    - Dst: gf_isom_add_sample_reference
      Src: /src/gpac/src/media_tools/media_import.c:672,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_import.c:674,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/media_import.c:677,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:679,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:702,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/media_import.c:707,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/media_tools/media_import.c:707,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:708,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/media_import.c:716,1
    - Dst: gf_isom_get_sample_to_group_info
      Src: /src/gpac/src/media_tools/media_import.c:727,1
    - Dst: gf_isom_set_sample_rap_group
      Src: /src/gpac/src/media_tools/media_import.c:731,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:734,1
    - Dst: gf_isom_copy_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:737,1
    - Dst: gf_isom_get_sample_cenc_info
      Src: /src/gpac/src/media_tools/media_import.c:749,1
    - Dst: gf_isom_cenc_get_sample_aux_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:762,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:766,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_import.c:772,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/media_tools/media_import.c:774,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/media_import.c:780,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/media_tools/media_import.c:781,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/media_tools/media_import.c:784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:785,1
    - Dst: gf_isom_update_edit_list_duration
      Src: /src/gpac/src/media_tools/media_import.c:787,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/media_tools/media_import.c:788,1
    - Dst: gf_isom_has_time_offset
      Src: /src/gpac/src/media_tools/media_import.c:791,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/media_tools/media_import.c:792,1
    - Dst: gf_media_update_bitrate_ex
      Src: /src/gpac/src/media_tools/media_import.c:807,1
    - Dst: gf_isom_set_image_sequence_alpha
      Src: /src/gpac/src/media_tools/media_import.c:810,1
    - Dst: gf_isom_update_duration
      Src: /src/gpac/src/media_tools/media_import.c:814,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:817,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:818,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/media_import.c:819,1
    CyclomaticComplexity: 164
    EdgeCount: 164
    ICount: 451
    argCount: 1
    argNames:
    - import
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 821
      start: 298
    functionDepth: 10
    functionLinenumber: 298
    functionLinenumberEnd: 821
    functionName: gf_import_isomedia_track
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_sample_to_group_info
    - gf_url_get_resource_name
    - gf_isom_get_media_type
    - gf_isom_last_error
    - gf_isom_cenc_get_sample_aux_info
    - gf_isom_piff_allocate_storage
    - gf_isom_add_sample
    - gf_isom_set_composition_offset_mode
    - gf_isom_get_sample_count
    - gf_sys_old_arch_compat
    - gf_media_update_bitrate_ex
    - gf_isom_set_audio_info
    - gf_isom_is_cenc_media
    - gf_isom_set_nalu_extract_mode
    - gf_isom_set_track_id
    - gf_isom_get_sample
    - gf_isom_clone_track
    - gf_isom_get_filename
    - gf_isom_set_track_magic
    - gf_isom_vvc_set_inband_config
    - strstr
    - gf_isom_get_sample_duration
    - gf_isom_update_edit_list_duration
    - gf_isom_get_visual_info
    - gf_isom_has_keep_utc_times
    - gf_media_get_rfc_6381_codec_name
    - gf_m4v_get_config
    - gf_isom_get_media_timescale
    - gf_isom_get_sample_info
    - gf_isom_set_pl_indication
    - gf_isom_remove_track_references
    - gf_isom_set_sample_rap_group
    - gf_isom_get_esd
    - gf_isom_copy_sample_info
    - gf_isom_has_time_offset
    - gf_isom_get_track_layout_info
    - gf_isom_get_original_format_type
    - gf_isom_enable_raw_pack
    - gf_isom_get_media_language
    - gf_isom_update_duration
    - gf_isom_avc_set_inband_config
    - gf_isom_get_edit_list_type
    - gf_strcpy
    - gf_m4a_get_config
    - gf_timestamp_greater_or_equal
    - gf_isom_get_nalu_extract_mode
    - gf_isom_hevc_set_inband_config
    - gf_isom_set_timescale
    - gf_isom_cenc_allocate_storage
    - gf_isom_get_root_od
    - gf_isom_set_creation_time
    - gf_set_progress
    - gf_isom_set_track_reference
    - gf_isom_get_sample_cenc_info
    - gf_isom_get_constant_sample_duration
    - gf_isom_is_media_encrypted
    - gf_isom_get_track_id
    - gf_import_message
    - gf_isom_get_track_count
    - gf_free
    - gf_odf_desc_del
    - gf_isom_get_media_subtype
    - gf_isom_get_mpeg4_subtype
    - gf_isom_clone_pssh
    - GF_LOG
    - gf_isom_set_last_sample_duration
    - gf_isom_get_creation_time
    - gf_isom_get_track_by_id
    - GF_4CC
    - gf_isom_track_cenc_add_sample_info
    - gf_isom_set_image_sequence_alpha
    - gf_isom_sample_del
    - gf_isom_add_sample_reference
    - gf_isom_get_audio_info
    - gf_isom_get_timescale
    - gf_4cc_to_str
    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:827,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:831,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_import.c:833,1
    - Dst: gf_import_isomedia_track
      Src: /src/gpac/src/media_tools/media_import.c:835,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - import
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 823
    functionDepth: 11
    functionLinenumber: 823
    functionLinenumberEnd: 841
    functionName: gf_import_isomedia
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - gf_import_isomedia_track
    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:854,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:855,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_import.c:857,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/media_import.c:858,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/media_import.c:859,1
    - Dst: gf_isom_get_nalu_length_field
      Src: /src/gpac/src/media_tools/media_import.c:860,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/media_import.c:865,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/media_import.c:866,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/media_import.c:870,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/media_import.c:872,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/media_import.c:873,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/media_import.c:876,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:877,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/media_import.c:880,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/media_import.c:881,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/media_import.c:882,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:883,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:885,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 3
    argNames:
    - file
    - track
    - new_size
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 847
    functionDepth: 7
    functionLinenumber: 847
    functionLinenumberEnd: 887
    functionName: gf_media_nal_rewrite_samples
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_isom_get_sample_count
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_del
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_bs_write_data
    - gf_isom_get_nalu_length_field
    - gf_realloc
    - gf_isom_update_sample
    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:905,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/media_import.c:908,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/media_import.c:936,1
    - Dst: gf_fgets
      Src: /src/gpac/src/media_tools/media_import.c:941,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/media_import.c:943,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:945,1
    - Dst: strstr
      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: strncmp
      Src: /src/gpac/src/media_tools/media_import.c:949,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/media_import.c:950,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/media_import.c:951,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:952,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:952,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_import.c:955,1
    - Dst: gf_isom_remove_chapter
      Src: /src/gpac/src/media_tools/media_import.c:965,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:970,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:973,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/media_tools/media_import.c:974,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_import.c:975,1
    - Dst: gf_isom_get_sample_info
      Src: /src/gpac/src/media_tools/media_import.c:976,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_import.c:979,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_import.c:982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_import.c:983,1
    - Dst: gf_fgets
      Src: /src/gpac/src/media_tools/media_import.c:995,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1000,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1014,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1019,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1021,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/media_import.c:1022,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1023,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1024,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1025,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1027,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1029,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1032,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1033,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1034,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1036,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1037,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1040,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1041,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1042,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1043,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1044,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1048,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1050,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1051,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1055,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1057,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1059,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1061,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1061,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1067,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1069,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: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1084,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1090,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1093,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/media_import.c:1094,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/media_import.c:1097,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_import.c:1099,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1101,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1102,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1103,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1110,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1119,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1123,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/media_import.c:1127,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/media_tools/media_import.c:1133,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1142,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/media_tools/media_import.c:1143,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/media_tools/media_import.c:1145,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_import.c:1151,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 260
    argCount: 1
    argNames:
    - import
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 892
    functionDepth: 7
    functionLinenumber: 892
    functionLinenumberEnd: 1154
    functionName: gf_media_import_chapters_file
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - strlwr
    - gf_isom_get_media_type
    - gf_isom_get_sample_count
    - gf_isom_is_video_handler_type
    - gf_isom_remove_chapter
    - strstr
    - strchr
    - gf_isom_get_sample_info
    - gf_isom_get_media_timescale
    - gf_fopen
    - gf_timestamp_rescale
    - gf_fgets
    - gf_strcpy
    - strnicmp
    - strrchr
    - strlen
    - sscanf
    - gf_isom_get_track_count
    - gf_fclose
    - GF_LOG
    - gf_fseek
    - gf_isom_add_chapter
    - gf_isom_sample_del
    - gf_fread
    - strncmp
    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:1163,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:1167,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/media_tools/media_import.c:1168,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/media_tools/media_import.c:1170,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/media_import.c:1172,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/media_import.c:1178,1
    - Dst: gf_media_import
      Src: /src/gpac/src/media_tools/media_import.c:1183,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1185,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_import.c:1189,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/media_tools/media_import.c:1190,1
    - Dst: gf_isom_set_media_subtype
      Src: /src/gpac/src/media_tools/media_import.c:1192,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_import.c:1196,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_import.c:1197,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/media_import.c:1203,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1207,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: 1209
      start: 1156
    functionDepth: 8
    functionLinenumber: 1156
    functionLinenumberEnd: 1209
    functionName: gf_media_import_chapters
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_count
    - gf_isom_get_reference_count
    - gf_free
    - gf_isom_set_media_subtype
    - gf_isom_get_media_type
    - gf_isom_get_track_by_id
    - GF_SAFEALLOC
    - gf_isom_get_reference
    - gf_media_import
    - gf_isom_remove_chapter
    - gf_isom_set_track_reference
    - gf_isom_get_sample_description_count
    - gf_isom_remove_track
    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: 1217
      start: 1211
    functionDepth: 0
    functionLinenumber: 1211
    functionLinenumberEnd: 1217
    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:1237,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_import.c:1242,1
    - Dst: gf_isom_probe_file
      Src: /src/gpac/src/media_tools/media_import.c:1249,1
    - Dst: gf_isom_open
      Src: /src/gpac/src/media_tools/media_import.c:1258,1
    - Dst: gf_import_isomedia
      Src: /src/gpac/src/media_tools/media_import.c:1260,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/media_tools/media_import.c:1261,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_import_afx_sc3dmc
      Src: /src/gpac/src/media_tools/media_import.c:1270,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1272,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/media_import.c:1272,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/media_import.c:1272,1
    - Dst: gf_media_import_chapters_file
      Src: /src/gpac/src/media_tools/media_import.c:1273,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/media_import.c:1287,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1289,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_import.c:1291,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/media_tools/media_import.c:1292,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/media_import.c:1294,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1295,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1296,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/media_import.c:1299,1
    - Dst: on_import_setup_failure
      Src: /src/gpac/src/media_tools/media_import.c:1300,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/media_tools/media_import.c:1304,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/media_import.c:1305,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1308,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1309,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/media_tools/media_import.c:1313,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/media_tools/media_import.c:1317,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1319,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1321,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1323,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/media_import.c:1324,1
    - Dst: GF_4CC
      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:1326,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1328,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:1333,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:1345,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1347,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:1358,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1360,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/media_tools/media_import.c:1366,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1371,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/media_tools/media_import.c:1378,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1380,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1387,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_import.c:1389,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1394,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1395,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1396,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1400,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:1407,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1409,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1411,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1413,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1415,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:1419,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1420,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1423,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1424,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1427,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1430,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1431,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1434,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1435,1
    - Dst: sprintf
      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:1441,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1442,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1443,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1444,1
    - Dst: gf_sys_find_global_arg
      Src: /src/gpac/src/media_tools/media_import.c:1447,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1448,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1450,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/media_import.c:1452,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1452,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1456,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1457,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1460,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1461,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1462,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_import.c:1466,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1467,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1471,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1472,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1473,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1477,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1478,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1494,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_import.c:1496,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/media_import.c:1502,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1505,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1506,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_import.c:1509,1
    - Dst: gf_filter_get_id
      Src: /src/gpac/src/media_tools/media_import.c:1519,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1521,1
    - Dst: gf_import_message
      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:1527,1
    - Dst: gf_filter_assign_id
      Src: /src/gpac/src/media_tools/media_import.c:1529,1
    - Dst: gf_filter_get_id
      Src: /src/gpac/src/media_tools/media_import.c:1530,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1533,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/media_import.c:1535,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_import.c:1536,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1553,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1555,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1556,1
    - Dst: sprintf
      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:1562,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1564,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: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: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1573,1
    - Dst: gf_dynstrcat
      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:1576,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1577,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1579,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1580,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1582,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/media_import.c:1584,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1584,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1588,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1589,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1592,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1593,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:1601,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1602,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_import.c:1605,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/media_import.c:1606,1
    - Dst: gf_fs_del
      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_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1612,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/media_tools/media_import.c:1615,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_import.c:1616,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1621,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1622,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/media_tools/media_import.c:1626,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/media_import.c:1632,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/media_import.c:1634,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/media_import.c:1635,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/media_import.c:1638,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/media_import.c:1639,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/media_import.c:1640,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1642,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1643,1
    - Dst: gf_isom_get_last_created_track_id
      Src: /src/gpac/src/media_tools/media_import.c:1646,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_import.c:1649,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_import.c:1650,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_import.c:1660,1
    - Dst: gf_fs_print_unused_args
      Src: /src/gpac/src/media_tools/media_import.c:1668,1
    - Dst: gf_fs_print_non_connected
      Src: /src/gpac/src/media_tools/media_import.c:1669,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/media_tools/media_import.c:1670,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/media_tools/media_import.c:1671,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/media_import.c:1672,1
    - Dst: gf_import_message
      Src: /src/gpac/src/media_tools/media_import.c:1674,1
    CyclomaticComplexity: 156
    EdgeCount: 156
    ICount: 414
    argCount: 1
    argNames:
    - importer
    argTypes:
    - GF_MediaImporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1677
      start: 1219
    functionDepth: 12
    functionLinenumber: 1219
    functionLinenumberEnd: 1677
    functionName: gf_media_import
    functionSourceFile: /src/gpac/src/media_tools/media_import.c
    functionUses: 5
    functionsReached:
    - gf_filter_pid_get_property
    - gf_fs_print_stats
    - gf_fs_print_non_connected
    - gf_filter_assign_id
    - gf_assert
    - gf_isom_get_last_created_track_id
    - strstr
    - gf_isom_has_keep_utc_times
    - gf_fs_print_unused_args
    - gf_fs_get_last_connect_error
    - gf_filter_get_ipid_count
    - gf_isom_get_esd
    - gf_dynstrcat
    - gf_filter_get_ipid
    - gf_filter_set_source
    - gf_strcpy
    - gf_file_ext_start
    - gf_fs_get_last_process_error
    - on_import_setup_failure
    - gf_import_afx_sc3dmc
    - strnicmp
    - gf_fs_load_filter
    - gf_isom_probe_file
    - strlen
    - gf_filter_set_setup_failure_callback
    - strcmp
    - gf_filter_get_id
    - gf_fs_new_defaults
    - gf_import_message
    - sprintf
    - gf_free
    - gf_odf_desc_del
    - gf_fs_run
    - gf_fs_del
    - gf_import_isomedia
    - gf_isom_open
    - gf_media_import_chapters_file
    - stricmp
    - gf_sys_is_cov_mode
    - GF_4CC
    - gf_sys_find_global_arg
    - gf_isom_get_track_by_id
    - gf_fs_load_source
    - gf_isom_delete
    - gf_fs_print_connections
    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:72,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - fd
    - buf
    - len
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 79
    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:86,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - fd
    - buf
    - len
    argTypes:
    - FILE*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 93
    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: 105
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 105
    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: 116
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 116
    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: 123
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 123
    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: 138
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 138
    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: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    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: 147
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 147
    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:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 153
    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:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 157
    functionDepth: 1
    functionLinenumber: 157
    functionLinenumberEnd: 163
    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: 175
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 175
    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:188,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:189,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:194,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:195,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:196,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:198,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:205,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: 210
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 210
    functionName: avi_add_chunk
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - PAD_EVEN
    - gf_fseek
    - memcpy
    - avi_write
    - long2str
    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: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    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: 214
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 214
    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: 215
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 215
    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: 216
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 216
    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:223,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:225,1
    - Dst: OUTW
      Src: /src/gpac/src/media_tools/avilib.c:242,1
    - Dst: OUTC
      Src: /src/gpac/src/media_tools/avilib.c:243,1
    - Dst: OUTC
      Src: /src/gpac/src/media_tools/avilib.c:244,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:245,1
    - Dst: OUTS
      Src: /src/gpac/src/media_tools/avilib.c:246,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: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:249,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:252,1
    - Dst: OUTD
      Src: /src/gpac/src/media_tools/avilib.c:253,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:256,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:258,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: 261
      start: 218
    functionDepth: 3
    functionLinenumber: 218
    functionLinenumberEnd: 261
    functionName: avi_ixnn_entry
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_add_chunk
    - gf_free
    - gf_malloc
    - OUTS
    - OUTC
    - OUTW
    - OUTD
    - memcpy
    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:274,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:278,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:284,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:285,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:288,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:293,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:295,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:301,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: 310
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 310
    functionName: avi_init_super_index
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - memset
    - memcpy
    - 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:317,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:325,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:329,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: 338
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 338
    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:350,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: 366
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 366
    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:372,1
    - Dst: avi_init_super_index
      Src: /src/gpac/src/media_tools/avilib.c:382,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:402,1
    - Dst: avi_init_super_index
      Src: /src/gpac/src/media_tools/avilib.c:404,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/avilib.c:409,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:450,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:451,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:457,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/avilib.c:468,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/avilib.c:469,1
    - Dst: avi_add_std_index
      Src: /src/gpac/src/media_tools/avilib.c:470,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:479,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:490,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:503,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:507,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:511,1
    - Dst: avi_add_odml_index_entry_core
      Src: /src/gpac/src/media_tools/avilib.c:529,1
    - Dst: avi_add_odml_index_entry_core
      Src: /src/gpac/src/media_tools/avilib.c:536,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: 543
      start: 368
    functionDepth: 4
    functionLinenumber: 368
    functionLinenumberEnd: 543
    functionName: avi_add_odml_index_entry
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_init_super_index
    - strchr
    - sprintf
    - avi_add_chunk
    - avi_add_std_index
    - GF_LOG
    - avi_add_odml_index_entry_core
    - avi_ixnn_entry
    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:550,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:564,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:565,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:566,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:567,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: 576
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 576
    functionName: avi_add_index_entry
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - memcpy
    - long2str
    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: 602
      start: 580
    functionDepth: 0
    functionLinenumber: 580
    functionLinenumberEnd: 602
    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:622,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:628,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/avilib.c:630,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:634,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:642,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/avilib.c:645,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:647,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 2
    argNames:
    - filename
    - opendml_threshold
    argTypes:
    - char*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 663
      start: 612
    functionDepth: 2
    functionLinenumber: 612
    functionLinenumberEnd: 663
    functionName: AVI_open_output_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_fclose
    - gf_fopen
    - memset
    - avi_write
    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:676,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:677,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:679,1
    - Dst: avi_update_header
      Src: /src/gpac/src/media_tools/avilib.c:684,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: 685
      start: 665
    functionDepth: 1
    functionLinenumber: 665
    functionLinenumberEnd: 685
    functionName: AVI_set_video
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - memset
    - memcpy
    - avi_update_header
    - strncmp
    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:699,1
    - Dst: exit
      Src: /src/gpac/src/media_tools/avilib.c:700,1
    - Dst: avi_update_header
      Src: /src/gpac/src/media_tools/avilib.c:709,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: 710
      start: 687
    functionDepth: 1
    functionLinenumber: 687
    functionLinenumberEnd: 710
    functionName: AVI_set_audio
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - exit
    - avi_update_header
    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: 715
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 715
    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: 719
      start: 716
    functionDepth: 0
    functionLinenumber: 716
    functionLinenumberEnd: 719
    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: 726
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 726
    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: 732
      start: 727
    functionDepth: 0
    functionLinenumber: 727
    functionLinenumberEnd: 732
    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: 740
      start: 733
    functionDepth: 0
    functionLinenumber: 733
    functionLinenumberEnd: 740
    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:772,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:773,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:774,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:778,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:779,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:781,1
    - Dst: OUT4CC
      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:796,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:799,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:800,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:807,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:811,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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:817,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:818,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:819,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:820,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:825,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:826,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:828,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:832,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:833,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:834,1
    - Dst: OUT4CC
      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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:843,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:844,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:845,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:846,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:847,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:856,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:857,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:858,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:859,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:860,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:861,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:862,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:863,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:865,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:866,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:867,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:868,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:869,1
    - Dst: OUTMEM
      Src: /src/gpac/src/media_tools/avilib.c:873,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:875,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:881,1
    - Dst: avi_sampsize
      Src: /src/gpac/src/media_tools/avilib.c:887,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:889,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:890,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:892,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:896,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:897,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:898,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:910,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:911,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:912,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:913,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:914,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:915,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:918,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:920,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:921,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:927,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:928,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:929,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:930,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:931,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:933,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:936,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:939,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:943,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:961,1
    - Dst: exit
      Src: /src/gpac/src/media_tools/avilib.c:962,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:965,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:966,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:967,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:973,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:974,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:975,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:980,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:981,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:982,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 128
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 743
    functionDepth: 2
    functionLinenumber: 743
    functionLinenumberEnd: 989
    functionName: avi_update_header
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 2
    functionsReached:
    - OUTSHRT
    - GF_LOG
    - exit
    - memset
    - gf_fseek
    - OUTCHR
    - OUTLONG
    - avi_sampsize
    - OUTMEM
    - OUT4CC
    - avi_write
    - long2str
    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:1038,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:1040,1
    - Dst: avi_ixnn_entry
      Src: /src/gpac/src/media_tools/avilib.c:1051,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:1079,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1105,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1107,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1109,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1112,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1116,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1117,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1119,1
    - Dst: OUT4CC
      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:1134,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1137,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1138,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1143,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1144,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1145,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1147,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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1157,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1158,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1159,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1160,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1165,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1166,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1168,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1172,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1173,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1174,1
    - Dst: OUT4CC
      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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1183,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1184,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1185,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1186,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1187,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1196,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1197,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1198,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1199,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1200,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1201,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1202,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1203,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1205,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1206,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1207,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1208,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1209,1
    - Dst: OUTMEM
      Src: /src/gpac/src/media_tools/avilib.c:1213,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1215,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1223,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1224,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1225,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1226,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1227,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1228,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1229,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1230,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1231,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1232,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1239,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1240,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1241,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1242,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1249,1
    - Dst: avi_sampsize
      Src: /src/gpac/src/media_tools/avilib.c:1261,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1281,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1282,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1284,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1288,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1289,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1290,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1294,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1297,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: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:1307,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: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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1317,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1318,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1319,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1320,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1321,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1326,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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1333,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1335,1
    - Dst: OUTSHRT
      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:1339,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1340,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1341,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1342,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1343,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1344,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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1351,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1353,1
    - Dst: OUTSHRT
      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:1357,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1358,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1359,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1360,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1361,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1362,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: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1369,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1371,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1372,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1373,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1374,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1386,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1387,1
    - Dst: OUTSHRT
      Src: /src/gpac/src/media_tools/avilib.c:1388,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1389,1
    - Dst: OUTCHR
      Src: /src/gpac/src/media_tools/avilib.c:1390,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1391,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1392,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1393,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1394,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1395,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1412,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1413,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1414,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1415,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1419,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1423,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1424,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1425,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1426,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1427,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1428,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1433,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1439,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1443,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1444,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1446,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1448,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/avilib.c:1449,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/avilib.c:1450,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/avilib.c:1452,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/avilib.c:1452,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/avilib.c:1454,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1457,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1459,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:1460,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:1492,1
    - Dst: exit
      Src: /src/gpac/src/media_tools/avilib.c:1493,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1496,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1497,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1498,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1504,1
    - Dst: OUTLONG
      Src: /src/gpac/src/media_tools/avilib.c:1505,1
    - Dst: OUT4CC
      Src: /src/gpac/src/media_tools/avilib.c:1506,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1511,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1512,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1529,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1531,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1532,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1535,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1537,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1538,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 298
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1013
    functionDepth: 4
    functionLinenumber: 1013
    functionLinenumberEnd: 1546
    functionName: avi_close_output_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_gpac_version
    - snprintf
    - OUTMEM
    - gf_sys_is_test_mode
    - memcpy
    - avi_write
    - OUTSHRT
    - OUTCHR
    - strlen
    - avi_sampsize
    - OUT4CC
    - long2str
    - avi_add_chunk
    - GF_LOG
    - exit
    - gf_fseek
    - avi_ixnn_entry
    - OUTLONG
    - memset
    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:1580,1
    - Dst: avi_add_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1583,1
    - Dst: avi_add_odml_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1584,1
    - Dst: avi_add_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1586,1
    - Dst: avi_add_odml_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:1587,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:1595,1
    - Dst: avi_add_chunk
      Src: /src/gpac/src/media_tools/avilib.c:1597,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: 1602
      start: 1558
    functionDepth: 5
    functionLinenumber: 1558
    functionLinenumberEnd: 1602
    functionName: avi_write_data
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_add_chunk
    - sprintf
    - avi_add_index_entry
    - 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:1616,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: 1622
      start: 1604
    functionDepth: 6
    functionLinenumber: 1604
    functionLinenumberEnd: 1622
    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:1633,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1625
    functionDepth: 2
    functionLinenumber: 1625
    functionLinenumberEnd: 1637
    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:1648,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - AVI
    - data
    - bytes
    argTypes:
    - avi_t*
    - u8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1652
      start: 1640
    functionDepth: 6
    functionLinenumber: 1640
    functionLinenumberEnd: 1652
    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:1671,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:1672,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1675,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1682,1
    - Dst: long2str
      Src: /src/gpac/src/media_tools/avilib.c:1683,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1684,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1686,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:1688,1
    - Dst: avi_write
      Src: /src/gpac/src/media_tools/avilib.c:1691,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 3
    argNames:
    - AVI
    - data
    - bytes
    argTypes:
    - avi_t*
    - u8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1695
      start: 1656
    functionDepth: 2
    functionLinenumber: 1656
    functionLinenumberEnd: 1695
    functionName: AVI_append_audio
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - PAD_EVEN
    - gf_fseek
    - str2ulong
    - avi_write
    - long2str
    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: 1702
      start: 1697
    functionDepth: 0
    functionLinenumber: 1697
    functionLinenumberEnd: 1702
    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: 1709
      start: 1704
    functionDepth: 0
    functionLinenumber: 1704
    functionLinenumberEnd: 1709
    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: 1720
      start: 1712
    functionDepth: 0
    functionLinenumber: 1712
    functionLinenumberEnd: 1720
    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: 1725
      start: 1722
    functionDepth: 0
    functionLinenumber: 1722
    functionLinenumberEnd: 1725
    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: 1731
      start: 1728
    functionDepth: 0
    functionLinenumber: 1728
    functionLinenumberEnd: 1731
    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: 1736
      start: 1733
    functionDepth: 0
    functionLinenumber: 1733
    functionLinenumberEnd: 1736
    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:1756,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/avilib.c:1762,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1763,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1764,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:1770,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1771,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1773,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1775,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1779,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:1787,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1788,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1790,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:1797,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1800,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1802,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1804,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 48
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1806
      start: 1746
    functionDepth: 5
    functionLinenumber: 1746
    functionLinenumberEnd: 1806
    functionName: AVI_close
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - avi_close_output_file
    - gf_fclose
    - gf_free
    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: 1816
      start: 1809
    functionDepth: 0
    functionLinenumber: 1809
    functionLinenumberEnd: 1816
    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:1824,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1830,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/avilib.c:1836,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1840,1
    - Dst: avi_parse_input_file
      Src: /src/gpac/src/media_tools/avilib.c:1845,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - filename
    - getIndex
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1854
      start: 1818
    functionDepth: 1
    functionLinenumber: 1818
    functionLinenumberEnd: 1854
    functionName: AVI_open_input_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_fopen
    - avi_parse_input_file
    - memset
    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:1863,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:1869,1
    - Dst: avi_parse_input_file
      Src: /src/gpac/src/media_tools/avilib.c:1877,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - fd
    - getIndex
    argTypes:
    - FILE*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1887
      start: 1857
    functionDepth: 1
    functionLinenumber: 1857
    functionLinenumberEnd: 1887
    functionName: AVI_open_fd
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 0
    functionsReached:
    - memset
    - avi_parse_input_file
    - gf_malloc
    linkageType: ''
    returnType: avi_t
    signature: avi_t *AVI_open_fd(FILE *fd, int getIndex)
  - BBCount: 123
    BranchProfiles: []
    Callsites:
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1916,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1917,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1919,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1919,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1920,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1930,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:1931,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:1938,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:1939,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1941,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1943,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1943,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1945,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1947,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1950,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:1951,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1952,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:1956,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1958,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1959,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1962,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:1964,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1965,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1967,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:1969,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1975,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:1976,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1978,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:1980,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:1981,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1984,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:1988,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1991,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1992,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:1998,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2002,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2005,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2010,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2012,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2013,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2014,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2019,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2022,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2024,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2026,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2028,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2030,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2037,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2038,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2040,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2045,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2056,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2060,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2062,1
    - Dst: avi_sampsize
      Src: /src/gpac/src/media_tools/avilib.c:2062,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2066,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2068,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2070,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2080,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2087,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2089,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2091,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2093,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2097,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2102,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2106,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2107,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2108,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2110,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2113,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2114,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2116,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2118,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2120,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2121,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2126,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2130,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/avilib.c:2131,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2132,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2133,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2134,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2140,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2150,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2152,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2153,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2154,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2156,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2157,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2159,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2160,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2164,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2165,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2166,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2170,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2174,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2176,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2181,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2182,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2184,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2186,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2190,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2198,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2200,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2201,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2202,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2204,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2206,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2212,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2223,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2229,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2234,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2238,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2242,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2244,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2250,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:2261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2262,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2263,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2264,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2265,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2266,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2278,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/avilib.c:2280,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2281,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2283,1
    - Dst: str2ushort
      Src: /src/gpac/src/media_tools/avilib.c:2285,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2291,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/avilib.c:2293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2302,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2309,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2316,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2320,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2329,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2331,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2337,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: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2349,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2351,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2353,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2359,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2360,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2361,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2374,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2377,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2399,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2416,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2417,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2419,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2420,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2422,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2423,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2423,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2424,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2424,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2430,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2431,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2431,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2432,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2432,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2445,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2451,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2452,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2456,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2458,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2469,1
    - Dst: avi_add_index_entry
      Src: /src/gpac/src/media_tools/avilib.c:2470,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2473,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2473,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2509,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2511,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2512,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2516,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2517,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2521,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2525,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2532,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2533,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2534,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2540,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2541,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2542,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2550,1
    - Dst: str2ulong_len
      Src: /src/gpac/src/media_tools/avilib.c:2552,1
    - Dst: str2ulong_key
      Src: /src/gpac/src/media_tools/avilib.c:2553,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2593,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2602,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2604,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2605,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2609,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2610,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2614,1
    - Dst: str2ullong
      Src: /src/gpac/src/media_tools/avilib.c:2619,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2626,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2627,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2628,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2634,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2635,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2636,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2644,1
    - Dst: str2ulong_len
      Src: /src/gpac/src/media_tools/avilib.c:2646,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2663,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2689,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2690,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2696,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2698,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2702,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2703,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2704,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2705,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:2721,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2722,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/avilib.c:2730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2733,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2751,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2759,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2759,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/avilib.c:2769,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2775,1
    - Dst: PAD_EVEN
      Src: /src/gpac/src/media_tools/avilib.c:2775,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2778,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/avilib.c:2792,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2810,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2812,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2819,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2820,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2821,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/avilib.c:2825,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/avilib.c:2826,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/avilib.c:2827,1
    - Dst: ERR_EXIT
      Src: /src/gpac/src/media_tools/avilib.c:2828,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2843,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2844,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2845,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2846,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/avilib.c:2853,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2854,1
    - Dst: str2ulong
      Src: /src/gpac/src/media_tools/avilib.c:2855,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/avilib.c:2870,1
    CyclomaticComplexity: 214
    EdgeCount: 214
    ICount: 613
    argCount: 2
    argNames:
    - AVI
    - getIndex
    argTypes:
    - avi_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2874
      start: 1890
    functionDepth: 2
    functionLinenumber: 1890
    functionLinenumberEnd: 2874
    functionName: avi_parse_input_file
    functionSourceFile: /src/gpac/src/media_tools/avilib.c
    functionUses: 2
    functionsReached:
    - avi_add_index_entry
    - GF_SAFEALLOC
    - gf_malloc
    - gf_realloc
    - memcpy
    - PAD_EVEN
    - str2ushort
    - ERR_EXIT
    - avi_read
    - strnicmp
    - str2ulong_len
    - gf_ftell
    - avi_sampsize
    - str2ulong
    - gf_free
    - str2ulong_key
    - GF_LOG
    - MIN
    - gf_fseek
    - str2ullong
    - memset
    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: 2879
      start: 2876
    functionDepth: 0
    functionLinenumber: 2876
    functionLinenumberEnd: 2879
    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: 2883
      start: 2880
    functionDepth: 0
    functionLinenumber: 2880
    functionLinenumberEnd: 2883
    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: 2887
      start: 2884
    functionDepth: 0
    functionLinenumber: 2884
    functionLinenumberEnd: 2887
    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: 2891
      start: 2888
    functionDepth: 0
    functionLinenumber: 2888
    functionLinenumberEnd: 2891
    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: 2895
      start: 2892
    functionDepth: 0
    functionLinenumber: 2892
    functionLinenumberEnd: 2895
    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: 2901
      start: 2898
    functionDepth: 0
    functionLinenumber: 2898
    functionLinenumberEnd: 2901
    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: 2907
      start: 2904
    functionDepth: 0
    functionLinenumber: 2904
    functionLinenumberEnd: 2907
    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: 2912
      start: 2909
    functionDepth: 0
    functionLinenumber: 2909
    functionLinenumberEnd: 2912
    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: 2917
      start: 2914
    functionDepth: 0
    functionLinenumber: 2914
    functionLinenumberEnd: 2917
    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: 2923
      start: 2920
    functionDepth: 0
    functionLinenumber: 2920
    functionLinenumberEnd: 2923
    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: 2929
      start: 2926
    functionDepth: 0
    functionLinenumber: 2926
    functionLinenumberEnd: 2929
    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: 2934
      start: 2931
    functionDepth: 0
    functionLinenumber: 2931
    functionLinenumberEnd: 2934
    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: 2939
      start: 2936
    functionDepth: 0
    functionLinenumber: 2936
    functionLinenumberEnd: 2939
    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: 2955
      start: 2942
    functionDepth: 0
    functionLinenumber: 2942
    functionLinenumberEnd: 2955
    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: 2970
      start: 2957
    functionDepth: 0
    functionLinenumber: 2957
    functionLinenumberEnd: 2970
    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: 2985
      start: 2972
    functionDepth: 0
    functionLinenumber: 2972
    functionLinenumberEnd: 2985
    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:2995,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - AVI
    argTypes:
    - avi_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2998
      start: 2988
    functionDepth: 0
    functionLinenumber: 2988
    functionLinenumberEnd: 2998
    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: 3014
      start: 3000
    functionDepth: 0
    functionLinenumber: 3000
    functionLinenumberEnd: 3014
    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: 3026
      start: 3017
    functionDepth: 0
    functionLinenumber: 3017
    functionLinenumberEnd: 3026
    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:3052,1
    - Dst: avi_read
      Src: /src/gpac/src/media_tools/avilib.c:3055,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 3
    argNames:
    - AVI
    - vidbuf
    - keyframe
    argTypes:
    - avi_t*
    - u8*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3062
      start: 3029
    functionDepth: 2
    functionLinenumber: 3029
    functionLinenumberEnd: 3062
    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: 3077
      start: 3065
    functionDepth: 0
    functionLinenumber: 3065
    functionLinenumberEnd: 3077
    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: 3098
      start: 3079
    functionDepth: 0
    functionLinenumber: 3079
    functionLinenumberEnd: 3098
    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: 3135
      start: 3102
    functionDepth: 0
    functionLinenumber: 3102
    functionLinenumberEnd: 3135
    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: gf_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_SAFEALLOC
    - gf_4cc_to_str
    - gf_list_add
    - strstr
    - strchr
    - gf_malloc
    - gf_list_last
    - gf_realloc
    - memcpy
    - gf_strcpy
    - atoi
    - cryptinfo_get_crypt_type
    - strnicmp
    - gf_base64_encode
    - strcmp
    - strlen
    - gf_bin128_parse
    - sscanf
    - sprintf
    - gf_free
    - GF_LOG
    - stricmp
    - gf_strdup
    - memset
    - strncmp
    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: gf_strlcpy
      Src: /src/gpac/src/media_tools/crypt_tools.c:545,1
    - Dst: gf_strlcat
      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:
    - strlen
    - gf_list_last
    - gf_realloc
    - gf_strlcat
    - gf_strlcpy
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    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_xml_sax_del
    - GF_LOG
    - gf_xml_sax_get_error
    - gf_xml_sax_parse_file
    - GF_SAFEALLOC
    - gf_xml_sax_new
    - gf_list_new
    - gf_crypt_info_del
    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_fs_enable_reporting
    - gf_fs_print_stats
    - gf_fs_set_ui_callback
    - gf_fs_print_non_connected
    - gf_isom_has_keep_utc_times
    - gf_fs_print_unused_args
    - gf_fs_get_last_connect_error
    - gf_fs_load_destination
    - gf_dynstrcat
    - gf_sys_is_test_mode
    - gf_fs_get_last_process_error
    - gf_sys_is_quiet
    - gf_fs_load_filter
    - gf_fs_new_defaults
    - sprintf
    - gf_free
    - gf_fs_run
    - GF_LOG
    - gf_fs_del
    - gf_log_get_tool_level
    - on_decrypt_event
    - gf_fs_print_connections
    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_fs_enable_reporting
    - gf_fs_print_stats
    - gf_fs_set_ui_callback
    - gf_fs_print_non_connected
    - gf_isom_has_keep_utc_times
    - gf_fs_print_unused_args
    - gf_fs_get_last_connect_error
    - gf_url_colon_suffix
    - gf_fs_load_destination
    - gf_dynstrcat
    - gf_sys_is_test_mode
    - gf_fs_get_last_process_error
    - gf_sys_is_quiet
    - gf_fs_load_filter
    - gf_error_to_string
    - gf_fs_new_defaults
    - sprintf
    - gf_free
    - on_crypt_event
    - gf_fs_run
    - GF_LOG
    - gf_fs_del
    - gf_log_get_tool_level
    - gf_fs_print_connections
    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:
    - mul_z_poly
    - compute_discrepancy
    - ginv
    - init_gamma
    - compute_modified_omega
    - gmult
    - 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:
    - zero_poly
    - mult_polys
    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:
    - zero_poly
    - mul_z_poly
    - scale_poly
    - add_polys
    - 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:
    - fprintf
    - Modified_Berlekamp_Massey
    - ginv
    - gmult
    - Find_Roots
    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:
    - init_galois_tables
    - compute_genpoly
    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:
    - fprintf
    - ginv
    - gmult
    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:
    - zero_poly
    - copy_poly
    - mult_polys
    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: 26
    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:366,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/vobsub.c:374,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/media_tools/vobsub.c:374,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:376,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:385,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/vobsub.c:393,1
    - Dst: gf_calloc
      Src: /src/gpac/src/media_tools/vobsub.c:401,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:410,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:412,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/vobsub.c:419,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:422,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/vobsub.c:427,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/vobsub.c:427,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:429,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/vobsub.c:434,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/vobsub.c:438,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/vobsub.c:438,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/vobsub.c:446,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:448,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 124
    argCount: 3
    argNames:
    - file
    - vobsub
    - version
    argTypes:
    - FILE*
    - vobsub_file*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 254
    functionDepth: 2
    functionLinenumber: 254
    functionLinenumberEnd: 456
    functionName: vobsub_read_idx
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_free
    - strlwr
    - GF_ARRAY_LENGTH
    - gf_list_get
    - sscanf
    - stricmp
    - gf_list_new
    - MIN
    - strtrim
    - gf_calloc
    - strlen
    - gf_fgets
    - gf_list_add
    - strstr
    - vobsub_lang_name
    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:472,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:473,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/vobsub.c:477,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/vobsub.c:480,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - vobsub
    argTypes:
    - vobsub_file*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 458
    functionDepth: 1
    functionLinenumber: 458
    functionLinenumberEnd: 481
    functionName: vobsub_free
    functionSourceFile: /src/gpac/src/media_tools/vobsub.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - gf_list_enum
    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: 556
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 556
    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:577,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/vobsub.c:638,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/vobsub.c:650,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/vobsub.c:654,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 66
    argCount: 4
    argNames:
    - fsub
    - pts
    - data
    - dataSize
    argTypes:
    - FILE*
    - u64
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 667
    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_isom_avc_config_update
    - gf_isom_get_media_type
    - gf_isom_vvc_config_update
    - gf_isom_change_mpeg4_description
    - gf_isom_is_video_handler_type
    - gf_avc_get_sps_info
    - gf_4cc_to_str
    - gf_odf_vvc_cfg_del
    - gf_isom_get_visual_info
    - gf_m4v_get_config
    - gf_odf_hevc_cfg_del
    - gf_m4v_rewrite_par
    - gf_vvc_get_sps_info
    - gf_isom_get_esd
    - gf_avc_change_par
    - gf_list_get
    - gf_hevc_change_par
    - gf_isom_hevc_config_get
    - gf_isom_set_pixel_aspect_ratio
    - gf_hevc_get_sps_info
    - gf_list_enum
    - gf_odf_avc_cfg_del
    - gf_isom_hevc_config_update
    - gf_isom_get_media_subtype
    - gf_odf_desc_del
    - GF_LOG
    - gf_vvc_change_par
    - gf_isom_avc_config_get
    - gf_isom_vvc_config_get
    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_isom_get_media_subtype
    - gf_isom_avc_config_update
    - gf_hevc_change_color
    - gf_vvc_change_color
    - gf_odf_hevc_cfg_del
    - gf_isom_vvc_config_update
    - gf_odf_vvc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_isom_hevc_config_update
    - gf_isom_hevc_config_get
    - gf_avc_change_color
    - gf_isom_avc_config_get
    - gf_isom_vvc_config_get
    - gf_isom_set_visual_color_info
    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_remove_sample
    - gf_isom_get_media_duration
    - gf_isom_get_sample_info
    - gf_isom_last_error
    - gf_isom_set_last_sample_duration
    - gf_isom_get_sample_count
    - gf_isom_set_cts_packing
    - gf_isom_get_sample_flags
    - gf_isom_sample_del
    - gf_isom_has_sync_points
    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:
    - ferror
    - gf_fclose
    - gf_fopen
    - GF_LOG
    - gf_sha1_finish
    - gf_sha1_starts
    - gf_bs_from_file
    - gf_bs_peek_bits
    - gf_bs_read_data
    - gf_bs_del
    - gf_fsize
    - gf_fread
    - gf_isom_probe_file
    - gf_sha1_update
    - 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_isom_last_error
    - gf_isom_get_media_type
    - gf_isom_change_mpeg4_description
    - gf_isom_add_sample
    - gf_isom_add_track_to_root_od
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_isom_set_visual_info
    - gf_bs_del
    - gf_isom_set_track_id
    - gf_isom_sample_new
    - gf_list_add
    - gf_isom_new_mpeg4_description
    - gf_isom_remove_track
    - gf_isom_get_visual_info
    - gf_odf_codec_del
    - gf_m4v_get_config
    - gf_isom_set_pl_indication
    - gf_isom_get_esd
    - gf_isom_get_track_layout_info
    - gf_isom_set_brand_info
    - gf_m4a_get_config
    - gf_odf_codec_add_com
    - gf_isom_get_mode
    - gf_isom_get_root_od
    - gf_odf_codec_get_au
    - gf_odf_codec_new
    - gf_isom_new_track
    - gf_isom_remove_track_from_root_od
    - gf_isom_set_track_interleaving_group
    - gf_odf_desc_add_desc
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_isom_set_track_enabled
    - gf_bs_align
    - GF_LOG
    - gf_isom_get_track_by_id
    - gf_isom_modify_alternate_brand
    - gf_odf_desc_esd_new
    - gf_odf_codec_encode
    - gf_isom_set_root_od_id
    - gf_odf_desc_new
    - gf_isom_sample_del
    - gf_odf_com_new
    - gf_isom_get_timescale
    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_get_media_subtype
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - gf_odf_desc_del
    - gf_isom_set_media_type
    - gf_isom_get_media_type
    - gf_isom_set_brand_info
    - GF_LOG
    - gf_isom_remove_root_od
    - gf_isom_get_sample_count
    - gf_isom_get_ismacryp_info
    - gf_isom_get_mode
    - gf_isom_get_esd
    - gf_isom_modify_alternate_brand
    - gf_isom_remove_track_from_root_od
    - gf_isom_remove_track
    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_get_track_id
    - gf_isom_set_brand_info
    - gf_isom_get_track_count
    - gf_isom_add_uuid
    - gf_isom_get_sample_info
    - gf_isom_get_media_type
    - GF_LOG
    - gf_isom_remove_uuid
    - gf_isom_get_track_duration
    - gf_isom_modify_alternate_brand
    - gf_isom_append_edit
    - gf_isom_sample_del
    - gf_isom_get_edits_count
    - gf_isom_remove_track
    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_list_count
    - gf_isom_av1_config_get
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_av1_init_state
    - gf_bs_del
    - gf_hevc_read_sps
    - gf_odf_av1_cfg_del
    - gf_odf_hevc_cfg_del
    - gf_list_get
    - gf_isom_hevc_config_get
    - gf_list_enum
    - gf_av1_parse_obu
    - gf_odf_avc_cfg_del
    - gf_av1_reset_state
    - gf_avc_read_sps
    - gf_isom_get_media_subtype
    - gf_free
    - gf_isom_avc_config_get
    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: 49
    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:1271,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1279,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1280,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1282,1
    - Dst: gf_isom_set_interleave_time
      Src: /src/gpac/src/media_tools/isom_tools.c:1286,1
    - Dst: gf_isom_hint_max_chunk_size
      Src: /src/gpac/src/media_tools/isom_tools.c:1287,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 178
    argCount: 1
    argNames:
    - mp4
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1090
    functionDepth: 11
    functionLinenumber: 1090
    functionLinenumberEnd: 1290
    functionName: gf_media_check_qt_prores
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_isom_set_meta_qt
    - gf_isom_get_media_type
    - gf_bs_new
    - gf_isom_set_audio_info
    - gf_bs_del
    - gf_isom_get_sample
    - gf_isom_reset_alt_brands
    - gf_isom_get_sample_duration
    - gf_isom_get_color_info
    - gf_isom_get_visual_info
    - gf_isom_get_media_timescale
    - gf_isom_update_aperture_info
    - gf_isom_remove_root_od
    - gf_isom_get_brand_info
    - gf_isom_set_brand_info
    - gf_isom_update_video_sample_entry_fields
    - gf_isom_set_pixel_aspect_ratio
    - gf_isom_set_timescale
    - gf_isom_get_mode
    - gf_isom_get_pixel_aspect_ratio
    - gf_isom_set_media_timescale
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_isom_get_constant_sample_duration
    - gf_isom_set_visual_color_info
    - gf_isom_set_interleave_time
    - gf_isom_get_media_subtype
    - gf_isom_update_bitrate
    - gf_isom_get_track_count
    - gf_isom_hint_max_chunk_size
    - gf_media_get_color_info
    - GF_LOG
    - gf_isom_hint_max_chunk_duration
    - GF_4CC
    - gf_isom_sample_del
    - gf_isom_get_audio_info
    - gf_4cc_to_str
    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:1301,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:1331,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:1335,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1338,1
    - Dst: gf_isom_get_dims_description
      Src: /src/gpac/src/media_tools/isom_tools.c:1348,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1350,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1352,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1353,1
    - Dst: gf_bs_new
      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:1360,1
    - Dst: gf_bs_write_u8
      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_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1364,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1365,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1368,1
    - Dst: strlen
      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:1370,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1373,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_tools.c:1373,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1375,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:1377,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1378,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:1383,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 77
    argCount: 3
    argNames:
    - mp4
    - track
    - stsd_idx
    argTypes:
    - GF_ISOFile*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1294
    functionDepth: 7
    functionLinenumber: 1294
    functionLinenumberEnd: 1386
    functionName: gf_media_map_esd
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_odf_desc_del
    - gf_isom_get_track_id
    - gf_isom_get_media_timescale
    - gf_bs_write_int
    - gf_isom_get_dims_description
    - gf_bs_get_content
    - gf_isom_get_esd
    - gf_odf_desc_esd_new
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_data
    - strlen
    - 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:1402,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1405,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:1409,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1411,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1413,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1419,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1425,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1429,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1431,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1432,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1445,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1451,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1455,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1457,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1458,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1465,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1471,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1477,1
    - Dst: gf_odf_av1_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1481,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1483,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1484,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1491,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:1495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1497,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1505,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1510,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:1514,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1516,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1524,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:1524,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1535,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1541,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1545,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1547,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1548,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1555,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:1558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1560,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1566,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1568,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1569,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:1570,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1571,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:1582,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1588,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/media_tools/isom_tools.c:1589,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1591,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1592,1
    - Dst: gf_isom_box_array_write
      Src: /src/gpac/src/media_tools/isom_tools.c:1593,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:1594,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1595,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1598,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1602,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1606,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1607,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 190
    argCount: 2
    argNames:
    - mp4
    - item_id
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1388
    functionDepth: 4
    functionLinenumber: 1388
    functionLinenumberEnd: 1609
    functionName: gf_media_map_item_esd
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_get_content
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_odf_av1_cfg_write
    - gf_isom_get_meta_image_props
    - gf_isom_box_write
    - gf_isom_get_meta_item_info
    - gf_isom_get_meta_item_by_id
    - gf_odf_hevc_cfg_write
    - strcmp
    - gf_list_new
    - gf_error_to_string
    - gf_odf_desc_del
    - gf_free
    - gf_isom_box_array_write
    - gf_odf_avc_cfg_write
    - GF_LOG
    - gf_list_del
    - GF_4CC
    - gf_odf_desc_esd_new
    - gf_odf_vvc_cfg_write
    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:1628,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1629,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1630,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1631,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:1637,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1643,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:1645,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1647,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1649,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1652,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1661,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1662,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:1663,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1664,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1665,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 46
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1667
      start: 1614
    functionDepth: 3
    functionLinenumber: 1614
    functionLinenumberEnd: 1667
    functionName: gf_get_DQId
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_nalu_extract_mode
    - gf_malloc
    - gf_free
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_isom_set_nalu_extract_mode
    - gf_isom_svc_config_get
    - gf_isom_get_sample
    - gf_odf_avc_cfg_del
    - gf_isom_sample_del
    - gf_bs_del
    - gf_realloc
    - gf_bs_available
    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:1678,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1684,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1693,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - file
    - track
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1695
      start: 1670
    functionDepth: 2
    functionLinenumber: 1670
    functionLinenumberEnd: 1695
    functionName: gf_isom_has_svc_explicit
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_svc_config_get
    - gf_odf_avc_cfg_del
    - gf_list_get
    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:1703,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1706,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - file
    argTypes:
    - GF_ISOFile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1712
      start: 1698
    functionDepth: 2
    functionLinenumber: 1698
    functionLinenumberEnd: 1712
    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: 71
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1749,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:1750,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1751,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1757,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1763,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/media_tools/isom_tools.c:1764,1
    - Dst: gf_isom_has_svc_explicit
      Src: /src/gpac/src/media_tools/isom_tools.c:1764,1
    - Dst: gf_isom_has_svc_explicit
      Src: /src/gpac/src/media_tools/isom_tools.c:1768,1
    - Dst: gf_media_merge_svc
      Src: /src/gpac/src/media_tools/isom_tools.c:1781,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:1791,1
    - Dst: gf_isom_get_track_id_max
      Src: /src/gpac/src/media_tools/isom_tools.c:1793,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:1796,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1805,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1810,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:1812,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:1825,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1827,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1830,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:1831,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1839,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1842,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:1843,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1846,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:1849,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:1852,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1855,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1857,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:1860,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/isom_tools.c:1862,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:1863,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1865,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:1869,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/isom_tools.c:1872,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:1875,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1910,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:1913,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/isom_tools.c:1918,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:1921,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/isom_tools.c:1924,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1925,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/media_tools/isom_tools.c:1927,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:1930,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:1931,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1933,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1936,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:1938,1
    - Dst: gf_isom_svc_config_new
      Src: /src/gpac/src/media_tools/isom_tools.c:1940,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1948,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1957,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1958,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1961,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:1962,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:1963,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1969,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1970,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1973,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:1974,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:1975,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:1986,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:1995,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1996,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:1999,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2000,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2001,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2007,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2008,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2011,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2012,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2013,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2018,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2021,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2025,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2026,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2029,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2035,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2037,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2045,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2047,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2053,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2056,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2057,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2063,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2065,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2067,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2069,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2073,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2076,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2077,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2083,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2085,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2087,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2089,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2093,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:2095,1
    - Dst: gf_bs_enable_emulation_byte_removal
      Src: /src/gpac/src/media_tools/isom_tools.c:2097,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2098,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2100,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:2104,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/isom_tools.c:2106,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2109,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2180,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2181,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:2186,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2193,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:2197,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2199,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2201,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2204,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2207,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2210,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2212,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2214,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2225,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2226,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:2228,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2229,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2230,1
    - Dst: gf_isom_has_svc_explicit
      Src: /src/gpac/src/media_tools/isom_tools.c:2238,1
    - Dst: gf_isom_svc_config_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2240,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2248,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:2249,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2257,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2258,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2259,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2266,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:2267,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2274,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2275,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2276,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2280,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:2288,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2292,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2293,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2294,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2295,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2296,1
    - Dst: gf_bs_del
      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: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_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2306,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2307,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2308,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2309,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2310,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2311,1
    CyclomaticComplexity: 131
    EdgeCount: 131
    ICount: 492
    argCount: 3
    argNames:
    - file
    - track
    - splitAll
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2317
      start: 1716
    functionDepth: 10
    functionLinenumber: 1716
    functionLinenumberEnd: 2317
    functionName: gf_media_split_svc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_isom_last_error
    - gf_isom_get_media_duration
    - gf_isom_add_sample
    - gf_bs_write_int
    - gf_isom_get_edit
    - gf_isom_get_sample_count
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_isom_set_nalu_extract_mode
    - gf_isom_get_reference
    - gf_isom_get_sample
    - gf_bs_del
    - gf_isom_set_visual_info
    - gf_bs_seek
    - gf_isom_svc_config_update
    - gf_list_add
    - gf_isom_get_edits_count
    - gf_bs_write_u8
    - gf_odf_avc_cfg_new
    - gf_isom_sample_new
    - gf_isom_remove_track
    - gf_avc_read_pps
    - gf_isom_get_media_timescale
    - gf_malloc
    - gf_isom_svc_config_del
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_media_merge_svc
    - gf_bs_enable_emulation_byte_removal
    - gf_isom_get_nalu_extract_mode
    - gf_isom_set_edit
    - gf_isom_get_avc_svc_type
    - gf_bs_read_int
    - gf_isom_svc_config_get
    - gf_bs_write_data
    - gf_odf_avc_cfg_del
    - gf_isom_has_svc_explicit
    - gf_isom_set_track_reference
    - gf_isom_new_track
    - gf_avc_read_sps
    - gf_isom_get_track_id_max
    - gf_isom_svc_config_new
    - gf_isom_update_sample
    - gf_isom_get_track_id
    - gf_isom_set_track_enabled
    - gf_free
    - gf_avc_parse_nalu
    - gf_isom_sample_del
    - gf_bs_write_u32
    - gf_isom_has_track_reference
    - memset
    - gf_isom_get_timescale
    - gf_bs_available
    - gf_list_rem
    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:2351,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2354,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2357,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:2358,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2365,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2366,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2367,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2368,1
    - Dst: gf_get_DQId
      Src: /src/gpac/src/media_tools/isom_tools.c:2372,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2378,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/isom_tools.c:2397,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2399,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:2405,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:2406,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2411,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2422,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2424,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2425,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2428,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2429,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2430,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2432,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2434,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2435,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2438,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2439,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2440,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2444,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2447,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2448,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2452,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2453,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2457,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2460,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2463,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2465,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2466,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2468,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2478,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2482,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2484,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2487,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2497,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2499,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2500,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2506,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:2508,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/media_tools/isom_tools.c:2510,1
    - Dst: gf_bs_write_u32
      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:2515,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:2517,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2525,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:2527,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2532,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2536,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2538,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:2539,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2541,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2543,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2546,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2552,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2553,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2555,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2557,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:2563,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2570,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:2574,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2575,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2579,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2581,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2583,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2590,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/media_tools/isom_tools.c:2591,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/isom_tools.c:2593,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2594,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/media_tools/isom_tools.c:2595,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:2601,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:2603,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2610,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2611,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2612,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2613,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2614,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2615,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2618,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2619,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2620,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2621,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2622,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2623,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2624,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 259
    argCount: 3
    argNames:
    - file
    - track
    - mergeAll
    argTypes:
    - GF_ISOFile*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2626
      start: 2320
    functionDepth: 10
    functionLinenumber: 2320
    functionLinenumberEnd: 2626
    functionName: gf_media_merge_svc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_isom_last_error
    - gf_isom_get_media_duration
    - gf_bs_write_int
    - gf_isom_get_edit
    - gf_isom_get_sample_count
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_read_data
    - gf_isom_set_visual_info
    - gf_isom_get_reference
    - gf_isom_set_nalu_extract_mode
    - gf_isom_get_sample
    - gf_bs_del
    - gf_isom_sample_new
    - gf_isom_svc_config_update
    - gf_list_add
    - gf_isom_get_edits_count
    - gf_bs_write_u8
    - gf_odf_avc_cfg_new
    - gf_isom_remove_track
    - gf_isom_get_visual_info
    - gf_malloc
    - gf_isom_get_media_timescale
    - gf_get_DQId
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_isom_set_edit
    - gf_isom_get_avc_svc_type
    - gf_bs_read_int
    - gf_isom_svc_config_get
    - gf_bs_write_data
    - gf_odf_avc_cfg_del
    - gf_isom_update_sample
    - gf_isom_get_track_id
    - gf_isom_set_track_enabled
    - gf_isom_get_track_count
    - gf_free
    - gf_isom_sample_del
    - gf_isom_has_track_reference
    - gf_bs_write_u32
    - memset
    - gf_isom_get_timescale
    - gf_bs_available
    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:2634,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2636,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:2639,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2641,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/isom_tools.c:2644,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2646,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - hevc_cfg
    - type
    argTypes:
    - GF_HEVCConfig*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2648
      start: 2631
    functionDepth: 1
    functionLinenumber: 2631
    functionLinenumberEnd: 2648
    functionName: alloc_hevc_param_array
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_new
    - gf_list_insert
    - 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:2683,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2684,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2690,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2691,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2697,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2700,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2701,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2703,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2709,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2712,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2713,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2723,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2724,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2726,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2732,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2735,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2736,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2743,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2749,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2751,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2752,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:2753,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2754,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2755,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2756,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2757,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2758,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/media_tools/isom_tools.c:2764,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2770,1
    - Dst: gf_bs_read_data
      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:2774,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2775,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2776,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2777,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:2778,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:2779,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2782,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2783,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:2787,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:2788,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2789,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2790,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2797,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2798,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2799,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2800,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: 2802
      start: 2671
    functionDepth: 7
    functionLinenumber: 2671
    functionLinenumberEnd: 2802
    functionName: gf_media_filter_hevc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_isom_get_sample_count
    - gf_isom_lhvc_config_get
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_isom_set_nalu_extract_mode
    - gf_isom_get_sample
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_list_get
    - gf_realloc
    - gf_isom_hevc_config_get
    - gf_isom_get_nalu_extract_mode
    - gf_bs_read_int
    - gf_bs_write_data
    - gf_isom_update_sample
    - gf_free
    - gf_isom_sample_del
    - gf_bs_available
    - 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:2817,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2820,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2821,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2823,1
    - Dst: gf_free
      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:2829,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2830,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2831,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2835,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:2839,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2840,1
    - Dst: gf_isom_get_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2845,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:2846,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2849,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:2852,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2866,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2870,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2877,1
    - Dst: gf_hevc_get_sps_info_with_state
      Src: /src/gpac/src/media_tools/isom_tools.c:2883,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:2889,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:2891,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/isom_tools.c:2896,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:2907,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2909,1
    - Dst: alloc_hevc_param_array
      Src: /src/gpac/src/media_tools/isom_tools.c:2916,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2917,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/isom_tools.c:2918,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/media_tools/isom_tools.c:2930,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2938,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2942,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2944,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:2946,1
    - Dst: alloc_hevc_param_array
      Src: /src/gpac/src/media_tools/isom_tools.c:2954,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:2957,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2959,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:2961,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:2964,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/isom_tools.c:2967,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2975,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:2977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:2980,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/media_tools/isom_tools.c:2985,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:2988,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:2990,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3000,1
    - Dst: gf_isom_get_sample_rap_roll_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3001,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3003,1
    - Dst: gf_bs_available
      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:3006,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:3007,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3008,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3009,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3010,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3011,1
    - Dst: gf_bs_new
      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:3040,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3041,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3042,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3043,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3044,1
    - Dst: gf_hevc_get_sps_info_with_state
      Src: /src/gpac/src/media_tools/isom_tools.c:3065,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:3071,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:3073,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/isom_tools.c:3079,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3082,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3083,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3085,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3094,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3108,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/media_tools/isom_tools.c:3109,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3116,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:3118,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:3124,1
    - Dst: gf_isom_lhvc_force_inband_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3128,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:3130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3134,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3138,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3141,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3144,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3145,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3147,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3153,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3154,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3160,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3163,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3167,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3174,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3175,1
    - Dst: gf_bs_write_int
      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:3178,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3179,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3181,1
    - Dst: gf_isom_get_track_id
      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_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3184,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3186,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3187,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3200,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3201,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3205,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3207,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3210,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3215,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3218,1
    - Dst: memset
      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:3231,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3235,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3245,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3251,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3259,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3266,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3270,1
    - Dst: gf_isom_set_sample_rap_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3272,1
    - Dst: gf_isom_set_sample_roll_group
      Src: /src/gpac/src/media_tools/isom_tools.c:3275,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3280,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3285,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3302,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3304,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:3310,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3316,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3317,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:3319,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3323,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3327,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3330,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3331,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3332,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3333,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3335,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_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:3343,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/media_tools/isom_tools.c:3344,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3346,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3347,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3348,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3349,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3351,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: 3357
      start: 2804
    functionDepth: 10
    functionLinenumber: 2804
    functionLinenumberEnd: 3357
    functionName: gf_media_split_lhvc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_isom_add_sample
    - alloc_hevc_param_array
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_isom_get_sample_count
    - gf_assert
    - gf_isom_lhvc_config_get
    - gf_bs_new
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_isom_set_nalu_extract_mode
    - gf_bs_del
    - gf_isom_remove_sample_group
    - gf_isom_get_sample
    - gf_isom_clone_track
    - gf_isom_set_visual_info
    - gf_list_add
    - gf_bs_write_u8
    - gf_isom_append_sample_data
    - gf_isom_remove_sample
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_hevc_get_sps_info_with_state
    - gf_isom_set_sample_rap_group
    - gf_isom_set_sample_roll_group
    - gf_isom_get_sample_rap_roll_info
    - gf_odf_hevc_cfg_new
    - gf_hevc_read_vps
    - gf_list_get
    - gf_isom_hevc_config_get
    - memcpy
    - gf_isom_lhvc_config_update
    - gf_realloc
    - gf_hevc_read_pps
    - gf_isom_get_nalu_extract_mode
    - gf_isom_add_sample_group_info
    - gf_isom_lhvc_force_inband_config
    - gf_bs_read_int
    - gf_bs_write_data
    - gf_isom_set_track_reference
    - gf_isom_update_sample
    - gf_isom_get_track_id
    - gf_free
    - GF_LOG
    - gf_isom_modify_alternate_brand
    - gf_isom_set_cts_packing
    - gf_isom_sample_del
    - gf_isom_has_track_reference
    - memset
    - gf_bs_available
    - gf_list_rem
    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:3367,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3378,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3386,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3388,1
    - Dst: gf_isom_avc_config_update
      Src: /src/gpac/src/media_tools/isom_tools.c:3392,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3394,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: 3396
      start: 3360
    functionDepth: 10
    functionLinenumber: 3360
    functionLinenumberEnd: 3396
    functionName: gf_media_change_pl
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_list_count
    - gf_isom_avc_config_update
    - gf_odf_avc_cfg_del
    - gf_list_get
    - gf_isom_avc_config_get
    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: 3463
      start: 3401
    functionDepth: 0
    functionLinenumber: 3401
    functionLinenumberEnd: 3463
    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:3483,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3485,1
    - Dst: gf_bs_write_u16
      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_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3488,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3489,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3490,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3491,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3492,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3494,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3495,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3498,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3499,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3500,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3502,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: 3503
      start: 3477
    functionDepth: 6
    functionLinenumber: 3477
    functionLinenumberEnd: 3503
    functionName: hevc_add_trif
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_isom_add_sample_group_info
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - 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:3520,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:3521,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3537,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:3540,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3543,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3545,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3546,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:3547,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:3551,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:3554,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:3557,1
    - Dst: gf_isom_hevc_set_tile_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3562,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3563,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3568,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:3580,1
    - Dst: gf_hevc_read_pps
      Src: /src/gpac/src/media_tools/isom_tools.c:3584,1
    - Dst: gf_hevc_read_sps
      Src: /src/gpac/src/media_tools/isom_tools.c:3587,1
    - Dst: gf_hevc_read_vps
      Src: /src/gpac/src/media_tools/isom_tools.c:3590,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3596,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3600,1
    - Dst: hevc_add_trif
      Src: /src/gpac/src/media_tools/isom_tools.c:3608,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3608,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3609,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3610,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/isom_tools.c:3615,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3617,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:3620,1
    - Dst: gf_isom_clone_track
      Src: /src/gpac/src/media_tools/isom_tools.c:3625,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3627,1
    - Dst: gf_isom_hevc_set_tile_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3628,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3631,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3631,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3633,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/isom_tools.c:3638,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3643,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/isom_tools.c:3645,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3652,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3658,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:3664,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3666,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3667,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:3668,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3669,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/media_tools/isom_tools.c:3682,1
    - Dst: hevc_get_tile_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3705,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3707,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3725,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3729,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3730,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3734,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3736,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/media_tools/isom_tools.c:3737,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/isom_tools.c:3744,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3748,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/media_tools/isom_tools.c:3752,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/isom_tools.c:3753,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3764,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3765,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3766,1
    - Dst: gf_isom_update_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3768,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3771,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3776,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3778,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/isom_tools.c:3784,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3788,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3790,1
    - Dst: gf_isom_copy_sample_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3793,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/isom_tools.c:3800,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3801,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3806,1
    - Dst: gf_isom_add_sample_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3810,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3813,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3817,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/isom_tools.c:3828,1
    - Dst: gf_isom_remove_track
      Src: /src/gpac/src/media_tools/isom_tools.c:3830,1
    - Dst: hevc_add_trif
      Src: /src/gpac/src/media_tools/isom_tools.c:3834,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3835,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3837,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/media_tools/isom_tools.c:3838,1
    - Dst: hevc_add_trif
      Src: /src/gpac/src/media_tools/isom_tools.c:3840,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3847,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:3848,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3850,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:3850,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 288
    argCount: 2
    argNames:
    - file
    - signal_mode
    argTypes:
    - GF_ISOFile*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3854
      start: 3505
    functionDepth: 10
    functionLinenumber: 3505
    functionLinenumberEnd: 3854
    functionName: gf_media_split_hevc_tiles
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_isom_hevc_set_tile_config
    - gf_isom_last_error
    - gf_isom_add_sample
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_isom_get_sample_count
    - gf_isom_add_sample_info
    - hevc_add_trif
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_isom_set_visual_info
    - gf_isom_get_sample
    - gf_isom_set_track_layout_info
    - gf_isom_clone_track
    - gf_hevc_read_sps
    - gf_bs_write_u8
    - gf_isom_remove_track
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_isom_copy_sample_info
    - gf_isom_get_track_layout_info
    - gf_hevc_read_vps
    - gf_hevc_parse_nalu
    - gf_list_get
    - gf_isom_hevc_config_get
    - gf_hevc_read_pps
    - gf_isom_add_sample_group_info
    - gf_bs_write_data
    - gf_isom_set_track_reference
    - hevc_get_tile_id
    - gf_isom_update_sample
    - gf_error_to_string
    - gf_isom_get_media_subtype
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - gf_free
    - GF_LOG
    - gf_isom_get_track_by_id
    - gf_bs_write_u16
    - gf_isom_sample_del
    - gf_isom_has_track_reference
    - memset
    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:3884,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/src/media_tools/isom_tools.c:3886,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:3887,1
    - Dst: gf_fs_get_filter_stats
      Src: /src/gpac/src/media_tools/isom_tools.c:3893,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3901,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3903,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 2
    argNames:
    - _udta
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3906
      start: 3872
    functionDepth: 1
    functionLinenumber: 3872
    functionLinenumberEnd: 3906
    functionName: on_frag_event
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_fs_get_filters_count
    - GF_LOG
    - strcmp
    - gf_fs_get_filter_stats
    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:3915,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:3918,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3923,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/isom_tools.c:3924,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3925,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/isom_tools.c:3927,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/media_tools/isom_tools.c:3928,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3929,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3931,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/isom_tools.c:3933,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/media_tools/isom_tools.c:3935,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3936,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3938,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/media_tools/isom_tools.c:3940,1
    - Dst: gf_sys_is_quiet
      Src: /src/gpac/src/media_tools/isom_tools.c:3942,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/src/media_tools/isom_tools.c:3947,1
    - Dst: gf_fs_set_ui_callback
      Src: /src/gpac/src/media_tools/isom_tools.c:3948,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/isom_tools.c:3952,1
    - Dst: on_frag_event
      Src: /src/gpac/src/media_tools/isom_tools.c:3953,1
    - Dst: gf_fs_run
      Src: /src/gpac/src/media_tools/isom_tools.c:3956,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/media_tools/isom_tools.c:3958,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/media_tools/isom_tools.c:3959,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:3960,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: 3962
      start: 3908
    functionDepth: 2
    functionLinenumber: 3908
    functionLinenumberEnd: 3962
    functionName: gf_media_fragment_file
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_fs_new_defaults
    - sprintf
    - gf_strcpy
    - gf_fs_enable_reporting
    - gf_fs_get_last_process_error
    - gf_fs_run
    - gf_fs_del
    - GF_LOG
    - gf_strcat
    - gf_fs_set_ui_callback
    - gf_fs_get_last_connect_error
    - gf_sys_is_cov_mode
    - gf_log_get_tool_level
    - gf_fs_load_destination
    - gf_sys_is_quiet
    - gf_fs_load_filter
    - gf_sys_is_test_mode
    - on_frag_event
    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:3972,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/isom_tools.c:3984,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3993,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/media_tools/isom_tools.c:3993,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:3997,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4005,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: 4009
      start: 3967
    functionDepth: 4
    functionLinenumber: 3967
    functionLinenumberEnd: 4009
    functionName: rfc_6381_get_codec_aac
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_m4a_get_config
    - snprintf
    - gf_codecid_oti
    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:4017,1
    - Dst: gf_odf_ac4_cfg_parse_bs
      Src: /src/gpac/src/media_tools/isom_tools.c:4020,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4021,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4025,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4027,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/media_tools/isom_tools.c:4032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4034,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:4034,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: 4037
      start: 4011
    functionDepth: 6
    functionLinenumber: 4011
    functionLinenumberEnd: 4037
    functionName: dolby_get_codec_ac4
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_odf_ac4_cfg_clean_list
    - GF_LOG
    - gf_bs_new
    - gf_bs_del
    - snprintf
    - gf_list_get
    - gf_odf_ac4_cfg_parse_bs
    - 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:4044,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4045,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4049,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4050,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: 4052
      start: 4039
    functionDepth: 5
    functionLinenumber: 4039
    functionLinenumberEnd: 4052
    functionName: rfc_6381_get_codec_m4v
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_m4v_get_config
    - 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:4056,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4057,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4057,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - avcc
    argTypes:
    - char*
    - u32
    - GF_AVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4059
      start: 4054
    functionDepth: 1
    functionLinenumber: 4054
    functionLinenumberEnd: 4059
    functionName: rfc_6381_get_codec_avc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - snprintf
    - gf_4cc_to_str
    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:4065,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4067,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4067,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4068,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4069,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4070,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4072,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4073,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4084,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4085,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4088,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4089,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4090,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4091,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4098,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4099,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4102,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4103,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4106,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4107,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4110,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4111,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4114,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4115,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4117,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4118,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 57
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - hvcc
    argTypes:
    - char*
    - u32
    - GF_HEVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4124
      start: 4061
    functionDepth: 1
    functionLinenumber: 4061
    functionLinenumberEnd: 4124
    functionName: rfc_6381_get_codec_hevc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_assert
    - snprintf
    - gf_strlcat
    - gf_4cc_to_str
    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:4132,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:4134,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4136,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:4139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4141,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4142,1
    - Dst: av1_is_obu_header
      Src: /src/gpac/src/media_tools/isom_tools.c:4143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4144,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4144,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/media_tools/isom_tools.c:4146,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4147,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4154,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4154,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4159,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4171,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4175,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4176,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: 4181
      start: 4126
    functionDepth: 5
    functionLinenumber: 4126
    functionLinenumberEnd: 4181
    functionName: rfc_6381_get_codec_av1
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_assert
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_av1_init_state
    - gf_bs_del
    - snprintf
    - gf_av1_reset_state
    - gf_list_get
    - aom_av1_parse_temporal_unit_from_section5
    - gf_strlcat
    - av1_is_obu_header
    - gf_4cc_to_str
    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:4185,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4186,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4186,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: 4196
      start: 4183
    functionDepth: 1
    functionLinenumber: 4183
    functionLinenumberEnd: 4196
    functionName: rfc_6381_get_codec_vpx
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - snprintf
    - gf_4cc_to_str
    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:4205,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4205,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: 4210
      start: 4198
    functionDepth: 1
    functionLinenumber: 4198
    functionLinenumberEnd: 4210
    functionName: rfc_6381_get_codec_avs3v
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - snprintf
    - gf_4cc_to_str
    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:4214,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - dovi
    argTypes:
    - char*
    - u32
    - GF_DOVIDecoderConfigurationRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4216
      start: 4212
    functionDepth: 1
    functionLinenumber: 4212
    functionLinenumberEnd: 4216
    functionName: rfc_6381_get_codec_dolby_vision
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - snprintf
    - gf_4cc_to_str
    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:4222,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4225,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4225,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4226,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4226,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4228,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4228,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4232,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4233,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4234,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4236,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/media_tools/isom_tools.c:4238,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/isom_tools.c:4239,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4240,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4245,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/media_tools/isom_tools.c:4248,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_tools.c:4249,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4250,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:4252,1
    - Dst: gf_bs_bits_available
      Src: /src/gpac/src/media_tools/isom_tools.c:4252,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/media_tools/isom_tools.c:4255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4269,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4270,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4274,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - vvcc
    argTypes:
    - char*
    - u32
    - GF_VVCConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4277
      start: 4220
    functionDepth: 1
    functionLinenumber: 4220
    functionLinenumberEnd: 4277
    functionName: rfc_6381_get_codec_vvc
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_align
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_available
    - GF_4CC
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - gf_bs_read_int
    - snprintf
    - strlen
    - gf_strlcat
    - gf_bs_bits_available
    - gf_4cc_to_str
    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:4285,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4287,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4287,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: 4289
      start: 4279
    functionDepth: 1
    functionLinenumber: 4279
    functionLinenumberEnd: 4289
    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:4295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:4297,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4299,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4300,1
    - Dst: gf_iamf_parse_obu
      Src: /src/gpac/src/media_tools/isom_tools.c:4304,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4305,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4307,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4314,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4317,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4320,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4327,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4330,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 2
    argNames:
    - szCodec
    - cfg
    argTypes:
    - char*
    - GF_IAConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4335
      start: 4291
    functionDepth: 6
    functionLinenumber: 4291
    functionLinenumberEnd: 4335
    functionName: rfc_6381_get_codec_iamf
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_iamf_init_state
    - GF_LOG
    - GF_4CC
    - gf_bs_new
    - gf_bs_del
    - snprintf
    - gf_list_get
    - gf_iamf_parse_obu
    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:4361,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4362,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4362,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/isom_tools.c:4367,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
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4373,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4373,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: 4375
      start: 4351
    functionDepth: 1
    functionLinenumber: 4351
    functionLinenumberEnd: 4375
    functionName: rfc_6381_get_codec_stpp
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - strstr
    - snprintf
    - gf_4cc_to_str
    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:4380,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4382,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4384,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4388,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4388,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4389,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4389,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - szCodec
    - subtype
    - codec_id
    argTypes:
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4392
      start: 4377
    functionDepth: 1
    functionLinenumber: 4377
    functionLinenumberEnd: 4392
    functionName: rfc6381_codec_name_default
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 0
    functionsReached:
    - gf_codecid_type
    - snprintf
    - GF_LOG
    - 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:4403,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/src/media_tools/isom_tools.c:4407,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4408,1
    - Dst: gf_isom_is_omadrm_media
      Src: /src/gpac/src/media_tools/isom_tools.c:4409,1
    - Dst: gf_isom_get_omadrm_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4410,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/media_tools/isom_tools.c:4411,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4414,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4414,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/media_tools/isom_tools.c:4414,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/media_tools/isom_tools.c:4415,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4418,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/media_tools/isom_tools.c:4425,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/media_tools/isom_tools.c:4427,1
    - Dst: gf_isom_get_esd
      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:4437,1
    - Dst: rfc_6381_get_codec_aac
      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:4444,1
    - Dst: rfc_6381_get_codec_m4v
      Src: /src/gpac/src/media_tools/isom_tools.c:4446,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/isom_tools.c:4450,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4454,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4457,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4458,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4465,1
    - Dst: rfc_6381_get_codec_avc
      Src: /src/gpac/src/media_tools/isom_tools.c:4473,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4477,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4482,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4483,1
    - Dst: rfc_6381_get_codec_avc
      Src: /src/gpac/src/media_tools/isom_tools.c:4485,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4489,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4504,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4506,1
    - Dst: gf_isom_get_reference
      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_isom_hevc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4512,1
    - Dst: rfc_6381_get_codec_hevc
      Src: /src/gpac/src/media_tools/isom_tools.c:4515,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4519,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4524,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:4528,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4529,1
    - Dst: rfc_6381_get_codec_av1
      Src: /src/gpac/src/media_tools/isom_tools.c:4532,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4536,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4536,1
    - Dst: gf_isom_avs3v_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4542,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:4546,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4547,1
    - Dst: rfc_6381_get_codec_avs3v
      Src: /src/gpac/src/media_tools/isom_tools.c:4550,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4554,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4554,1
    - Dst: gf_isom_vp_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4561,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/isom_tools.c:4565,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/media_tools/isom_tools.c:4566,1
    - Dst: rfc_6381_get_codec_vpx
      Src: /src/gpac/src/media_tools/isom_tools.c:4569,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4570,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4573,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4573,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4585,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4585,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/media_tools/isom_tools.c:4589,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4590,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4597,1
    - Dst: rfc_6381_get_codec_vvc
      Src: /src/gpac/src/media_tools/isom_tools.c:4601,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4602,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4605,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4605,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/src/media_tools/isom_tools.c:4614,1
    - Dst: rfc_6381_get_codec_mpegha
      Src: /src/gpac/src/media_tools/isom_tools.c:4618,1
    - Dst: rfc_6381_get_codec_mpegha
      Src: /src/gpac/src/media_tools/isom_tools.c:4620,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4622,1
    - Dst: gf_isom_iamf_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4628,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4630,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/isom_tools.c:4630,1
    - Dst: rfc_6381_get_codec_iamf
      Src: /src/gpac/src/media_tools/isom_tools.c:4633,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4634,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/media_tools/isom_tools.c:4640,1
    - Dst: rfc_6381_get_codec_uncv
      Src: /src/gpac/src/media_tools/isom_tools.c:4642,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4644,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4645,1
    - Dst: gf_isom_xml_subtitle_get_description
      Src: /src/gpac/src/media_tools/isom_tools.c:4654,1
    - Dst: rfc_6381_get_codec_stpp
      Src: /src/gpac/src/media_tools/isom_tools.c:4657,1
    - Dst: rfc6381_codec_name_default
      Src: /src/gpac/src/media_tools/isom_tools.c:4662,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/media_tools/isom_tools.c:4662,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: 4665
      start: 4396
    functionDepth: 8
    functionLinenumber: 4396
    functionLinenumberEnd: 4665
    functionName: gf_media_get_rfc_6381_codec_name
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 2
    functionsReached:
    - gf_odf_dovi_cfg_del
    - gf_isom_av1_config_get
    - gf_isom_get_generic_sample_description
    - rfc_6381_get_codec_m4v
    - gf_isom_lhvc_config_get
    - gf_isom_vp_config_get
    - gf_odf_vp_cfg_del
    - gf_isom_is_cenc_media
    - gf_isom_get_reference
    - gf_isom_is_omadrm_media
    - snprintf
    - gf_isom_mvc_config_get
    - gf_odf_av1_cfg_del
    - gf_odf_vvc_cfg_del
    - gf_isom_get_color_info
    - rfc_6381_get_codec_uncv
    - rfc6381_codec_name_default
    - rfc_6381_get_codec_iamf
    - gf_odf_hevc_cfg_del
    - gf_isom_vvc_config_get
    - gf_isom_get_esd
    - rfc_6381_get_codec_hevc
    - rfc_6381_get_codec_avc
    - rfc_6381_get_codec_stpp
    - gf_isom_get_original_format_type
    - rfc_6381_get_codec_avs3v
    - gf_media_map_esd
    - rfc_6381_get_codec_dolby_vision
    - gf_isom_avs3v_config_get
    - gf_isom_hevc_config_get
    - gf_isom_dovi_config_get
    - gf_codec_id_from_isobmf
    - rfc_6381_get_codec_vpx
    - gf_isom_get_omadrm_info
    - gf_isom_get_cenc_info
    - gf_odf_iamf_cfg_del
    - gf_isom_xml_subtitle_get_description
    - gf_isom_svc_config_get
    - gf_odf_avc_cfg_del
    - rfc_6381_get_codec_aac
    - gf_isom_is_media_encrypted
    - gf_isom_get_media_subtype
    - gf_isom_is_ismacryp_media
    - gf_odf_desc_del
    - gf_isom_get_mpeg4_subtype
    - gf_free
    - GF_LOG
    - gf_isom_get_ismacryp_info
    - gf_isom_iamf_config_get
    - rfc_6381_get_codec_vvc
    - rfc_6381_get_codec_mpegha
    - rfc_6381_get_codec_av1
    - memset
    - gf_odf_avs3v_cfg_del
    - gf_isom_avc_config_get
    - gf_4cc_to_str
    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:4681,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4685,1
    - Dst: gf_isom_get_media_subtype
      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:4689,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/isom_tools.c:4693,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4695,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4698,1
    - Dst: gf_isom_av1_config_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4699,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4701,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4702,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/isom_tools.c:4706,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/isom_tools.c:4707,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4708,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/isom_tools.c:4709,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4710,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/isom_tools.c:4715,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/isom_tools.c:4716,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/media_tools/isom_tools.c:4717,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4720,1
    - Dst: gf_isom_sample_del
      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:4725,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4726,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4727,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/media_tools/isom_tools.c:4739,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/media_tools/isom_tools.c:4740,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4741,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: 4747
      start: 4668
    functionDepth: 10
    functionLinenumber: 4668
    functionLinenumberEnd: 4747
    functionName: gf_media_av1_layer_size_get
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_media_subtype
    - gf_list_count
    - gf_free
    - gf_isom_av1_config_get
    - gf_av1_parse_obu
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_isom_sample_del
    - gf_av1_init_state
    - gf_isom_get_sample
    - gf_bs_del
    - gf_list_get
    - gf_av1_reset_state
    - gf_odf_av1_cfg_del
    - gf_bs_available
    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:4759,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4761,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4762,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/isom_tools.c:4766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4767,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/isom_tools.c:4770,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/isom_tools.c:4776,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/isom_tools.c:4782,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/media_tools/isom_tools.c:4783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4785,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:4785,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/isom_tools.c:4790,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/isom_tools.c:4790,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4805,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4806,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4807,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4808,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4810,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4812,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4814,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4815,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/isom_tools.c:4837,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4839,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/isom_tools.c:4846,1
    - Dst: gf_isom_set_qt_key
      Src: /src/gpac/src/media_tools/isom_tools.c:4873,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/isom_tools.c:4874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/isom_tools.c:4877,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/isom_tools.c:4877,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 124
    argCount: 3
    argNames:
    - movie
    - name
    - val
    argTypes:
    - GF_ISOFile*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4880
      start: 4751
    functionDepth: 7
    functionLinenumber: 4751
    functionLinenumberEnd: 4880
    functionName: gf_media_isom_apply_qt_key
    functionSourceFile: /src/gpac/src/media_tools/isom_tools.c
    functionUses: 1
    functionsReached:
    - strchr
    - gf_free
    - gf_file_exists
    - GF_LOG
    - gf_file_load_data
    - GF_4CC
    - sscanf
    - gf_isom_set_qt_key
    - strcmp
    - strlen
    - memset
    - strstr
    - gf_error_to_string
    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: 494
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 494
    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:512,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:513,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:515,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:519,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:522,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 2
    argNames:
    - dash
    - manifest_url
    argTypes:
    - GF_DashClient*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 508
    functionDepth: 0
    functionLinenumber: 508
    functionLinenumberEnd: 526
    functionName: gf_dash_set_base_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_free
    - 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:530,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:533,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 528
    functionDepth: 1
    functionLinenumber: 528
    functionLinenumberEnd: 537
    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: 545
      start: 539
    functionDepth: 0
    functionLinenumber: 539
    functionLinenumberEnd: 545
    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:553,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:555,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 548
    functionDepth: 1
    functionLinenumber: 548
    functionLinenumberEnd: 557
    functionName: dash_get_fetch_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DashClient*::dash_io::get_utc_start_time
    - gf_net_get_utc
    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:564,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:568,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:574,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:578,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 581
    functionName: gf_dash_group_count_rep_needed
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_list_get
    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:587,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:590,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:590,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:593,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:596,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - local_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 601
    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:614,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:615,1
    - Dst: GF_DashClient*::dash_io::create
      Src: /src/gpac/src/media_tools/dash_client.c:619,1
    - Dst: GF_DashClient*::dash_io::run
      Src: /src/gpac/src/media_tools/dash_client.c:621,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:623,1
    - Dst: GF_DashClient*::dash_io::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:628,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:632,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:637,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:639,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:644,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:646,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:647,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:649,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:656,1
    - Dst: gf_mpd_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:657,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:659,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:660,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:662,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:664,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/media_tools/dash_client.c:669,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:676,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:678,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: 681
      start: 603
    functionDepth: 2
    functionLinenumber: 603
    functionLinenumberEnd: 681
    functionName: gf_dash_get_date
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_mpd_parse_date
    - gf_net_ntp_to_utc
    - GF_DashClient*::dash_io::create
    - GF_DashClient*::dash_io::get_status
    - GF_DashClient*::dash_io::get_cache_name
    - GF_DashClient*::dash_io::get_header_value
    - strcmp
    - gf_blob_get
    - GF_DashClient*::dash_io::run
    - gf_net_parse_date
    - gf_blob_release
    - sscanf
    - GF_DashClient*::dash_io::del
    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: 700
      start: 685
    functionDepth: 0
    functionLinenumber: 685
    functionLinenumberEnd: 700
    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:719,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:721,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:726,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:728,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:731,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:733,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:734,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:742,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:743,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:746,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:750,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:752,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:760,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:761,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:764,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:805,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:808,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:829,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:843,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:844,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:863,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:865,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:869,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:873,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:875,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:878,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:880,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:885,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:887,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:894,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:896,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:905,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:907,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:908,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:916,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:920,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:923,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:929,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:930,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:937,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:938,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:942,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:944,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:945,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/dash_client.c:948,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:949,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:951,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:952,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:953,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:987,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:992,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:1017,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:1021,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/dash_client.c:1029,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:1032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1034,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:1036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1055,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1066,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1070,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1074,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:1085,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:1086,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:1093,1
    - Dst: gf_dash_get_date
      Src: /src/gpac/src/media_tools/dash_client.c:1097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1121,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:1136,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:1139,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1141,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:1145,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/media_tools/dash_client.c:1147,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:1152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1172,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/dash_client.c:1191,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/media_tools/dash_client.c:1193,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1207,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1227,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1294,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1385,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1433,1
    - Dst: dash_ssr_adjust_group_start
      Src: /src/gpac/src/media_tools/dash_client.c:1438,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1451,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:1460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1463,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1500,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1558,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1573,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1582,1
    - Dst: dash_ssr_adjust_group_start
      Src: /src/gpac/src/media_tools/dash_client.c:1590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1593,1
    CyclomaticComplexity: 272
    EdgeCount: 272
    ICount: 714
    argCount: 3
    argNames:
    - mpd
    - group
    - fetch_time
    argTypes:
    - GF_MPD*
    - GF_DASH_Group*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1595
      start: 702
    functionDepth: 3
    functionLinenumber: 702
    functionLinenumberEnd: 1595
    functionName: gf_dash_group_timeline_setup_single
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_DASH_Group*::dash::dash_io::get_header_value
    - gf_mpd_resolve_url
    - strstr
    - gf_dash_download_resource
    - strchr
    - gf_gmtime
    - gf_timestamp_rescale
    - gf_dynstrcat
    - gf_list_get
    - dash_ssr_adjust_group_start
    - gf_sys_clock
    - ABS
    - strcmp
    - gf_net_parse_date
    - strlen
    - sscanf
    - sprintf
    - gf_free
    - GF_LOG
    - gf_dash_get_date
    - gf_strdup
    - strncmp
    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:1604,1
    - Dst: gf_dash_group_timeline_setup_single
      Src: /src/gpac/src/media_tools/dash_client.c:1606,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1609,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1610,1
    - Dst: gf_dash_group_timeline_setup_single
      Src: /src/gpac/src/media_tools/dash_client.c:1611,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: 1614
      start: 1597
    functionDepth: 4
    functionLinenumber: 1597
    functionLinenumberEnd: 1614
    functionName: gf_dash_group_timeline_setup
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_group_timeline_setup_single
    - gf_net_get_utc
    - gf_list_count
    - gf_list_get
    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:1625,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:1625,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:1629,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1621
    functionDepth: 0
    functionLinenumber: 1621
    functionLinenumberEnd: 1633
    functionName: gf_dash_is_m3u8_mime
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - stricmp
    - strstr
    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:1639,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/dash_client.c:1649,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:1654,1
    - Dst: GF_DashClient*::rate_adaptation_download_monitor
      Src: /src/gpac/src/media_tools/dash_client.c:1656,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:1660,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: 1668
      start: 1635
    functionDepth: 2
    functionLinenumber: 1635
    functionLinenumberEnd: 1668
    functionName: gf_dash_group_check_bandwidth
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_sys_is_test_mode
    - gf_dash_get_active_group
    - GF_DashClient*::dash_io::on_dash_event
    - GF_DashClient*::rate_adaptation_download_monitor
    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:1686,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:1686,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/dash_client.c:1694,1
    - Dst: GF_DASHFileIO*::create
      Src: /src/gpac/src/media_tools/dash_client.c:1700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1704,1
    - Dst: GF_DASHFileIO*::setup_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:1710,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1713,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1713,1
    - Dst: GF_DASHFileIO*::set_range
      Src: /src/gpac/src/media_tools/dash_client.c:1722,1
    - Dst: GF_DASHFileIO*::del
      Src: /src/gpac/src/media_tools/dash_client.c:1725,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:1727,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1729,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1729,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:1733,1
    - Dst: GF_DASHFileIO*::init
      Src: /src/gpac/src/media_tools/dash_client.c:1736,1
    - Dst: GF_DASHFileIO*::run
      Src: /src/gpac/src/media_tools/dash_client.c:1738,1
    - Dst: GF_DASHFileIO*::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:1743,1
    - Dst: GF_DASHFileIO*::get_mime
      Src: /src/gpac/src/media_tools/dash_client.c:1761,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:1763,1
    - Dst: GF_DASHFileIO*::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:1768,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1769,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1776,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:1776,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1776,1
    - Dst: GF_DASHFileIO*::del
      Src: /src/gpac/src/media_tools/dash_client.c:1783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1784,1
    - Dst: GF_DASHFileIO*::create
      Src: /src/gpac/src/media_tools/dash_client.c:1785,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1787,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1797,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1801,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:1801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:1805,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:1805,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: 1693
        line_start: 1693
        source_file: /src/gpac/src/media_tools/dash_client.c
    constantsTouched: []
    func_position:
      end: 1809
      start: 1677
    functionDepth: 1
    functionLinenumber: 1677
    functionLinenumberEnd: 1809
    functionName: gf_dash_download_resource
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 2
    functionsReached:
    - gf_dash_download_resource
    - GF_DASHFileIO*::init
    - GF_LOG
    - GF_DASHFileIO*::setup_from_url
    - GF_DASHFileIO*::get_cache_name
    - gf_assert
    - GF_DASHFileIO*::del
    - gf_net_get_utc
    - GF_DASHFileIO*::get_status
    - gf_strdup
    - assert
    - GF_DASHFileIO*::get_mime
    - GF_DASHFileIO*::set_range
    - GF_DASHFileIO*::run
    - GF_DASHFileIO*::create
    - gf_error_to_string
    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:1827,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1829,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1842,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: 1856
      start: 1811
    functionDepth: 1
    functionLinenumber: 1811
    functionLinenumberEnd: 1856
    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:1892,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1896,1
    - Dst: gf_dash_get_timeline_duration
      Src: /src/gpac/src/media_tools/dash_client.c:1943,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:1952,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:1955,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: 1972
      start: 1858
    functionDepth: 2
    functionLinenumber: 1858
    functionLinenumberEnd: 1972
    functionName: gf_dash_get_segment_duration
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_get_timeline_duration
    - 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:1977,1
    - Dst: gf_mpd_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:1983,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/dash_client.c:2019,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: 2022
      start: 1975
    functionDepth: 3
    functionLinenumber: 1975
    functionLinenumberEnd: 2022
    functionName: gf_dash_get_segment_start_time_with_timescale
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_rescale
    - gf_mpd_get_segment_start_time_with_timescale
    - gf_list_get
    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:2030,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - group
    - segment_duration
    argTypes:
    - GF_DASH_Group*
    - Double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2036
      start: 2024
    functionDepth: 4
    functionLinenumber: 2024
    functionLinenumberEnd: 2036
    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:2041,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: 2049
      start: 2038
    functionDepth: 5
    functionLinenumber: 2038
    functionLinenumberEnd: 2049
    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:2056,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2068,1
    - Dst: gf_timestamp_equal
      Src: /src/gpac/src/media_tools/dash_client.c:2072,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/media_tools/dash_client.c:2073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2092,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: 2094
      start: 2051
    functionDepth: 1
    functionLinenumber: 2051
    functionLinenumberEnd: 2094
    functionName: gf_dash_get_index_in_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_timestamp_equal
    - gf_list_get
    - gf_timestamp_greater
    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:2101,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - timeline
    - segment_index
    argTypes:
    - GF_MPD_SegmentTimeline*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2115
      start: 2096
    functionDepth: 1
    functionLinenumber: 2096
    functionLinenumberEnd: 2115
    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:2128,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2136,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:2146,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2149,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:2150,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/dash_client.c:2156,1
    - Dst: gf_dash_get_index_in_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:2165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2167,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2169,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2170,1
    - Dst: gf_dash_get_index_in_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:2175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2177,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:2183,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2185,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2186,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2195,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2199,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: 2206
      start: 2118
    functionDepth: 4
    functionLinenumber: 2118
    functionLinenumberEnd: 2206
    functionName: gf_dash_merge_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_dash_get_index_in_timeline
    - gf_list_enum
    - gf_log_tool_level_on
    - gf_dash_get_segment_start_time_with_timescale
    - gf_list_get
    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:2213,1
    - Dst: gf_mpd_resolve_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:2216,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2223,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2240,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2241,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2247,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2249,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2260,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2261,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:2262,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 53
    argCount: 2
    argNames:
    - group
    - min_start_time
    argTypes:
    - GF_DASH_Group*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2208
    functionDepth: 2
    functionLinenumber: 2208
    functionLinenumberEnd: 2269
    functionName: gf_dash_purge_segment_timeline
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_mpd_resolve_segment_duration
    - gf_free
    - gf_fatal_assert
    - gf_list_get
    - gf_mpd_segment_url_free
    - 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:2283,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2286,1
    - Dst: gf_mpd_delete_segment_list
      Src: /src/gpac/src/media_tools/dash_client.c:2287,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2294,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:2296,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:2296,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:2304,1
    - Dst: GF_DashClient*::dash_io::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:2307,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2318,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2318,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2319,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2326,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/dash_client.c:2329,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2330,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2331,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:2334,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:2336,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:2337,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2338,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:2341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2342,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2342,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2343,1
    - Dst: gf_xml_dom_get_root_nodes_count
      Src: /src/gpac/src/media_tools/dash_client.c:2348,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2350,1
    - Dst: gf_mpd_delete_segment_list
      Src: /src/gpac/src/media_tools/dash_client.c:2351,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/media_tools/dash_client.c:2356,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2357,1
    - Dst: gf_mpd_solve_segment_list_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2362,1
    - Dst: gf_mpd_delete_segment_list
      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:2370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2374,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: 2377
      start: 2271
    functionDepth: 5
    functionLinenumber: 2271
    functionLinenumberEnd: 2377
    functionName: gf_dash_solve_representation_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_del
    - gf_xml_dom_get_root_idx
    - gf_url_concatenate
    - GF_DashClient*::dash_io::get_status
    - GF_DashClient*::dash_io::get_cache_name
    - strstr
    - gf_dash_download_resource
    - gf_xml_dom_parse
    - gf_mpd_delete_segment_list
    - gf_mpd_solve_segment_list_xlink
    - memcpy
    - memcmp
    - strnicmp
    - gf_xml_dom_new
    - strcmp
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - gf_sha1_file
    - gf_xml_dom_get_root_nodes_count
    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:2381,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2383,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2384,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2386,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - new_mpd
    argTypes:
    - GF_MPD*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2389
      start: 2379
    functionDepth: 1
    functionLinenumber: 2379
    functionLinenumberEnd: 2389
    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:2393,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2397,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2399,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2403
      start: 2391
    functionDepth: 1
    functionLinenumber: 2391
    functionLinenumberEnd: 2403
    functionName: gf_dash_mark_group_done
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - 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:2408,1
    - Dst: gf_url_get_path
      Src: /src/gpac/src/media_tools/dash_client.c:2409,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:2410,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:2414,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - url
    - base_url
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2418
      start: 2406
    functionDepth: 1
    functionLinenumber: 2406
    functionLinenumberEnd: 2418
    functionName: dash_strip_base_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - strrchr
    - gf_url_get_path
    - strncmp
    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:2427,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2430,1
    - Dst: gf_m3u8_solve_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2431,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2434,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/media_tools/dash_client.c:2438,1
    - Dst: GF_DashClient*::getter::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2441,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:2443,1
    - Dst: GF_DashClient*::dash_io::manifest_updated
      Src: /src/gpac/src/media_tools/dash_client.c:2444,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2445,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: 2447
      start: 2420
    functionDepth: 2
    functionLinenumber: 2420
    functionLinenumberEnd: 2447
    functionName: gf_dash_solve_m3u8_representation_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_m3u8_solve_representation_xlink
    - gf_free
    - gf_url_concatenate
    - gf_url_is_local
    - GF_DashClient*::dash_io::manifest_updated
    - GF_DashClient*::getter::get_cache_name
    - dash_strip_base_url
    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:2451,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2459,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2463,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:2464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2471,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2477,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2486,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2494,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2498,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:2499,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 2
    argNames:
    - live_edge_idx
    - l
    argTypes:
    - s32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2504
      start: 2449
    functionDepth: 1
    functionLinenumber: 2449
    functionLinenumberEnd: 2504
    functionName: ls_hls_purge_segments
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_rem
    - gf_mpd_segment_url_free
    - gf_list_get
    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:2509,1
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/media_tools/dash_client.c:2511,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2514,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2521,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2526,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:2527,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2529,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:2531,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2536,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2537,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: 2541
      start: 2506
    functionDepth: 2
    functionLinenumber: 2506
    functionLinenumberEnd: 2541
    functionName: dash_check_chaining
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_free
    - GF_LOG
    - gf_url_concatenate
    - strcmp
    - gf_mpd_get_descriptor
    - gf_strdup
    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:2565,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2566,1
    - Dst: dash_get_fetch_time
      Src: /src/gpac/src/media_tools/dash_client.c:2574,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2582,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/media_tools/dash_client.c:2583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2589,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:2594,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2594,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:2597,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:2598,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2604,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/media_tools/dash_client.c:2606,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:2611,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2615,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2616,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:2617,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2619,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:2624,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:2625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2627,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:2631,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2642,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2645,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2653,1
    - Dst: GF_DashClient*::dash_io::get_mime
      Src: /src/gpac/src/media_tools/dash_client.c:2656,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:2657,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/dash_client.c:2658,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:2661,1
    - Dst: gf_dash_is_m3u8_mime
      Src: /src/gpac/src/media_tools/dash_client.c:2664,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:2664,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:2665,1
    - Dst: gf_m3u8_to_mpd
      Src: /src/gpac/src/media_tools/dash_client.c:2666,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2668,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2668,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2669,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:2674,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:2676,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2679,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:2680,1
    - Dst: dash_get_fetch_time
      Src: /src/gpac/src/media_tools/dash_client.c:2685,1
    - Dst: gf_dash_check_mpd_root_type
      Src: /src/gpac/src/media_tools/dash_client.c:2689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2694,1
    - Dst: gf_sha1_file
      Src: /src/gpac/src/media_tools/dash_client.c:2698,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2699,1
    - Dst: memcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2706,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:2713,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:2723,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:2726,1
    - Dst: GF_DashClient*::dash_io::manifest_updated
      Src: /src/gpac/src/media_tools/dash_client.c:2727,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:2732,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:2733,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:2735,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2736,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2736,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:2739,1
    - Dst: gf_mpd_init_smooth_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:2741,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:2741,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:2743,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:2743,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:2744,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2746,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:2746,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2747,1
    - Dst: dash_purge_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2751,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:2754,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2760,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2766,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2767,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2768,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2769,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2777,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:2786,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2799,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2800,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2804,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2805,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2806,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2808,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:2809,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2810,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:2812,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:2816,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2819,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:2822,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2830,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2831,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2838,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2843,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2844,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:2845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2850,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2851,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:2855,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2856,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2858,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2858,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2859,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2860,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2864,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2872,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2873,1
    - Dst: gf_dash_get_segment_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:2875,1
    - Dst: gf_dash_merge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:2886,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2888,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2894,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2897,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2909,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2913,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2916,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2918,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2919,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:2926,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:2927,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2932,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2933,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2934,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:2940,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2942,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:2943,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2952,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2954,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2955,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2966,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:2967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:2987,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:2996,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3004,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3005,1
    - Dst: gf_mpd_representation_new
      Src: /src/gpac/src/media_tools/dash_client.c:3006,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:3007,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:3008,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:3010,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:3012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3026,1
    - Dst: gf_dash_solve_m3u8_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3031,1
    - Dst: gf_dash_solve_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3033,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3060,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3070,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3071,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3073,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3073,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/dash_client.c:3085,1
    - Dst: HLS_MIN_RELOAD_TIME
      Src: /src/gpac/src/media_tools/dash_client.c:3087,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3093,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3094,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3115,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3122,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3135,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3139,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3141,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3148,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3154,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/media_tools/dash_client.c:3167,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:3168,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3174,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3175,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3190,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:3199,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3228,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3232,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:3235,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3241,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:3243,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3249,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3261,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3271,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3272,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3273,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/dash_client.c:3274,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3275,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:3276,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:3282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3283,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3289,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3291,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3292,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3299,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3304,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/media_tools/dash_client.c:3305,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3315,1
    - Dst: gf_list_swap
      Src: /src/gpac/src/media_tools/dash_client.c:3319,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3326,1
    - Dst: ls_hls_purge_segments
      Src: /src/gpac/src/media_tools/dash_client.c:3328,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3332,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3339,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3339,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3341,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3342,1
    - Dst: fprintf
      Src: /src/gpac/src/media_tools/dash_client.c:3343,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3352,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3363,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3385,1
    - Dst: HLS_MIN_RELOAD_TIME
      Src: /src/gpac/src/media_tools/dash_client.c:3386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3388,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:3389,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3399,1
    - Dst: gf_dash_merge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3403,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3405,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3412,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3413,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3416,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3417,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:3418,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/dash_client.c:3436,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3437,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:3440,1
    - Dst: gf_dash_merge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3452,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3454,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3458,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3459,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3463,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3467,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:3470,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3471,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3472,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3476,1
    - Dst: gf_list_get
      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_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3480,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:3481,1
    - Dst: gf_list_insert
      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_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3492,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3492,1
    - Dst: gf_dash_purge_segment_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3499,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:3506,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:3513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3522,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3528,1
    - Dst: gf_dash_get_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:3535,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3554,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:3556,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:3567,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:3572,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: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:3578,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3583,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3584,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3586,1
    CyclomaticComplexity: 322
    EdgeCount: 322
    ICount: 746
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3592
      start: 2544
    functionDepth: 11
    functionLinenumber: 2544
    functionLinenumberEnd: 3592
    functionName: gf_dash_update_manifest
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_xml_dom_del
    - strlwr
    - gf_dash_group_timeline_setup
    - gf_file_basename
    - gf_url_concatenate
    - gf_assert
    - gf_dash_is_m3u8_mime
    - GF_DashClient*::dash_io::get_cache_name
    - GF_SAFEALLOC
    - gf_list_add
    - HLS_MIN_RELOAD_TIME
    - strstr
    - dash_get_fetch_time
    - gf_dash_download_resource
    - gf_xml_dom_parse
    - gf_list_pop_front
    - gf_dash_check_mpd_root_type
    - gf_mpd_new
    - gf_list_find
    - gf_dash_solve_m3u8_representation_xlink
    - gf_dash_solve_representation_xlink
    - gf_mpd_representation_free
    - gf_dash_purge_segment_timeline
    - gf_dynstrcat
    - gf_list_get
    - gf_list_insert
    - gf_dash_solve_period_xlink
    - memcpy
    - gf_mpd_split_adaptation_sets
    - gf_strcpy
    - gf_list_swap
    - gf_dash_merge_segment_timeline
    - gf_m3u8_to_mpd
    - gf_mpd_representation_new
    - gf_file_exists
    - gf_dash_set_base_url
    - memcmp
    - gf_sys_clock
    - GF_DashClient*::dash_io::manifest_updated
    - gf_dash_get_segment_start_time
    - gf_xml_dom_new
    - gf_dash_get_segment_duration
    - strrchr
    - gf_mpd_del
    - strcmp
    - GF_DashClient*::dash_io::get_mime
    - gf_list_new
    - gf_list_pop_back
    - gf_error_to_string
    - gf_xml_dom_get_root
    - dash_purge_xlink
    - dash_check_chaining
    - gf_free
    - gf_mpd_init_smooth_from_dom
    - GF_LOG
    - GF_DashClient*::dash_io::get_url
    - gf_mpd_init_from_dom
    - gf_dash_mark_group_done
    - gf_file_delete
    - ls_hls_purge_segments
    - gf_strdup
    - gf_sha1_file
    - gf_mpd_segment_url_free
    - gf_list_rem
    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:3602,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3604,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3620,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 2
    argNames:
    - group
    - rep
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3630
      start: 3594
    functionDepth: 1
    functionLinenumber: 3594
    functionLinenumberEnd: 3630
    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:3730,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:3732,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3733,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3772,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3784,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:3790,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3794,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3810,1
    - Dst: gf_dash_solve_m3u8_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3814,1
    - Dst: gf_dash_solve_representation_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:3816,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3843,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3845,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3845,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3871,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3873,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:3874,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:3887,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:3889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3919,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:3920,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3924,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:3935,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:3945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:3947,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:3947,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:3953,1
    - Dst: ls_hls_purge_segments
      Src: /src/gpac/src/media_tools/dash_client.c:3977,1
    - Dst: m3u8_setup_timeline
      Src: /src/gpac/src/media_tools/dash_client.c:3982,1
    - Dst: ls_hls_purge_segments
      Src: /src/gpac/src/media_tools/dash_client.c:3988,1
    - Dst: GET_REP_ATTR
      Src: /src/gpac/src/media_tools/dash_client.c:4000,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: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4018,1
    - Dst: gf_dash_get_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:4022,1
    - Dst: gf_dash_get_timeline_entry
      Src: /src/gpac/src/media_tools/dash_client.c:4039,1
    - Dst: gf_dash_get_timeline_entry
      Src: /src/gpac/src/media_tools/dash_client.c:4047,1
    - Dst: GF_DASH_Group*::dash::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:4055,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 234
    argCount: 2
    argNames:
    - group
    - rep
    argTypes:
    - GF_DASH_Group*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4056
      start: 3719
    functionDepth: 6
    functionLinenumber: 3719
    functionLinenumberEnd: 4056
    functionName: gf_dash_set_group_representation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_group_timeline_setup
    - gf_assert
    - dash_strip_base_url
    - gf_dash_group_count_rep_needed
    - gf_dash_resolve_url
    - gf_dash_get_timeline_entry
    - GET_REP_ATTR
    - gf_list_find
    - gf_dash_solve_m3u8_representation_xlink
    - gf_dash_solve_representation_xlink
    - gf_list_get
    - GF_DASH_Group*::dash::dash_io::on_dash_event
    - gf_dash_get_segment_duration
    - m3u8_setup_timeline
    - gf_error_to_string
    - GF_LOG
    - gf_dash_mark_group_done
    - 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: 3999
      start: 3998
    functionDepth: 0
    functionLinenumber: 3998
    functionLinenumberEnd: 3999
    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:4068,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4074,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4094,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4099,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4100,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4115,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4120,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:4121,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4123,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4131,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:4133,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 2
    argNames:
    - mpd
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4135
      start: 4058
    functionDepth: 7
    functionLinenumber: 4058
    functionLinenumberEnd: 4135
    functionName: gf_dash_switch_group_representation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_assert
    - gf_list_find
    - gf_dash_set_group_representation
    - gf_list_get
    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:4165,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: 4168
      start: 4138
    functionDepth: 1
    functionLinenumber: 4138
    functionLinenumberEnd: 4168
    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:4181,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:4199,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:4200,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:4219,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:4227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4231,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4241,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4258,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4259,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4264,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:4277,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:4281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4304,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: 4307
      start: 4170
    functionDepth: 1
    functionLinenumber: 4170
    functionLinenumberEnd: 4307
    functionName: dash_store_stats
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_sys_clock
    - gf_assert
    - gf_log_tool_level_on
    - strrchr
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_get
    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:4320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4344,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4365,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4371,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: 4377
      start: 4309
    functionDepth: 1
    functionLinenumber: 4309
    functionLinenumberEnd: 4377
    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:4398,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4485,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: 4504
      start: 4379
    functionDepth: 1
    functionLinenumber: 4379
    functionLinenumberEnd: 4504
    functionName: dash_do_rate_adaptation_legacy_rate
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - 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:4563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4567,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4573,1
    - Dst: dash_do_rate_adaptation_legacy_rate
      Src: /src/gpac/src/media_tools/dash_client.c:4580,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: 4584
      start: 4506
    functionDepth: 2
    functionLinenumber: 4506
    functionLinenumberEnd: 4584
    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:4592,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4594,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - representations
    - rate
    - index
    argTypes:
    - GF_List*
    - double
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4604
      start: 4587
    functionDepth: 1
    functionLinenumber: 4587
    functionLinenumberEnd: 4604
    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:4612,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4614,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - representations
    - rate
    - index
    argTypes:
    - GF_List*
    - double
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4624
      start: 4607
    functionDepth: 1
    functionLinenumber: 4607
    functionLinenumberEnd: 4624
    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:4650,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4651,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4651,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4661,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4668,1
    - Dst: get_min_rate_above
      Src: /src/gpac/src/media_tools/dash_client.c:4675,1
    - Dst: get_max_rate_below
      Src: /src/gpac/src/media_tools/dash_client.c:4681,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4691,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4712,1
    - Dst: get_max_rate_below
      Src: /src/gpac/src/media_tools/dash_client.c:4721,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4725,1
    - Dst: get_min_rate_above
      Src: /src/gpac/src/media_tools/dash_client.c:4726,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4735,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4739,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: 4742
      start: 4631
    functionDepth: 2
    functionLinenumber: 4631
    functionLinenumberEnd: 4742
    functionName: dash_do_rate_adaptation_bba0
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - get_max_rate_below
    - GF_LOG
    - get_min_rate_above
    - gf_list_get
    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:4750,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4754,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: 4762
      start: 4747
    functionDepth: 1
    functionLinenumber: 4747
    functionLinenumberEnd: 4762
    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:4785,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:4789,1
    - Dst: gf_list_get
      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:4795,1
    - Dst: log
      Src: /src/gpac/src/media_tools/dash_client.c:4796,1
    - Dst: bola_find_max_utility_index
      Src: /src/gpac/src/media_tools/dash_client.c:4804,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/dash_client.c:4821,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:4822,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/dash_client.c:4823,1
    - Dst: bola_find_max_utility_index
      Src: /src/gpac/src/media_tools/dash_client.c:4826,1
    - Dst: get_max_rate_below
      Src: /src/gpac/src/media_tools/dash_client.c:4836,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:4836,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:4852,1
    - Dst: gf_list_get
      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:4872,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4876,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: 4879
      start: 4769
    functionDepth: 2
    functionLinenumber: 4769
    functionLinenumberEnd: 4879
    functionName: dash_do_rate_adaptation_bola
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - bola_find_max_utility_index
    - get_max_rate_below
    - GF_LOG
    - MIN
    - gf_assert
    - MAX
    - gf_list_get
    - 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:4902,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4914,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:4914,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:4914,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4958,1
    - Dst: gf_dash_get_max_available_speed
      Src: /src/gpac/src/media_tools/dash_client.c:4962,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4965,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:4980,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:4994,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:4997,1
    - Dst: GF_DashClient*::rate_adaptation_algo
      Src: /src/gpac/src/media_tools/dash_client.c:5024,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5037,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5060,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5065,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:5069,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5074,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5083,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 129
    argCount: 2
    argNames:
    - dash
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5090
      start: 4882
    functionDepth: 7
    functionLinenumber: 4882
    functionLinenumberEnd: 5090
    functionName: dash_do_rate_adaptation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_find
    - gf_dash_get_max_available_speed
    - GF_DashClient*::rate_adaptation_algo
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_get
    - gf_dash_set_group_representation
    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:5098,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:5101,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/media_tools/dash_client.c:5103,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5105,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5106,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - base_url
    - res_url
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5107
      start: 5092
    functionDepth: 1
    functionLinenumber: 5092
    functionLinenumberEnd: 5107
    functionName: gf_dash_get_fileio_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fileio_from_url
    - gf_strdup
    - gf_fileio_factory
    - 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:5127,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5128,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5130,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:5138,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:5139,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:5140,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/media_tools/dash_client.c:5140,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5146,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5146,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5160,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5160,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5168,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5169,1
    - Dst: gf_dash_get_fileio_url
      Src: /src/gpac/src/media_tools/dash_client.c:5173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5175,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5188,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5188,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5188,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:5193,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:5193,1
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/media_tools/dash_client.c:5194,1
    - Dst: gf_mpd_get_base_url_count
      Src: /src/gpac/src/media_tools/dash_client.c:5195,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5197,1
    - Dst: gf_dash_download_init_segment
      Src: /src/gpac/src/media_tools/dash_client.c:5198,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5204,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:5211,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5221,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5226,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5229,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5230,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5234,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5236,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:5237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5245,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5248,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5252,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5254,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5258,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5260,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5260,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5265,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:5278,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:5279,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:5285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5289,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5302,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:5304,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5305,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:5306,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5313,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5319,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5325,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5328,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:5329,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5333,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:5336,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5340,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5351,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:5355,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5357,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:5361,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5363,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:5363,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 205
    argCount: 2
    argNames:
    - dash
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5369
      start: 5109
    functionDepth: 2
    functionLinenumber: 5109
    functionLinenumberEnd: 5369
    functionName: gf_dash_download_init_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_file_basename
    - gf_assert
    - strstr
    - dash_strip_base_url
    - gf_dash_download_resource
    - gf_dash_resolve_url
    - gf_mpd_get_base_url_count
    - gf_fileio_resource_url
    - gf_list_get
    - memcpy
    - gf_fileio_from_url
    - gf_sys_clock
    - strnicmp
    - strcmp
    - gf_error_to_string
    - GF_DashClient*::dash_io::del
    - gf_dash_download_init_segment
    - gf_free
    - gf_file_exists_ex
    - GF_LOG
    - gf_dash_get_fileio_url
    - gf_dash_mark_group_done
    - gf_strdup
    - strncmp
    - GF_DashClient*::dash_io::get_header_value
    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:5377,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5379,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5411,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5415,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5418,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:5419,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: 5420
      start: 5372
    functionDepth: 7
    functionLinenumber: 5372
    functionLinenumberEnd: 5420
    functionName: gf_dash_skip_disabled_representation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_list_find
    - gf_dash_set_group_representation
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void gf_dash_skip_disabled_representation(GF_DASH_Group *group, GF_MPD_Representation
      *rep, Bool for_autoswitch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5425,1
    - 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: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - cached
    argTypes:
    - segment_cache_entry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5429
      start: 5423
    functionDepth: 0
    functionLinenumber: 5423
    functionLinenumberEnd: 5429
    functionName: gf_dash_group_reset_cache_entry
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_free
    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_list_count
    - gf_free
    - gf_dash_group_reset
    - gf_list_del
    - gf_list_rem_last
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_last
    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
    - strcmp
    - gf_list_get
    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:
    - strchr
    - gf_dash_find_rep
    - gf_list_get
    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: gf_strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:5697,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:5698,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5702,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5712,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5718,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5719,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5721,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5726,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5734,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5735,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5745,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5746,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5749,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5757,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:5767,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5772,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5773,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:5775,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:5780,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:5789,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5800,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5813,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dash_client.c:5816,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:5817,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5819,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5822,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5823,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5825,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:5826,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5831,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5833,1
    - Dst: gf_dash_group_get_dependency_group
      Src: /src/gpac/src/media_tools/dash_client.c:5834,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5836,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:5837,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:5840,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5842,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5847,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:5849,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/dash_client.c:5852,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:5853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5856,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/dash_client.c:5861,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:5862,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:5871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5873,1
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/media_tools/dash_client.c:5878,1
    - Dst: gf_mpd_get_descriptor
      Src: /src/gpac/src/media_tools/dash_client.c:5879,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:5883,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:5885,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:5888,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:5890,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5900,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:5901,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5902,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:5913,1
    CyclomaticComplexity: 127
    EdgeCount: 127
    ICount: 267
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5916
      start: 5572
    functionDepth: 3
    functionLinenumber: 5572
    functionLinenumberEnd: 5916
    functionName: gf_dash_setup_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - GF_SAFEALLOC
    - gf_mpd_get_descriptor
    - gf_list_add
    - strstr
    - strchr
    - gf_malloc
    - GF_DashClient*::dash_io::dash_codec_supported
    - gf_list_find
    - gf_list_get
    - gf_realloc
    - gf_strcpy
    - atoi
    - gf_sys_clock
    - strnicmp
    - gf_dash_get_segment_duration
    - strrchr
    - strcmp
    - gf_list_new
    - strlen
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_dash_group_get_dependency_group
    - memset
    - strncmp
    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:5929,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:5930,1
    - Dst: gf_bs_read_u32
      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_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5934,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/dash_client.c:5934,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:5934,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:5938,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/dash_client.c:5944,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5947,1
    - Dst: gf_dash_load_sidx
      Src: /src/gpac/src/media_tools/dash_client.c:5953,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:5959,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:5961,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:5963,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:5970,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/dash_client.c:5973,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:5974,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: 5977
      start: 5918
    functionDepth: 4
    functionLinenumber: 5918
    functionLinenumberEnd: 5977
    functionName: gf_dash_load_sidx
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_bs_get_position
    - gf_dash_load_sidx
    - gf_isom_box_del
    - gf_bs_seek
    - GF_LOG
    - gf_isom_box_parse
    - GF_SAFEALLOC
    - gf_bs_read_u32
    - gf_list_add
    - gf_4cc_to_str
    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:5986,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:5989,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/dash_client.c:5992,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:5993,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:5995,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/media_tools/dash_client.c:5997,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/dash_client.c:6000,1
    - Dst: gf_bs_read_u32
      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_skip_bytes
      Src: /src/gpac/src/media_tools/dash_client.c:6004,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6007,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:6009,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/media_tools/dash_client.c:6013,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/media_tools/dash_client.c:6013,1
    - Dst: gf_dash_load_sidx
      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_bs_del
      Src: /src/gpac/src/media_tools/dash_client.c:6019,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:6020,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: 6022
      start: 5979
    functionDepth: 5
    functionLinenumber: 5979
    functionLinenumberEnd: 6022
    functionName: gf_dash_load_representation_sidx
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_dash_load_sidx
    - gf_fclose
    - gf_bs_seek
    - gf_fopen
    - gf_bs_available
    - gf_bs_new
    - gf_bs_from_file
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_blob_get
    - gf_bs_read_u32
    - gf_blob_release
    - strncmp
    - gf_bs_skip_bytes
    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:6027,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:6031,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:6034,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6038,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6039,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:6040,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:6043,1
    - Dst: gf_fseek
      Src: /src/gpac/src/media_tools/dash_client.c:6045,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:6047,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6048,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:6049,1
    - Dst: GF_4CC
      Src: /src/gpac/src/media_tools/dash_client.c:6050,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:6053,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: 6056
      start: 6024
    functionDepth: 1
    functionLinenumber: 6024
    functionLinenumberEnd: 6056
    functionName: dash_load_box_type
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_fopen
    - GF_4CC
    - gf_fseek
    - gf_blob_get
    - gf_fread
    - gf_blob_release
    - strncmp
    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:6066,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6082,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6086,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6091,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6101,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6106,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6111,1
    - Dst: gf_mpd_segment_template_free
      Src: /src/gpac/src/media_tools/dash_client.c:6116,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6120,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6134,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:6139,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:6142,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6147,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6147,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6148,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:6153,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6160,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6181,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6186,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6192,1
    - Dst: dash_load_box_type
      Src: /src/gpac/src/media_tools/dash_client.c:6198,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6204,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6209,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6214,1
    - Dst: dash_load_box_type
      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:6218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6222,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6247,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6249,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:6254,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6256,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6258,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6264,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:6265,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6272,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/media_tools/dash_client.c:6274,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dash_client.c:6278,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:6279,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/media_tools/dash_client.c:6281,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/media_tools/dash_client.c:6283,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:6285,1
    - Dst: gf_fsize
      Src: /src/gpac/src/media_tools/dash_client.c:6288,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/dash_client.c:6290,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:6291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6293,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/media_tools/dash_client.c:6295,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6308,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6314,1
    - Dst: gf_dash_load_representation_sidx
      Src: /src/gpac/src/media_tools/dash_client.c:6318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6321,1
    - Dst: GF_DASH_Group*::dash::dash_io::delete_cache_file
      Src: /src/gpac/src/media_tools/dash_client.c:6325,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/dash_client.c:6329,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6333,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6335,1
    - Dst: gf_mpd_segment_base_free
      Src: /src/gpac/src/media_tools/dash_client.c:6339,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6345,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6346,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 261
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6348
      start: 6059
    functionDepth: 6
    functionLinenumber: 6059
    functionLinenumberEnd: 6348
    functionName: gf_dash_setup_single_index_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_DASH_Group*::dash::dash_io::delete_cache_file
    - gf_mpd_segment_template_free
    - GF_SAFEALLOC
    - gf_blob_get
    - gf_blob_release
    - strstr
    - gf_dash_load_representation_sidx
    - gf_dash_download_resource
    - gf_malloc
    - gf_dash_resolve_url
    - gf_fopen
    - GF_DASH_Group*::dash::dash_io::get_cache_name
    - gf_fsize
    - gf_list_get
    - dash_load_box_type
    - memcpy
    - strnicmp
    - gf_blob_register
    - gf_list_new
    - gf_free
    - GF_LOG
    - gf_fread
    - gf_strdup
    - gf_mpd_segment_base_free
    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:6364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6369,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6371,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6373,1
    - Dst: gf_mpd_period_free
      Src: /src/gpac/src/media_tools/dash_client.c:6374,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6379,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: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:6386,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6388,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6388,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6399,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:6400,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:6400,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:6401,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:6404,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6406,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:6408,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:6409,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:6411,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:6412,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6416,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6417,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:6420,1
    - Dst: GF_DashClient*::dash_io::get_status
      Src: /src/gpac/src/media_tools/dash_client.c:6423,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6432,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:6432,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6433,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:6436,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6439,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:6445,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:6449,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:6450,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6451,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:6456,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6457,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:6458,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:6462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6463,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:6463,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6464,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6466,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:6469,1
    - Dst: gf_xml_dom_get_root_nodes_count
      Src: /src/gpac/src/media_tools/dash_client.c:6471,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/media_tools/dash_client.c:6473,1
    - Dst: gf_mpd_complete_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:6475,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:6477,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:6481,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6483,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:6485,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6486,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6490,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:6493,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6496,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6502,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6503,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6507,1
    - Dst: gf_mpd_period_free
      Src: /src/gpac/src/media_tools/dash_client.c:6508,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:6511,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:6515,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:6530,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6532,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6533,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:6534,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:6539,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:6541,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 155
    argCount: 3
    argNames:
    - dash
    - period_list
    - period_idx
    argTypes:
    - GF_DashClient*
    - GF_List*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6542
      start: 6350
    functionDepth: 11
    functionLinenumber: 6350
    functionLinenumberEnd: 6542
    functionName: gf_dash_solve_period_xlink
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_xml_dom_del
    - gf_xml_dom_get_root_idx
    - gf_url_concatenate
    - gf_assert
    - GF_DashClient*::dash_io::get_status
    - GF_DashClient*::dash_io::get_cache_name
    - gf_list_add
    - strstr
    - gf_dash_download_resource
    - strchr
    - gf_xml_dom_parse
    - gf_mpd_new
    - gf_dynstrcat
    - gf_list_get
    - gf_list_insert
    - gf_mpd_split_adaptation_sets
    - gf_mpd_period_free
    - strnicmp
    - gf_xml_dom_new
    - gf_mpd_del
    - strcmp
    - gf_mpd_complete_from_dom
    - gf_error_to_string
    - GF_DashClient*::dash_io::del
    - gf_free
    - GF_LOG
    - GF_DashClient*::dash_io::get_url
    - gf_mpd_init_from_dom
    - gf_strdup
    - gf_xml_dom_get_root_nodes_count
    - 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:6554,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6574,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6582,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:6586,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6586,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6586,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6589,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:6591,1
    - Dst: MIN
      Src: /src/gpac/src/media_tools/dash_client.c:6592,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 43
    argCount: 2
    argNames:
    - dash
    - tile_group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6595
      start: 6544
    functionDepth: 1
    functionLinenumber: 6544
    functionLinenumberEnd: 6595
    functionName: gf_dash_get_tiles_quality_rank
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - MIN
    - ABS
    - MAX
    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:6603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6605,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:6615,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:6623,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6623,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: 6625
      start: 6598
    functionDepth: 7
    functionLinenumber: 6598
    functionLinenumberEnd: 6625
    functionName: gf_dash_set_tiles_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_get_tiles_quality_rank
    - gf_dash_set_group_representation
    - gf_list_get
    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:6631,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6633,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:6640,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:6641,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: 6643
      start: 6627
    functionDepth: 1
    functionLinenumber: 6627
    functionLinenumberEnd: 6643
    functionName: gf_dash_get_srd_desc
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_add
    - gf_list_new
    - gf_list_get
    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:6650,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6653,1
    - 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:6656,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:6658,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:6661,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:6661,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:6661,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - period
    argTypes:
    - GF_MPD_Period*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6676
      start: 6644
    functionDepth: 1
    functionLinenumber: 6644
    functionLinenumberEnd: 6676
    functionName: dash_check_supported_mime
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - stricmp
    - gf_list_get
    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:6685,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:6688,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6693,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6698,1
    - Dst: dash_check_supported_mime
      Src: /src/gpac/src/media_tools/dash_client.c:6703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6707,1
    - Dst: gf_dash_setup_groups
      Src: /src/gpac/src/media_tools/dash_client.c:6710,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6713,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6721,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6726,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6760,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6775,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6780,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6782,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6786,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6789,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6791,1
    - Dst: gf_dash_get_srd_desc
      Src: /src/gpac/src/media_tools/dash_client.c:6795,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6805,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6807,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:6810,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:6812,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6815,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6823,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6824,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6826,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6827,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6835,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6839,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6840,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6841,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6844,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:6846,1
    - Dst: gf_dash_get_srd_desc
      Src: /src/gpac/src/media_tools/dash_client.c:6850,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:6859,1
    - Dst: gf_dash_setup_single_index_mode
      Src: /src/gpac/src/media_tools/dash_client.c:6865,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6872,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6879,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6880,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/dash_client.c:6887,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:6888,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6899,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6911,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:6927,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:6929,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:6929,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6932,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6934,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:6934,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: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: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:6948,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:6963,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:6996,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7002,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7014,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7017,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:7022,1
    - Dst: gf_dash_seek_group
      Src: /src/gpac/src/media_tools/dash_client.c:7034,1
    - Dst: gf_dash_get_mime_type
      Src: /src/gpac/src/media_tools/dash_client.c:7037,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7040,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7050,1
    CyclomaticComplexity: 166
    EdgeCount: 166
    ICount: 300
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7056
      start: 6677
    functionDepth: 12
    functionLinenumber: 6677
    functionLinenumberEnd: 7056
    functionName: gf_dash_setup_period
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_dash_get_mime_type
    - gf_dash_setup_groups
    - gf_list_get
    - gf_list_insert
    - gf_dash_solve_period_xlink
    - gf_dash_get_srd_desc
    - strnicmp
    - dash_check_supported_mime
    - strcmp
    - strlen
    - gf_dash_setup_single_index_mode
    - sscanf
    - gf_dash_seek_group
    - GF_LOG
    - gf_dash_set_group_representation
    - gf_dash_reset_groups
    - strncmp
    - 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:7172,1
    - Dst: gf_dash_get_segment_availability_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:7177,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 1
    argNames:
    - group
    argTypes:
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7208
      start: 7163
    functionDepth: 6
    functionLinenumber: 7163
    functionLinenumberEnd: 7208
    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:7224,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - dash
    - min_wait
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7226
      start: 7220
    functionDepth: 0
    functionLinenumber: 7220
    functionLinenumberEnd: 7226
    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:7241,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:7248,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:7249,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7250,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7251,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7252,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7257,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:7259,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7264,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7273,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7273,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7275,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7279,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7282,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7283,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7293,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7293,1
    - Dst: gf_mpd_get_base_url_count
      Src: /src/gpac/src/media_tools/dash_client.c:7298,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7300,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7301,1
    - Dst: dash_download_group_download
      Src: /src/gpac/src/media_tools/dash_client.c:7309,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:7316,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:7317,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7319,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7320,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7321,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7331,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7336,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/dash_client.c:7338,1
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:7341,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7349,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7355,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7370,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7374,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:7374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7376,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7377,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7402,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7403,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: 7405
      start: 7232
    functionDepth: 5
    functionLinenumber: 7232
    functionLinenumberEnd: 7405
    functionName: on_group_download_error
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - dash_download_group_download
    - gf_free
    - gf_dash_group_timeline_setup
    - GF_LOG
    - GF_DASH_Group*::dash::dash_io::get_header_value
    - gf_error_to_string
    - gf_sys_clock
    - dash_set_min_wait
    - gf_mpd_get_base_url_count
    - gf_list_enum
    - gf_dash_mark_group_done
    - gf_net_get_utc
    - strcmp
    - GF_DashClient*::dash_io::get_header_value
    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: 97
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_group_timeline_setup
      Src: /src/gpac/src/media_tools/dash_client.c:7447,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7454,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7462,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7464,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7466,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:7467,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7474,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7508,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7517,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7518,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7524,1
    - Dst: GF_DASH_Group*::dash::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:7537,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:7538,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7539,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7550,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7576,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7582,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7583,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:7585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7594,1
    - Dst: gf_dash_switch_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7595,1
    - Dst: gf_dash_get_segment_availability_start_time
      Src: /src/gpac/src/media_tools/dash_client.c:7604,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/media_tools/dash_client.c:7605,1
    - Dst: gf_dash_get_start_number
      Src: /src/gpac/src/media_tools/dash_client.c:7607,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7613,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7618,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7633,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7635,1
    - Dst: dash_set_min_wait
      Src: /src/gpac/src/media_tools/dash_client.c:7638,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7642,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7645,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:7650,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:7657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7662,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: gf_url_concatenate
      Src: /src/gpac/src/media_tools/dash_client.c:7807,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:7811,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:7816,1
    - Dst: dash_strip_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:7820,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7832,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:7862,1
    - Dst: gf_dash_mark_group_done
      Src: /src/gpac/src/media_tools/dash_client.c:7863,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:7874,1
    - Dst: gf_dash_skip_disabled_representation
      Src: /src/gpac/src/media_tools/dash_client.c:7876,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:7883,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:7887,1
    CyclomaticComplexity: 139
    EdgeCount: 139
    ICount: 373
    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: 7890
      start: 7407
    functionDepth: 8
    functionLinenumber: 7407
    functionLinenumberEnd: 7890
    functionName: dash_download_group_download
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 2
    functionsReached:
    - gf_dash_get_start_number
    - dash_download_group_download
    - gf_dash_group_timeline_setup
    - GF_DASH_Group*::dash::dash_io::get_header_value
    - gf_file_basename
    - dash_set_min_wait
    - gf_assert
    - gf_url_concatenate
    - gf_dash_switch_group_representation
    - GF_DashClient*::dash_io::on_dash_event
    - gf_dash_get_segment_start_time_with_timescale
    - gf_dash_skip_disabled_representation
    - strstr
    - dash_strip_base_url
    - gf_dash_get_segment_availability_start_time
    - gf_dash_resolve_url
    - gf_mpd_get_base_url_count
    - gf_net_get_utc
    - gf_list_get
    - memcpy
    - gf_sys_clock
    - strnicmp
    - gf_log_tool_level_on
    - on_group_download_error
    - strcmp
    - ABS
    - gf_error_to_string
    - gf_free
    - gf_file_exists_ex
    - GF_LOG
    - gf_dash_mark_group_done
    - gf_dash_set_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:7898,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7905,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7909,1
    - Dst: dash_download_group
      Src: /src/gpac/src/media_tools/dash_client.c:7914,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: 7925
      start: 7893
    functionDepth: 9
    functionLinenumber: 7893
    functionLinenumberEnd: 7925
    functionName: dash_download_group
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - dash_download_group_download
    - dash_download_group
    - gf_list_count
    - gf_list_get
    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:7938,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7949,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7950,1
    - Dst: MAX
      Src: /src/gpac/src/media_tools/dash_client.c:7951,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7957,1
    - Dst: gf_dash_set_tiles_quality
      Src: /src/gpac/src/media_tools/dash_client.c:7972,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7979,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7979,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:7983,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:7985,1
    - Dst: GF_DashClient*::dash_io::get_bytes_per_sec
      Src: /src/gpac/src/media_tools/dash_client.c:8006,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8023,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:8027,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8032,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8040,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8049,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8075,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:8079,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8083,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8086,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8088,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8093,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8093,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8095,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8165,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8172,1
    - Dst: gf_dash_get_tiles_quality_rank
      Src: /src/gpac/src/media_tools/dash_client.c:8178,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:8180,1
    - Dst: dash_do_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:8187,1
    - Dst: dash_do_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:8190,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8197,1
    CyclomaticComplexity: 96
    EdgeCount: 96
    ICount: 208
    argCount: 2
    argNames:
    - dash
    - for_postponed_only
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8207
      start: 7928
    functionDepth: 8
    functionLinenumber: 7928
    functionLinenumberEnd: 8207
    functionName: dash_global_rate_adaptation
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_DashClient*::dash_io::get_bytes_per_sec
    - GF_LOG
    - gf_assert
    - dash_do_rate_adaptation
    - MAX
    - gf_list_get
    - gf_dash_set_tiles_quality
    - gf_dash_get_tiles_quality_rank
    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:8220,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8227,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8232,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8241,1
    - Dst: gf_dash_download_init_segment
      Src: /src/gpac/src/media_tools/dash_client.c:8247,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8252,1
    - Dst: dash_setup_period_and_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8256,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8274,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8280,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8285,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8299,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 75
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8310
      start: 8212
    functionDepth: 13
    functionLinenumber: 8212
    functionLinenumberEnd: 8310
    functionName: dash_setup_period_and_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_dash_download_init_segment
    - dash_setup_period_and_groups
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_get
    - gf_dash_setup_period
    - gf_dash_reset_groups
    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:8314,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8320,1
    - Dst: gf_dash_group_reset
      Src: /src/gpac/src/media_tools/dash_client.c:8325,1
    - Dst: dash_download_group
      Src: /src/gpac/src/media_tools/dash_client.c:8337,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 20
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8343
      start: 8312
    functionDepth: 10
    functionLinenumber: 8312
    functionLinenumberEnd: 8343
    functionName: dash_do_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_group_reset
    - dash_download_group
    - gf_list_get
    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:8349,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8366,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8368,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8368,1
    - Dst: gf_dash_update_manifest
      Src: /src/gpac/src/media_tools/dash_client.c:8372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8379,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8382,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8382,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8393,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8404,1
    - Dst: gf_dash_group_check_time
      Src: /src/gpac/src/media_tools/dash_client.c:8419,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8426,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8429,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8443,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8447,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8477,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8480,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:8483,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:8484,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:8484,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/dash_client.c:8487,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/dash_client.c:8489,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8501,1
    - Dst: dash_global_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:8511,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 128
    argCount: 2
    argNames:
    - dash
    - cache_is_full
    argTypes:
    - GF_DashClient*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8514
      start: 8345
    functionDepth: 12
    functionLinenumber: 8345
    functionLinenumberEnd: 8514
    functionName: dash_check_mpd_update_and_cache
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - dash_global_rate_adaptation
    - GF_LOG
    - gf_dash_group_check_time
    - gf_list_pop_back
    - gf_sys_clock
    - gf_assert
    - gf_list_new
    - gf_dash_update_manifest
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_get
    - gf_strdup
    - gf_list_add
    - gf_dash_reset_groups
    - gf_error_to_string
    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:8528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8535,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8536,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8538,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:8540,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8545,1
    - Dst: gf_dash_open
      Src: /src/gpac/src/media_tools/dash_client.c:8554,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8558,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8558,1
    - Dst: gf_dash_open
      Src: /src/gpac/src/media_tools/dash_client.c:8559,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8561,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8561,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:8564,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:8565,1
    - Dst: gf_dash_check_periods
      Src: /src/gpac/src/media_tools/dash_client.c:8571,1
    - Dst: gf_dash_update_manifest
      Src: /src/gpac/src/media_tools/dash_client.c:8579,1
    - Dst: dash_setup_period_and_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8587,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8598,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:8602,1
    - Dst: GF_DashClient*::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:8609,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8622,1
    - Dst: gf_dash_set_group_representation
      Src: /src/gpac/src/media_tools/dash_client.c:8624,1
    - Dst: gf_dash_seek_periods
      Src: /src/gpac/src/media_tools/dash_client.c:8631,1
    - Dst: dash_check_mpd_update_and_cache
      Src: /src/gpac/src/media_tools/dash_client.c:8635,1
    - Dst: dash_do_groups
      Src: /src/gpac/src/media_tools/dash_client.c:8648,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 117
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8654
      start: 8519
    functionDepth: 14
    functionLinenumber: 8519
    functionLinenumberEnd: 8654
    functionName: gf_dash_process_internal
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - dash_check_mpd_update_and_cache
    - GF_LOG
    - gf_dash_check_periods
    - gf_sys_clock
    - gf_dash_seek_periods
    - dash_setup_period_and_groups
    - gf_dash_update_manifest
    - dash_do_groups
    - gf_dash_set_group_representation
    - GF_DashClient*::dash_io::on_dash_event
    - gf_list_get
    - gf_dash_open
    - gf_dash_reset_groups
    - gf_error_to_string
    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:8658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8659
      start: 8656
    functionDepth: 15
    functionLinenumber: 8656
    functionLinenumberEnd: 8659
    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:8674,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8685,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8689,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:8694,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8712,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 46
    argCount: 2
    argNames:
    - dash
    - time
    argTypes:
    - GF_DashClient*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8717
      start: 8662
    functionDepth: 12
    functionLinenumber: 8662
    functionLinenumberEnd: 8717
    functionName: gf_dash_period_index_from_time
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_solve_period_xlink
    - gf_sys_clock
    - gf_list_get
    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:8723,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8726,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:8728,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8729,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8731,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8732,1
    - Dst: dash_check_supported_mime
      Src: /src/gpac/src/media_tools/dash_client.c:8735,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8736
      start: 8719
    functionDepth: 13
    functionLinenumber: 8719
    functionLinenumberEnd: 8736
    functionName: gf_dash_check_periods
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_LOG
    - dash_check_supported_mime
    - gf_dash_period_index_from_time
    - gf_list_get
    - 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:8754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8755,1
    - Dst: gf_dash_solve_period_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:8759,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8772,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 2
    argNames:
    - dash
    - seek_time
    argTypes:
    - GF_DashClient*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8794
      start: 8739
    functionDepth: 12
    functionLinenumber: 8739
    functionLinenumberEnd: 8794
    functionName: gf_dash_seek_periods
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_dash_solve_period_xlink
    - gf_list_get
    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:8798,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8800,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8803,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8805,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:8807,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/dash_client.c:8808,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:8814,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:8815,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 2
    argNames:
    - group
    - select
    argTypes:
    - GF_DASH_Group*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8818
      start: 8796
    functionDepth: 1
    functionLinenumber: 8796
    functionLinenumberEnd: 8818
    functionName: gather_ssr_rep
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_add
    - gf_list_insert
    - gf_list_get
    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:8826,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:8832,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:8835,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8837,1
    - Dst: gather_ssr_rep
      Src: /src/gpac/src/media_tools/dash_client.c:8838,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8840,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8841,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8842,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:8844,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:8846,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:8856,1
    - Dst: gf_mpd_seek_in_period
      Src: /src/gpac/src/media_tools/dash_client.c:8864,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8866,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8866,1
    - Dst: dash_ssr_adjust_group_start
      Src: /src/gpac/src/media_tools/dash_client.c:8884,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:8897,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8901,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8903,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:8906,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: 8911
      start: 8819
    functionDepth: 4
    functionLinenumber: 8819
    functionLinenumberEnd: 8911
    functionName: gf_dash_seek_group
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - dash_ssr_adjust_group_start
    - gf_list_del
    - gf_list_get
    - gf_mpd_seek_in_period
    - GF_LOG
    - gf_list_find
    - gf_dash_group_reset_cache_entry
    - gf_list_new
    - gather_ssr_rep
    - gf_error_to_string
    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:8916,1
    - Dst: gf_dash_seek_group
      Src: /src/gpac/src/media_tools/dash_client.c:8918,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: 8919
      start: 8913
    functionDepth: 5
    functionLinenumber: 8913
    functionLinenumberEnd: 8919
    functionName: gf_dash_group_seek
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_seek_group
    - gf_list_get
    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:8928,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8933,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8934,1
    - Dst: gf_dash_seek_group
      Src: /src/gpac/src/media_tools/dash_client.c:8937,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: 8939
      start: 8921
    functionDepth: 5
    functionLinenumber: 8921
    functionLinenumberEnd: 8939
    functionName: gf_dash_seek_groups
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_seek_group
    - gf_list_get
    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:8950,1
    - Dst: GF_DashClient*::dash_io::setup_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:8957,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:8962,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:8963,1
    - Dst: GF_DashClient*::dash_io::setup_from_url
      Src: /src/gpac/src/media_tools/dash_client.c:8968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:8971,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:8971,1
    - Dst: GF_DashClient*::dash_io::init
      Src: /src/gpac/src/media_tools/dash_client.c:8977,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:8981,1
    - Dst: GF_DashClient*::dash_io::run
      Src: /src/gpac/src/media_tools/dash_client.c:8987,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 2
    argNames:
    - getter
    - url
    argTypes:
    - GF_FileDownload*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8988
      start: 8942
    functionDepth: 1
    functionLinenumber: 8942
    functionLinenumberEnd: 8988
    functionName: http_ifce_get
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_DashClient*::dash_io::run
    - GF_LOG
    - GF_DashClient*::dash_io::create
    - GF_DashClient*::dash_io::init
    - GF_DashClient*::dash_io::del
    - gf_list_get
    - GF_DashClient*::dash_io::setup_from_url
    - gf_error_to_string
    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:8993,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - getter
    argTypes:
    - GF_FileDownload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8995
      start: 8990
    functionDepth: 0
    functionLinenumber: 8990
    functionLinenumberEnd: 8995
    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:9000,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - getter
    argTypes:
    - GF_FileDownload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9002
      start: 8997
    functionDepth: 0
    functionLinenumber: 8997
    functionLinenumberEnd: 9002
    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:9007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - getter
    argTypes:
    - GF_FileDownload*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9009
      start: 9004
    functionDepth: 0
    functionLinenumber: 9004
    functionLinenumberEnd: 9009
    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:9024,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:9030,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:9037,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9048,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:9052,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9055,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9058,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:9058,1
    - Dst: gf_dash_download_resource
      Src: /src/gpac/src/media_tools/dash_client.c:9061,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9063,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:9063,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9064,1
    - Dst: GF_DashClient*::dash_io::get_mime
      Src: /src/gpac/src/media_tools/dash_client.c:9069,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:9070,1
    - Dst: strlwr
      Src: /src/gpac/src/media_tools/dash_client.c:9071,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:9073,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9076,1
    - Dst: gf_dash_set_base_url
      Src: /src/gpac/src/media_tools/dash_client.c:9077,1
    - Dst: GF_DashClient*::dash_io::get_cache_name
      Src: /src/gpac/src/media_tools/dash_client.c:9080,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9082,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9083,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:9092,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:9093,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:9095,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:9097,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:9100,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:9107,1
    - Dst: dash_get_fetch_time
      Src: /src/gpac/src/media_tools/dash_client.c:9109,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:9111,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:9114,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/dash_client.c:9116,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9119,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:9119,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/dash_client.c:9126,1
    - Dst: gf_fread
      Src: /src/gpac/src/media_tools/dash_client.c:9128,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/dash_client.c:9131,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9135,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/dash_client.c:9141,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/dash_client.c:9142,1
    - Dst: gf_strcat
      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:9146,1
    - Dst: GF_DashClient*::dash_io::get_url
      Src: /src/gpac/src/media_tools/dash_client.c:9148,1
    - Dst: gf_m3u8_to_mpd
      Src: /src/gpac/src/media_tools/dash_client.c:9151,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/media_tools/dash_client.c:9155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9156,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/dash_client.c:9157,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:9159,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/media_tools/dash_client.c:9159,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/media_tools/dash_client.c:9160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9161,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:9166,1
    - Dst: gf_dash_check_mpd_root_type
      Src: /src/gpac/src/media_tools/dash_client.c:9169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9174,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9180,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/dash_client.c:9183,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/media_tools/dash_client.c:9184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9190,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/media_tools/dash_client.c:9190,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:9191,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9192,1
    - Dst: gf_mpd_init_smooth_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:9198,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:9198,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/media_tools/dash_client.c:9200,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/dash_client.c:9200,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/dash_client.c:9202,1
    - Dst: gf_mpd_split_adaptation_sets
      Src: /src/gpac/src/media_tools/dash_client.c:9205,1
    - Dst: dash_purge_xlink
      Src: /src/gpac/src/media_tools/dash_client.c:9208,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/dash_client.c:9213,1
    - Dst: GF_DashClient*::dash_io::manifest_updated
      Src: /src/gpac/src/media_tools/dash_client.c:9214,1
    - Dst: GF_DashClient*::dash_io::get_header_value
      Src: /src/gpac/src/media_tools/dash_client.c:9220,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9222,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9228,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:9228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9231,1
    - Dst: gf_dash_check_periods
      Src: /src/gpac/src/media_tools/dash_client.c:9237,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9241,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9242,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9243,1
    - Dst: dash_check_chaining
      Src: /src/gpac/src/media_tools/dash_client.c:9244,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9252,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:9257,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 196
    argCount: 2
    argNames:
    - dash
    - manifest_url
    argTypes:
    - GF_DashClient*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9260
      start: 9011
    functionDepth: 14
    functionLinenumber: 9011
    functionLinenumberEnd: 9260
    functionName: gf_dash_open
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - gf_xml_dom_del
    - strlwr
    - gf_file_basename
    - GF_DashClient*::dash_io::get_cache_name
    - gf_list_add
    - gf_xml_dom_create_attribute
    - strstr
    - gf_xml_dom_get_error
    - dash_get_fetch_time
    - gf_dash_download_resource
    - gf_xml_dom_parse
    - gf_fopen
    - gf_dash_check_mpd_root_type
    - gf_mpd_new
    - gf_mpd_split_adaptation_sets
    - gf_strcpy
    - gf_file_ext_start
    - gf_m3u8_to_mpd
    - gf_dash_set_base_url
    - gf_dash_check_periods
    - strnicmp
    - GF_DashClient*::dash_io::manifest_updated
    - gf_log_tool_level_on
    - gf_xml_dom_new
    - strrchr
    - gf_mpd_del
    - strcmp
    - GF_DashClient*::dash_io::get_mime
    - gf_list_new
    - gf_error_to_string
    - GF_DashClient*::dash_io::del
    - gf_xml_dom_get_root
    - dash_purge_xlink
    - gf_fclose
    - dash_check_chaining
    - gf_mpd_init_smooth_from_dom
    - GF_LOG
    - gf_strcat
    - GF_DashClient*::dash_io::get_url
    - gf_mpd_init_from_dom
    - gf_fread
    - memset
    - gf_mpd_write
    - gf_dash_reset_groups
    - strncmp
    - GF_DashClient*::dash_io::get_header_value
    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:9265,1
    - Dst: GF_DashClient*::dash_io::del
      Src: /src/gpac/src/media_tools/dash_client.c:9271,1
    - Dst: GF_DashClient*::getter::del_session
      Src: /src/gpac/src/media_tools/dash_client.c:9276,1
    - Dst: gf_mpd_del
      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_free
      Src: /src/gpac/src/media_tools/dash_client.c:9287,1
    - Dst: gf_dash_reset_groups
      Src: /src/gpac/src/media_tools/dash_client.c:9293,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/media_tools/dash_client.c:9297,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/dash_client.c:9301,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9307
      start: 9262
    functionDepth: 5
    functionLinenumber: 9262
    functionLinenumberEnd: 9307
    functionName: gf_dash_close
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_mpd_representation_free
    - gf_mpd_del
    - GF_DashClient*::getter::del_session
    - gf_dash_reset_groups
    - GF_DashClient*::dash_io::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: 9338
      start: 9309
    functionDepth: 0
    functionLinenumber: 9309
    functionLinenumberEnd: 9338
    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:9361,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: 9363
      start: 9340
    functionDepth: 0
    functionLinenumber: 9340
    functionLinenumberEnd: 9363
    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:9368,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: 9369
      start: 9365
    functionDepth: 0
    functionLinenumber: 9365
    functionLinenumberEnd: 9369
    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: 9384
      start: 9371
    functionDepth: 0
    functionLinenumber: 9371
    functionLinenumberEnd: 9384
    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:9391,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:9395,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/dash_client.c:9405,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9421,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/media_tools/dash_client.c:9424,1
    - Dst: on_group_download_error
      Src: /src/gpac/src/media_tools/dash_client.c:9425,1
    - Dst: gf_dash_is_running
      Src: /src/gpac/src/media_tools/dash_client.c:9426,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9431
      start: 9386
    functionDepth: 6
    functionLinenumber: 9386
    functionLinenumberEnd: 9431
    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_LOG
    - gf_sys_is_cov_mode
    - gf_dash_is_running
    - GF_SAFEALLOC
    - on_group_download_error
    - gf_strdup
    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:9438,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9440,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/media_tools/dash_client.c:9441,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9442,1
    - Dst: gf_list_del
      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
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9447,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9448,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:9450,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9451
      start: 9433
    functionDepth: 6
    functionLinenumber: 9433
    functionLinenumberEnd: 9451
    functionName: gf_dash_del
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_dash_close
    - gf_list_pop_back
    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: 9457
      start: 9453
    functionDepth: 0
    functionLinenumber: 9453
    functionLinenumberEnd: 9457
    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: 9463
      start: 9459
    functionDepth: 0
    functionLinenumber: 9459
    functionLinenumberEnd: 9463
    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: 9469
      start: 9465
    functionDepth: 0
    functionLinenumber: 9465
    functionLinenumberEnd: 9469
    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: 9475
      start: 9471
    functionDepth: 0
    functionLinenumber: 9471
    functionLinenumberEnd: 9475
    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: 9481
      start: 9477
    functionDepth: 0
    functionLinenumber: 9477
    functionLinenumberEnd: 9481
    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: 9489
      start: 9483
    functionDepth: 0
    functionLinenumber: 9483
    functionLinenumberEnd: 9489
    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: 9495
      start: 9491
    functionDepth: 0
    functionLinenumber: 9491
    functionLinenumberEnd: 9495
    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:9500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9501
      start: 9497
    functionDepth: 1
    functionLinenumber: 9497
    functionLinenumberEnd: 9501
    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:9507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9510
      start: 9504
    functionDepth: 1
    functionLinenumber: 9504
    functionLinenumberEnd: 9510
    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:9515,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dash
    - idx
    - udta
    argTypes:
    - GF_DashClient*
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9519
      start: 9512
    functionDepth: 1
    functionLinenumber: 9512
    functionLinenumberEnd: 9519
    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:9524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9529
      start: 9521
    functionDepth: 1
    functionLinenumber: 9521
    functionLinenumberEnd: 9529
    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:9534,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9540
      start: 9531
    functionDepth: 1
    functionLinenumber: 9531
    functionLinenumberEnd: 9540
    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:9545,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - dash
    - title
    - source
    argTypes:
    - GF_DashClient*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9548
      start: 9542
    functionDepth: 1
    functionLinenumber: 9542
    functionLinenumberEnd: 9548
    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:9555,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9559,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9571,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9572,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:9592,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9607,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9626,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:9628,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9654,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:9656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:9674,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/dash_client.c:9676,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:9678,1
    - Dst: gf_dash_group_count_rep_needed
      Src: /src/gpac/src/media_tools/dash_client.c:9686,1
    - Dst: gf_dash_set_tiles_quality
      Src: /src/gpac/src/media_tools/dash_client.c:9689,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 104
    argCount: 2
    argNames:
    - dash
    - switch_up
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9692
      start: 9551
    functionDepth: 8
    functionLinenumber: 9551
    functionLinenumberEnd: 9692
    functionName: gf_dash_switch_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_group_count_rep_needed
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - memset
    - gf_dash_group_reset_cache_entry
    - memmove
    - gf_dash_set_tiles_quality
    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:9697,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9698
      start: 9694
    functionDepth: 2
    functionLinenumber: 9694
    functionLinenumberEnd: 9698
    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:9703,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9706
      start: 9700
    functionDepth: 1
    functionLinenumber: 9700
    functionLinenumberEnd: 9706
    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: 9712
      start: 9708
    functionDepth: 0
    functionLinenumber: 9708
    functionLinenumberEnd: 9712
    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: 9717
      start: 9714
    functionDepth: 0
    functionLinenumber: 9714
    functionLinenumberEnd: 9717
    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: 9721
      start: 9718
    functionDepth: 0
    functionLinenumber: 9718
    functionLinenumberEnd: 9721
    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:9728,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/dash_client.c:9735,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9737,1
    - Dst: gf_dash_get_mime_type
      Src: /src/gpac/src/media_tools/dash_client.c:9739,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9751,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9753,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: 9762
      start: 9724
    functionDepth: 2
    functionLinenumber: 9724
    functionLinenumberEnd: 9762
    functionName: gf_dash_group_get_segment_init_url
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_get_mime_type
    - gf_dash_get_active_group
    - gf_list_get
    - 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:9768,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9771,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:9777,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: 9779
      start: 9764
    functionDepth: 2
    functionLinenumber: 9764
    functionLinenumberEnd: 9779
    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:9786,1
    - Dst: gf_list_count
      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: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9792,1
    - Dst: strcmp
      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: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9797,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9799,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9800,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9801,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9807,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9809,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:9810,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:9813,1
    - Dst: sscanf
      Src: /src/gpac/src/media_tools/dash_client.c:9822,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
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:9834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9835,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9837,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: 9845
      start: 9781
    functionDepth: 2
    functionLinenumber: 9781
    functionLinenumberEnd: 9845
    functionName: gf_dash_group_get_clearkey_uri
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - sscanf
    - gf_dash_get_active_group
    - strcmp
    - gf_list_get
    - memset
    - strstr
    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:9850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9853
      start: 9848
    functionDepth: 2
    functionLinenumber: 9848
    functionLinenumberEnd: 9853
    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:9858,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9861
      start: 9855
    functionDepth: 1
    functionLinenumber: 9855
    functionLinenumberEnd: 9861
    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:9867,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9870
      start: 9863
    functionDepth: 1
    functionLinenumber: 9863
    functionLinenumberEnd: 9870
    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:9876,1
    - Dst: GF_DASH_Group*::dash::dash_io::on_dash_event
      Src: /src/gpac/src/media_tools/dash_client.c:9885,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/media_tools/dash_client.c:9891,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9892,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 3
    argNames:
    - dash
    - idx
    - select
    argTypes:
    - GF_DashClient*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9904
      start: 9872
    functionDepth: 2
    functionLinenumber: 9872
    functionLinenumberEnd: 9904
    functionName: gf_dash_group_select
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_DASH_Group*::dash::dash_io::on_dash_event
    - gf_dash_get_group_count
    - gf_list_get
    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:9914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9917,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9918,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:9923,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:9924,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/dash_client.c:9925,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/media_tools/dash_client.c:9927,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:9928,1
    - Dst: gf_lang_find
      Src: /src/gpac/src/media_tools/dash_client.c:9932,1
    - Dst: gf_lang_get_2cc
      Src: /src/gpac/src/media_tools/dash_client.c:9934,1
    - Dst: gf_lang_get_3cc
      Src: /src/gpac/src/media_tools/dash_client.c:9935,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9937,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9939,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:9942,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:9948,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:9949,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:9960,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:9964,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:9966,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/dash_client.c:9967,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/media_tools/dash_client.c:9969,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:9970,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/media_tools/dash_client.c:9972,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/dash_client.c:9979,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 47
    argCount: 2
    argNames:
    - dash
    - lang_code_rfc_5646
    argTypes:
    - GF_DashClient*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9980
      start: 9906
    functionDepth: 3
    functionLinenumber: 9906
    functionLinenumberEnd: 9980
    functionName: gf_dash_groups_set_language
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_list_del
    - stricmp
    - gf_lang_find
    - gf_list_new
    - strnicmp
    - gf_lang_get_2cc
    - gf_list_find
    - strlen
    - gf_list_get
    - gf_lang_get_3cc
    - gf_dash_group_select
    - gf_list_add
    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: 9986
      start: 9982
    functionDepth: 0
    functionLinenumber: 9982
    functionLinenumberEnd: 9986
    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: 9995
      start: 9988
    functionDepth: 0
    functionLinenumber: 9988
    functionLinenumberEnd: 9995
    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: 10001
      start: 9997
    functionDepth: 0
    functionLinenumber: 9997
    functionLinenumberEnd: 10001
    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:10005,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10007
      start: 10002
    functionDepth: 1
    functionLinenumber: 10002
    functionLinenumberEnd: 10007
    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:10019,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10024,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - dash
    - check_eos
    argTypes:
    - GF_DashClient*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10028
      start: 10008
    functionDepth: 1
    functionLinenumber: 10008
    functionLinenumberEnd: 10028
    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: 10033
      start: 10029
    functionDepth: 0
    functionLinenumber: 10029
    functionLinenumberEnd: 10033
    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:10043,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10044,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10048,1
    - Dst: gf_dash_get_max_available_speed
      Src: /src/gpac/src/media_tools/dash_client.c:10052,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:10055,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10062,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10063,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:10064,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10071,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10076,1
    - Dst: ABS
      Src: /src/gpac/src/media_tools/dash_client.c:10078,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 34
    argCount: 2
    argNames:
    - dash
    - speed
    argTypes:
    - GF_DashClient*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10081
      start: 10035
    functionDepth: 2
    functionLinenumber: 10035
    functionLinenumberEnd: 10081
    functionName: gf_dash_set_speed
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_dash_get_max_available_speed
    - ABS
    - gf_list_get
    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:10087,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10090,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: 10120
      start: 10083
    functionDepth: 2
    functionLinenumber: 10083
    functionLinenumberEnd: 10120
    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:10126,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10133,1
    - Dst: gf_dash_get_segment_start_time_with_timescale
      Src: /src/gpac/src/media_tools/dash_client.c:10143,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/media_tools/dash_client.c:10149,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: 10166
      start: 10122
    functionDepth: 4
    functionLinenumber: 10122
    functionLinenumberEnd: 10166
    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_timestamp_rescale
    - gf_dash_get_segment_start_time_with_timescale
    - gf_list_get
    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:10172,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10175,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10177,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10179
      start: 10168
    functionDepth: 2
    functionLinenumber: 10168
    functionLinenumberEnd: 10179
    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:10189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10191,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:10196,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/dash_client.c:10198,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:10199,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - dash
    - group
    argTypes:
    - GF_DashClient*
    - GF_DASH_Group*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10211
      start: 10181
    functionDepth: 1
    functionLinenumber: 10181
    functionLinenumberEnd: 10211
    functionName: gf_dash_group_discard_segment_internal
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - memset
    - gf_assert
    - gf_dash_group_reset_cache_entry
    - memmove
    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:10217,1
    - Dst: gf_dash_group_discard_segment_internal
      Src: /src/gpac/src/media_tools/dash_client.c:10218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10220,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10222,1
    - Dst: gf_dash_group_discard_segment_internal
      Src: /src/gpac/src/media_tools/dash_client.c:10223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10226
      start: 10212
    functionDepth: 2
    functionLinenumber: 10212
    functionLinenumberEnd: 10226
    functionName: gf_dash_group_discard_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_group_discard_segment_internal
    - gf_list_count
    - gf_list_get
    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:10231,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10236,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - dash
    - idx
    - done
    argTypes:
    - GF_DashClient*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10242
      start: 10228
    functionDepth: 1
    functionLinenumber: 10228
    functionLinenumberEnd: 10242
    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:10247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10250
      start: 10244
    functionDepth: 1
    functionLinenumber: 10244
    functionLinenumberEnd: 10250
    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:10255,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10258,1
    - Dst: gf_mpd_resolve_segment_duration
      Src: /src/gpac/src/media_tools/dash_client.c:10259,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: 10263
      start: 10252
    functionDepth: 2
    functionLinenumber: 10252
    functionLinenumberEnd: 10263
    functionName: gf_dash_group_get_presentation_time_offset
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_mpd_resolve_segment_duration
    - gf_dash_get_active_group
    - gf_list_get
    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: 41
    BranchProfiles: []
    Callsites:
    - Dst: gf_dash_get_active_group
      Src: /src/gpac/src/media_tools/dash_client.c:10283,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10311,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/dash_client.c:10332,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10336,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10360,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 101
    argCount: 16
    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
    - hls_disc_idx
    argTypes:
    - GF_DashClient*
    - u32
    - u32
    - char**
    - u64*
    - u64*
    - s32*
    - char**
    - u64*
    - u64*
    - char**
    - Bool*
    - char**
    - bin128*
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10371
      start: 10265
    functionDepth: 2
    functionLinenumber: 10265
    functionLinenumberEnd: 10371
    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, u32 *hls_disc_idx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10379,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/media_tools/dash_client.c:10392,1
    - Dst: gf_dash_seek_periods
      Src: /src/gpac/src/media_tools/dash_client.c:10408,1
    - Dst: gf_dash_seek_groups
      Src: /src/gpac/src/media_tools/dash_client.c:10410,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - dash
    - start_range
    argTypes:
    - GF_DashClient*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10412
      start: 10374
    functionDepth: 13
    functionLinenumber: 10374
    functionLinenumberEnd: 10412
    functionName: gf_dash_seek
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_dash_seek_groups
    - 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:10417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10419
      start: 10414
    functionDepth: 2
    functionLinenumber: 10414
    functionLinenumberEnd: 10419
    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: 10425
      start: 10421
    functionDepth: 0
    functionLinenumber: 10421
    functionLinenumberEnd: 10425
    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:10430,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10437,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10439,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: 10447
      start: 10427
    functionDepth: 1
    functionLinenumber: 10427
    functionLinenumberEnd: 10447
    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:10452,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10458,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10460,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: 10469
      start: 10449
    functionDepth: 1
    functionLinenumber: 10449
    functionLinenumberEnd: 10469
    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: 10477
      start: 10471
    functionDepth: 0
    functionLinenumber: 10471
    functionLinenumberEnd: 10477
    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: 10485
      start: 10479
    functionDepth: 0
    functionLinenumber: 10479
    functionLinenumberEnd: 10485
    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:10490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10494
      start: 10487
    functionDepth: 2
    functionLinenumber: 10487
    functionLinenumberEnd: 10494
    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:10499,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10502
      start: 10496
    functionDepth: 2
    functionLinenumber: 10496
    functionLinenumberEnd: 10502
    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: 10509
      start: 10505
    functionDepth: 0
    functionLinenumber: 10505
    functionLinenumberEnd: 10509
    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: 10515
      start: 10511
    functionDepth: 0
    functionLinenumber: 10511
    functionLinenumberEnd: 10515
    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:10519,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10522
      start: 10517
    functionDepth: 2
    functionLinenumber: 10517
    functionLinenumberEnd: 10522
    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: 10526
      start: 10523
    functionDepth: 0
    functionLinenumber: 10523
    functionLinenumberEnd: 10526
    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:10542,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10543,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10544,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10546,1
    - Dst: gf_dash_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:10547,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10549,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/media_tools/dash_client.c:10549,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/dash_client.c:10554,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10555,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10557,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10560,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/dash_client.c:10563,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10563,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10569,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10577,1
    - Dst: gf_dash_get_start_number
      Src: /src/gpac/src/media_tools/dash_client.c:10581,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10585,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10586,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10593,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10598,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10602,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10603,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10613,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10617,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10618,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/dash_client.c:10630,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10633,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:10640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10664,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10683,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10684,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10685,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: 10698
      start: 10530
    functionDepth: 1
    functionLinenumber: 10530
    functionLinenumberEnd: 10698
    functionName: gf_dash_resync_to_segment
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_start_number
    - gf_list_count
    - strchr
    - gf_free
    - atoi
    - gf_dash_resolve_url
    - GF_LOG
    - strcmp
    - gf_list_get
    - strlen
    - strstr
    - strncmp
    - gf_error_to_string
    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: 10712
      start: 10702
    functionDepth: 0
    functionLinenumber: 10702
    functionLinenumberEnd: 10712
    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: 10720
      start: 10714
    functionDepth: 0
    functionLinenumber: 10714
    functionLinenumberEnd: 10720
    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: 10726
      start: 10722
    functionDepth: 0
    functionLinenumber: 10722
    functionLinenumberEnd: 10726
    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: 10732
      start: 10728
    functionDepth: 0
    functionLinenumber: 10728
    functionLinenumberEnd: 10732
    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: 10739
      start: 10735
    functionDepth: 0
    functionLinenumber: 10735
    functionLinenumberEnd: 10739
    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:10754,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10761
      start: 10742
    functionDepth: 1
    functionLinenumber: 10742
    functionLinenumberEnd: 10761
    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:10775,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10781,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10788,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:10793,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10797
      start: 10765
    functionDepth: 1
    functionLinenumber: 10765
    functionLinenumberEnd: 10797
    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:10802,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10805
      start: 10799
    functionDepth: 1
    functionLinenumber: 10799
    functionLinenumberEnd: 10805
    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:10812,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10815,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10816,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/dash_client.c:10820,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10825,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10826,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:10828,1
    - Dst: gf_audio_fmt_get_num_channels_from_layout
      Src: /src/gpac/src/media_tools/dash_client.c:10829,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/media_tools/dash_client.c:10829,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10829,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 18
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10833
      start: 10807
    functionDepth: 2
    functionLinenumber: 10807
    functionLinenumberEnd: 10833
    functionName: gf_dash_group_get_audio_channels
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_get_layout_from_cicp
    - gf_list_count
    - atoi
    - gf_list_enum
    - gf_audio_fmt_get_num_channels_from_layout
    - gf_dash_get_active_group
    - strcmp
    - gf_list_get
    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:10838,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10840,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10842,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10844,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10845,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10849
      start: 10835
    functionDepth: 1
    functionLinenumber: 10835
    functionLinenumberEnd: 10849
    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:10854,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10856,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10857
      start: 10851
    functionDepth: 1
    functionLinenumber: 10851
    functionLinenumberEnd: 10857
    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:10862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10873,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10905,1
    - Dst: gf_mpd_resolve_url
      Src: /src/gpac/src/media_tools/dash_client.c:10919,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10925,1
    - Dst: strrchr
      Src: /src/gpac/src/media_tools/dash_client.c:10932,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10934,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10936,1
    - Dst: isdigit
      Src: /src/gpac/src/media_tools/dash_client.c:10939,1
    - Dst: atoi
      Src: /src/gpac/src/media_tools/dash_client.c:10953,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/dash_client.c:10954,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/dash_client.c:10955,1
    - Dst: snprintf
      Src: /src/gpac/src/media_tools/dash_client.c:10967,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10968,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10970,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/dash_client.c:10972,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: 10979
      start: 10859
    functionDepth: 3
    functionLinenumber: 10859
    functionLinenumberEnd: 10979
    functionName: gf_dash_group_get_template
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - atoi
    - gf_mpd_resolve_url
    - gf_list_get
    - gf_dynstrcat
    - strrchr
    - snprintf
    - strlen
    - isdigit
    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:10983,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10984,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10988,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:10991,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:10992,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - dash
    - idx
    - quality_idx
    argTypes:
    - GF_DashClient*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11001
      start: 10981
    functionDepth: 1
    functionLinenumber: 10981
    functionLinenumberEnd: 11001
    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:11008,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11012,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/dash_client.c:11015,1
    - Dst: gf_dash_group_get_audio_channels
      Src: /src/gpac/src/media_tools/dash_client.c:11026,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: 11074
      start: 11003
    functionDepth: 3
    functionLinenumber: 11003
    functionLinenumberEnd: 11074
    functionName: gf_dash_group_get_quality_info
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 1
    functionsReached:
    - memset
    - gf_dash_group_get_audio_channels
    - dash_get_group_for_quality
    - gf_list_get
    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:11080,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11081,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: 11086
      start: 11077
    functionDepth: 1
    functionLinenumber: 11077
    functionLinenumberEnd: 11086
    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:11092,1
    - Dst: gf_dash_group_enum_descriptor_list
      Src: /src/gpac/src/media_tools/dash_client.c:11125,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: 11126
      start: 11088
    functionDepth: 2
    functionLinenumber: 11088
    functionLinenumberEnd: 11126
    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: 11132
      start: 11128
    functionDepth: 0
    functionLinenumber: 11128
    functionLinenumberEnd: 11132
    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: 11140
      start: 11134
    functionDepth: 0
    functionLinenumber: 11134
    functionLinenumberEnd: 11140
    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:11146,1
    - Dst: dash_get_group_for_quality
      Src: /src/gpac/src/media_tools/dash_client.c:11150,1
    - Dst: gf_list_find
      Src: /src/gpac/src/media_tools/dash_client.c:11153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11155,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11163,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11165,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:11166,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11177,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11178,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11180,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/dash_client.c:11181,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11183,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: 11193
      start: 11142
    functionDepth: 2
    functionLinenumber: 11142
    functionLinenumberEnd: 11193
    functionName: gf_dash_group_select_quality
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_find
    - strcmp
    - gf_list_get
    - dash_get_group_for_quality
    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:11198,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11202,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11203,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11205,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11207,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - dash
    - idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11210
      start: 11195
    functionDepth: 1
    functionLinenumber: 11195
    functionLinenumberEnd: 11210
    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: 11218
      start: 11212
    functionDepth: 0
    functionLinenumber: 11212
    functionLinenumberEnd: 11218
    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: 11224
      start: 11220
    functionDepth: 0
    functionLinenumber: 11220
    functionLinenumberEnd: 11224
    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:11229,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: 11237
      start: 11226
    functionDepth: 2
    functionLinenumber: 11226
    functionLinenumberEnd: 11237
    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:11242,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:11247,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: 11251
      start: 11239
    functionDepth: 2
    functionLinenumber: 11239
    functionLinenumberEnd: 11251
    functionName: gf_dash_group_set_buffer_levels
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_dash_get_active_group
    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: 11258
      start: 11254
    functionDepth: 0
    functionLinenumber: 11254
    functionLinenumberEnd: 11258
    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:11264,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:11266,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/media_tools/dash_client.c:11266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - dash
    - server_ntp
    argTypes:
    - GF_DashClient*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11271
      start: 11260
    functionDepth: 1
    functionLinenumber: 11260
    functionLinenumberEnd: 11271
    functionName: gf_dash_override_ntp
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_net_get_ntp_ts
    - gf_net_get_ntp_diff_ms
    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: 11276
      start: 11273
    functionDepth: 0
    functionLinenumber: 11273
    functionLinenumberEnd: 11276
    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: 11282
      start: 11278
    functionDepth: 0
    functionLinenumber: 11278
    functionLinenumberEnd: 11282
    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:11290,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11291,1
    - Dst: gf_dash_set_tiles_quality
      Src: /src/gpac/src/media_tools/dash_client.c:11292,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: 11294
      start: 11284
    functionDepth: 8
    functionLinenumber: 11284
    functionLinenumberEnd: 11294
    functionName: gf_dash_set_tile_adaptation_mode
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_dash_set_tiles_quality
    - gf_list_get
    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: 11300
      start: 11296
    functionDepth: 0
    functionLinenumber: 11296
    functionLinenumberEnd: 11300
    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: 11306
      start: 11302
    functionDepth: 0
    functionLinenumber: 11302
    functionLinenumberEnd: 11306
    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:11312,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: 11328
      start: 11309
    functionDepth: 1
    functionLinenumber: 11309
    functionLinenumberEnd: 11328
    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: 11334
      start: 11330
    functionDepth: 0
    functionLinenumber: 11330
    functionLinenumberEnd: 11334
    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: 11340
      start: 11336
    functionDepth: 0
    functionLinenumber: 11336
    functionLinenumberEnd: 11340
    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: 11346
      start: 11342
    functionDepth: 0
    functionLinenumber: 11342
    functionLinenumberEnd: 11346
    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:11351,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: 11355
      start: 11348
    functionDepth: 2
    functionLinenumber: 11348
    functionLinenumberEnd: 11355
    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:11360,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: 11366
      start: 11357
    functionDepth: 2
    functionLinenumber: 11357
    functionLinenumberEnd: 11366
    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:11408,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: 11415
      start: 11368
    functionDepth: 1
    functionLinenumber: 11368
    functionLinenumberEnd: 11415
    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:11420,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11432,1
    - Dst: dash_check_group_visible
      Src: /src/gpac/src/media_tools/dash_client.c:11433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/dash_client.c:11437,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11438,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11440,1
    - Dst: dash_check_group_visible
      Src: /src/gpac/src/media_tools/dash_client.c:11441,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: 11444
      start: 11416
    functionDepth: 2
    functionLinenumber: 11416
    functionLinenumberEnd: 11444
    functionName: gf_dash_group_set_visible_rect
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_dash_get_active_group
    - dash_check_group_visible
    - gf_list_get
    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:11453,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11466,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:11469,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/dash_client.c:11470,1
    - Dst: memmove
      Src: /src/gpac/src/media_tools/dash_client.c:11472,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11494,1
    - Dst: gf_dash_group_reset_cache_entry
      Src: /src/gpac/src/media_tools/dash_client.c:11507,1
    - Dst: on_group_download_error
      Src: /src/gpac/src/media_tools/dash_client.c:11515,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11519,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11520,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: 11524
      start: 11446
    functionDepth: 6
    functionLinenumber: 11446
    functionLinenumberEnd: 11524
    functionName: gf_dash_set_group_download_state
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - gf_dash_get_active_group
    - on_group_download_error
    - gf_dash_group_reset_cache_entry
    - memmove
    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:11528,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11533,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11535,1
    - Dst: dash_store_stats
      Src: /src/gpac/src/media_tools/dash_client.c:11539,1
    - Dst: dash_global_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:11542,1
    - Dst: dash_store_stats
      Src: /src/gpac/src/media_tools/dash_client.c:11544,1
    - Dst: dash_global_rate_adaptation
      Src: /src/gpac/src/media_tools/dash_client.c:11546,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: 11548
      start: 11526
    functionDepth: 9
    functionLinenumber: 11526
    functionLinenumberEnd: 11548
    functionName: gf_dash_group_store_stats
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - dash_global_rate_adaptation
    - gf_dash_get_active_group
    - gf_list_get
    - dash_store_stats
    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:11553,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11559
      start: 11550
    functionDepth: 0
    functionLinenumber: 11550
    functionLinenumberEnd: 11559
    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:11564,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11566,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 1
    argNames:
    - dash
    argTypes:
    - GF_DashClient*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11572
      start: 11561
    functionDepth: 1
    functionLinenumber: 11561
    functionLinenumberEnd: 11572
    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: 11578
      start: 11574
    functionDepth: 0
    functionLinenumber: 11574
    functionLinenumberEnd: 11578
    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:11583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - dash
    - group_idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11586
      start: 11580
    functionDepth: 2
    functionLinenumber: 11580
    functionLinenumberEnd: 11586
    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:11600,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/dash_client.c:11620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11623,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/dash_client.c:11638,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/dash_client.c:11642,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: 11650
      start: 11589
    functionDepth: 2
    functionLinenumber: 11589
    functionLinenumberEnd: 11650
    functionName: gf_dash_group_push_tfrf
    functionSourceFile: /src/gpac/src/media_tools/dash_client.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_SAFEALLOC
    - gf_dash_get_active_group
    - gf_list_get
    - gf_list_add
    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:11654,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dash
    - group_idx
    argTypes:
    - GF_DashClient*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11658
      start: 11652
    functionDepth: 2
    functionLinenumber: 11652
    functionLinenumberEnd: 11658
    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:11665,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/dash_client.c:11668,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: 11674
      start: 11660
    functionDepth: 1
    functionLinenumber: 11660
    functionLinenumberEnd: 11674
    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:
    - memmove
    - gf_realloc
    - w
    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:
    - memset
    - gf_free
    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:
    - memset
    - gf_free
    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:
    - memmove
    - _os_lacing_expand
    - memcpy
    - _os_body_expand
    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:
    - memmove
    - memcpy
    - ogg_page_checksum_set
    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:
    - ogg_sync_init
    - gf_free
    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:
    - ogg_sync_clear
    - gf_free
    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_realloc
    - gf_malloc
    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:
    - memchr
    - memcmp
    - memset
    - memcpy
    - ogg_page_checksum_set
    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:
    - ogg_page_continued
    - ogg_page_pageno
    - ogg_page_bos
    - _os_lacing_expand
    - ogg_page_granulepos
    - ogg_page_eos
    - ogg_page_serialno
    - _os_body_expand
    - memmove
    - memcpy
    - ogg_page_version
    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:
    - memset
    - gf_free
    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:
    - GF_LOG
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    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: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:89,1
    - Dst: gf_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_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:101,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:102,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/media_export.c:103,1
    - Dst: stricmp
      Src: /src/gpac/src/media_tools/media_export.c:103,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/media_export.c:106,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:107,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:109,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:110,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/media_export.c:114,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:117,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:120,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:123,1
    - Dst: gf_fputc
      Src: /src/gpac/src/media_tools/media_export.c:134,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:137,1
    - Dst: CLIP
      Src: /src/gpac/src/media_tools/media_export.c:137,1
    - Dst: CLIP
      Src: /src/gpac/src/media_tools/media_export.c:137,1
    - Dst: CLIP
      Src: /src/gpac/src/media_tools/media_export.c:137,1
    - Dst: gf_fputc
      Src: /src/gpac/src/media_tools/media_export.c:140,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:143,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:144,1
    - Dst: gf_fputs
      Src: /src/gpac/src/media_tools/media_export.c:147,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/media_tools/media_export.c:150,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:151,1
    - Dst: vobsub_lang_id
      Src: /src/gpac/src/media_tools/media_export.c:151,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:152,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:155,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:163,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:175,1
    - Dst: gf_ftell
      Src: /src/gpac/src/media_tools/media_export.c:175,1
    - Dst: vobsub_packetize_subpicture
      Src: /src/gpac/src/media_tools/media_export.c:176,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:177,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:178,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:179,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:180,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:183,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:184,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:193,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:196,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:197,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 84
    argCount: 5
    argNames:
    - dumper
    - szName
    - track
    - dsi
    - dsiSize
    argTypes:
    - GF_MediaExporter*
    - char*
    - u32
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 69
    functionDepth: 3
    functionLinenumber: 69
    functionLinenumberEnd: 203
    functionName: gf_dump_to_vobsub
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - vobsub_lang_id
    - gf_fputc
    - gf_file_basename
    - gf_export_message
    - CLIP
    - gf_isom_get_sample_count
    - gf_isom_get_sample
    - gf_isom_get_filename
    - gf_fopen
    - gf_isom_get_track_layout_info
    - gf_fputs
    - gf_isom_get_media_language
    - gf_strcpy
    - gf_file_ext_start
    - gf_ftell
    - gf_set_progress
    - gf_fprintf
    - vobsub_packetize_subpicture
    - gf_fclose
    - gf_free
    - gf_strcat
    - stricmp
    - gf_isom_sample_del
    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: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    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:219,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:219,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_export.c:223,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_export.c:224,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:229,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:232,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/media_tools/media_export.c:239,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:239,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:239,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/media_tools/media_export.c:240,1
    - Dst: gf_isom_has_keep_utc_times
      Src: /src/gpac/src/media_tools/media_export.c:242,1
    - Dst: gf_isom_get_track_creation_time
      Src: /src/gpac/src/media_tools/media_export.c:244,1
    - Dst: gf_isom_set_track_creation_time
      Src: /src/gpac/src/media_tools/media_export.c:245,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/media_tools/media_export.c:249,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/src/media_tools/media_export.c:251,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_export.c:257,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/media_export.c:264,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/media_tools/media_export.c:269,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/media_tools/media_export.c:275,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/media_tools/media_export.c:276,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:284,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:285,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:287,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/media_tools/media_export.c:288,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:299,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:300,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:302,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:305,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:311,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/media_tools/media_export.c:316,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:320,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/media_tools/media_export.c:321,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/media_export.c:324,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/media_tools/media_export.c:328,1
    - Dst: gf_isom_get_root_od
      Src: /src/gpac/src/media_tools/media_export.c:331,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:335,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:336,1
    - Dst: gf_export_message
      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:339,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:340,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:345,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/media_tools/media_export.c:352,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:353,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:357,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:358,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:363,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/media_export.c:370,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:371,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:375,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/media_tools/media_export.c:376,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: 377
      start: 209
    functionDepth: 9
    functionLinenumber: 209
    functionLinenumberEnd: 377
    functionName: gf_export_isom_copy_track
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_duration
    - gf_isom_get_media_type
    - gf_isom_change_mpeg4_description
    - gf_isom_add_sample
    - gf_isom_get_sample_count
    - gf_export_message
    - gf_isom_set_visual_info
    - gf_isom_set_track_layout_info
    - gf_isom_get_sample
    - gf_isom_new_mpeg4_description
    - gf_isom_get_visual_info
    - gf_isom_has_keep_utc_times
    - gf_isom_get_media_timescale
    - gf_m4v_get_config
    - gf_isom_get_track_creation_time
    - gf_isom_set_pl_indication
    - gf_isom_remove_root_od
    - gf_isom_get_esd
    - gf_isom_get_track_layout_info
    - gf_m4a_get_config
    - gf_isom_get_root_od
    - gf_set_progress
    - gf_isom_new_track
    - gf_isom_set_track_creation_time
    - gf_isom_get_track_id
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - gf_isom_set_track_enabled
    - gf_isom_clone_sample_description
    - gf_odf_desc_del
    - gf_isom_get_track_by_id
    - gf_isom_sample_del
    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:488,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:489,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_export.c:489,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:492,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:497,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:501,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:502,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:504,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:505,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:509,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:510,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:512,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:513,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:514,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:517,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:523,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:526,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/media_tools/media_export.c:526,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/media_tools/media_export.c:526,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:528,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/media_tools/media_export.c:531,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:533,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:534,1
    - Dst: gf_isom_get_handler_name
      Src: /src/gpac/src/media_tools/media_export.c:538,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:540,1
    - Dst: gf_isom_is_track_in_root_od
      Src: /src/gpac/src/media_tools/media_export.c:542,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:542,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:543,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:545,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/media_tools/media_export.c:545,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:550,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:552,1
    - Dst: gf_isom_is_video_handler_type
      Src: /src/gpac/src/media_tools/media_export.c:554,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/media_tools/media_export.c:555,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:556,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:557,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/media_tools/media_export.c:561,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:562,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:563,1
    - Dst: gf_isom_get_track_layout_info
      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:570,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:571,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:588,1
    - Dst: gf_webvtt_dump_header_boxed
      Src: /src/gpac/src/media_tools/media_export.c:589,1
    - Dst: gf_webvtt_dump_header_boxed
      Src: /src/gpac/src/media_tools/media_export.c:593,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:594,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/media_export.c:598,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:602,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:606,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/media_tools/media_export.c:608,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:609,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:609,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:610,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:610,1
    - Dst: gf_isom_is_video_handler_type
      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_4cc_to_str
      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:622,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:623,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:625,1
    - Dst: gf_4cc_to_str
      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_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:629,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:630,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/media_export.c:634,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:638,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:639,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:642,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:645,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:646,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:648,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:651,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:653,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/media_export.c:658,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/media_export.c:659,1
    - Dst: gf_webvtt_timestamp_set
      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_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/media_export.c:663,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:666,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: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_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:672,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:673,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:676,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/media_export.c:680,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:682,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/media_export.c:686,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/media_export.c:687,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:689,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:690,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:693,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:696,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:697,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:700,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:701,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 200
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 474
    functionDepth: 7
    functionLinenumber: 474
    functionLinenumberEnd: 703
    functionName: gf_media_export_webvtt_metadata
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_type
    - gf_gpac_version
    - gf_file_basename
    - gf_export_message
    - gf_isom_is_video_handler_type
    - gf_isom_get_generic_sample_description
    - gf_isom_get_sample_count
    - gf_isom_get_sample
    - gf_fwrite
    - gf_isom_get_filename
    - gf_isom_get_sample_duration
    - gf_isom_get_visual_info
    - gf_isom_is_track_in_root_od
    - gf_malloc
    - gf_webvtt_dump_header_boxed
    - gf_fopen
    - gf_isom_get_esd
    - gf_isom_get_track_layout_info
    - gf_isom_get_media_language
    - gf_sys_is_test_mode
    - gf_realloc
    - gf_isom_get_handler_name
    - gf_set_progress
    - gf_base64_encode
    - gf_fprintf
    - gf_isom_get_media_subtype
    - sprintf
    - gf_odf_desc_del
    - gf_fclose
    - gf_free
    - gf_webvtt_timestamp_dump
    - GF_LOG
    - gf_isom_get_track_by_id
    - gf_isom_sample_del
    - gf_isom_get_audio_info
    - gf_webvtt_timestamp_set
    - gf_4cc_to_str
    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:722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:723,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/media_tools/media_export.c:723,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:726,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:732,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:734,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:735,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:737,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:738,1
    - Dst: sprintf
      Src: /src/gpac/src/media_tools/media_export.c:741,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:744,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:746,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:747,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:748,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:759,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_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:764,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:765,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:766,1
    - Dst: gf_webvtt_dump_header_boxed
      Src: /src/gpac/src/media_tools/media_export.c:772,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:779,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:784,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/media_tools/media_export.c:786,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:789,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:792,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:795,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:797,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:801,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_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:809,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:810,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/media_export.c:813,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:814,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/media_export.c:817,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:818,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:819,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 80
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 708
    functionDepth: 7
    functionLinenumber: 708
    functionLinenumberEnd: 822
    functionName: gf_media_export_six
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_sample_count
    - gf_export_message
    - gf_isom_get_generic_sample_description
    - gf_isom_get_sample
    - gf_fwrite
    - gf_isom_get_filename
    - gf_isom_get_media_timescale
    - gf_webvtt_dump_header_boxed
    - gf_fopen
    - gf_isom_get_esd
    - gf_set_progress
    - gf_fprintf
    - gf_isom_get_media_subtype
    - sprintf
    - gf_odf_desc_del
    - gf_fclose
    - gf_free
    - GF_LOG
    - gf_isom_get_track_by_id
    - gf_isom_sample_del
    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:843,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/media_tools/media_export.c:844,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/media_export.c:847,1
    - Dst: memset
      Src: /src/gpac/src/media_tools/media_export.c:849,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:854,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/media_export.c:858,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/media_tools/media_export.c:859,1
    - Dst: gf_isom_find_od_id_for_track
      Src: /src/gpac/src/media_tools/media_export.c:861,1
    - Dst: gf_saf_mux_stream_add
      Src: /src/gpac/src/media_tools/media_export.c:866,1
    - Dst: gf_saf_mux_stream_add
      Src: /src/gpac/src/media_tools/media_export.c:868,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:872,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:876,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/media_export.c:897,1
    - Dst: gf_saf_mux_stream_add
      Src: /src/gpac/src/media_tools/media_export.c:898,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:903,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:912,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:913,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:914,1
    - Dst: gf_export_message
      Src: /src/gpac/src/media_tools/media_export.c:917,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/media_export.c:919,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:921,1
    - Dst: gf_strcat
      Src: /src/gpac/src/media_tools/media_export.c:922,1
    - Dst: gf_fopen
      Src: /src/gpac/src/media_tools/media_export.c:923,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:925,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:926,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/media_export.c:935,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:937,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:938,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/media_export.c:939,1
    - Dst: gf_saf_mux_add_au
      Src: /src/gpac/src/media_tools/media_export.c:942,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:944,1
    - Dst: gf_saf_mux_for_time
      Src: /src/gpac/src/media_tools/media_export.c:949,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:951,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:952,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/media_tools/media_export.c:954,1
    - Dst: gf_saf_mux_for_time
      Src: /src/gpac/src/media_tools/media_export.c:957,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/media_tools/media_export.c:959,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:960,1
    - Dst: gf_fclose
      Src: /src/gpac/src/media_tools/media_export.c:963,1
    - Dst: gf_saf_mux_del
      Src: /src/gpac/src/media_tools/media_export.c:965,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:966,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 120
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 829
    functionDepth: 7
    functionLinenumber: 829
    functionLinenumberEnd: 971
    functionName: gf_media_export_saf
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_isom_last_error
    - gf_isom_get_media_type
    - gf_saf_mux_stream_add
    - gf_isom_find_od_id_for_track
    - gf_isom_get_sample_count
    - gf_export_message
    - gf_isom_get_sample
    - gf_fwrite
    - gf_saf_mux_for_time
    - gf_malloc
    - gf_isom_get_media_timescale
    - gf_fopen
    - gf_isom_get_esd
    - gf_strcpy
    - gf_set_progress
    - strcmp
    - gf_isom_get_media_subtype
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_saf_mux_new
    - gf_isom_get_track_id
    - gf_free
    - gf_fclose
    - gf_strcat
    - gf_saf_mux_del
    - gf_saf_mux_add_au
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_media_export_saf(GF_MediaExporter *dumper)
  - BBCount: 112
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:987,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:994,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/media_tools/media_export.c:995,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/media_export.c:997,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/src/media_tools/media_export.c:1000,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/media_export.c:1001,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/src/media_tools/media_export.c:1004,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/media_tools/media_export.c:1008,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/media_tools/media_export.c:1018,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/media_tools/media_export.c:1019,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/media_tools/media_export.c:1021,1
    - Dst: gf_pixel_fmt_from_qt_type
      Src: /src/gpac/src/media_tools/media_export.c:1023,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1028,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:1028,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1036,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/media_tools/media_export.c:1036,1
    - Dst: gf_audio_fmt_from_isobmf
      Src: /src/gpac/src/media_tools/media_export.c:1039,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1041,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/media_tools/media_export.c:1041,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1044,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/media_tools/media_export.c:1044,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/media_tools/media_export.c:1048,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_export.c:1049,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1053,1
    - Dst: strchr
      Src: /src/gpac/src/media_tools/media_export.c:1054,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1084,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1086,1
    - Dst: gf_dump_to_vobsub
      Src: /src/gpac/src/media_tools/media_export.c:1096,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:1100,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/media_tools/media_export.c:1103,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/media_tools/media_export.c:1105,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/media_tools/media_export.c:1113,1
    - Dst: gf_media_import
      Src: /src/gpac/src/media_tools/media_export.c:1117,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/media_export.c:1119,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/media_tools/media_export.c:1138,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/media_export.c:1139,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/media_tools/media_export.c:1143,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: gf_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: gf_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: 379
    argCount: 1
    argNames:
    - dumper
    argTypes:
    - GF_MediaExporter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 974
    functionDepth: 13
    functionLinenumber: 974
    functionLinenumberEnd: 1393
    functionName: gf_media_export_filters
    functionSourceFile: /src/gpac/src/media_tools/media_export.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_media_type
    - gf_pixel_fmt_sname
    - gf_fs_print_stats
    - gf_fs_print_non_connected
    - gf_isom_get_sample_count
    - gf_audio_fmt_name
    - GF_SAFEALLOC
    - gf_audio_fmt_from_isobmf
    - strstr
    - strchr
    - gf_fs_print_unused_args
    - gf_fs_get_last_connect_error
    - gf_media_map_esd
    - gf_fs_load_destination
    - gf_dynstrcat
    - gf_codecid_from_oti
    - gf_filter_set_source
    - gf_codec_id_from_isobmf
    - gf_strcpy
    - gf_m4a_get_config
    - gf_file_ext_start
    - gf_fs_get_last_process_error
    - gf_fs_load_filter
    - strlen
    - gf_error_to_string
    - gf_isom_get_media_subtype
    - gf_odf_desc_del
    - gf_fs_new_defaults
    - gf_free
    - sprintf
    - gf_fs_run
    - GF_LOG
    - gf_pixel_fmt_from_qt_type
    - gf_fs_del
    - gf_isom_get_track_by_id
    - gf_dump_to_vobsub
    - gf_media_import
    - gf_fs_load_source
    - gf_4cc_to_str
    - gf_codecid_file_ext
    - gf_fs_print_connections
    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_saf
    - gf_media_export_filters
    - gf_media_export_isom
    - gf_media_export_webvtt_metadata
    - gf_media_export_six
    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_isom_box_new_parent
    - isspace
    - gf_malloc
    - GF_LOG
    - gf_isom_box_new
    - strlen
    - memcpy
    - gf_4cc_to_str
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/webvtt.c:143,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/media_tools/webvtt.c:145,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 148
    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:156,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:159,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:162,1
    - Dst: BOX_FIELD_ASSIGN
      Src: /src/gpac/src/media_tools/webvtt.c:165,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: 169
      start: 151
    functionDepth: 1
    functionLinenumber: 151
    functionLinenumberEnd: 169
    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:173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 174
    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:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 2
    functionLinenumber: 176
    functionLinenumberEnd: 179
    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:186,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: 190
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 190
    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:196,1
    - Dst: gf_isom_box_array_read
      Src: /src/gpac/src/media_tools/webvtt.c:200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 201
    functionName: wvtt_box_read
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_array_read
    - gf_isom_base_sample_entry_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:208,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/webvtt.c:211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 214
    functionName: boxstring_box_write
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_write_header
    - gf_bs_write_data
    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:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 2
    functionLinenumber: 216
    functionLinenumberEnd: 219
    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:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 221
    functionDepth: 2
    functionLinenumber: 221
    functionLinenumberEnd: 226
    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:232,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/media_tools/webvtt.c:233,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/media_tools/webvtt.c:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - bs
    argTypes:
    - GF_Box*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 236
    functionName: wvtt_box_write
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_u16
    - gf_isom_box_write_header
    - gf_bs_write_data
    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:242,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 244
    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:250,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:251,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:252,1
    - Dst: gf_isom_check_position
      Src: /src/gpac/src/media_tools/webvtt.c:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 246
    functionDepth: 2
    functionLinenumber: 246
    functionLinenumberEnd: 255
    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: 260
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 260
    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:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_Box*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 262
    functionDepth: 2
    functionLinenumber: 262
    functionLinenumberEnd: 269
    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:278,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/media_tools/webvtt.c:279,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/webvtt.c:280,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:281,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/media_tools/webvtt.c:284,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/media_tools/webvtt.c:287,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/media_tools/webvtt.c:290,1
    - Dst: boxstring_new_with_data
      Src: /src/gpac/src/media_tools/webvtt.c:293,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/media_tools/webvtt.c:296,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/webvtt.c:297,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:299,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 2
    argNames:
    - bs
    - cue
    argTypes:
    - GF_BitStream*
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 271
    functionDepth: 6
    functionLinenumber: 271
    functionLinenumberEnd: 301
    functionName: wvtt_write_cue
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_write
    - boxstring_new_with_data
    - gf_isom_box_new
    - gf_isom_box_del
    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:312,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:314,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/media_tools/webvtt.c:317,1
    - Dst: wvtt_write_cue
      Src: /src/gpac/src/media_tools/webvtt.c:318,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:322,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/media_tools/webvtt.c:326,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/media_tools/webvtt.c:327,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/media_tools/webvtt.c:328,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:329,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:331,1
    - Dst: gf_isom_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:335,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:337,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/media_tools/webvtt.c:340,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:341,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 1
    argNames:
    - s
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 303
    functionDepth: 7
    functionLinenumber: 303
    functionLinenumberEnd: 344
    functionName: gf_isom_webvtt_to_sample
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_get_content
    - gf_list_enum
    - gf_bs_new
    - wvtt_write_cue
    - gf_bs_del
    - gf_isom_box_new
    - gf_isom_sample_new
    - gf_isom_box_del
    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:350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 351
    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:384,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:385,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:386,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:387,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:388,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 357
    functionDepth: 3
    functionLinenumber: 357
    functionLinenumberEnd: 390
    functionName: boxstring_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_done
    - gf_isom_box_dump_start
    - strlen
    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:394,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:395,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 392
    functionDepth: 3
    functionLinenumber: 392
    functionLinenumberEnd: 398
    functionName: vtcu_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:402,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:403,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 400
    functionDepth: 3
    functionLinenumber: 400
    functionLinenumberEnd: 406
    functionName: vtte_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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:410,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:411,1
    - Dst: gf_isom_box_dump_done
      Src: /src/gpac/src/media_tools/webvtt.c:412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - trace
    argTypes:
    - GF_Box*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 408
    functionDepth: 3
    functionLinenumber: 408
    functionLinenumberEnd: 414
    functionName: wvtt_box_dump
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump_start
    - gf_isom_box_dump_done
    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: 450
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 450
    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: 460
      start: 455
    functionDepth: 0
    functionLinenumber: 455
    functionLinenumberEnd: 460
    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:474,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:481,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:482,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:483,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - cue
    - time
    argTypes:
    - GF_WebVTTCue*
    - GF_WebVTTTimestamp*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 466
    functionDepth: 1
    functionLinenumber: 466
    functionLinenumberEnd: 487
    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:514,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/webvtt.c:515,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/webvtt.c:516,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:519,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: 522
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 522
    functionName: gf_webvtt_cue_add_property
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_realloc
    - memcpy
    - strlen
    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:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 529
    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: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
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:539,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:540,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - cue
    argTypes:
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 541
    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:546,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/webvtt.c:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 543
    functionDepth: 1
    functionLinenumber: 543
    functionLinenumberEnd: 550
    functionName: gf_webvtt_sample_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    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: 559
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 559
    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:563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:564,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:565,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:566,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:568,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - samp
    argTypes:
    - GF_WebVTTSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 561
    functionDepth: 1
    functionLinenumber: 561
    functionLinenumberEnd: 570
    functionName: gf_webvtt_sample_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_webvtt_cue_del
    - gf_list_get
    - gf_list_rem
    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:575,1
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/webvtt.c:577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 572
    functionDepth: 1
    functionLinenumber: 572
    functionLinenumberEnd: 579
    functionName: gf_webvtt_parser_new
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:592,1
    - Dst: gf_webvtt_parser_restart
      Src: /src/gpac/src/media_tools/webvtt.c:593,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: 609
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 609
    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: 614
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 614
    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:620,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:622,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:623,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:623,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:624,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 616
    functionDepth: 2
    functionLinenumber: 616
    functionLinenumberEnd: 627
    functionName: gf_webvtt_parser_restart
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_fseek
    - gf_list_get
    - 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:632,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:633,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:633,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:634,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:636,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 629
    functionDepth: 2
    functionLinenumber: 629
    functionLinenumberEnd: 648
    functionName: gf_webvtt_parser_reset
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_get
    - 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:653,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:654,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 650
    functionDepth: 3
    functionLinenumber: 650
    functionLinenumberEnd: 657
    functionName: gf_webvtt_parser_del
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    - gf_webvtt_parser_reset
    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: 663
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 663
    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:677,1
    - Dst: gf_webvtt_timestamp_get
      Src: /src/gpac/src/media_tools/webvtt.c:678,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:687,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:689,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:694,1
    - Dst: GF_LOG
      Src: /src/gpac/src/media_tools/webvtt.c:695,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:699,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/webvtt.c:704,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:705,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:714,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/webvtt.c:717,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:719,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:720,1
    - Dst: gf_webvtt_cue_split_at
      Src: /src/gpac/src/media_tools/webvtt.c:721,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:722,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/media_tools/webvtt.c:726,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:736,1
    - Dst: gf_webvtt_cue_split_at
      Src: /src/gpac/src/media_tools/webvtt.c:737,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:738,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:745,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/media_tools/webvtt.c:748,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:750,1
    - Dst: gf_webvtt_cue_split_at
      Src: /src/gpac/src/media_tools/webvtt.c:751,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:752,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:754,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:765,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:768,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:773,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:774,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:777,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: 780
      start: 667
    functionDepth: 2
    functionLinenumber: 667
    functionLinenumberEnd: 780
    functionName: gf_webvtt_add_cue_to_samples
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - GF_WebVTTParser*::on_sample_parsed
    - gf_list_del_item
    - gf_webvtt_sample_new
    - gf_webvtt_cue_split_at
    - gf_webvtt_cue_del
    - gf_webvtt_timestamp_get
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    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: 791
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 791
    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:805,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 72
    argCount: 3
    argNames:
    - parser
    - ts
    - line
    argTypes:
    - GF_WebVTTParser*
    - GF_WebVTTTimestamp*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 794
    functionDepth: 0
    functionLinenumber: 794
    functionLinenumberEnd: 869
    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:888,1
    - Dst: gf_webvtt_parse_timestamp
      Src: /src/gpac/src/media_tools/webvtt.c:892,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:894,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:901,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:906,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:913,1
    - Dst: gf_webvtt_parse_timestamp
      Src: /src/gpac/src/media_tools/webvtt.c:921,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:923,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:932,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:932,1
    - Dst: gf_webvtt_timestamp_greater
      Src: /src/gpac/src/media_tools/webvtt.c:935,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:936,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: 944
      start: 875
    functionDepth: 1
    functionLinenumber: 875
    functionLinenumberEnd: 944
    functionName: gf_webvtt_parser_parse_timings_settings
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_cue_add_property
    - gf_webvtt_timestamp_greater
    - strlen
    - gf_webvtt_parse_timestamp
    - GF_WebVTTParser*::report_message
    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:962,1
    - Dst: gf_text_get_utf8_line
      Src: /src/gpac/src/media_tools/webvtt.c:970,1
    - Dst: gf_webvtt_add_cue_to_samples
      Src: /src/gpac/src/media_tools/webvtt.c:974,1
    - Dst: REM_TRAIL_MARKS
      Src: /src/gpac/src/media_tools/webvtt.c:979,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:980,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/webvtt.c:981,1
    - Dst: strnicmp
      Src: /src/gpac/src/media_tools/webvtt.c:987,1
    - Dst: GF_WebVTTParser*::report_message
      Src: /src/gpac/src/media_tools/webvtt.c:989,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:996,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1003,1
    - Dst: gf_realloc
      Src: /src/gpac/src/media_tools/webvtt.c:1004,1
    - Dst: memcpy
      Src: /src/gpac/src/media_tools/webvtt.c:1005,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1007,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/webvtt.c:1011,1
    - Dst: GF_WebVTTParser*::on_header_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1012,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1021,1
    - Dst: GF_WebVTTParser*::on_header_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1025,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1026,1
    - Dst: strstr
      Src: /src/gpac/src/media_tools/webvtt.c:1040,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1047,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/webvtt.c:1056,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1058,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/webvtt.c:1059,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1059,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/media_tools/webvtt.c:1072,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1073,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1079,1
    - Dst: gf_webvtt_cue_new
      Src: /src/gpac/src/media_tools/webvtt.c:1093,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1096,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1096,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1097,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1101,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1101,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1102,1
    - Dst: gf_webvtt_parser_parse_timings_settings
      Src: /src/gpac/src/media_tools/webvtt.c:1105,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1107,1
    - Dst: gf_assert
      Src: /src/gpac/src/media_tools/webvtt.c:1117,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1118,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/webvtt.c:1124,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/webvtt.c:1125,1
    - Dst: strncmp
      Src: /src/gpac/src/media_tools/webvtt.c:1129,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1134,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1142,1
    - Dst: assert
      Src: /src/gpac/src/media_tools/webvtt.c:1149,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1150,1
    - Dst: gf_webvtt_add_cue_to_samples
      Src: /src/gpac/src/media_tools/webvtt.c:1156,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1173,1
    - Dst: gf_webvtt_add_cue_to_samples
      Src: /src/gpac/src/media_tools/webvtt.c:1181,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1184,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1185,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1187,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1188,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1192,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1193,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1194,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: 1148
        line_start: 1148
        source_file: /src/gpac/src/media_tools/webvtt.c
    constantsTouched: []
    func_position:
      end: 1196
      start: 946
    functionDepth: 3
    functionLinenumber: 946
    functionLinenumberEnd: 1196
    functionName: gf_webvtt_parser_parse_internal
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_webvtt_cue_del
    - strstr
    - gf_webvtt_cue_add_property
    - assert
    - gf_text_get_utf8_line
    - gf_dynstrcat
    - gf_list_get
    - gf_list_last
    - GF_WebVTTParser*::on_header_parsed
    - gf_realloc
    - memcpy
    - strnicmp
    - strcmp
    - strlen
    - GF_WebVTTParser*::report_message
    - gf_webvtt_add_cue_to_samples
    - gf_free
    - GF_WebVTTParser*::on_sample_parsed
    - gf_webvtt_parser_parse_timings_settings
    - gf_strdup
    - REM_TRAIL_MARKS
    - strncmp
    - gf_webvtt_cue_new
    - 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:1200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1198
    functionDepth: 4
    functionLinenumber: 1198
    functionLinenumberEnd: 1201
    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:1204,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: 1205
      start: 1202
    functionDepth: 4
    functionLinenumber: 1202
    functionLinenumberEnd: 1205
    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: 1211
      start: 1208
    functionDepth: 0
    functionLinenumber: 1208
    functionLinenumberEnd: 1211
    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:1215,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1216,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1218,1
    - Dst: GF_WebVTTParser*::on_sample_parsed
      Src: /src/gpac/src/media_tools/webvtt.c:1219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_WebVTTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1213
    functionDepth: 1
    functionLinenumber: 1213
    functionLinenumberEnd: 1222
    functionName: gf_webvtt_parser_flush
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - GF_WebVTTParser*::on_sample_parsed
    - gf_list_count
    - gf_list_rem
    - gf_list_get
    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:1226,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1228,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1229,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1232,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1233,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1234,1
    - Dst: gf_webvtt_parser_parse_internal
      Src: /src/gpac/src/media_tools/webvtt.c:1236,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: 1239
      start: 1224
    functionDepth: 4
    functionLinenumber: 1224
    functionLinenumberEnd: 1239
    functionName: gf_webvtt_parser_parse_payload
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_webvtt_timestamp_set
    - gf_webvtt_parser_parse_internal
    - gf_webvtt_cue_new
    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:1244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - iso_sample
    - start
    - end
    argTypes:
    - GF_ISOSample*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1241
    functionDepth: 1
    functionLinenumber: 1241
    functionLinenumberEnd: 1245
    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: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/media_tools/webvtt.c:1258,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/webvtt.c:1260,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:1262,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/webvtt.c:1265,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/webvtt.c:1268,1
    - Dst: gf_webvtt_cue_new
      Src: /src/gpac/src/media_tools/webvtt.c:1272,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_free
      Src: /src/gpac/src/media_tools/webvtt.c:1276,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1279,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1280,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1281,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1283,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1283,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_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1289,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1289,1
    - Dst: gf_webvtt_cue_add_property
      Src: /src/gpac/src/media_tools/webvtt.c:1294,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1294,1
    - Dst: gf_strdup
      Src: /src/gpac/src/media_tools/webvtt.c:1296,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1299,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1302,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1306,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1307,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1308,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1309,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1310,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:1312,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/webvtt.c:1313,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1314,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 66
    argCount: 4
    argNames:
    - data
    - dataLength
    - start
    - end
    argTypes:
    - u8*
    - u32
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1316
      start: 1247
    functionDepth: 4
    functionLinenumber: 1247
    functionLinenumberEnd: 1316
    functionName: gf_webvtt_parse_cues_from_data
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_del
    - gf_webvtt_cue_add_property
    - gf_free
    - gf_list_count
    - gf_webvtt_timestamp_set
    - gf_list_del
    - gf_list_get
    - gf_isom_box_parse
    - gf_bs_new
    - gf_list_add
    - gf_bs_del
    - gf_webvtt_cue_del
    - gf_list_new
    - gf_strdup
    - strlen
    - gf_bs_available
    - gf_webvtt_cue_new
    - gf_list_rem
    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:1324,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1324,1
    - Dst: gf_webvtt_sample_new
      Src: /src/gpac/src/media_tools/webvtt.c:1326,1
    - Dst: gf_list_last
      Src: /src/gpac/src/media_tools/webvtt.c:1329,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1331,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1332,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1334,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1339,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1340,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1341,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1343,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1344,1
    - Dst: strcmp
      Src: /src/gpac/src/media_tools/webvtt.c:1345,1
    - Dst: gf_webvtt_timestamp_is_zero
      Src: /src/gpac/src/media_tools/webvtt.c:1361,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1362,1
    - Dst: GF_WebVTTParser*::on_cue_read
      Src: /src/gpac/src/media_tools/webvtt.c:1367,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1370,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1382,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1384,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1385,1
    - Dst: gf_webvtt_timestamp_is_zero
      Src: /src/gpac/src/media_tools/webvtt.c:1387,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1388,1
    - Dst: GF_WebVTTParser*::on_cue_read
      Src: /src/gpac/src/media_tools/webvtt.c:1393,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1396,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1400,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1402,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/media_tools/webvtt.c:1403,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1408,1
    - Dst: gf_list_add
      Src: /src/gpac/src/media_tools/webvtt.c:1409,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1411,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 65
    argCount: 3
    argNames:
    - parser
    - start
    - cues
    argTypes:
    - GF_WebVTTParser*
    - u64
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1414
      start: 1318
    functionDepth: 2
    functionLinenumber: 1318
    functionLinenumberEnd: 1414
    functionName: gf_webvtt_merge_cues
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_webvtt_timestamp_set
    - GF_WebVTTParser*::on_cue_read
    - gf_assert
    - gf_webvtt_sample_new
    - gf_list_rem_last
    - gf_webvtt_cue_del
    - strcmp
    - gf_list_get
    - gf_webvtt_timestamp_is_zero
    - gf_list_last
    - gf_list_add
    - gf_webvtt_sample_del
    - gf_list_rem
    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:1424,1
    - Dst: gf_webvtt_merge_cues
      Src: /src/gpac/src/media_tools/webvtt.c:1425,1
    - Dst: gf_list_del
      Src: /src/gpac/src/media_tools/webvtt.c:1426,1
    - Dst: gf_webvtt_dump_iso_sample
      Src: /src/gpac/src/media_tools/webvtt.c:1430,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: 1434
      start: 1416
    functionDepth: 3
    functionLinenumber: 1416
    functionLinenumberEnd: 1434
    functionName: gf_webvtt_parse_iso_sample
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_webvtt_parse_iso_cues
    - gf_webvtt_dump_iso_sample
    - 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: 1450
      start: 1438
    functionDepth: 0
    functionLinenumber: 1438
    functionLinenumberEnd: 1450
    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: 1456
      start: 1452
    functionDepth: 0
    functionLinenumber: 1452
    functionLinenumberEnd: 1456
    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:1461,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1464,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 3
    argNames:
    - ts
    - dump
    - dump_hour
    argTypes:
    - GF_WebVTTTimestamp*
    - FILE*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1465
      start: 1458
    functionDepth: 1
    functionLinenumber: 1458
    functionLinenumberEnd: 1465
    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:1476,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/webvtt.c:1477,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1479,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1480,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1485,1
    - Dst: strlen
      Src: /src/gpac/src/media_tools/webvtt.c:1486,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1488,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1489,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - dump
    - data
    - dataLength
    - dumpedLength
    argTypes:
    - FILE*
    - u8*
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1466
    functionDepth: 4
    functionLinenumber: 1466
    functionLinenumberEnd: 1492
    functionName: gf_webvtt_dump_header_boxed
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 2
    functionsReached:
    - gf_isom_box_parse
    - gf_fprintf
    - gf_bs_new
    - gf_bs_del
    - strlen
    - gf_isom_box_del
    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:1498,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1502,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1507,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: 1510
      start: 1495
    functionDepth: 3
    functionLinenumber: 1495
    functionLinenumberEnd: 1510
    functionName: gf_webvtt_dump_header
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_isom_box_dump
    - gf_webvtt_isom_get_description
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_webvtt_dump_header(FILE *dump, GF_ISOFile *file, u32 track,
      Bool box_mode, u32 index)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1519,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/webvtt.c:1521,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/media_tools/webvtt.c:1524,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/media_tools/webvtt.c:1527,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1532,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1536,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1537,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1538,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1539,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1540,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1541,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1542,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1543,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1545,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1546,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1547,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1549,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1551,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1554,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1556,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/media_tools/webvtt.c:1561,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/webvtt.c:1562,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 50
    argCount: 4
    argNames:
    - dump
    - timescale
    - iso_sample
    - box_mode
    argTypes:
    - FILE*
    - u32
    - GF_ISOSample*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1564
      start: 1512
    functionDepth: 4
    functionLinenumber: 1512
    functionLinenumberEnd: 1564
    functionName: gf_webvtt_dump_iso_sample
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_isom_box_del
    - gf_webvtt_timestamp_dump
    - gf_bs_available
    - gf_isom_box_parse
    - gf_bs_new
    - gf_bs_del
    - gf_fprintf
    - gf_webvtt_timestamp_set
    - gf_isom_box_dump
    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:1571,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1571,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1572,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/webvtt.c:1574,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1575,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1576,1
    - Dst: gf_webvtt_timestamp_is_zero
      Src: /src/gpac/src/media_tools/webvtt.c:1577,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/media_tools/webvtt.c:1578,1
    - Dst: GF_WebVTTParser*::on_cue_read
      Src: /src/gpac/src/media_tools/webvtt.c:1580,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/media_tools/webvtt.c:1581,1
    - Dst: gf_webvtt_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1583,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/media_tools/webvtt.c:1584,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - parser
    - duration
    argTypes:
    - GF_WebVTTParser*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1568
    functionDepth: 2
    functionLinenumber: 1568
    functionLinenumberEnd: 1587
    functionName: gf_webvtt_parser_finalize
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_WebVTTParser*::on_cue_read
    - gf_assert
    - gf_webvtt_cue_del
    - gf_list_get
    - gf_webvtt_timestamp_is_zero
    - gf_webvtt_timestamp_set
    - gf_webvtt_sample_del
    - gf_list_rem
    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:1595,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1596,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1597,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1599,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1601,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1602,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1603,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1605,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1606,1
    - Dst: gf_webvtt_timestamp_dump
      Src: /src/gpac/src/media_tools/webvtt.c:1607,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1610,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1612,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1613,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1614,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1615,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1617,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1618,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1619,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - user
    - cue
    argTypes:
    - void*
    - GF_WebVTTCue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1621
      start: 1590
    functionDepth: 2
    functionLinenumber: 1590
    functionLinenumberEnd: 1621
    functionName: gf_webvtt_dump_cue
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_fprintf
    - gf_webvtt_timestamp_dump
    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:1629,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/webvtt.c:1630,1
    - Dst: gf_webvtt_dump_cue
      Src: /src/gpac/src/media_tools/webvtt.c:1631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dump
    - cues
    argTypes:
    - FILE*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1626
    functionDepth: 3
    functionLinenumber: 1626
    functionLinenumberEnd: 1634
    functionName: gf_webvtt_dump_cues
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_webvtt_dump_cue
    - gf_list_get
    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:1638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dump
    - samp
    argTypes:
    - FILE*
    - GF_WebVTTSample*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1640
      start: 1636
    functionDepth: 1
    functionLinenumber: 1636
    functionLinenumberEnd: 1640
    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: 1648
      start: 1644
    functionDepth: 0
    functionLinenumber: 1644
    functionLinenumberEnd: 1648
    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:1670,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1675,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/media_tools/webvtt.c:1675,1
    - Dst: gf_webvtt_dump_header
      Src: /src/gpac/src/media_tools/webvtt.c:1677,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/media_tools/webvtt.c:1680,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/media_tools/webvtt.c:1682,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/media_tools/webvtt.c:1685,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/media_tools/webvtt.c:1687,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/media_tools/webvtt.c:1690,1
    - Dst: gf_webvtt_parse_iso_sample
      Src: /src/gpac/src/media_tools/webvtt.c:1691,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/media_tools/webvtt.c:1695,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/media_tools/webvtt.c:1697,1
    - Dst: gf_webvtt_parser_finalize
      Src: /src/gpac/src/media_tools/webvtt.c:1698,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/media_tools/webvtt.c:1701,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/media_tools/webvtt.c:1704,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: 1707
      start: 1652
    functionDepth: 5
    functionLinenumber: 1652
    functionLinenumberEnd: 1707
    functionName: gf_webvtt_dump_iso_track
    functionSourceFile: /src/gpac/src/media_tools/webvtt.c
    functionUses: 1
    functionsReached:
    - gf_webvtt_parser_new
    - gf_isom_get_track_id
    - gf_webvtt_parser_del
    - gf_isom_get_media_timescale
    - gf_isom_last_error
    - gf_isom_get_media_duration
    - gf_isom_get_sample_count
    - gf_webvtt_dump_header
    - gf_webvtt_parse_iso_sample
    - gf_isom_sample_del
    - gf_webvtt_parser_finalize
    - gf_isom_get_sample
    - gf_fprintf
    - gf_isom_get_sample_duration
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_webvtt_dump_iso_track(GF_MediaExporter *dumper, u32 track,
      Bool merge, Bool box_dump)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/media_tools/unittests/ut_av_parsers.c:18,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/media_tools/unittests/ut_av_parsers.c:22,1
    - Dst: gf_avc_read_pps_bs
      Src: /src/gpac/src/media_tools/unittests/ut_av_parsers.c:23,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/media_tools/unittests/ut_av_parsers.c:24,1
    - Dst: assert_true
      Src: /src/gpac/src/media_tools/unittests/ut_av_parsers.c:26,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_av_parsers.c:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 6
    functionDepth: 3
    functionLinenumber: 6
    functionLinenumberEnd: 28
    functionName: unittest
    functionSourceFile: /src/gpac/src/media_tools/unittests/ut_av_parsers.c
    functionUses: 0
    functionsReached:
    - assert_true
    - gf_bs_new
    - gf_bs_del
    - assert_equal
    - memset
    - gf_avc_read_pps_bs
    linkageType: ''
    returnType: void
    signature: void unittest(avc_pps_weighted_bipred_idc)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - file
    - before
    - str
    - after
    argTypes:
    - FILE*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 6
    functionName: gf_xml_dump_string
    functionSourceFile: /src/gpac/src/media_tools/unittests/ut_mpd.c
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gf_xml_dump_string(FILE* file, const char *before, const char
      *str, const char *after)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:10,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:11,1
    - Dst: assert_true
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:27,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:28,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:29,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:29,1
    - Dst: assert_true
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:30,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:32,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:33,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:33,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:34,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:35,1
    - Dst: gf_list_count
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:35,1
    - Dst: gf_list_get
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:37,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:38,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:39,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:40,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:41,1
    - Dst: gf_malloc
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:45,1
    - Dst: assert_true
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:46,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:47,1
    - Dst: assert_equal
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:49,1
    - Dst: assert_equal_str
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:50,1
    - Dst: gf_free
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:51,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:54,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/media_tools/unittests/ut_mpd.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 8
    functionDepth: 11
    functionLinenumber: 8
    functionLinenumberEnd: 56
    functionName: unittest
    functionSourceFile: /src/gpac/src/media_tools/unittests/ut_mpd.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_xml_dom_parse_string
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_xml_dom_del
    - assert_true
    - gf_mpd_init_from_dom
    - gf_mpd_new
    - gf_xml_dom_new
    - gf_base64_encode
    - gf_mpd_del
    - assert_equal
    - gf_list_get
    - assert_equal_str
    linkageType: ''
    returnType: void
    signature: void unittest(mpd_event_streams)
  - 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_list_count
    - gf_free
    - GF_HMUX_Session*::close
    - GF_LOG
    - gf_list_del
    - gf_list_get
    - gf_list_del_item
    - gf_assert
    - dm_sess_sk_del
    - memset
    - GF_HMUX_Session*::destroy
    - SSL_free
    - gf_mx_v
    - gf_mx_del
    - SSL_shutdown
    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_list_count
    - gf_free
    - GF_LOG
    - gf_dm_sess_clear_headers
    - gf_list_get
    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_dm_data_received
    - gf_assert
    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_DownloadSession*::hmux_sess::send_pending_data
    - GF_LOG
    - GF_DownloadSession*::hmux_sess::resume
    - gf_sk_probe
    - gf_mx_p
    - GF_DownloadSession*::hmux_sess::write
    - gf_mx_v
    - assert
    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_DownloadSession*::hmux_sess::setup_session
    - gf_mx_p
    - gf_mx_v
    - gf_mx_del
    - gf_list_add
    - gf_dm_sess_new_internal
    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:
    - Assert
    - fargf_free
    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:
    - gf_token_get
    - strchr
    - strlen
    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
    - strstr
    - strlen
    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_mx_new
    - GF_SAFEALLOC
    - gf_list_new
    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_list_del
    - gf_mx_del
    - gf_free
    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_LOG
    - gf_free
    - 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_count
    - GF_LOG
    - gf_list_del_item
    - gf_list_new
    - GF_SAFEALLOC
    - cache_blob_del
    - gf_blob_register
    - strcmp
    - gf_list_get
    - gf_strdup
    - 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: gf_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: gf_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_DownloadSession*::user_io
    - GF_SAFEALLOC
    - gf_dm_setup_cache
    - gf_list_add
    - gf_malloc
    - gf_dm_sess_reset
    - gf_mx_v
    - gf_realloc
    - memcpy
    - gf_strcpy
    - gf_dm_sess_del
    - gf_mx_p
    - gf_list_new
    - gf_free
    - fs_fetch_setup
    - GF_LOG
    - gf_list_del
    - gf_strdup
    - memset
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_dm_sess_reset
    - cache_blob_del
    - gf_mx_p
    - gf_mx_v
    - gf_list_pop_back
    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_sess_reset
    - gf_dm_setup_cache
    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:
    - getValue
    - _get_fetcher
    - AbortController::AbortController
    - UTF8ToString
    - _fetchers::push
    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
    - stricmp
    - sscanf
    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_strdup
    - gf_free
    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_dm_sess_fetch_data
    - GF_DownloadSession*::user_io
    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_dm_sess_del
    - gf_assert
    - gf_dm_sess_fetch_once
    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_fs_post_user_task
    - gf_dm_sess_fetch_once
    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: 11
    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:190,1
    - Dst: deflateInit2
      Src: /src/gpac/src/utils/base_encoding.c:200,1
    - Dst: deflateInit
      Src: /src/gpac/src/utils/base_encoding.c:202,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:206,1
    - Dst: deflate
      Src: /src/gpac/src/utils/base_encoding.c:210,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:212,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:213,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:218,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:219,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:223,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:232,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/base_encoding.c:235,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:237,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:239,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: 241
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 241
    functionName: gf_gz_compress_payload_ex
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 2
    functionsReached:
    - deflateInit2
    - gf_malloc
    - deflate
    - gf_free
    - GF_LOG
    - deflateEnd
    - gf_realloc
    - memcpy
    - deflateInit
    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:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - data
    - data_len
    - max_size
    argTypes:
    - u8**
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 247
    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: 12
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/base_encoding.c:259,1
    - Dst: inflateInit2
      Src: /src/gpac/src/utils/base_encoding.c:275,1
    - Dst: inflateInit
      Src: /src/gpac/src/utils/base_encoding.c:277,1
    - Dst: inflate
      Src: /src/gpac/src/utils/base_encoding.c:282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:291,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:300,1
    - Dst: MIN
      Src: /src/gpac/src/utils/base_encoding.c:305,1
    - Dst: inflateEnd
      Src: /src/gpac/src/utils/base_encoding.c:306,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:312,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 55
    argCount: 5
    argNames:
    - data
    - data_len
    - uncompressed_data
    - out_size
    - use_gz
    argTypes:
    - u8*
    - u32
    - u8**
    - u32*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 317
    functionName: gf_gz_decompress_payload_ex
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 4
    functionsReached:
    - gf_free
    - inflateInit
    - gf_malloc
    - GF_LOG
    - MIN
    - inflateEnd
    - inflateInit2
    - gf_realloc
    - inflate
    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:321,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: 322
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 322
    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: 330
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 330
    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: 336
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 336
    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: 342
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 342
    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: 347
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 347
    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:364,1
    - Dst: lzma_stream_encoder
      Src: /src/gpac/src/utils/base_encoding.c:370,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/base_encoding.c:375,1
    - Dst: lzma_code
      Src: /src/gpac/src/utils/base_encoding.c:383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:391,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:396,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/base_encoding.c:399,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:401,1
    - Dst: lzma_end
      Src: /src/gpac/src/utils/base_encoding.c:403,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 3
    argNames:
    - data
    - data_len
    - max_size
    argTypes:
    - u8**
    - u32
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 357
    functionDepth: 1
    functionLinenumber: 357
    functionLinenumberEnd: 405
    functionName: gf_lz_compress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LOG
    - lzma_end
    - lzma_lzma_preset
    - lzma_code
    - lzma_stream_encoder
    - gf_realloc
    - memcpy
    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:411,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/base_encoding.c:418,1
    - Dst: lzma_code
      Src: /src/gpac/src/utils/base_encoding.c:436,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/base_encoding.c:443,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/base_encoding.c:446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/base_encoding.c:454,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:455,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:456,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/base_encoding.c:463,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: 465
      start: 407
    functionDepth: 1
    functionLinenumber: 407
    functionLinenumberEnd: 465
    functionName: gf_lz_decompress_payload
    functionSourceFile: /src/gpac/src/utils/base_encoding.c
    functionUses: 1
    functionsReached:
    - lzma_stream_decoder
    - gf_free
    - gf_malloc
    - GF_LOG
    - lzma_code
    - gf_realloc
    - memcpy
    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: 472
      start: 467
    functionDepth: 0
    functionLinenumber: 467
    functionLinenumberEnd: 472
    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: 478
      start: 473
    functionDepth: 0
    functionLinenumber: 473
    functionLinenumberEnd: 478
    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:
    - GF_LOG
    - gf_bs_write_int
    - gf_list_enum
    - gf_bs_write_long_int
    - strcmp
    - sscanf
    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:
    - GF_LOG
    - gf_bs_write_int
    - gf_list_enum
    - gf_bs_write_long_int
    - strcmp
    - sscanf
    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
    - xml_scte35_parse_splice_time
    - gf_list_enum
    - strcmp
    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_get_position
    - atoi
    - GF_LOG
    - gf_bs_write_int
    - GF_4CC
    - gf_list_enum
    - gf_bs_write_long_int
    - gf_bs_write_u16
    - gf_bs_write_u32
    - strcmp
    - gf_bs_seek
    - assert
    - 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:
    - gf_bs_read_u8
    - atoi
    - GF_LOG
    - gf_bs_write_int
    - xml_scte35_parse_splice_time
    - gf_list_enum
    - gf_bs_write_long_int
    - scte35dec_parse_splice_time
    - xml_scte35_parse_break_duration
    - gf_bs_write_u32
    - strcmp
    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_bs_get_position
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_get_size
    - gf_bs_new
    - gf_bs_del
    - snprintf
    - gf_bs_seek
    - gf_bs_write_u8
    - gf_crc_32
    - xml_scte35_parse_segmentation_descriptor
    - XML_SCAN_INT
    - gf_list_enum
    - gf_bs_write_long_int
    - WRITE_CMD_LEN
    - gf_bs_transfer
    - strcmp
    - xml_scte35_parse_splice_insert
    - gf_free
    - GF_LOG
    - gf_bs_write_u16
    - gf_bs_write_u32
    - xml_scte35_parse_time_signal
    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_write
    - GF_LOG
    - gf_isom_box_new
    - gf_isom_box_del
    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_bs_get_position
    - gf_isom_box_del
    - gf_isom_box_size
    - gf_isom_full_box_write
    - gf_malloc
    - xml_scte35_parse
    - gf_bs_seek
    - GF_LOG
    - gf_isom_box_write
    - stricmp
    - gf_list_enum
    - strnicmp
    - gf_isom_box_new
    - strlen
    - gf_strdup
    - sscanf
    linkageType: ''
    returnType: void
    signature: void xml_emib_parse(GF_XMLNode *root, GF_BitStream *bs)
  - BBCount: 72
    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: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:616,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:618,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/xml_bin_custom.c:621,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:623,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/utils/xml_bin_custom.c:624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:626,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:630,1
    - Dst: strcmp
      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:634,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:636,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:637,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:639,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:640,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:640,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:642,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:647,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:651,1
    - Dst: atoi
      Src: /src/gpac/src/utils/xml_bin_custom.c:652,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/xml_bin_custom.c:653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:655,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/xml_bin_custom.c:661,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:673,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:679,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:681,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:683,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:685,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_bin_custom.c:686,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/utils/xml_bin_custom.c:693,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:695,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:698,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:699,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:703,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_bin_custom.c:705,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:707,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_bin_custom.c:711,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/xml_bin_custom.c:720,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_bin_custom.c:721,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:724,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:725,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:726,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/utils/xml_bin_custom.c:728,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/utils/xml_bin_custom.c:730,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:734,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:736,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:738,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:744,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:745,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/xml_bin_custom.c:752,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_bin_custom.c:753,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:754,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_bin_custom.c:756,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:760,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/xml_bin_custom.c:766,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/xml_bin_custom.c:772,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/xml_bin_custom.c:776,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_bin_custom.c:778,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:783,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_bin_custom.c:786,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:788,1
    - Dst: assert
      Src: /src/gpac/src/utils/xml_bin_custom.c:794,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/xml_bin_custom.c:795,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:796,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_bin_custom.c:802,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/utils/xml_bin_custom.c:807,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:811,1
    - Dst: gf_bs_write_u64_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:814,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:815,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/utils/xml_bin_custom.c:816,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/xml_bin_custom.c:818,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/xml_bin_custom.c:821,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:822,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_bin_custom.c:823,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_bin_custom.c:831,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:834,1
    CyclomaticComplexity: 107
    EdgeCount: 107
    ICount: 284
    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: 793
        line_start: 793
        source_file: /src/gpac/src/utils/xml_bin_custom.c
    constantsTouched: []
    func_position:
      end: 837
      start: 545
    functionDepth: 6
    functionLinenumber: 545
    functionLinenumberEnd: 837
    functionName: gf_xml_parse_bit_sequence_bs
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 1
    functionsReached:
    - xml_emib_parse
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_url_concatenate
    - gf_bs_new
    - gf_bs_write_u32_le
    - gf_bs_write_double
    - gf_bs_del
    - xml_scte35_parse
    - gf_malloc
    - assert
    - gf_fopen
    - gf_fsize
    - xml_emeb_parse
    - atoi
    - XML_SCAN_INT
    - gf_list_enum
    - gf_bs_write_long_int
    - strnicmp
    - gf_bs_write_u16_le
    - gf_base64_encode
    - gf_bs_write_data
    - strcmp
    - strlen
    - gf_bin128_parse
    - sscanf
    - sprintf
    - gf_free
    - gf_fclose
    - GF_LOG
    - stricmp
    - GF_4CC
    - gf_fseek
    - gf_base64_decode
    - gf_bs_write_u64_le
    - gf_fread
    - gf_xml_parse_bit_sequence_bs
    - gf_bs_write_float
    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:843,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/utils/xml_bin_custom.c:846,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/xml_bin_custom.c:848,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/xml_bin_custom.c:849,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/xml_bin_custom.c:850,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: 852
      start: 840
    functionDepth: 7
    functionLinenumber: 840
    functionLinenumberEnd: 852
    functionName: gf_xml_parse_bit_sequence
    functionSourceFile: /src/gpac/src/utils/xml_bin_custom.c
    functionUses: 2
    functionsReached:
    - gf_bs_align
    - gf_bs_get_content
    - gf_bs_new
    - 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: gf_strlcpy
      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:
    - sprintf
    - gf_strlcpy
    - 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:
    - safe_int_fetch_add
    - gf_4cc_to_str_safe
    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
    - GF_4CC
    - strlen
    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
    - fflush
    - MIN
    - strlen
    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: 22
    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: gf_strcpy
      Src: /src/gpac/src/utils/error.c:272,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:274,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:281,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:283,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:285,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:289,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:291,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:295,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/error.c:296,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:309,1
    - Dst: strstr
      Src: /src/gpac/src/utils/error.c:313,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:315,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:319,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:323,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:327,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:331,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:341,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:355,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/error.c:358,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:362,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:364,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:366,1
    - Dst: gf_log_set_callback
      Src: /src/gpac/src/utils/error.c:368,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:373,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:384,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 124
    argCount: 1
    argNames:
    - val_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 402
    functionName: gf_log_modify_tools_levels
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - strchr
    - gf_log_set_callback
    - GF_LOG
    - stricmp
    - strnicmp
    - strcmp
    - strlen
    - strstr
    - gf_log_set_strict_error
    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:413,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - val
    - reset_all
    argTypes:
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 404
    functionDepth: 2
    functionLinenumber: 404
    functionLinenumberEnd: 417
    functionName: gf_log_set_tools_levels
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 5
    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: gf_strcpy
      Src: /src/gpac/src/utils/error.c:426,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/error.c:431,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:434,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:435,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/error.c:448,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/error.c:449,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:450,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:451,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:452,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:453,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:456,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:457,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:460,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:461,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/error.c:462,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:467,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/error.c:471,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/error.c:474,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 475
    functionName: gf_log_get_tools_levels
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 2
    functionsReached:
    - gf_strcpy
    - strlen
    - gf_strdup
    - gf_strcat
    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:498,1
    - Dst: getenv
      Src: /src/gpac/src/utils/error.c:505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:508,1
    - Dst: GetStdHandle
      Src: /src/gpac/src/utils/error.c:510,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/error.c:512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:514,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/error.c:551,1
    - Dst: GetConsoleCursorInfo
      Src: /src/gpac/src/utils/error.c:552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:555,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/error.c:559,1
    - Dst: ReadConsoleOutput
      Src: /src/gpac/src/utils/error.c:568,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:569,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:571,1
    - Dst: SetConsoleScreenBufferSize
      Src: /src/gpac/src/utils/error.c:588,1
    - Dst: SetConsoleWindowInfo
      Src: /src/gpac/src/utils/error.c:589,1
    - Dst: SetConsoleCursorPosition
      Src: /src/gpac/src/utils/error.c:590,1
    - Dst: SetConsoleTextAttribute
      Src: /src/gpac/src/utils/error.c:591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/error.c:594,1
    - Dst: WriteConsoleOutput
      Src: /src/gpac/src/utils/error.c:597,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:599,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/error.c:612,1
    - Dst: FillConsoleOutputCharacter
      Src: /src/gpac/src/utils/error.c:616,1
    - Dst: FillConsoleOutputAttribute
      Src: /src/gpac/src/utils/error.c:617,1
    - Dst: SetConsoleCursorPosition
      Src: /src/gpac/src/utils/error.c:618,1
    - Dst: SetConsoleTextAttribute
      Src: /src/gpac/src/utils/error.c:630,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:640,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:642,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:645,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:648,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:651,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:654,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:657,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:661,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:665,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:668,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:669,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:675,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/error.c:678,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
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 161
    argCount: 2
    argNames:
    - std
    - code
    argTypes:
    - FILE*
    - GF_ConsoleCodes
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 684
    functionName: gf_sys_set_console_code
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - fprintf
    - SetConsoleWindowInfo
    - gf_free
    - gf_malloc
    - FillConsoleOutputCharacter
    - GF_LOG
    - getenv
    - SetConsoleTextAttribute
    - GetConsoleCursorInfo
    - FillConsoleOutputAttribute
    - GetStdHandle
    - GetConsoleScreenBufferInfo
    - ReadConsoleOutput
    - SetConsoleScreenBufferSize
    - gf_sys_is_test_mode
    - SetConsoleCursorPosition
    - WriteConsoleOutput
    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:699,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/error.c:700,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/error.c:701,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/error.c:702,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:704,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - log
    argTypes:
    - GF_LogExtra*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 695
    functionDepth: 1
    functionLinenumber: 695
    functionLinenumberEnd: 705
    functionName: gf_log_push_extra
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_find
    - gf_list_new
    - gf_mx_p
    - 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:710,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/error.c:711,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:712,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - log
    argTypes:
    - GF_LogExtra*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 706
    functionDepth: 1
    functionLinenumber: 706
    functionLinenumberEnd: 713
    functionName: gf_log_pop_extra
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_del_item
    - gf_mx_p
    - gf_mx_v
    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:718,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/error.c:719,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 722
    functionName: gf_log_reset_extras
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_mx_p
    - gf_mx_v
    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:728,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:729,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/error.c:731,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:742,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/error.c:744,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:748,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:753,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/error.c:759,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: 763
      start: 724
    functionDepth: 1
    functionLinenumber: 724
    functionLinenumberEnd: 763
    functionName: gf_log_tool_level_on
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 21
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_mx_p
    - gf_mx_v
    - gf_log_set_strict_error
    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: 770
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 770
    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: 780
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 780
    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: 787
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 787
    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:803,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/error.c:804,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/error.c:808,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/utils/error.c:811,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/error.c:812,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:815,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - logs
    - fmt
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 818
    functionName: do_log_time
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock_high_res
    - gf_gmtime
    - gf_net_get_utc
    - strlen
    - gf_fprintf
    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:826,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/error.c:828,1
    - Dst: gf_fileio_printf
      Src: /src/gpac/src/utils/error.c:829,1
    - Dst: va_copy
      Src: /src/gpac/src/utils/error.c:833,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/error.c:834,1
    - Dst: va_end
      Src: /src/gpac/src/utils/error.c:835,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/error.c:837,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/error.c:839,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: 840
      start: 822
    functionDepth: 2
    functionLinenumber: 822
    functionLinenumberEnd: 840
    functionName: default_log_callback
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - gf_fileio_check
    - gf_fflush
    - va_end
    - gf_fileio_printf
    - do_log_time
    - va_copy
    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:846,1
    - Dst: va_copy
      Src: /src/gpac/src/utils/error.c:850,1
    - Dst: default_log_callback
      Src: /src/gpac/src/utils/error.c:851,1
    - Dst: va_end
      Src: /src/gpac/src/utils/error.c:852,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:856,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:859,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:862,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:865,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:868,1
    - Dst: do_log_time
      Src: /src/gpac/src/utils/error.c:872,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/error.c:874,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/error.c:875,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/error.c:876,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: 877
      start: 842
    functionDepth: 3
    functionLinenumber: 842
    functionLinenumberEnd: 877
    functionName: default_log_callback_color
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - vfprintf
    - gf_sys_set_console_code
    - gf_fflush
    - va_end
    - default_log_callback
    - do_log_time
    - va_copy
    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:899,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 897
    functionDepth: 1
    functionLinenumber: 897
    functionLinenumberEnd: 900
    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:905,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:908,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/error.c:909,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:910,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/error.c:912,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 913
      start: 902
    functionDepth: 1
    functionLinenumber: 902
    functionLinenumberEnd: 913
    functionName: gf_logs_close
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fclose
    - gf_free
    - gf_list_del
    - gf_list_pop_back
    linkageType: ''
    returnType: void
    signature: void gf_logs_close()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:923,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:924,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/error.c:927,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/error.c:930,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/error.c:931,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:932,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/error.c:942,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/error.c:944,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:946,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/error.c:949,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: 950
      start: 915
    functionDepth: 1
    functionLinenumber: 915
    functionLinenumberEnd: 950
    functionName: gf_logs_set_thread_tag_internal
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_mx_v
    - gf_th_id
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_list_get
    - 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:954,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - tag_val
    - tag_type
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 952
    functionDepth: 2
    functionLinenumber: 952
    functionLinenumberEnd: 955
    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:958,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag_val
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 956
    functionDepth: 2
    functionLinenumber: 956
    functionLinenumberEnd: 959
    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:962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag_val
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 963
      start: 960
    functionDepth: 2
    functionLinenumber: 960
    functionLinenumberEnd: 963
    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:968,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/error.c:969,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/error.c:972,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - tag_type
    - o_th_id
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 966
    functionDepth: 1
    functionLinenumber: 966
    functionLinenumberEnd: 985
    functionName: gf_logs_get_thread_tag
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_th_id
    - gf_list_get
    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: 991
      start: 987
    functionDepth: 0
    functionLinenumber: 987
    functionLinenumberEnd: 991
    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:1001,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/error.c:1006,1
    - Dst: va_start
      Src: /src/gpac/src/utils/error.c:1010,1
    - Dst: log_cbk
      Src: /src/gpac/src/utils/error.c:1012,1
    - Dst: va_end
      Src: /src/gpac/src/utils/error.c:1014,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:1016,1
    - Dst: EM_ASM
      Src: /src/gpac/src/utils/error.c:1019,1
    - Dst: exit
      Src: /src/gpac/src/utils/error.c:1025,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - fmt
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 996
    functionDepth: 0
    functionLinenumber: 996
    functionLinenumberEnd: 1027
    functionName: gf_log
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - exit
    - gf_mx_v
    - va_end
    - gf_mx_p
    - log_cbk
    - va_start
    - 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:1032,1
    - Dst: log_cbk
      Src: /src/gpac/src/utils/error.c:1036,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/error.c:1039,1
    - Dst: exit
      Src: /src/gpac/src/utils/error.c:1042,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: 1044
      start: 1029
    functionDepth: 0
    functionLinenumber: 1029
    functionLinenumberEnd: 1044
    functionName: gf_log_va_list
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - exit
    - gf_mx_p
    - log_cbk
    - gf_mx_v
    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: 1052
      start: 1046
    functionDepth: 0
    functionLinenumber: 1046
    functionLinenumberEnd: 1052
    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: 1066
      start: 1054
    functionDepth: 0
    functionLinenumber: 1054
    functionLinenumberEnd: 1066
    functionName: gf_log_set_tool_level
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 9
    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: 1073
      start: 1068
    functionDepth: 0
    functionLinenumber: 1068
    functionLinenumberEnd: 1073
    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: 1083
      start: 1075
    functionDepth: 0
    functionLinenumber: 1075
    functionLinenumberEnd: 1083
    functionName: gf_log_set_callback
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 9
    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: 1087
      start: 1087
    functionDepth: 0
    functionLinenumber: 1087
    functionLinenumberEnd: 1087
    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: 1088
      start: 1088
    functionDepth: 0
    functionLinenumber: 1088
    functionLinenumberEnd: 1088
    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: 1089
      start: 1089
    functionDepth: 0
    functionLinenumber: 1089
    functionLinenumberEnd: 1089
    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: 1094
      start: 1091
    functionDepth: 0
    functionLinenumber: 1091
    functionLinenumberEnd: 1094
    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: 1098
      start: 1095
    functionDepth: 0
    functionLinenumber: 1095
    functionLinenumberEnd: 1098
    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: 1107
      start: 1101
    functionDepth: 0
    functionLinenumber: 1101
    functionLinenumberEnd: 1107
    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:1113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 2
    argNames:
    - loglev
    - logtool
    argTypes:
    - GF_LOG_Level
    - GF_LOG_Tool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1109
    functionDepth: 0
    functionLinenumber: 1109
    functionLinenumberEnd: 1115
    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: 1121
      start: 1117
    functionDepth: 0
    functionLinenumber: 1117
    functionLinenumberEnd: 1121
    functionName: gf_log_set_callback
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 9
    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: 1126
      start: 1123
    functionDepth: 0
    functionLinenumber: 1123
    functionLinenumberEnd: 1126
    functionName: gf_log_set_tool_level
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 9
    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: 1132
      start: 1128
    functionDepth: 0
    functionLinenumber: 1128
    functionLinenumberEnd: 1132
    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: 1138
      start: 1134
    functionDepth: 0
    functionLinenumber: 1134
    functionLinenumberEnd: 1138
    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: 1141
      start: 1140
    functionDepth: 0
    functionLinenumber: 1140
    functionLinenumberEnd: 1141
    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: 1144
      start: 1143
    functionDepth: 0
    functionLinenumber: 1143
    functionLinenumberEnd: 1144
    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: 1147
      start: 1146
    functionDepth: 0
    functionLinenumber: 1146
    functionLinenumberEnd: 1147
    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:1254,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 88
    argCount: 1
    argNames:
    - e
    argTypes:
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1257
      start: 1153
    functionDepth: 0
    functionLinenumber: 1153
    functionLinenumberEnd: 1257
    functionName: gf_error_to_string
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 124
    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: 1315
      start: 1305
    functionDepth: 0
    functionLinenumber: 1305
    functionLinenumberEnd: 1315
    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: 1319
      start: 1318
    functionDepth: 0
    functionLinenumber: 1318
    functionLinenumberEnd: 1319
    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: 1448
      start: 1320
    functionDepth: 0
    functionLinenumber: 1320
    functionLinenumberEnd: 1448
    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: 1771
      start: 1450
    functionDepth: 0
    functionLinenumber: 1450
    functionLinenumberEnd: 1771
    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:1777,1
    - Dst: gf_enabled_features
      Src: /src/gpac/src/utils/error.c:1779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - disabled
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1773
    functionDepth: 1
    functionLinenumber: 1773
    functionLinenumberEnd: 1780
    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: 2280
      start: 2276
    functionDepth: 0
    functionLinenumber: 2276
    functionLinenumberEnd: 2280
    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:2293,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:2294,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2297,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/error.c:2302,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:2305,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/error.c:2308,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - lang_or_rfc_5646_code
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2313
      start: 2282
    functionDepth: 0
    functionLinenumber: 2282
    functionLinenumberEnd: 2313
    functionName: gf_lang_find
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 5
    functionsReached:
    - strnicmp
    - strchr
    - strcmp
    - 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: 2320
      start: 2315
    functionDepth: 0
    functionLinenumber: 2315
    functionLinenumberEnd: 2320
    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: 2327
      start: 2322
    functionDepth: 0
    functionLinenumber: 2322
    functionLinenumberEnd: 2327
    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: 2334
      start: 2329
    functionDepth: 0
    functionLinenumber: 2329
    functionLinenumberEnd: 2334
    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:2343,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2344,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2345,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/error.c:2349,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/error.c:2354,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/error.c:2357,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - str
    - to_append
    - sep
    argTypes:
    - char**
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2359
      start: 2337
    functionDepth: 0
    functionLinenumber: 2337
    functionLinenumberEnd: 2359
    functionName: gf_dynstrcat
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 60
    functionsReached:
    - gf_realloc
    - memcpy
    - strlen
    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:2373,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/error.c:2376,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/error.c:2379,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:2384,1
    - Dst: strchr
      Src: /src/gpac/src/utils/error.c:2385,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2387,1
    - Dst: atol
      Src: /src/gpac/src/utils/error.c:2392,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2397,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/error.c:2406,1
    - Dst: atoll
      Src: /src/gpac/src/utils/error.c:2428,1
    - Dst: atof
      Src: /src/gpac/src/utils/error.c:2438,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 70
    argCount: 2
    argNames:
    - value
    - frac
    argTypes:
    - char*
    - GF_Fraction64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2361
    functionDepth: 0
    functionLinenumber: 2361
    functionLinenumberEnd: 2440
    functionName: gf_parse_lfrac
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 3
    functionsReached:
    - atof
    - strchr
    - atoll
    - atol
    - strlen
    - sscanf
    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:2448,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - value
    - frac
    argTypes:
    - char*
    - GF_Fraction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2456
      start: 2442
    functionDepth: 1
    functionLinenumber: 2442
    functionLinenumberEnd: 2456
    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:2460,1
    - Dst: isspace
      Src: /src/gpac/src/utils/error.c:2461,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - str
    - ans
    argTypes:
    - char*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2458
    functionDepth: 0
    functionLinenumber: 2458
    functionLinenumberEnd: 2462
    functionName: gf_strict_atoi
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - strtol
    - isspace
    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:2466,1
    - Dst: isspace
      Src: /src/gpac/src/utils/error.c:2467,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - str
    - ans
    argTypes:
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2464
    functionDepth: 0
    functionLinenumber: 2464
    functionLinenumberEnd: 2468
    functionName: gf_strict_atoui
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 1
    functionsReached:
    - isspace
    - strtoul
    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:2474,1
    - Dst: memchr
      Src: /src/gpac/src/utils/error.c:2480,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/error.c:2484,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 3
    argNames:
    - data
    - data_size
    - pat
    argTypes:
    - char*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2490
      start: 2470
    functionDepth: 0
    functionLinenumber: 2470
    functionLinenumberEnd: 2490
    functionName: gf_strmemstr
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - memchr
    - memcmp
    - strlen
    linkageType: ''
    returnType: char
    signature: char * gf_strmemstr(const char *data, u32 data_size, const char *pat)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlcpy
      Src: /src/gpac/src/utils/error.c:2512,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 3
    argNames:
    - dst
    - src
    - dsize
    argTypes:
    - char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2535
      start: 2508
    functionDepth: 0
    functionLinenumber: 2508
    functionLinenumberEnd: 2535
    functionName: gf_strlcpy
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 17
    functionsReached:
    - strlcpy
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_strlcpy(char * dst, const char * src, size_t dsize)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlcat
      Src: /src/gpac/src/utils/error.c:2558,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2572,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - dst
    - src
    - siz
    argTypes:
    - char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2584
      start: 2554
    functionDepth: 0
    functionLinenumber: 2554
    functionLinenumberEnd: 2584
    functionName: gf_strlcat
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 12
    functionsReached:
    - strlcat
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_strlcat(char *dst, const char *src, size_t siz)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/utils/error.c:2593,1
    - Dst: gf_opts_get_filename
      Src: /src/gpac/src/utils/error.c:2594,1
    - Dst: getenv
      Src: /src/gpac/src/utils/error.c:2599,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/error.c:2601,1
    - Dst: getenv
      Src: /src/gpac/src/utils/error.c:2603,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/error.c:2608,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/error.c:2610,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/error.c:2611,1
    - Dst: strlen
      Src: /src/gpac/src/utils/error.c:2614,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/error.c:2618,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - url
    - szPath
    argTypes:
    - char*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2622
      start: 2587
    functionDepth: 1
    functionLinenumber: 2587
    functionLinenumberEnd: 2622
    functionName: gf_sys_solve_path
    functionSourceFile: /src/gpac/src/utils/error.c
    functionUses: 0
    functionsReached:
    - getenv
    - gf_strlcat
    - strrchr
    - gf_opts_get_filename
    - strlen
    - strncmp
    - gf_opts_get_key
    - gf_strlcpy
    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_del
    - gf_sk_group_unregister
    - 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_ssl_write
    - gf_assert
    - memmove
    - gf_realloc
    - memcpy
    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:
    - strstr
    - strnicmp
    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:
    - curl_can_handle_url
    - strnicmp
    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_list_count
    - gf_free
    - stricmp
    - GF_SAFEALLOC
    - gf_list_get
    - gf_strdup
    - gf_list_add
    - 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:
    - sprintf
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_list_get
    - http2_check_upgrade
    - dm_sess_write
    - gf_dynstrcat
    - gf_realloc
    - strlen
    - memcpy
    - GF_DownloadSession*::hmux_sess::send_reply
    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_list_last
    - gf_list_rem_last
    - gf_free
    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
    - hmux_detach_session
    - GF_LOG
    - gf_assert
    - dm_sess_sk_del
    - SSL_free
    - gf_mx_p
    - gf_mx_v
    - gf_cache_close_write_cache
    - GF_DownloadSession*::hmux_sess::stream_reset
    - 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_dm_disconnect
    - hmux_detach_session
    - gf_assert
    - gf_mx_v
    - gf_mx_del
    - curl_slist_free_all
    - gf_dm_sess_clear_headers
    - GF_DownloadSession*::hmux_sess::setup_session
    - dm_sess_sk_del
    - SSL_free
    - gf_mx_p
    - gf_cache_remove_entry_from_session
    - SSL_shutdown
    - gf_sleep
    - gf_th_del
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_list_del_item
    - gf_th_stop
    - assert
    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_dm_url_info_init
    - gf_free
    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_strdup
    - strstr
    - gf_assert
    - strnicmp
    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:
    - strchr
    - gf_free
    - atoi
    - GF_LOG
    - gf_dm_url_info_init
    - strstr
    - gf_url_concatenate
    - gf_assert
    - gf_dynstrcat
    - strrchr
    - gf_url_percent_encode
    - snprintf
    - strlen
    - gf_strdup
    - gf_dm_url_info_del
    - gf_dm_parse_protocol
    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:
    - hmux_detach_session
    - gf_assert
    - curl_multi_init
    - strstr
    - strchr
    - gf_cache_get_content_length
    - gf_fatal_assert
    - gf_dynstrcat
    - gf_mx_v
    - curl_setup_session
    - gf_opts_get_bool
    - SET_LAST_ERR
    - gf_dm_sess_clear_headers
    - gf_sys_clock_high_res
    - dm_sess_sk_del
    - strnicmp
    - gf_cache_get_downtime
    - SSL_free
    - gf_mx_p
    - gf_cache_is_done
    - strcmp
    - gf_cache_remove_entry_from_session
    - GF_DownloadSession*::dm::local_cache_url_provider_cbk
    - gf_dm_sess_set_range
    - SSL_shutdown
    - gf_dm_configure_cache
    - sprintf
    - gf_dm_get_url_info
    - gf_fclose
    - gf_free
    - GF_LOG
    - gf_dm_url_info_init
    - gf_cache_is_deleted
    - gf_dm_sess_reload_cached_headers
    - gf_user_credentials_register
    - gf_strdup
    - gf_dm_url_info_del
    - gf_opts_get_key
    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_dm_disconnect
    - gf_mx_p
    - GF_DownloadSession*::do_requests
    - gf_dm_connect
    - gf_mx_v
    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_dm_sess_del
    - gf_free
    - gf_dm_session_do_task
    - gf_assert
    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_sleep
    - gf_dm_session_do_task
    - GF_LOG
    - gf_dm_sess_del
    - gf_th_id
    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_malloc
    - gf_opts_get_int
    - gf_mx_new
    - gf_dm_sess_setup_from_url
    - GF_LOG
    - gf_dm_sess_del
    - gf_assert
    - gf_sk_set_block_mode
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - gf_error_to_string
    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_server_setup_ssl
    - gf_dm_sess_new_internal
    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_dm_is_local
    - gf_mx_v
    - gf_mx_p
    - gf_dm_can_handle_url
    - gf_list_add
    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_sk_receive
    - SET_LAST_ERR
    - GF_LOG
    - gf_cache_get_content_length
    - gf_sys_clock_high_res
    - gf_mx_v
    - gf_cache_is_done
    - curl_read_data
    - gf_fread
    - gf_mx_p
    - GF_DownloadSession*::hmux_sess::data_received
    - gf_ssl_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: gf_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_list_count
    - hmux_detach_session
    - curl_connect
    - gf_sk_group_unregister
    - gf_dm_connect
    - gf_sk_group_register
    - gf_list_add
    - strstr
    - gf_dm_sess_notify_state
    - strchr
    - gf_mx_get_num_locks
    - http3_connect
    - gf_sk_connect
    - GF_DownloadSession*::hmux_sess::destroy
    - gf_list_get
    - gf_mx_v
    - gf_mx_del
    - gf_strcpy
    - atoi
    - SET_LAST_ERR
    - gf_sys_clock_high_res
    - GF_DownloadSession*::hmux_sess::setup_session
    - gf_sk_set_block_mode
    - gf_ssl_try_connect
    - gf_mx_p
    - strcmp
    - gf_sk_new_ex
    - gf_dm_configure_cache
    - gf_error_to_string
    - gf_sk_del
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_opts_get_bool
    - gf_opts_get_key
    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:
    - gf_dm_disconnect
    - SET_LAST_ERR
    - GF_LOG
    - gf_dm_sess_setup_from_url
    - gf_sys_clock
    - GF_DownloadSession*::do_requests
    - gf_dm_connect
    - gf_dm_sess_notify_state
    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_cache_get_mime_type
    - gf_assert
    - gf_dm_refresh_cache_entry
    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_get_end_range
    - gf_cache_set_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:
    - SET_LAST_ERR
    - gf_fs_post_user_task
    - GF_LOG
    - gf_dm_sess_flush_input
    - gf_file_basename
    - gf_th_new
    - GF_SAFEALLOC
    - GF_DownloadSession*::hmux_sess::write
    - GF_DownloadSession*::do_requests
    - gf_dm_connect
    - sess_connection_closed
    - gf_opts_get_bool
    - gf_th_run
    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_DownloadSession*::do_requests
    - gf_dm_connect
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_dm_sess_process_headers(GF_DownloadSession *sess)
  - BBCount: 16
    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: strlen
      Src: /src/gpac/src/utils/downloader.c:1948,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:1948,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/downloader.c:1948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1949,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:1950,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/downloader.c:1955,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/downloader.c:1956,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader.c:1957,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/downloader.c:1959,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/downloader.c:1960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:1962,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:1963,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader.c:1970,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader.c:1971,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1976,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1984,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1986,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1990,1
    - Dst: gf_cache_cleanup
      Src: /src/gpac/src/utils/downloader.c:1992,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1995,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader.c:1996,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader.c:1997,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:1999,1
    - Dst: gf_cache_cleanup
      Src: /src/gpac/src/utils/downloader.c:2006,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 94
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2008
      start: 1889
    functionDepth: 1
    functionLinenumber: 1889
    functionLinenumberEnd: 2008
    functionName: GF_DownloadManager *gf_dm_new(GF_FilterSession *fsess)
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_get_default_cache_directory
    - GF_SAFEALLOC
    - curl_multi_init
    - gf_malloc
    - gf_opts_get_int
    - gf_fopen
    - gf_mx_v
    - gf_strcpy
    - gf_opts_get_bool
    - curl_global_init
    - gf_mx_new
    - gf_mx_p
    - strcmp
    - gf_list_new
    - strlen
    - sprintf
    - gf_free
    - gf_fclose
    - GF_LOG
    - gf_strcat
    - curl_multi_setopt
    - gf_file_delete
    - gf_mkdir
    - gf_strdup
    - gf_cache_cleanup
    - gf_opts_get_key
    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: 2017
      start: 2010
    functionDepth: 0
    functionLinenumber: 2010
    functionLinenumberEnd: 2017
    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:2024,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2025,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/downloader.c:2026,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2028,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2029,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader.c:2030,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2031,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/downloader.c:2032,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2033,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2036,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_dm_sess_del
      Src: /src/gpac/src/utils/downloader.c:2042,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2044,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2046,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2047,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2048,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader.c:2049,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2050,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2052,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2054,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2055,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2056,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/downloader.c:2057,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2058,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2060,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2062,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2065,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/utils/downloader.c:2066,1
    - Dst: gf_cache_entry_set_delete_files_when_deleted
      Src: /src/gpac/src/utils/downloader.c:2068,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader.c:2069,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2071,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/downloader.c:2074,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2077,1
    - Dst: curl_multi_cleanup
      Src: /src/gpac/src/utils/downloader.c:2082,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader.c:2084,1
    - Dst: SSL_CTX_free
      Src: /src/gpac/src/utils/downloader.c:2088,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2091,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/downloader.c:2092,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2094,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 57
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2095
      start: 2019
    functionDepth: 1
    functionLinenumber: 2019
    functionLinenumberEnd: 2095
    functionName: gf_dm_del
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_front
    - gf_list_del
    - curl_multi_cleanup
    - gf_assert
    - gf_dm_sess_del
    - gf_mx_v
    - gf_cache_delete_entry
    - SSL_CTX_free
    - gf_mx_p
    - gf_file_delete
    - gf_list_get
    - gf_mx_del
    - gf_cache_entry_set_delete_files_when_deleted
    - gf_list_rem
    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:2111,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader.c:2123,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2132,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2135,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2157,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 47
    argCount: 3
    argNames:
    - sess
    - data
    - nbBytes
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2162
      start: 2105
    functionDepth: 1
    functionLinenumber: 2105
    functionLinenumberEnd: 2162
    functionName: gf_icy_skip_data
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_user_io
    - GF_LOG
    - gf_assert
    - memset
    - memcpy
    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:2177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2181,1
    - Dst: strstr
      Src: /src/gpac/src/utils/downloader.c:2201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2210,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:2215,1
    - Dst: strchr
      Src: /src/gpac/src/utils/downloader.c:2217,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/downloader.c:2219,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2231,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader.c:2231,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/downloader.c:2231,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2238,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: 2240
      start: 2165
    functionDepth: 1
    functionLinenumber: 2165
    functionLinenumberEnd: 2240
    functionName: gf_dm_get_chunk_data
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - strchr
    - GF_LOG
    - gf_sys_clock_high_res
    - strstr
    - gf_net_get_utc
    - strlen
    - sscanf
    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:2256,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2261,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2270,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2272
      start: 2243
    functionDepth: 2
    functionLinenumber: 2243
    functionLinenumberEnd: 2272
    functionName: dm_sess_update_download_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_log_tool_level_on
    - 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:2289,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader.c:2293,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2294,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2300,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/downloader.c:2322,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2323,1
    - Dst: dm_sess_update_download_rate
      Src: /src/gpac/src/utils/downloader.c:2330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2334,1
    - Dst: gf_icy_skip_data
      Src: /src/gpac/src/utils/downloader.c:2339,1
    - Dst: gf_cache_write_to_cache
      Src: /src/gpac/src/utils/downloader.c:2342,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2349,1
    - Dst: gf_cache_set_content_length
      Src: /src/gpac/src/utils/downloader.c:2363,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader.c:2364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2365,1
    - Dst: gf_cache_get_url
      Src: /src/gpac/src/utils/downloader.c:2366,1
    - Dst: gf_cache_get_cache_filename
      Src: /src/gpac/src/utils/downloader.c:2366,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader.c:2371,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/downloader.c:2372,1
    - Dst: gf_cache_cleanup
      Src: /src/gpac/src/utils/downloader.c:2373,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:2380,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:2384,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2385,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2388,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/utils/downloader.c:2388,1
    - Dst: gf_cache_get_url
      Src: /src/gpac/src/utils/downloader.c:2388,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader.c:2399,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:2407,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: 2409
      start: 2275
    functionDepth: 3
    functionLinenumber: 2275
    functionLinenumberEnd: 2409
    functionName: gf_dm_data_received
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 3
    functionsReached:
    - gf_dm_disconnect
    - gf_icy_skip_data
    - gf_cache_get_cache_filename
    - gf_assert
    - gf_file_basename
    - gf_cache_cleanup
    - gf_cache_close_write_cache
    - gf_dm_get_chunk_data
    - gf_cache_get_url
    - gf_realloc
    - dm_sess_update_download_rate
    - memcpy
    - gf_dm_sess_user_io
    - gf_sys_clock
    - gf_cache_set_content_length
    - gf_sys_clock_high_res
    - GF_LOG
    - gf_dm_data_received
    - memmove
    - gf_cache_write_to_cache
    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:2416,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2417,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:2418,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:2421,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2437,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2451,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2457,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 39
    argCount: 2
    argNames:
    - dm
    - for_sess
    argTypes:
    - GF_DownloadManager*
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2466
      start: 2411
    functionDepth: 1
    functionLinenumber: 2411
    functionLinenumberEnd: 2466
    functionName: dm_exceeds_cap_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sys_clock_high_res
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    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:2470,1
    - Dst: dm_sess_update_download_rate
      Src: /src/gpac/src/utils/downloader.c:2489,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - sess
    - nb_bytes
    argTypes:
    - GF_DownloadSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2493
      start: 2468
    functionDepth: 3
    functionLinenumber: 2468
    functionLinenumberEnd: 2493
    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:2531,1
    - Dst: GF_DownloadSession*::do_requests
      Src: /src/gpac/src/utils/downloader.c:2536,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2552,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader.c:2554,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2560,1
    - Dst: memmove
      Src: /src/gpac/src/utils/downloader.c:2563,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2571,1
    - Dst: gf_cache_get_content_length
      Src: /src/gpac/src/utils/downloader.c:2573,1
    - Dst: gf_cache_get_content
      Src: /src/gpac/src/utils/downloader.c:2575,1
    - Dst: gf_cache_is_done
      Src: /src/gpac/src/utils/downloader.c:2577,1
    - Dst: gf_cache_release_content
      Src: /src/gpac/src/utils/downloader.c:2584,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2587,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2592,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2603,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2608,1
    - Dst: gf_cache_release_content
      Src: /src/gpac/src/utils/downloader.c:2612,1
    - Dst: dm_exceeds_cap_rate
      Src: /src/gpac/src/utils/downloader.c:2616,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2634,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:2639,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader.c:2643,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:2645,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:2657,1
    - Dst: hmux_fetch_data
      Src: /src/gpac/src/utils/downloader.c:2670,1
    - Dst: GF_DownloadSession*::hmux_sess::write
      Src: /src/gpac/src/utils/downloader.c:2671,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2676,1
    - Dst: gf_dm_sess_estimate_chunk_rate
      Src: /src/gpac/src/utils/downloader.c:2693,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2702,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/downloader.c:2714,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:2717,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2720,1
    - Dst: sess_connection_closed
      Src: /src/gpac/src/utils/downloader.c:2721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:2723,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2726,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2742,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: 2746
      start: 2495
    functionDepth: 4
    functionLinenumber: 2495
    functionLinenumberEnd: 2746
    functionName: gf_dm_sess_fetch_data
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 3
    functionsReached:
    - gf_assert
    - gf_dm_connect
    - gf_cache_get_content_length
    - gf_cache_get_content
    - GF_DownloadSession*::hmux_sess::write
    - GF_DownloadSession*::do_requests
    - sess_connection_closed
    - memcpy
    - gf_cache_release_content
    - SET_LAST_ERR
    - dm_exceeds_cap_rate
    - hmux_fetch_data
    - gf_sys_clock_high_res
    - gf_sk_probe
    - gf_cache_is_done
    - gf_dm_sess_estimate_chunk_rate
    - gf_dm_read_data
    - gf_free
    - GF_LOG
    - gf_dm_data_received
    - memmove
    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: 2777
      start: 2748
    functionDepth: 0
    functionLinenumber: 2748
    functionLinenumberEnd: 2777
    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: 2784
      start: 2779
    functionDepth: 0
    functionLinenumber: 2779
    functionLinenumberEnd: 2784
    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:2792,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2793
      start: 2786
    functionDepth: 1
    functionLinenumber: 2786
    functionLinenumberEnd: 2793
    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:2799,1
    - Dst: GF_DownloadSession*::hmux_sess::stream_reset
      Src: /src/gpac/src/utils/downloader.c:2803,1
    - Dst: GF_DownloadSession*::hmux_sess::write
      Src: /src/gpac/src/utils/downloader.c:2804,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:2807,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:2810,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:2811,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2813
      start: 2795
    functionDepth: 3
    functionLinenumber: 2795
    functionLinenumberEnd: 2813
    functionName: gf_dm_sess_abort
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_dm_disconnect
    - SET_LAST_ERR
    - GF_DownloadSession*::hmux_sess::write
    - gf_mx_p
    - gf_mx_v
    - GF_DownloadSession*::hmux_sess::stream_reset
    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:3285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:3294,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader.c:3297,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader.c:3299,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:3301,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:3303,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:3304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:3305,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader.c:3305,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:3306,1
    - Dst: gf_cache_get_content_length
      Src: /src/gpac/src/utils/downloader.c:3313,1
    - Dst: hmux_flush_internal_data
      Src: /src/gpac/src/utils/downloader.c:3317,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:3320,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:3326,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/downloader.c:3327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:3328,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader.c:3328,1
    - Dst: gf_cache_set_content_length
      Src: /src/gpac/src/utils/downloader.c:3330,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:3334,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:3335,1
    - Dst: gf_dm_sess_notify_state
      Src: /src/gpac/src/utils/downloader.c:3336,1
    - Dst: hmux_flush_internal_data
      Src: /src/gpac/src/utils/downloader.c:3347,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader.c:3350,1
    - Dst: gf_dm_data_received
      Src: /src/gpac/src/utils/downloader.c:3354,1
    - Dst: gf_dm_sess_estimate_chunk_rate
      Src: /src/gpac/src/utils/downloader.c:3357,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 70
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3366
      start: 3274
    functionDepth: 4
    functionLinenumber: 3274
    functionLinenumberEnd: 3366
    functionName: http_parse_remaining_body
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_read_data
    - gf_dm_disconnect
    - SET_LAST_ERR
    - dm_exceeds_cap_rate
    - GF_LOG
    - gf_cache_get_content_length
    - gf_sys_clock_high_res
    - gf_assert
    - hmux_flush_internal_data
    - gf_dm_data_received
    - gf_cache_set_content_length
    - memcpy
    - gf_dm_sess_estimate_chunk_rate
    - gf_dm_sess_notify_state
    - gf_error_to_string
    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:3377,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:3379,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: 3381
      start: 3368
    functionDepth: 1
    functionLinenumber: 3368
    functionLinenumberEnd: 3381
    functionName: notify_error_body
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_user_io
    - strlen
    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:3385,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3386,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3387,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3388,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3389,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3390,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3391,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader.c:3392,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - comp
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3383
    functionDepth: 0
    functionLinenumber: 3383
    functionLinenumberEnd: 3394
    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:4472,1
    - Dst: gf_dm_disconnect
      Src: /src/gpac/src/utils/downloader.c:4474,1
    - Dst: memset
      Src: /src/gpac/src/utils/downloader.c:4476,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:4479,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/utils/downloader.c:4484,1
    - Dst: wait_for_header_and_parse
      Src: /src/gpac/src/utils/downloader.c:4491,1
    - Dst: http_send_headers
      Src: /src/gpac/src/utils/downloader.c:4493,1
    - Dst: http_send_headers
      Src: /src/gpac/src/utils/downloader.c:4498,1
    - Dst: wait_for_header_and_parse
      Src: /src/gpac/src/utils/downloader.c:4500,1
    - Dst: gf_icy_skip_data
      Src: /src/gpac/src/utils/downloader.c:4514,1
    - Dst: gf_dm_sess_user_io
      Src: /src/gpac/src/utils/downloader.c:4521,1
    - Dst: http_parse_remaining_body
      Src: /src/gpac/src/utils/downloader.c:4525,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 54
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4530
      start: 4466
    functionDepth: 5
    functionLinenumber: 4466
    functionLinenumberEnd: 4530
    functionName: http_do_requests
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_dm_disconnect
    - gf_dm_sess_user_io
    - gf_cache_is_in_progress
    - http_send_headers
    - http_parse_remaining_body
    - gf_icy_skip_data
    - gf_dm_sess_flush_async
    - wait_for_header_and_parse
    - memset
    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: 4539
      start: 4532
    functionDepth: 0
    functionLinenumber: 4532
    functionLinenumberEnd: 4539
    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: 4544
      start: 4540
    functionDepth: 0
    functionLinenumber: 4540
    functionLinenumberEnd: 4544
    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: 4549
      start: 4545
    functionDepth: 0
    functionLinenumber: 4545
    functionLinenumberEnd: 4549
    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:4561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:4563,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - cbk
    - param
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4566
      start: 4555
    functionDepth: 1
    functionLinenumber: 4555
    functionLinenumberEnd: 4566
    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:4572,1
    - Dst: gf_dm_wget_with_cache
      Src: /src/gpac/src/utils/downloader.c:4575,1
    - Dst: gf_dm_del
      Src: /src/gpac/src/utils/downloader.c:4576,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: 4578
      start: 4568
    functionDepth: 2
    functionLinenumber: 4568
    functionLinenumberEnd: 4578
    functionName: gf_dm_wget
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 4
    functionsReached:
    - gf_dm_new
    - gf_dm_wget_with_cache
    - gf_dm_del
    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:4588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader.c:4590,1
    - Dst: gf_dm_sess_new_simple
      Src: /src/gpac/src/utils/downloader.c:4593,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/utils/downloader.c:4605,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/downloader.c:4611,1
    - Dst: gf_cache_set_content_length
      Src: /src/gpac/src/utils/downloader.c:4614,1
    - Dst: gf_cache_close_write_cache
      Src: /src/gpac/src/utils/downloader.c:4615,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/downloader.c:4616,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/downloader.c:4619,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader.c:4621,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: 4623
      start: 4580
    functionDepth: 1
    functionLinenumber: 4580
    functionLinenumberEnd: 4623
    functionName: gf_dm_wget_with_cache
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_sleep
    - gf_fclose
    - gf_fopen
    - gf_dm_sess_new_simple
    - GF_LOG
    - gf_strdup
    - gf_cache_set_content_length
    - gf_dm_sess_del
    - gf_dm_sess_process
    - gf_cache_close_write_cache
    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: 4629
      start: 4625
    functionDepth: 0
    functionLinenumber: 4625
    functionLinenumberEnd: 4629
    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:4643,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/downloader.c:4645,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: 4647
      start: 4633
    functionDepth: 1
    functionLinenumber: 4633
    functionLinenumberEnd: 4647
    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: 4653
      start: 4649
    functionDepth: 0
    functionLinenumber: 4649
    functionLinenumberEnd: 4653
    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:4661,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader.c:4662,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:4665,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader.c:4669,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/downloader.c:4676,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - dm
    argTypes:
    - GF_DownloadManager*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4678
      start: 4655
    functionDepth: 1
    functionLinenumber: 4655
    functionLinenumberEnd: 4678
    functionName: gf_dm_get_global_rate
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - gf_sys_clock_high_res
    - gf_mx_p
    - gf_mx_v
    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: 4692
      start: 4680
    functionDepth: 0
    functionLinenumber: 4680
    functionLinenumberEnd: 4692
    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: 4706
      start: 4694
    functionDepth: 0
    functionLinenumber: 4694
    functionLinenumberEnd: 4706
    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: 4714
      start: 4708
    functionDepth: 0
    functionLinenumber: 4708
    functionLinenumberEnd: 4714
    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:4721,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader.c:4723,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/downloader.c:4724,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - sess
    - name
    argTypes:
    - GF_DownloadSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4727
      start: 4716
    functionDepth: 1
    functionLinenumber: 4716
    functionLinenumberEnd: 4727
    functionName: gf_dm_sess_get_header
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - stricmp
    - gf_list_get
    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:4735,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: 4741
      start: 4729
    functionDepth: 1
    functionLinenumber: 4729
    functionLinenumberEnd: 4741
    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: 4755
      start: 4743
    functionDepth: 0
    functionLinenumber: 4743
    functionLinenumberEnd: 4755
    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: 4768
      start: 4757
    functionDepth: 0
    functionLinenumber: 4757
    functionLinenumberEnd: 4768
    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:4776,1
    - Dst: GF_DownloadSession*::hmux_sess::async_flush
      Src: /src/gpac/src/utils/downloader.c:4783,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader.c:4791,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: 4796
      start: 4771
    functionDepth: 2
    functionLinenumber: 4771
    functionLinenumberEnd: 4796
    functionName: gf_dm_sess_flush_async_close
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_sk_select
    - dm_sess_write
    - 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:4800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sess
    - no_select
    argTypes:
    - GF_DownloadSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4801
      start: 4798
    functionDepth: 3
    functionLinenumber: 4798
    functionLinenumberEnd: 4801
    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:4804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4805
      start: 4802
    functionDepth: 3
    functionLinenumber: 4802
    functionLinenumberEnd: 4805
    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: 4816
      start: 4807
    functionDepth: 0
    functionLinenumber: 4807
    functionLinenumberEnd: 4816
    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:4825,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader.c:4838,1
    - Dst: sess_connection_closed
      Src: /src/gpac/src/utils/downloader.c:4841,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/utils/downloader.c:4849,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 3
    argNames:
    - sess
    - data
    - size
    argTypes:
    - GF_DownloadSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4852
      start: 4818
    functionDepth: 2
    functionLinenumber: 4818
    functionLinenumberEnd: 4852
    functionName: gf_dm_sess_send
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 1
    functionsReached:
    - gf_dm_sess_send
    - dm_sess_write
    - hmux_send_payload
    - sess_connection_closed
    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: 4857
      start: 4854
    functionDepth: 0
    functionLinenumber: 4854
    functionLinenumberEnd: 4857
    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:4864,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/downloader.c:4866,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - sess
    - sg
    argTypes:
    - GF_DownloadSession*
    - GF_SockGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4870
      start: 4859
    functionDepth: 1
    functionLinenumber: 4859
    functionLinenumberEnd: 4870
    functionName: gf_dm_sess_set_sock_group
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_sk_group_register
    - gf_sk_group_unregister
    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:4876,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/downloader.c:4877,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader.c:4879,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader.c:4886,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4887
      start: 4872
    functionDepth: 4
    functionLinenumber: 4872
    functionLinenumberEnd: 4887
    functionName: gf_dm_sess_detach_async
    functionSourceFile: /src/gpac/src/utils/downloader.c
    functionUses: 0
    functionsReached:
    - gf_sk_set_block_mode
    - gf_sleep
    - gf_dm_sess_flush_async
    - gf_mx_new
    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: 4892
      start: 4889
    functionDepth: 0
    functionLinenumber: 4889
    functionLinenumberEnd: 4892
    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: 4897
      start: 4894
    functionDepth: 0
    functionLinenumber: 4894
    functionLinenumberEnd: 4897
    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_list_count
    - gf_free
    - gf_list_del
    - ModuleInstance*::destroy_func
    - FreeLibrary
    - dlclose
    - gf_list_get
    - 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:
    - dlopen
    - sprintf
    - SetDllDirectory
    - CE_CharToWide
    - GF_LOG
    - _T
    - LoadLibrary
    - dlsym
    - GetProcAddress
    - GetLastError
    - dlerror
    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
    - FreeLibrary
    - strcmp
    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:
    - dlopen
    - gf_free
    - GF_LOG
    - FreeLibrary
    - _T
    - LoadLibrary
    - gf_module_is_loaded
    - dlsym
    - GetProcAddress
    - dlclose
    - GF_SAFEALLOC
    - dlerror
    - strrchr
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - strncmp
    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_list_count
    - gf_free
    - GF_LOG
    - gf_list_get
    - gf_module_is_loaded
    - GF_SAFEALLOC
    - gf_list_new
    - 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_LOG
    - gf_list_count
    - load_static_modules
    - gf_enum_directory
    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:
    - strlen
    - strstr
    - strnicmp
    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:
    - strchr
    - gf_url_concatenate
    - strlen
    - gf_strdup
    - URL_GetProtocolType
    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: gf_strdup
      Src: /src/gpac/src/utils/url.c:214,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:215,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:218,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:224,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:225,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:226,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:229,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:231,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:235,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:235,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:237,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:237,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:239,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:239,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:241,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:241,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/url.c:245,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:246,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:246,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:246,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/url.c:247,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:249,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:250,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:255,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:256,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:256,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:256,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:256,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:257,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:261,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:261,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:263,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:263,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:265,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:265,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:267,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:267,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/utils/url.c:271,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:272,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:280,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:284,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:288,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:310,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:313,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:313,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:314,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:317,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:319,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:320,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:322,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:328,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:330,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:332,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:333,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:337,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:345,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/url.c:349,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:359,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:365,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:370,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:381,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:382,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/url.c:387,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:395,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:397,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:399,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/url.c:401,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:404,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:405,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:405,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/url.c:406,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:409,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:421,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/url.c:422,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:424,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:424,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/url.c:428,1
    CyclomaticComplexity: 125
    EdgeCount: 125
    ICount: 251
    argCount: 3
    argNames:
    - parentName
    - pathName
    - relative_to_parent
    argTypes:
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 162
    functionDepth: 1
    functionLinenumber: 162
    functionLinenumberEnd: 430
    functionName: gf_url_concatenate_ex
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - gf_url_concatenate
    - strstr
    - strchr
    - gf_malloc
    - gf_fileio_url
    - gf_dynstrcat
    - gf_fileio_from_url
    - strnicmp
    - strrchr
    - strcmp
    - strlen
    - URL_GetProtocolType
    - sprintf
    - gf_free
    - GF_LOG
    - gf_fileio_open_url
    - gf_strdup
    - memmove
    - strncmp
    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:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - parentName
    - pathName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 431
    functionDepth: 2
    functionLinenumber: 431
    functionLinenumberEnd: 435
    functionName: gf_url_concatenate
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 42
    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:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - parentName
    - pathName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 436
    functionDepth: 2
    functionLinenumber: 436
    functionLinenumberEnd: 440
    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:445,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:447,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:448,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:448,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:450,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:450,1
    - Dst: strstr
      Src: /src/gpac/src/utils/url.c:455,1
    - Dst: memmove
      Src: /src/gpac/src/utils/url.c:458,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:458,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 460
    functionName: gf_url_to_fs_path
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - memmove
    - strlen
    - strstr
    - strnicmp
    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:472,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:476,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:478,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:478,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:485,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:486,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/url.c:487,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:494,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:497,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:497,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/url.c:506,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 45
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 466
    functionDepth: 0
    functionLinenumber: 466
    functionLinenumberEnd: 517
    functionName: gf_url_percent_encode
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 1
    functionsReached:
    - sprintf
    - strchr
    - gf_malloc
    - strlen
    - gf_strdup
    - memcpy
    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:525,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/url.c:534,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/url.c:535,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/url.c:546,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - path
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 556
    functionName: gf_url_percent_decode
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - sscanf
    - gf_malloc
    - 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:563,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/url.c:564,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 567
    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:572,1
    - Dst: strchr
      Src: /src/gpac/src/utils/url.c:574,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 569
    functionDepth: 0
    functionLinenumber: 569
    functionLinenumberEnd: 577
    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:583,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 580
    functionDepth: 0
    functionLinenumber: 580
    functionLinenumberEnd: 584
    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: gf_strcpy
      Src: /src/gpac/src/utils/url.c:589,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:590,1
    - Dst: strlen
      Src: /src/gpac/src/utils/url.c:591,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - sURL
    - res_path
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 587
    functionDepth: 1
    functionLinenumber: 587
    functionLinenumberEnd: 596
    functionName: gf_url_remove_last_delimiter
    functionSourceFile: /src/gpac/src/utils/url.c
    functionUses: 0
    functionsReached:
    - gf_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:599,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - sURL
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 598
    functionDepth: 0
    functionLinenumber: 598
    functionLinenumberEnd: 602
    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
    - strlen
    - memset
    - memcpy
    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:
    - socket
    - closesocket
    - WSAStartup
    - WSACleanup
    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: 1
    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: gf_strlcpy
      Src: /src/gpac/src/utils/os_net.c:532,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_net.c:534,1
    - Dst: memmove
      Src: /src/gpac/src/utils/os_net.c:535,1
    - Dst: getaddrinfo
      Src: /src/gpac/src/utils/os_net.c:540,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 5
    argNames:
    - PeerName
    - PortNumber
    - family
    - flags
    - sock_type
    argTypes:
    - char*
    - u16
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 506
    functionDepth: 1
    functionLinenumber: 506
    functionLinenumberEnd: 542
    functionName: gf_sk_get_ipv6_addr
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - sprintf
    - WSAStartup
    - getaddrinfo
    - memmove
    - strlen
    - memset
    - gf_strlcpy
    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:548,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:548,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:549,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:554,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:562,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:564,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:565,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:566,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:569,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:573,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:574,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:576,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:577,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:591,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:592,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:593,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:596,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:598,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:599,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:607,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:612,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:615,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:620,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:621,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:622,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:623,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:626,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:627,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:629,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:630,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:635,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:639,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: 642
      start: 544
    functionDepth: 1
    functionLinenumber: 544
    functionLinenumberEnd: 642
    functionName: gf_sk_get_ifce_ipv6_addr
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_free
    - malloc
    - GetAdaptersAddresses
    - inet_ntop
    - gf_net_is_ipv6
    - gf_sk_get_ipv6_addr
    - gf_wcs_to_utf8
    - my_inet_ntop
    - freeifaddrs
    - getifaddrs
    - strcmp
    - memset
    - free
    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:649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buffer
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 646
    functionDepth: 0
    functionLinenumber: 646
    functionLinenumberEnd: 651
    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:659,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:666,1
    - Dst: getnameinfo
      Src: /src/gpac/src/utils/os_net.c:668,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_net.c:671,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/os_net.c:675,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:679,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/os_net.c:680,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_net.c:683,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - sock
    - buffer
    argTypes:
    - GF_Socket*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 686
    functionName: gf_sk_get_local_ip
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - getnameinfo
    - getsockname
    - gf_strlcpy
    - inet_ntoa
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_local_ip(GF_Socket *sock, char buffer[GF_MAX_IP_NAME_LEN])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:814,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:816,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:817,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - id
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 824
      start: 811
    functionDepth: 1
    functionLinenumber: 811
    functionLinenumberEnd: 824
    functionName: gf_net_filter_get
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:831,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/os_net.c:832,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/os_net.c:834,1
    - Dst: close
      Src: /src/gpac/src/utils/os_net.c:837,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_net.c:839,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:840,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/os_net.c:844,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:846,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:848,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:850,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_list_del
      Src: /src/gpac/src/utils/os_net.c:855,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 829
    functionDepth: 1
    functionLinenumber: 829
    functionLinenumberEnd: 857
    functionName: gf_net_close_capture
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fclose
    - gf_free
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    - close
    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:862,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_net.c:864,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/utils/os_net.c:865,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/utils/os_net.c:866,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/utils/os_net.c:870,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/utils/os_net.c:871,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:874,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/utils/os_net.c:877,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:878,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:880,1
    - Dst: gf_bs_write_u16
      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_u32
      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_u16
      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: strcmp
      Src: /src/gpac/src/utils/os_net.c:888,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:891,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_u16
      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_u64
      Src: /src/gpac/src/utils/os_net.c:896,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:897,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:899,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:900,1
    - Dst: gf_bs_write_u16
      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_u32
      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:907,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:908,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_net.c:910,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:912,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:915,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 859
    functionDepth: 1
    functionLinenumber: 859
    functionLinenumberEnd: 918
    functionName: gf_netcap_record
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_file_ext_start
    - gf_fopen
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_net_get_ntp
    - gf_bs_from_file
    - gf_bs_from_fd
    - gf_bs_write_u64
    - gf_fd_open
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_fopen_ex
    - strcmp
    - gf_opts_get_bool
    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:922,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/os_net.c:923,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:924,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:931,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_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:934,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:950,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/utils/os_net.c:951,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:954,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:955,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:961,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:967,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:970,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:974,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:977,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:981,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:983,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/utils/os_net.c:989,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:990,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 66
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 920
    functionDepth: 1
    functionLinenumber: 920
    functionLinenumberEnd: 1001
    functionName: gf_netcap_load_pck_gpac
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_read_u64
    - GF_LOG
    - gf_bs_is_overflow
    - gf_sys_clock_high_res
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_available
    - 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:1012,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1013,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1014,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1015,1
    - Dst: ntohl
      Src: /src/gpac/src/utils/os_net.c:1017,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1020,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1023,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1026,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - nf
    - is_init
    argTypes:
    - GF_NetcapFilter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 1010
    functionDepth: 2
    functionLinenumber: 1010
    functionLinenumberEnd: 1029
    functionName: pcapng_load_shb
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_4CC
    - gf_net_close_capture
    - ntohl
    - gf_bs_read_u32
    - gf_bs_skip_bytes
    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:1034,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1037,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1037,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/utils/os_net.c:1038,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1038,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1047,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1051
      start: 1031
    functionDepth: 1
    functionLinenumber: 1031
    functionLinenumberEnd: 1051
    functionName: pcapng_load_idb
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u16
    - GF_LOG
    - gf_bs_read_u32_le
    - gf_bs_read_u32
    - gf_bs_read_u16_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:1073,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1076,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/os_net.c:1080,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/os_net.c:1084,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1089,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1089,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1090,1
    - Dst: pcapng_load_shb
      Src: /src/gpac/src/utils/os_net.c:1091,1
    - Dst: pcapng_load_idb
      Src: /src/gpac/src/utils/os_net.c:1098,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1102,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1104,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1109,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1113,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1113,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1123,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
      Src: /src/gpac/src/utils/os_net.c:1128,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_LOG
      Src: /src/gpac/src/utils/os_net.c:1134,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1145,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1145,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1156,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1157,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1171,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1177,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1178,1
    - Dst: gf_bs_read_u8
      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_data
      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_u8
      Src: /src/gpac/src/utils/os_net.c:1197,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:1198,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1199,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/utils/os_net.c:1211,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1216,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/os_net.c:1217,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1218,1
    - Dst: gf_bs_read_u32_le
      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_u16
      Src: /src/gpac/src/utils/os_net.c:1225,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1226,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1227,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1232,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/utils/os_net.c:1233,1
    - Dst: gf_bs_read_u32
      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_int
      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_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1238,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1240,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/utils/os_net.c:1247,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1248,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:1270,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 182
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1064
    functionDepth: 3
    functionLinenumber: 1064
    functionLinenumberEnd: 1276
    functionName: gf_netcap_load_pck_pcap
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - GF_LOG
    - gf_bs_is_overflow
    - GF_4CC
    - gf_bs_read_u32_le
    - gf_sys_clock_high_res
    - pcapng_load_idb
    - pcapng_load_shb
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_available
    - 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:1287,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1291,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1293,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:1294,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1295,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:1296,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1297,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:1298,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1299,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_net.c:1301,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1302,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1303,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1320,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1324,1
    - Dst: gf_free
      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_net_filter_get
      Src: /src/gpac/src/utils/os_net.c:1331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1333,1
    - Dst: gf_free
      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_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:1340,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1342,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_list_new
      Src: /src/gpac/src/utils/os_net.c:1352,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:1354,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_list_new
      Src: /src/gpac/src/utils/os_net.c:1360,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:1361,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1381,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1383,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1389,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:1394,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:1396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1398,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1403,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1408,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1413,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1416,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1419,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1423,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1427,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:1430,1
    - Dst: strtol
      Src: /src/gpac/src/utils/os_net.c:1431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1435,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:1438,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1441,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:1450,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:1463,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:1467,1
    - Dst: gf_netcap_record
      Src: /src/gpac/src/utils/os_net.c:1470,1
    - Dst: gf_netcap_playback
      Src: /src/gpac/src/utils/os_net.c:1474,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 189
    argCount: 1
    argNames:
    - rules
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1280
    functionDepth: 2
    functionLinenumber: 1280
    functionLinenumberEnd: 1478
    functionName: gf_netcap_setup
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_free
    - atoi
    - GF_LOG
    - gf_netcap_playback
    - strtol
    - gf_netcap_record
    - gf_net_filter_get
    - GF_SAFEALLOC
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - strncmp
    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:1495,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_net.c:1536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1573,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_net.c:1576,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_net.c:1580,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1584,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: 1589
      start: 1480
    functionDepth: 1
    functionLinenumber: 1480
    functionLinenumberEnd: 1589
    functionName: netcap_filter_pck
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_rand
    - 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:1601,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/os_net.c:1606,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1609,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/os_net.c:1617,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/os_net.c:1618,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/os_net.c:1628,1
    - Dst: gf_netcap_load_pck_gpac
      Src: /src/gpac/src/utils/os_net.c:1637,1
    - Dst: gf_netcap_load_pck_pcap
      Src: /src/gpac/src/utils/os_net.c:1639,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1647,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1654,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/os_net.c:1665,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/os_net.c:1672,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/os_net.c:1683,1
    - Dst: netcap_filter_pck
      Src: /src/gpac/src/utils/os_net.c:1701,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1705,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 104
    argCount: 2
    argNames:
    - nf
    - now
    argTypes:
    - GF_NetcapFilter*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1709
      start: 1591
    functionDepth: 4
    functionLinenumber: 1591
    functionLinenumberEnd: 1709
    functionName: gf_netcap_load_pck
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_netcap_load_pck_pcap
    - netcap_filter_pck
    - GF_LOG
    - memcmp
    - gf_list_enum
    - gf_bs_seek
    - gf_netcap_load_pck_gpac
    - gf_bs_available
    - 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:1714,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/utils/os_net.c:1715,1
    - Dst: gf_bs_from_fd
      Src: /src/gpac/src/utils/os_net.c:1716,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/utils/os_net.c:1720,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/utils/os_net.c:1721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1724,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_net.c:1727,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1729,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1732,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1735,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1737,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1741,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/os_net.c:1744,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1748,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1749,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/os_net.c:1749,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1753,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_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1756,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1761,1
    - Dst: gf_bs_read_int
      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: ntohl
      Src: /src/gpac/src/utils/os_net.c:1764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1772,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1773,1
    - Dst: pcapng_load_shb
      Src: /src/gpac/src/utils/os_net.c:1779,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/utils/os_net.c:1782,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/os_net.c:1782,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_net.c:1784,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1785,1
    - Dst: pcapng_load_idb
      Src: /src/gpac/src/utils/os_net.c:1788,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 77
    argCount: 1
    argNames:
    - nf
    argTypes:
    - GF_NetcapFilter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1711
    functionDepth: 3
    functionLinenumber: 1711
    functionLinenumberEnd: 1791
    functionName: gf_netcap_playback
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - GF_4CC
    - gf_net_close_capture
    - gf_bs_from_file
    - gf_bs_from_fd
    - gf_bs_read_u32_le
    - gf_fd_open
    - gf_bs_read_int
    - pcapng_load_shb
    - ntohl
    - pcapng_load_idb
    - gf_fopen_ex
    - gf_list_new
    - gf_opts_get_bool
    - gf_bs_read_u32
    - gf_4cc_to_str
    - gf_bs_skip_bytes
    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:1822,1
    - 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_net_get_ntp
      Src: /src/gpac/src/utils/os_net.c:1827,1
    - Dst: gf_bs_write_u32
      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_timestamp_rescale
      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_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:1833,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1838,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1839,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/utils/os_net.c:1840,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1841,1
    - Dst: gf_bs_write_u8
      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_data
      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_int
      Src: /src/gpac/src/utils/os_net.c:1848,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/os_net.c:1849,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1850,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1852,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1853,1
    - Dst: gf_bs_write_u8
      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_u16
      Src: /src/gpac/src/utils/os_net.c:1866,1
    - Dst: gf_bs_write_u32_le
      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_u16
      Src: /src/gpac/src/utils/os_net.c:1872,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_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1876,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1880,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1881,1
    - Dst: gf_bs_write_u32
      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_int
      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_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1886,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1889,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:1891,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1892,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: 1896
      start: 1793
    functionDepth: 1
    functionLinenumber: 1793
    functionLinenumberEnd: 1896
    functionName: gf_netcap_send_pcap
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - gf_timestamp_rescale
    - gf_net_get_ntp
    - gf_bs_write_u32_le
    - gf_bs_write_u16
    - gf_bs_write_u24
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_bs_write_u8
    - 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:1901,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1924,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/os_net.c:1925,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/utils/os_net.c:1926,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1928,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1930,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1932,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/os_net.c:1934,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1936,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/os_net.c:1938,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/os_net.c:1939,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: 1942
      start: 1899
    functionDepth: 1
    functionLinenumber: 1899
    functionLinenumberEnd: 1942
    functionName: gf_netcap_send_gpac
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_sys_clock_high_res
    - gf_bs_write_u64
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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:1948,1
    - Dst: gf_netcap_send_pcap
      Src: /src/gpac/src/utils/os_net.c:1950,1
    - Dst: gf_netcap_send_gpac
      Src: /src/gpac/src/utils/os_net.c:1952,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: 1954
      start: 1944
    functionDepth: 2
    functionLinenumber: 1944
    functionLinenumberEnd: 1954
    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: 1961
      start: 1957
    functionDepth: 0
    functionLinenumber: 1957
    functionLinenumberEnd: 1961
    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:1971,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:1982,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:1986,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:1995,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:1997,1
    - Dst: gf_net_filter_get
      Src: /src/gpac/src/utils/os_net.c:2008,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:2010,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2012,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:2016,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 2
    argNames:
    - SocketType
    - netcap_id
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2021
      start: 1963
    functionDepth: 2
    functionLinenumber: 1963
    functionLinenumberEnd: 2021
    functionName: gf_sk_new_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 9
    functionsReached:
    - gf_free
    - GF_LOG
    - WSAStartup
    - gf_net_filter_get
    - GF_SAFEALLOC
    - memset
    - gf_list_add
    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:2026,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - SocketType
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2027
      start: 2023
    functionDepth: 3
    functionLinenumber: 2023
    functionLinenumberEnd: 2027
    functionName: gf_sk_new
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 4
    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:2034,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2037,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2042,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2044,1
    - Dst: getsockopt
      Src: /src/gpac/src/utils/os_net.c:2048,1
    - Dst: getsockopt
      Src: /src/gpac/src/utils/os_net.c:2050,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2053,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - sock
    - SendBuffer
    - NewSize
    argTypes:
    - GF_Socket*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2057
      start: 2029
    functionDepth: 1
    functionLinenumber: 2029
    functionLinenumberEnd: 2057
    functionName: gf_sk_set_buffer_size
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 6
    functionsReached:
    - getsockopt
    - gf_errno_str
    - GF_LOG
    - setsockopt
    - SOCKET_INVALID
    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:2065,1
    - Dst: ioctlsocket
      Src: /src/gpac/src/utils/os_net.c:2066,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2070,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_net.c:2071,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_net.c:2077,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - sock
    - NonBlockingOn
    argTypes:
    - GF_Socket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2087
      start: 2059
    functionDepth: 1
    functionLinenumber: 2059
    functionLinenumberEnd: 2087
    functionName: gf_sk_set_block_mode
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 5
    functionsReached:
    - ioctlsocket
    - SOCKET_INVALID
    - fcntl
    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: 2097
      start: 2092
    functionDepth: 0
    functionLinenumber: 2092
    functionLinenumberEnd: 2097
    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: 2102
      start: 2099
    functionDepth: 0
    functionLinenumber: 2099
    functionLinenumberEnd: 2102
    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:2107,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2108,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2117,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2119,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2123,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2128,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2133
      start: 2105
    functionDepth: 1
    functionLinenumber: 2105
    functionLinenumberEnd: 2133
    functionName: gf_sk_free
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - sock_close
    - gf_assert
    - setsockopt
    - SOCKET_INVALID
    - memcpy
    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:2139,1
    - Dst: gf_sk_free
      Src: /src/gpac/src/utils/os_net.c:2140,1
    - Dst: WSACleanup
      Src: /src/gpac/src/utils/os_net.c:2143,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_net.c:2149,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2150,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2154
      start: 2136
    functionDepth: 2
    functionLinenumber: 2136
    functionLinenumberEnd: 2154
    functionName: gf_sk_del
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 20
    functionsReached:
    - gf_sk_free
    - gf_free
    - gf_list_del_item
    - gf_assert
    - 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:2161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2163
      start: 2156
    functionDepth: 0
    functionLinenumber: 2156
    functionLinenumberEnd: 2163
    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: 2169
      start: 2165
    functionDepth: 0
    functionLinenumber: 2165
    functionLinenumberEnd: 2169
    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: 2176
      start: 2171
    functionDepth: 0
    functionLinenumber: 2171
    functionLinenumberEnd: 2176
    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:2181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - PeerName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2183
      start: 2179
    functionDepth: 1
    functionLinenumber: 2179
    functionLinenumberEnd: 2183
    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:2204,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2205,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2207,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_net.c:2210,1
    - Dst: connect
      Src: /src/gpac/src/utils/os_net.c:2212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2213,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2225,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2226,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2228,1
    - Dst: gf_sk_get_ifce_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2232,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2246,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2248,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2252,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2255,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2264,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2265,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2270,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2271,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2272,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2277,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2284,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2286,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2296,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/os_net.c:2297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2305,1
    - Dst: connect
      Src: /src/gpac/src/utils/os_net.c:2309,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2318,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2319,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2330,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2333,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2334,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2339,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2339,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2345,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2354,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2356,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2358,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2359,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2362,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2363,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2372,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2374,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2388,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2389,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2391,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:2396,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:2398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2400,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/os_net.c:2401,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2403,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2403,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2414,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2415,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/utils/os_net.c:2419,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2432,1
    - Dst: connect
      Src: /src/gpac/src/utils/os_net.c:2436,1
    - Dst: gf_sk_select
      Src: /src/gpac/src/utils/os_net.c:2455,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2478,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2478,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2484,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: 2488
      start: 2191
    functionDepth: 2
    functionLinenumber: 2191
    functionLinenumberEnd: 2488
    functionName: gf_sk_connect_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - sock_close
    - gf_sk_get_ifce_ipv6_addr
    - bind
    - gf_sk_bind
    - connect
    - gf_sk_get_ipv6_addr
    - SOCKET_INVALID
    - memcpy
    - gf_strcpy
    - socket
    - gf_sk_set_block_mode
    - gf_sk_probe
    - gf_gethostbyname
    - inet_addr
    - gf_errno_str
    - GF_LOG
    - gf_sk_select
    - freeaddrinfo
    - setsockopt
    - inet_addr_from_name
    - htons
    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:2493,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: 2495
      start: 2490
    functionDepth: 3
    functionLinenumber: 2490
    functionLinenumberEnd: 2495
    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:2524,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2525,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2531,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2533,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_net.c:2535,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2536,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/utils/os_net.c:2539,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2541,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2544,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2553,1
    - Dst: gf_net_has_ipv6
      Src: /src/gpac/src/utils/os_net.c:2561,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2566,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2574,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2576,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2579,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2580,1
    - Dst: gf_sk_get_ifce_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:2585,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2588,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:2598,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2604,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2606,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:2611,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:2615,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2616,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2624,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2626,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2633,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2634,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2639,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2642,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2647,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2655,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2659,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2662,1
    - Dst: sock_close
      Src: /src/gpac/src/utils/os_net.c:2665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2669,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2669,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2677,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2678,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2682,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:2685,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2687,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2690,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2698,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2701,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:2711,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:2713,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:2716,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:2719,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:2724,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2724,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2726,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:2732,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2737,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2738,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2744,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:2747,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:2754,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:2758,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:2762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2767,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2767,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:2773,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:2775,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/os_net.c:2777,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2779,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_net.c:2784,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:2785,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2792,1
    CyclomaticComplexity: 84
    EdgeCount: 84
    ICount: 223
    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: 2796
      start: 2498
    functionDepth: 2
    functionLinenumber: 2498
    functionLinenumberEnd: 2796
    functionName: gf_sk_bind_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - sock_close
    - gf_sk_get_ifce_ipv6_addr
    - bind
    - gf_net_has_ipv6
    - gf_sk_connect
    - gf_malloc
    - gf_sk_get_ipv6_addr
    - SOCKET_INVALID
    - gf_net_is_ipv6
    - memcpy
    - gf_strcpy
    - socket
    - gf_sk_set_block_mode
    - gf_gethostbyname
    - strcmp
    - inet_addr
    - ntohs
    - gf_free
    - gf_errno_str
    - GF_LOG
    - freeaddrinfo
    - setsockopt
    - inet_addr_from_name
    - htons
    - memset
    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:2801,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: 2802
      start: 2798
    functionDepth: 3
    functionLinenumber: 2798
    functionLinenumberEnd: 2802
    functionName: gf_sk_bind
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 8
    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:2827,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2834,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2834,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:2853,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:2854,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:2856,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:2858,1
    - Dst: select
      Src: /src/gpac/src/utils/os_net.c:2862,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2873,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2873,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:2879,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:2881,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: 2886
      start: 2806
    functionDepth: 1
    functionLinenumber: 2806
    functionLinenumberEnd: 2886
    functionName: poll_select
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - FD_SET
    - select
    - gf_errno_str
    - GF_LOG
    - poll
    - FD_ISSET
    - 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:2896,1
    - Dst: gf_netcap_send
      Src: /src/gpac/src/utils/os_net.c:2906,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:2914,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:2919,1
    - Dst: sendto
      Src: /src/gpac/src/utils/os_net.c:2931,1
    - Dst: sendto
      Src: /src/gpac/src/utils/os_net.c:2933,1
    - Dst: send
      Src: /src/gpac/src/utils/os_net.c:2935,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2946,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2946,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2955,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2955,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2958,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:2958,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:2964,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: 2967
      start: 2889
    functionDepth: 3
    functionLinenumber: 2889
    functionLinenumberEnd: 2967
    functionName: gf_sk_send_internal
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - netcap_filter_pck
    - gf_errno_str
    - GF_LOG
    - sendto
    - SOCKET_INVALID
    - send
    - gf_netcap_send
    - poll_select
    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:2972,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: 2973
      start: 2969
    functionDepth: 4
    functionLinenumber: 2969
    functionLinenumberEnd: 2973
    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:2977,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - sock
    - buffer
    - length
    argTypes:
    - GF_Socket*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2978
      start: 2974
    functionDepth: 4
    functionLinenumber: 2974
    functionLinenumberEnd: 2978
    functionName: gf_sk_send
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 6
    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:2982,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: 2983
      start: 2979
    functionDepth: 4
    functionLinenumber: 2979
    functionLinenumberEnd: 2983
    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:2989,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:2993,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - sock
    - mode
    argTypes:
    - GF_Socket*
    - GF_SockSelectMode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2994
      start: 2986
    functionDepth: 2
    functionLinenumber: 2986
    functionLinenumberEnd: 2994
    functionName: gf_sk_select
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - SOCKET_INVALID
    - poll_select
    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:3005,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:3007,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:3008,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_net.c:3009,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_net.c:3011,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3013,1
    - Dst: IN_MULTICAST
      Src: /src/gpac/src/utils/os_net.c:3017,1
    - Dst: ntohl
      Src: /src/gpac/src/utils/os_net.c:3017,1
    - Dst: IN6_IS_ADDR_MULTICAST
      Src: /src/gpac/src/utils/os_net.c:3019,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3021,1
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:3025,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3025,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 1
    argNames:
    - multi_IPAdd
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3026
      start: 2997
    functionDepth: 1
    functionLinenumber: 2997
    functionLinenumberEnd: 3026
    functionName: gf_sk_is_multicast_address
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 8
    functionsReached:
    - IN_MULTICAST
    - strchr
    - IN6_IS_ADDR_MULTICAST
    - freeaddrinfo
    - strnicmp
    - gf_net_is_ipv6
    - gf_sk_get_ipv6_addr
    - ntohl
    - htonl
    - inet_addr
    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:3041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3042,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3045,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3046,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3048,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3053,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3059,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3059,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3065,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3067,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3067,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3076,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3076,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3087,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3088,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3092,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3096,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3099,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3105,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: 3108
      start: 3028
    functionDepth: 1
    functionLinenumber: 3028
    functionLinenumberEnd: 3108
    functionName: sk_join_ipv4
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_errno_str
    - GF_LOG
    - gf_net_is_ipv6
    - setsockopt
    - strcmp
    - inet_addr
    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:3112,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_net.c:3114,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3115,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3121,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3124,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3125,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3126,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3129,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3134,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3135,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3137,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3138,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3150,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:3155,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3158,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:3167,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3170,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3174,1
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:3175,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 53
    argCount: 1
    argNames:
    - local_interface
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3178
      start: 3110
    functionDepth: 1
    functionLinenumber: 3110
    functionLinenumberEnd: 3178
    functionName: inet_addr_from_name
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - strchr
    - gf_free
    - malloc
    - GF_LOG
    - GetAdaptersAddresses
    - gf_wcs_to_utf8
    - freeifaddrs
    - getifaddrs
    - strcmp
    - htonl
    - free
    - inet_addr
    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:3184,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3187,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3188,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3189,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3192,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3211,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3212,1
    - Dst: do_enum
      Src: /src/gpac/src/utils/os_net.c:3213,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3214,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3224,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:3230,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3242,1
    - Dst: do_enum
      Src: /src/gpac/src/utils/os_net.c:3243,1
    - Dst: inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3247,1
    - Dst: do_enum
      Src: /src/gpac/src/utils/os_net.c:3248,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:3254,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: 3258
      start: 3180
    functionDepth: 1
    functionLinenumber: 3180
    functionLinenumberEnd: 3258
    functionName: gf_net_enum_interfaces
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - do_enum
    - gf_free
    - malloc
    - GetAdaptersAddresses
    - inet_ntop
    - gf_wcs_to_utf8
    - freeifaddrs
    - getifaddrs
    - 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:3269,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3269,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:3271,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:3273,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 4
    argNames:
    - cbk
    - name
    - IP
    - flags
    argTypes:
    - void*
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3276
      start: 3266
    functionDepth: 0
    functionLinenumber: 3266
    functionLinenumberEnd: 3276
    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:3286,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3289,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3291,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 3
    argNames:
    - ip_or_name
    - ipv4
    - ipv6
    argTypes:
    - char*
    - char**
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3293
      start: 3278
    functionDepth: 2
    functionLinenumber: 3278
    functionLinenumberEnd: 3293
    functionName: gf_net_get_adapter_ip
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_net_enum_interfaces
    - gf_free
    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:3312,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/utils/os_net.c:3317,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3321,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3322,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:3336,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3341,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3343,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3344,1
    - Dst: malloc
      Src: /src/gpac/src/utils/os_net.c:3345,1
    - Dst: GetAdaptersAddresses
      Src: /src/gpac/src/utils/os_net.c:3348,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3353,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3357,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3358,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3360,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3363,1
    - Dst: gf_wcs_to_utf8
      Src: /src/gpac/src/utils/os_net.c:3364,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3365,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3367,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3370,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:3378,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3379,1
    - Dst: free
      Src: /src/gpac/src/utils/os_net.c:3389,1
    - Dst: strpbrk
      Src: /src/gpac/src/utils/os_net.c:3395,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3396,1
    - Dst: getifaddrs
      Src: /src/gpac/src/utils/os_net.c:3399,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3403,1
    - Dst: if_nametoindex
      Src: /src/gpac/src/utils/os_net.c:3406,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/os_net.c:3414,1
    - Dst: if_nametoindex
      Src: /src/gpac/src/utils/os_net.c:3417,1
    - Dst: freeifaddrs
      Src: /src/gpac/src/utils/os_net.c:3424,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3430,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3436,1
    - Dst: gf_net_is_ipv6
      Src: /src/gpac/src/utils/os_net.c:3443,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:3450,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3451,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3457,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3460,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3465,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3467,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3467,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:3472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3474,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3474,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3482,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3484,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:3488,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3490,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_net.c:3494,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_net.c:3495,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3497,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3503,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3505,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:3510,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3513,1
    - Dst: sk_join_ipv4
      Src: /src/gpac/src/utils/os_net.c:3516,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3526,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3530,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:3538,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3545,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3548,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3549,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3552,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3557,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3562,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3564,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3564,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3571,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3579,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3579,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_net.c:3591,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:3595,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3597,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:3600,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:3601,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3605,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3610,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3623,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:3626,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3628,1
    - Dst: socket
      Src: /src/gpac/src/utils/os_net.c:3638,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3639,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/os_net.c:3642,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3647,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3649,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3649,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3655,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3655,1
    - Dst: inet_addr_from_name
      Src: /src/gpac/src/utils/os_net.c:3659,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:3665,1
    - Dst: htonl
      Src: /src/gpac/src/utils/os_net.c:3667,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:3668,1
    - Dst: bind
      Src: /src/gpac/src/utils/os_net.c:3670,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3672,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3672,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:3677,1
    - Dst: inet_addr
      Src: /src/gpac/src/utils/os_net.c:3683,1
    - Dst: sk_join_ipv4
      Src: /src/gpac/src/utils/os_net.c:3686,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:3692,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:3697,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: 3702
      start: 3295
    functionDepth: 2
    functionLinenumber: 3295
    functionLinenumberEnd: 3702
    functionName: gf_sk_setup_multicast_ex
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - bind
    - malloc
    - htonl
    - gf_net_is_ipv6
    - SOCKET_INVALID
    - gf_wcs_to_utf8
    - gf_sk_get_ipv6_addr
    - freeifaddrs
    - memcpy
    - my_inet_ntop
    - gf_strcpy
    - gf_sk_is_multicast_address
    - socket
    - memcmp
    - gf_sk_set_block_mode
    - strcmp
    - sk_join_ipv4
    - inet_addr
    - gf_free
    - gf_errno_str
    - GF_LOG
    - gf_strcat
    - strpbrk
    - freeaddrinfo
    - GetAdaptersAddresses
    - if_nametoindex
    - setsockopt
    - inet_addr_from_name
    - htons
    - getifaddrs
    - memset
    - 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:3707,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: 3709
      start: 3704
    functionDepth: 3
    functionLinenumber: 3704
    functionLinenumberEnd: 3709
    functionName: gf_sk_setup_multicast
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 4
    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:3732,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3734,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3735,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3741
      start: 3729
    functionDepth: 1
    functionLinenumber: 3729
    functionLinenumberEnd: 3741
    functionName: gf_sk_group_new
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - GF_SAFEALLOC
    - FD_ZERO
    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:3745,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3747,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3749,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - sg
    argTypes:
    - GF_SockGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3750
      start: 3743
    functionDepth: 1
    functionLinenumber: 3743
    functionLinenumberEnd: 3750
    functionName: gf_sk_group_del
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_list_del
    - gf_free
    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:3755,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_net.c:3756,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:3757,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:3762,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_net.c:3763,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_net.c:3764,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_net.c:3774,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_net.c:3781,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3781,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - sg
    - sk
    argTypes:
    - GF_SockGroup*
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3784
      start: 3752
    functionDepth: 1
    functionLinenumber: 3752
    functionLinenumberEnd: 3784
    functionName: gf_sk_group_register
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 8
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_list_find
    - gf_list_add
    - SOCKET_INVALID
    - gf_list_new
    - 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:3789,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:3795,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/utils/os_net.c:3798,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_net.c:3803,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_net.c:3808,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:3809,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:3813,1
    - Dst: memmove
      Src: /src/gpac/src/utils/os_net.c:3825,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:3829,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 2
    argNames:
    - sg
    - sk
    argTypes:
    - GF_SockGroup*
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3836
      start: 3786
    functionDepth: 1
    functionLinenumber: 3786
    functionLinenumberEnd: 3836
    functionName: gf_sk_group_unregister
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 8
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_list_get
    - memmove
    - gf_bs_skip_bytes
    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:3854,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:3856,1
    - Dst: gf_netcap_load_pck
      Src: /src/gpac/src/utils/os_net.c:3866,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_net.c:3898,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:3898,1
    - Dst: poll
      Src: /src/gpac/src/utils/os_net.c:3901,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3908,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3908,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3923,1
    - Dst: FD_ZERO
      Src: /src/gpac/src/utils/os_net.c:3924,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/os_net.c:3938,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:3940,1
    - Dst: FD_SET
      Src: /src/gpac/src/utils/os_net.c:3943,1
    - Dst: select
      Src: /src/gpac/src/utils/os_net.c:3949,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3960,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:3960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:3965,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: 3969
      start: 3838
    functionDepth: 5
    functionLinenumber: 3838
    functionLinenumberEnd: 3969
    functionName: gf_sk_group_select
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - FD_SET
    - select
    - gf_errno_str
    - GF_LOG
    - poll
    - gf_sys_clock_high_res
    - gf_assert
    - gf_list_enum
    - SOCKET_INVALID
    - gf_list_get
    - FD_ZERO
    - gf_netcap_load_pck
    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:3981,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:4007,1
    - Dst: FD_ISSET
      Src: /src/gpac/src/utils/os_net.c:4009,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: 4013
      start: 3971
    functionDepth: 1
    functionLinenumber: 3971
    functionLinenumberEnd: 4013
    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:4031,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:4031,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_net.c:4034,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/os_net.c:4042,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4064,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:4068,1
    - Dst: recvfrom
      Src: /src/gpac/src/utils/os_net.c:4074,1
    - Dst: recv
      Src: /src/gpac/src/utils/os_net.c:4076,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4097,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4106,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4110,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4110,1
    - Dst: netcap_filter_pck
      Src: /src/gpac/src/utils/os_net.c:4116,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4125,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: 4130
      start: 4018
    functionDepth: 5
    functionLinenumber: 4018
    functionLinenumberEnd: 4130
    functionName: gf_sk_receive_internal
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - netcap_filter_pck
    - gf_errno_str
    - GF_LOG
    - gf_sys_clock_high_res
    - recvfrom
    - recv
    - gf_bs_read_data
    - SOCKET_INVALID
    - poll_select
    - gf_netcap_load_pck
    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:4135,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: 4136
      start: 4132
    functionDepth: 6
    functionLinenumber: 4132
    functionLinenumberEnd: 4136
    functionName: gf_sk_receive
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 6
    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:4141,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: 4142
      start: 4138
    functionDepth: 6
    functionLinenumber: 4138
    functionLinenumberEnd: 4142
    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:4148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4152,1
    - Dst: listen
      Src: /src/gpac/src/utils/os_net.c:4160,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - sock
    - MaxConnection
    argTypes:
    - GF_Socket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4165
      start: 4144
    functionDepth: 1
    functionLinenumber: 4144
    functionLinenumberEnd: 4165
    functionName: gf_sk_listen
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    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:4176,1
    - Dst: accept
      Src: /src/gpac/src/utils/os_net.c:4184,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4193,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4193,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_net.c:4198,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4203,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:4204,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4206,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_net.c:4207,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4212,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - sock
    - newConnection
    argTypes:
    - GF_Socket*
    - GF_Socket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4221
      start: 4167
    functionDepth: 2
    functionLinenumber: 4167
    functionLinenumberEnd: 4221
    functionName: gf_sk_accept
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_errno_str
    - GF_LOG
    - setsockopt
    - SOCKET_INVALID
    - GF_SAFEALLOC
    - accept
    - memset
    - poll_select
    - memcpy
    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:4233,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:4238,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4239,1
    - Dst: getsockname
      Src: /src/gpac/src/utils/os_net.c:4242,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4243,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - sock
    - Port
    - Familly
    argTypes:
    - GF_Socket*
    - u16*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4256
      start: 4223
    functionDepth: 1
    functionLinenumber: 4223
    functionLinenumberEnd: 4256
    functionName: gf_sk_get_local_info
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 2
    functionsReached:
    - SOCKET_INVALID
    - ntohs
    - getsockname
    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:4264,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4280,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4280,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4286,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4286,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4293,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4293,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4300,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4300,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4308,1
    - Dst: setsockopt
      Src: /src/gpac/src/utils/os_net.c:4310,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 2
    argNames:
    - sock
    - serverOn
    argTypes:
    - GF_Socket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4313
      start: 4259
    functionDepth: 1
    functionLinenumber: 4259
    functionLinenumberEnd: 4313
    functionName: gf_sk_server_mode
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - setsockopt
    - SOCKET_INVALID
    - GF_LOG
    - 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:4322,1
    - Dst: my_inet_ntop
      Src: /src/gpac/src/utils/os_net.c:4323,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_net.c:4324,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4326,1
    - Dst: getnameinfo
      Src: /src/gpac/src/utils/os_net.c:4328,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_net.c:4329,1
    - Dst: SOCKET_INVALID
      Src: /src/gpac/src/utils/os_net.c:4332,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_net.c:4333,1
    - Dst: inet_ntoa
      Src: /src/gpac/src/utils/os_net.c:4333,1
    - Dst: ntohs
      Src: /src/gpac/src/utils/os_net.c:4335,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - sock
    - buf
    - port
    argTypes:
    - GF_Socket*
    - char[]
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4339
      start: 4315
    functionDepth: 1
    functionLinenumber: 4315
    functionLinenumberEnd: 4339
    functionName: gf_sk_get_remote_address_port
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - ntohs
    - getnameinfo
    - SOCKET_INVALID
    - inet_ntoa
    - gf_strlcpy
    - my_inet_ntop
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sk_get_remote_address_port(GF_Socket *sock, char buf[GF_MAX_IP_NAME_LEN],
      u32 *port)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/utils/os_net.c:4343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sock
    - buf
    argTypes:
    - GF_Socket*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4344
      start: 4340
    functionDepth: 2
    functionLinenumber: 4340
    functionLinenumberEnd: 4344
    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: 4351
      start: 4346
    functionDepth: 0
    functionLinenumber: 4346
    functionLinenumberEnd: 4351
    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:4369,1
    - Dst: poll_select
      Src: /src/gpac/src/utils/os_net.c:4373,1
    - Dst: gf_sk_get_ipv6_addr
      Src: /src/gpac/src/utils/os_net.c:4382,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4384,1
    - Dst: freeaddrinfo
      Src: /src/gpac/src/utils/os_net.c:4386,1
    - Dst: htons
      Src: /src/gpac/src/utils/os_net.c:4400,1
    - Dst: gf_gethostbyname
      Src: /src/gpac/src/utils/os_net.c:4402,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_net.c:4404,1
    - Dst: sendto
      Src: /src/gpac/src/utils/os_net.c:4412,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4419,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4419,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: 4426
      start: 4357
    functionDepth: 2
    functionLinenumber: 4357
    functionLinenumberEnd: 4426
    functionName: gf_sk_send_to
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - gf_errno_str
    - GF_LOG
    - freeaddrinfo
    - sendto
    - gf_sk_get_ipv6_addr
    - SOCKET_INVALID
    - htons
    - gf_gethostbyname
    - poll_select
    - memcpy
    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:4441,1
    - Dst: recv
      Src: /src/gpac/src/utils/os_net.c:4445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4455,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/os_net.c:4455,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - sock
    argTypes:
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4463
      start: 4429
    functionDepth: 2
    functionLinenumber: 4429
    functionLinenumberEnd: 4463
    functionName: gf_sk_probe
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_errno_str
    - poll_select
    - recv
    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:4470,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_net.c:4471,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_net.c:4476,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_net.c:4477,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_net.c:4478,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_net.c:4480,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4485,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4489,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:4491,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_net.c:4495,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4497,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4500,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_net.c:4503,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_net.c:4505,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4509,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_net.c:4511,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/os_net.c:4512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_net.c:4516,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_net.c:4517,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 2
    argNames:
    - in_ip
    - increment
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4521
      start: 4466
    functionDepth: 1
    functionLinenumber: 4466
    functionLinenumberEnd: 4521
    functionName: gf_net_bump_ip_address
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_sk_is_multicast_address
    - gf_free
    - atoi
    - GF_LOG
    - strnicmp
    - strrchr
    - gf_dynstrcat
    - gf_strdup
    - strstr
    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:4532,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/os_net.c:4534,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/os_net.c:4536,1
    - Dst: close
      Src: /src/gpac/src/utils/os_net.c:4538,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_net.c:4540,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_net.c:4541,1
    - Dst: gf_netcap_record
      Src: /src/gpac/src/utils/os_net.c:4564,1
    - Dst: gf_netcap_playback
      Src: /src/gpac/src/utils/os_net.c:4567,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4573
      start: 4528
    functionDepth: 4
    functionLinenumber: 4528
    functionLinenumberEnd: 4573
    functionName: gf_net_reload_netcap
    functionSourceFile: /src/gpac/src/utils/os_net.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_fclose
    - gf_list_del
    - gf_netcap_playback
    - gf_netcap_record
    - gf_bs_del
    - gf_list_get
    - close
    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:4578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4579
      start: 4575
    functionDepth: 0
    functionLinenumber: 4575
    functionLinenumberEnd: 4579
    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:4585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4586
      start: 4582
    functionDepth: 0
    functionLinenumber: 4582
    functionLinenumberEnd: 4586
    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:4591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4592
      start: 4588
    functionDepth: 0
    functionLinenumber: 4588
    functionLinenumberEnd: 4592
    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:4598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4599
      start: 4595
    functionDepth: 0
    functionLinenumber: 4595
    functionLinenumberEnd: 4599
    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:4604,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - errnoval
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4605
      start: 4601
    functionDepth: 0
    functionLinenumber: 4601
    functionLinenumberEnd: 4605
    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: 398
    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: 316
    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: 552
    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: 1223
    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: 1236
    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: 58
    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: 263
    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: 44
    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: 398
    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: 316
    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: 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: 332
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 332
    functionName: gf_list_count
    functionSourceFile: /src/gpac/src/utils/list.c
    functionUses: 1223
    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: 1236
    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: 58
    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: 266
    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: 44
    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: 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: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: 316
    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: 554
    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: 1223
    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: 1236
    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: 58
    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: 267
    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: 44
    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:
    - gf_realloc
    - memmove
    - gf_list_add
    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: 400
    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_malloc
    - 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: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: 316
    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_realloc
    - GF_LIST_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: 555
    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: 1223
    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: 1236
    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: 58
    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: 267
    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: 44
    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:
    - memmove
    - gf_list_add
    - realloc_chain
    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: 73
    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: 141
    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: 402
    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_add
    - gf_list_rem
    - gf_list_get
    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_add
    - gf_list_enum
    - gf_list_new
    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_del
    - gf_list_enum
    - gf_list_insert
    - gf_list_reset
    - gf_list_clone
    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_rem
    - gf_list_get
    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: 56
    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: 1195
    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: gf_strdup
      Src: /src/gpac/src/utils/gzio.c:144,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:146,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:174,1
    - Dst: deflateInit2
      Src: /src/gpac/src/utils/gzio.c:182,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:186,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:189,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:193,1
    - Dst: inflateInit2
      Src: /src/gpac/src/utils/gzio.c:195,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:203,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/gzio.c:210,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:213,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:218,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/gzio.c:223,1
    - Dst: check_header
      Src: /src/gpac/src/utils/gzio.c:234,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/gzio.c:235,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 81
    argCount: 2
    argNames:
    - path
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 239
    functionName: gf_gzopen
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - destroy
    - deflateInit2
    - gf_fopen
    - check_header
    - gf_fprintf
    - inflateInit2
    - gf_ftell
    - crc32
    - gf_strdup
    - ALLOC
    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:252,1
    - Dst: gf_ferror
      Src: /src/gpac/src/utils/gzio.c:255,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 247
    functionDepth: 1
    functionLinenumber: 247
    functionLinenumberEnd: 262
    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:287,1
    - Dst: gf_ferror
      Src: /src/gpac/src/utils/gzio.c:288,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:307,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:308,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:315,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:318,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:319,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:321,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:324,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:327,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:330,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 49
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 333
    functionName: check_header
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 1
    functionsReached:
    - gf_ferror
    - get_byte
    - gf_fread
    linkageType: ''
    returnType: local
    signature: local check_header(gz_stream *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:345,1
    - Dst: deflateEnd
      Src: /src/gpac/src/utils/gzio.c:352,1
    - Dst: inflateEnd
      Src: /src/gpac/src/utils/gzio.c:355,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/gzio.c:358,1
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:366,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
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 339
    functionDepth: 1
    functionLinenumber: 339
    functionLinenumberEnd: 371
    functionName: destroy
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 128
    functionsReached:
    - gf_fclose
    - inflateEnd
    - TRYFREE
    - deflateEnd
    linkageType: ''
    returnType: local
    signature: local destroy (gz_stream *s)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/utils/gzio.c:409,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/gzio.c:418,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/gzio.c:429,1
    - Dst: gf_ferror
      Src: /src/gpac/src/utils/gzio.c:432,1
    - Dst: inflate
      Src: /src/gpac/src/utils/gzio.c:441,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:447,1
    - Dst: getLong
      Src: /src/gpac/src/utils/gzio.c:450,1
    - Dst: getLong
      Src: /src/gpac/src/utils/gzio.c:453,1
    - Dst: check_header
      Src: /src/gpac/src/utils/gzio.c:458,1
    - Dst: inflateReset
      Src: /src/gpac/src/utils/gzio.c:460,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:461,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:467,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 82
    argCount: 3
    argNames:
    - file
    - buf
    - len
    argTypes:
    - void*
    - voidp
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 373
    functionDepth: 3
    functionLinenumber: 373
    functionLinenumberEnd: 473
    functionName: gf_gzread
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_ferror
    - check_header
    - getLong
    - crc32
    - gf_fread
    - memcpy
    - inflate
    - inflateReset
    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:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 480
    functionDepth: 4
    functionLinenumber: 480
    functionLinenumberEnd: 486
    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: 505
      start: 494
    functionDepth: 0
    functionLinenumber: 494
    functionLinenumberEnd: 505
    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:525,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 7
    argCount: 3
    argNames:
    - file
    - buf
    - len
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 519
    functionDepth: 4
    functionLinenumber: 519
    functionLinenumberEnd: 528
    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:550,1
    - Dst: deflate
      Src: /src/gpac/src/utils/gzio.c:558,1
    - Dst: crc32
      Src: /src/gpac/src/utils/gzio.c:563,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - file
    - buf
    - len
    argTypes:
    - gzFile
    - void*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 566
    functionName: gf_gzwrite
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - crc32
    - fwrite
    - deflate
    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:584,1
    - Dst: vsprintf
      Src: /src/gpac/src/utils/gzio.c:587,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:588,1
    - Dst: vsprintf
      Src: /src/gpac/src/utils/gzio.c:592,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:593,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/gzio.c:597,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:598,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:599,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/gzio.c:601,1
    - Dst: va_end
      Src: /src/gpac/src/utils/gzio.c:602,1
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:607,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - file
    - format
    argTypes:
    - gzFile
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 577
    functionDepth: 1
    functionLinenumber: 577
    functionLinenumberEnd: 608
    functionName: gf_gzprintf
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - vsprintf
    - vsnprintf
    - va_end
    - va_start
    - strlen
    - gf_gzwrite
    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:620,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/gzio.c:625,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/gzio.c:630,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:632,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/gzio.c:634,1
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:640,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: 641
      start: 611
    functionDepth: 1
    functionLinenumber: 611
    functionLinenumberEnd: 641
    functionName: gf_gzprintf
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_gzwrite
    - snprintf
    - strlen
    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:653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file
    - c
    argTypes:
    - gzFile
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 648
    functionDepth: 1
    functionLinenumber: 648
    functionLinenumberEnd: 654
    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:664,1
    - Dst: strlen
      Src: /src/gpac/src/utils/gzio.c:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file
    - s
    argTypes:
    - gzFile
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 662
    functionDepth: 1
    functionLinenumber: 662
    functionLinenumberEnd: 665
    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:686,1
    - Dst: deflate
      Src: /src/gpac/src/utils/gzio.c:695,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 26
    argCount: 2
    argNames:
    - file
    - flush
    argTypes:
    - gzFile
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 709
    functionName: do_flush
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 1
    functionsReached:
    - fwrite
    - deflate
    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:714,1
    - Dst: fflush
      Src: /src/gpac/src/utils/gzio.c:717,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - flush
    argTypes:
    - gzFile
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 719
    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:737,1
    - Dst: inflateReset
      Src: /src/gpac/src/utils/gzio.c:738,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/gzio.c:741,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 742
    functionName: gf_gzrewind
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - gf_fseek
    - crc32
    - 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:774,1
    - Dst: zmemzero
      Src: /src/gpac/src/utils/gzio.c:776,1
    - Dst: gf_gzwrite
      Src: /src/gpac/src/utils/gzio.c:782,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/gzio.c:803,1
    - Dst: gf_gzrewind
      Src: /src/gpac/src/utils/gzio.c:812,1
    - Dst: ALLOC
      Src: /src/gpac/src/utils/gzio.c:818,1
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/gzio.c:831,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 68
    argCount: 3
    argNames:
    - file
    - _offset
    - whence
    argTypes:
    - void*
    - u64
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 752
    functionDepth: 4
    functionLinenumber: 752
    functionLinenumberEnd: 836
    functionName: gf_gzseek
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - zmemzero
    - gf_gzread
    - gf_fseek
    - gf_gzrewind
    - gf_gzwrite
    - ALLOC
    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:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 843
    functionDepth: 5
    functionLinenumber: 843
    functionLinenumberEnd: 847
    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: 865
      start: 853
    functionDepth: 0
    functionLinenumber: 853
    functionLinenumberEnd: 865
    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: 877
      start: 870
    functionDepth: 0
    functionLinenumber: 870
    functionLinenumberEnd: 877
    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:887,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - file
    - x
    argTypes:
    - FILE*
    - uLong
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 890
    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:899,1
    - Dst: get_byte
      Src: /src/gpac/src/utils/gzio.c:902,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
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - gz_stream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 897
    functionDepth: 2
    functionLinenumber: 897
    functionLinenumberEnd: 908
    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:925,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:926,1
    - Dst: putLong
      Src: /src/gpac/src/utils/gzio.c:928,1
    - Dst: putLong
      Src: /src/gpac/src/utils/gzio.c:929,1
    - Dst: destroy
      Src: /src/gpac/src/utils/gzio.c:932,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 914
    functionDepth: 2
    functionLinenumber: 914
    functionLinenumberEnd: 933
    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: 937
      start: 936
    functionDepth: 0
    functionLinenumber: 936
    functionLinenumberEnd: 937
    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: 939
      start: 938
    functionDepth: 0
    functionLinenumber: 938
    functionLinenumberEnd: 939
    functionName: zstrerror
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zstrerror(errnum)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ERR_MSG
      Src: /src/gpac/src/utils/gzio.c:956,1
    - Dst: zstrerror
      Src: /src/gpac/src/utils/gzio.c:961,1
    - Dst: ERR_MSG
      Src: /src/gpac/src/utils/gzio.c:963,1
    - Dst: TRYFREE
      Src: /src/gpac/src/utils/gzio.c:965,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/gzio.c:966,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/gzio.c:967,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - file
    - errnum
    argTypes:
    - void*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 948
    functionDepth: 1
    functionLinenumber: 948
    functionLinenumberEnd: 969
    functionName: gf_gzerror
    functionSourceFile: /src/gpac/src/utils/gzio.c
    functionUses: 0
    functionsReached:
    - TRYFREE
    - ERR_MSG
    - gf_dynstrcat
    - gf_strdup
    - zstrerror
    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:982,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - file
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 974
    functionDepth: 0
    functionLinenumber: 974
    functionLinenumberEnd: 983
    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: 10
    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_free
      Src: /src/gpac/src/utils/bitstream.c:161,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:168,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:170,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:181,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 185
    functionName: GF_BitStream *gf_bs_new(const u8 *buffer, u64 BufferSize, u32 mode)
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_free
    - 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:193,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:195,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/bitstream.c:209,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/bitstream.c:210,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:211,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:215,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:218,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:220,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:226,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:228,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:230,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 238
    functionName: GF_BitStream *gf_bs_from_file(FILE *f, u32 mode)
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_opts_get_int
    - gf_fseek
    - gf_ftell
    - gf_fsize
    - memset
    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:248,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:250,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:261,1
    - Dst: gf_fd_fsize
      Src: /src/gpac/src/utils/bitstream.c:262,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:265,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:268,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:270,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/bitstream.c:276,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:278,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:280,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 287
    functionName: GF_BitStream *gf_bs_from_fd(int fd, u32 mode)
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_opts_get_int
    - lseek_64
    - gf_fd_fsize
    - memset
    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:296,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:298,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/bitstream.c:305,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:307,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - usr_data
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 316
    functionName: gf_bs_new_cbk_buffer
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - memset
    - gf_free
    - 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:320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - usr_data
    - block_size
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 322
    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:334,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:336,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - bs
    - prevent_dispatch
    argTypes:
    - GF_BitStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 323
    functionDepth: 1
    functionLinenumber: 323
    functionLinenumberEnd: 340
    functionName: gf_bs_prevent_dispatch
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 5
    functionsReached:
    - gf_assert
    - GF_BitStream*::on_block_out
    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:349,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/bitstream.c:353,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 342
    functionDepth: 1
    functionLinenumber: 342
    functionLinenumberEnd: 364
    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:373,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:376,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:378,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:379,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:382,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:383,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 368
    functionDepth: 2
    functionLinenumber: 368
    functionLinenumberEnd: 384
    functionName: gf_bs_del
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 305
    functionsReached:
    - bs_flush_write_cache
    - gf_free
    - GF_BitStream*::on_block_out
    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: 393
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 393
    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: 400
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 400
    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: 413
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 413
    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:422,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/bitstream.c:426,1
    - Dst: read
      Src: /src/gpac/src/utils/bitstream.c:439,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:440,1
    - Dst: gf_fgetc
      Src: /src/gpac/src/utils/bitstream.c:444,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - bs
    - is_eos
    argTypes:
    - GF_BitStream*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 415
    functionDepth: 1
    functionLinenumber: 415
    functionLinenumberEnd: 447
    functionName: gf_bs_load_byte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_fgetc
    - read
    - gf_fread
    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:456,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:474,1
    - Dst: gf_feof
      Src: /src/gpac/src/utils/bitstream.c:481,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:491,1
    - Dst: gf_bs_load_byte
      Src: /src/gpac/src/utils/bitstream.c:494,1
    - Dst: gf_bs_load_byte
      Src: /src/gpac/src/utils/bitstream.c:499,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:506,1
    - Dst: GF_BitStream*::EndOfStream
      Src: /src/gpac/src/utils/bitstream.c:517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:522,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:525,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 67
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 450
    functionDepth: 2
    functionLinenumber: 450
    functionLinenumberEnd: 527
    functionName: BS_ReadByte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_feof
    - gf_bs_load_byte
    - GF_BitStream*::EndOfStream
    - GF_LOG
    - gf_assert
    - gf_bs_seek
    - bs_flush_write_cache
    linkageType: ''
    returnType: u8
    signature: u8 BS_ReadByte(GF_BitStream *bs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:540,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 536
    functionDepth: 3
    functionLinenumber: 536
    functionLinenumberEnd: 554
    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:572,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - bs
    - nBits
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 556
    functionDepth: 4
    functionLinenumber: 556
    functionLinenumberEnd: 575
    functionName: gf_bs_read_int
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 315
    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:580,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:588,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 577
    functionDepth: 3
    functionLinenumber: 577
    functionLinenumberEnd: 589
    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:596,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/bitstream.c:600,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/bitstream.c:601,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:608,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: 613
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 613
    functionName: gf_bs_read_u8_until_delimiter
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_data
    - gf_bs_seek
    - gf_bs_available
    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:620,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:630,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:632,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 616
    functionDepth: 3
    functionLinenumber: 616
    functionLinenumberEnd: 634
    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:641,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:654,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:656,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:658,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 637
    functionDepth: 3
    functionLinenumber: 637
    functionLinenumberEnd: 660
    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:666,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
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:684,1
    - Dst: BS_ReadByte
      Src: /src/gpac/src/utils/bitstream.c:686,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 662
    functionDepth: 3
    functionLinenumber: 662
    functionLinenumberEnd: 688
    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:715,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/utils/bitstream.c:717,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 690
    functionDepth: 4
    functionLinenumber: 690
    functionLinenumberEnd: 719
    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:727,1
    - Dst: GF_BitStream*::EndOfStream
      Src: /src/gpac/src/utils/bitstream.c:728,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:733,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:737,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:740,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/utils/bitstream.c:744,1
    - Dst: gf_bs_read_bit
      Src: /src/gpac/src/utils/bitstream.c:748,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - bs
    - nBits
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 721
    functionDepth: 5
    functionLinenumber: 721
    functionLinenumberEnd: 752
    functionName: gf_bs_read_long_int
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 10
    functionsReached:
    - GF_BitStream*::EndOfStream
    - GF_LOG
    - gf_bs_read_long_int
    - gf_bs_read_bit
    - gf_bs_read_int
    - 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:762,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:764,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:765,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:766,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:767,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 755
    functionDepth: 5
    functionLinenumber: 755
    functionLinenumberEnd: 770
    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:778,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 772
    functionDepth: 4
    functionLinenumber: 772
    functionLinenumberEnd: 780
    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:790,1
    - Dst: gf_bs_is_align
      Src: /src/gpac/src/utils/bitstream.c:795,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:801,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:807,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:813,1
    - Dst: read
      Src: /src/gpac/src/utils/bitstream.c:821,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/bitstream.c:825,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:837,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 48
    argCount: 3
    argNames:
    - bs
    - data
    - nbBytes
    argTypes:
    - GF_BitStream*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 782
    functionDepth: 5
    functionLinenumber: 782
    functionLinenumberEnd: 841
    functionName: gf_bs_read_data
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 175
    functionsReached:
    - read
    - GF_LOG
    - gf_bs_is_align
    - gf_bs_read_int
    - gf_fread
    - bs_flush_write_cache
    - memcpy
    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:849,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:857,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:864,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:866,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:872,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:882,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:892,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:897,1
    - Dst: write
      Src: /src/gpac/src/utils/bitstream.c:904,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:905,1
    - Dst: gf_fputc
      Src: /src/gpac/src/utils/bitstream.c:909,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 57
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 914
      start: 845
    functionDepth: 2
    functionLinenumber: 845
    functionLinenumberEnd: 914
    functionName: BS_WriteByte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - write
    - GF_LOG
    - gf_fputc
    - gf_assert
    - GF_BitStream*::on_block_out
    - gf_realloc
    - bs_flush_write_cache
    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:922,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - bit
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 925
      start: 916
    functionDepth: 3
    functionLinenumber: 916
    functionLinenumberEnd: 925
    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:930,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/bitstream.c:933,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - nBits
    - max_shift
    argTypes:
    - GF_BitStream*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 927
    functionDepth: 1
    functionLinenumber: 927
    functionLinenumberEnd: 938
    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:946,1
    - Dst: BS_WriteBit
      Src: /src/gpac/src/utils/bitstream.c:956,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - bs
    - _value
    - nBits
    argTypes:
    - GF_BitStream*
    - s32
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 959
      start: 940
    functionDepth: 4
    functionLinenumber: 940
    functionLinenumberEnd: 959
    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:966,1
    - Dst: BS_WriteBit
      Src: /src/gpac/src/utils/bitstream.c:972,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - bs
    - _value
    - nBits
    argTypes:
    - GF_BitStream*
    - s64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 961
    functionDepth: 4
    functionLinenumber: 961
    functionLinenumberEnd: 975
    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:980,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:986,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 977
    functionDepth: 3
    functionLinenumber: 977
    functionLinenumberEnd: 988
    functionName: gf_bs_write_u8
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 143
    functionsReached:
    - gf_fatal_assert
    - BS_WriteByte
    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:993,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:999,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1000,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 990
    functionDepth: 3
    functionLinenumber: 990
    functionLinenumberEnd: 1002
    functionName: gf_bs_write_u16
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 124
    functionsReached:
    - gf_fatal_assert
    - BS_WriteByte
    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:1007,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1014,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1015,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1016,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1004
    functionDepth: 3
    functionLinenumber: 1004
    functionLinenumberEnd: 1018
    functionName: gf_bs_write_u24
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 17
    functionsReached:
    - gf_fatal_assert
    - BS_WriteByte
    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:1023,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1031,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1032,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1033,1
    - Dst: BS_WriteByte
      Src: /src/gpac/src/utils/bitstream.c:1034,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1036
      start: 1020
    functionDepth: 3
    functionLinenumber: 1020
    functionLinenumberEnd: 1036
    functionName: gf_bs_write_u32
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 201
    functionsReached:
    - gf_fatal_assert
    - BS_WriteByte
    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:1041,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/bitstream.c:1042,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/bitstream.c:1043,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 1038
    functionDepth: 4
    functionLinenumber: 1038
    functionLinenumberEnd: 1044
    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:1049,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1052,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:1062,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:1075,1
    - Dst: memset
      Src: /src/gpac/src/utils/bitstream.c:1080,1
    - Dst: write
      Src: /src/gpac/src/utils/bitstream.c:1087,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/bitstream.c:1092,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 47
    argCount: 3
    argNames:
    - bs
    - byte
    - repeat_count
    argTypes:
    - GF_BitStream*
    - u8
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1046
    functionDepth: 5
    functionLinenumber: 1046
    functionLinenumberEnd: 1101
    functionName: gf_bs_write_byte
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 2
    functionsReached:
    - write
    - gf_bs_is_align
    - gf_bs_write_int
    - gf_fwrite
    - memset
    - 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:1116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - Float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1118
      start: 1105
    functionDepth: 4
    functionLinenumber: 1105
    functionLinenumberEnd: 1118
    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:1130,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - value
    argTypes:
    - GF_BitStream*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1120
    functionDepth: 4
    functionLinenumber: 1120
    functionLinenumberEnd: 1132
    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:1142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/bitstream.c:1146,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1149,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:1155,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1158,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:1162,1
    - Dst: GF_BitStream*::on_block_out
      Src: /src/gpac/src/utils/bitstream.c:1164,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:1169,1
    - Dst: MIN
      Src: /src/gpac/src/utils/bitstream.c:1183,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:1184,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1189,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/bitstream.c:1197,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1202,1
    - Dst: write
      Src: /src/gpac/src/utils/bitstream.c:1207,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/utils/bitstream.c:1211,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1222,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 78
    argCount: 3
    argNames:
    - bs
    - data
    - nbBytes
    argTypes:
    - GF_BitStream*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1135
    functionDepth: 5
    functionLinenumber: 1135
    functionLinenumberEnd: 1227
    functionName: gf_bs_write_data
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 209
    functionsReached:
    - write
    - GF_LOG
    - gf_bs_is_align
    - gf_bs_write_int
    - MIN
    - gf_assert
    - GF_BitStream*::on_block_out
    - bs_flush_write_cache
    - gf_fwrite
    - gf_realloc
    - memcpy
    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:1236,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1241,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1230
    functionDepth: 5
    functionLinenumber: 1230
    functionLinenumberEnd: 1245
    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:1273,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:1277,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/bitstream.c:1282,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/bitstream.c:1283,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1284,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1249
    functionDepth: 2
    functionLinenumber: 1249
    functionLinenumberEnd: 1287
    functionName: gf_bs_available
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 111
    functionsReached:
    - lseek_64
    - gf_fseek
    - gf_ftell
    - gf_fsize
    - bs_flush_write_cache
    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:1298,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1309
      start: 1293
    functionDepth: 6
    functionLinenumber: 1293
    functionLinenumberEnd: 1309
    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:1319,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1325,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1334,1
    - Dst: BS_CutBuffer
      Src: /src/gpac/src/utils/bitstream.c:1339,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: 1350
      start: 1312
    functionDepth: 7
    functionLinenumber: 1312
    functionLinenumberEnd: 1350
    functionName: gf_bs_get_content_no_truncate
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 6
    functionsReached:
    - BS_CutBuffer
    - gf_free
    - gf_bs_align
    - GF_BitStream*::on_block_out
    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:1356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bs
    - output
    - outSize
    argTypes:
    - GF_BitStream*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1357
      start: 1353
    functionDepth: 8
    functionLinenumber: 1353
    functionLinenumberEnd: 1357
    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:1364,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - bs
    - addSize
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1367
      start: 1359
    functionDepth: 0
    functionLinenumber: 1359
    functionLinenumberEnd: 1367
    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:1379,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1384,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:1405,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1409,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/bitstream.c:1418,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1432,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 2
    argNames:
    - bs
    - nbBytes
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1374
    functionDepth: 6
    functionLinenumber: 1374
    functionLinenumberEnd: 1435
    functionName: gf_bs_skip_bytes
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 50
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_align
    - lseek_64
    - gf_bs_write_int
    - gf_fseek
    - bs_flush_write_cache
    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:1447,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/bitstream.c:1448,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1450,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - nbBits
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1452
      start: 1439
    functionDepth: 6
    functionLinenumber: 1439
    functionLinenumberEnd: 1452
    functionName: gf_bs_rewind_bits
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_int
    - gf_bs_align
    - gf_assert
    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:1468,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/bitstream.c:1475,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1490,1
    - Dst: lseek_64
      Src: /src/gpac/src/utils/bitstream.c:1499,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1504,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 2
    argNames:
    - bs
    - offset
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1511
      start: 1457
    functionDepth: 2
    functionLinenumber: 1457
    functionLinenumberEnd: 1511
    functionName: BS_SeekIntern
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - lseek_64
    - gf_fseek
    - gf_realloc
    - bs_flush_write_cache
    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:1521,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1527,1
    - Dst: BS_SeekIntern
      Src: /src/gpac/src/utils/bitstream.c:1528,1
    - Dst: bs_flush_write_cache
      Src: /src/gpac/src/utils/bitstream.c:1533,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/utils/bitstream.c:1538,1
    - Dst: BS_SeekIntern
      Src: /src/gpac/src/utils/bitstream.c:1539,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - bs
    - offset
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1540
      start: 1514
    functionDepth: 6
    functionLinenumber: 1514
    functionLinenumberEnd: 1540
    functionName: gf_bs_seek
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 79
    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:1592,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1596,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1599,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1602,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 3
    argNames:
    - bs
    - numBits
    - byte_offset
    argTypes:
    - GF_BitStream*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1609
      start: 1543
    functionDepth: 7
    functionLinenumber: 1543
    functionLinenumberEnd: 1609
    functionName: gf_bs_peek_bits
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 15
    functionsReached:
    - gf_bs_seek
    - gf_bs_read_int
    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:1622,1
    - Dst: gf_fd_fsize
      Src: /src/gpac/src/utils/bitstream.c:1626,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/bitstream.c:1632,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/bitstream.c:1633,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/bitstream.c:1634,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1638
      start: 1611
    functionDepth: 2
    functionLinenumber: 1611
    functionLinenumberEnd: 1638
    functionName: gf_bs_get_refreshed_size
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_fseek
    - gf_fd_fsize
    - gf_ftell
    - gf_fsize
    - bs_flush_write_cache
    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: 1652
      start: 1640
    functionDepth: 0
    functionLinenumber: 1640
    functionLinenumberEnd: 1652
    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: 1660
      start: 1654
    functionDepth: 0
    functionLinenumber: 1654
    functionLinenumberEnd: 1660
    functionName: gf_bs_get_position
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 129
    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: 1668
      start: 1662
    functionDepth: 0
    functionLinenumber: 1662
    functionLinenumberEnd: 1668
    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: 1675
      start: 1670
    functionDepth: 0
    functionLinenumber: 1670
    functionLinenumberEnd: 1675
    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:1682,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1683,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1686,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1689,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1692,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1695,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1698,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1705
      start: 1678
    functionDepth: 5
    functionLinenumber: 1678
    functionLinenumberEnd: 1705
    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:1711,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1712,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1715,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1718,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1722
      start: 1707
    functionDepth: 5
    functionLinenumber: 1707
    functionLinenumberEnd: 1722
    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:1728,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1724
    functionDepth: 5
    functionLinenumber: 1724
    functionLinenumberEnd: 1733
    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: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
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1741,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1742,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1743,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1744,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1735
    functionDepth: 5
    functionLinenumber: 1735
    functionLinenumberEnd: 1746
    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:1751,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1752,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1753,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1755
      start: 1748
    functionDepth: 5
    functionLinenumber: 1748
    functionLinenumberEnd: 1755
    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:1760,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/bitstream.c:1761,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - bs
    - val
    argTypes:
    - GF_BitStream*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1757
    functionDepth: 5
    functionLinenumber: 1757
    functionLinenumberEnd: 1762
    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: 1769
      start: 1764
    functionDepth: 0
    functionLinenumber: 1764
    functionLinenumberEnd: 1769
    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: 1775
      start: 1771
    functionDepth: 0
    functionLinenumber: 1771
    functionLinenumberEnd: 1775
    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:1781,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/bitstream.c:1783,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1784
      start: 1777
    functionDepth: 5
    functionLinenumber: 1777
    functionLinenumberEnd: 1784
    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: 1791
      start: 1786
    functionDepth: 0
    functionLinenumber: 1786
    functionLinenumberEnd: 1791
    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: 1796
      start: 1793
    functionDepth: 0
    functionLinenumber: 1793
    functionLinenumberEnd: 1796
    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:1807,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1815,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1821,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1826,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: 1830
      start: 1799
    functionDepth: 9
    functionLinenumber: 1799
    functionLinenumberEnd: 1830
    functionName: gf_bs_transfer
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_bs_get_content
    - gf_free
    - 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:1839,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/bitstream.c:1841,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1842
      start: 1832
    functionDepth: 2
    functionLinenumber: 1832
    functionLinenumberEnd: 1842
    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:1859,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1860,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - bs
    - stream
    argTypes:
    - GF_BitStream*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1863
      start: 1852
    functionDepth: 7
    functionLinenumber: 1852
    functionLinenumberEnd: 1863
    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: 1874
      start: 1866
    functionDepth: 0
    functionLinenumber: 1866
    functionLinenumberEnd: 1874
    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: 1880
      start: 1876
    functionDepth: 0
    functionLinenumber: 1876
    functionLinenumberEnd: 1880
    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:1893,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1897,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1901,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1909,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/bitstream.c:1910,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1912,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1913,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1919,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/bitstream.c:1920,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1923,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1924,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/bitstream.c:1928,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/bitstream.c:1929,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: 1931
      start: 1882
    functionDepth: 7
    functionLinenumber: 1882
    functionLinenumberEnd: 1931
    functionName: gf_bs_insert_data
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_bs_read_data
    - gf_bs_write_data
    - gf_bs_seek
    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: 1940
      start: 1934
    functionDepth: 0
    functionLinenumber: 1934
    functionLinenumberEnd: 1940
    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:1945,1
    - Dst: GF_BitStream*::on_log
      Src: /src/gpac/src/utils/bitstream.c:1946,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: 1947
      start: 1943
    functionDepth: 1
    functionLinenumber: 1943
    functionLinenumberEnd: 1947
    functionName: gf_bs_log_idx
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 5
    functionsReached:
    - gf_assert
    - GF_BitStream*::on_log
    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: 1954
      start: 1951
    functionDepth: 0
    functionLinenumber: 1951
    functionLinenumberEnd: 1954
    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: 1960
      start: 1956
    functionDepth: 0
    functionLinenumber: 1956
    functionLinenumberEnd: 1960
    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:1968,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/bitstream.c:1972,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/bitstream.c:1973,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/bitstream.c:1976,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1979
      start: 1963
    functionDepth: 4
    functionLinenumber: 1963
    functionLinenumberEnd: 1979
    functionName: gf_bs_read_utf8
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 5
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_is_align
    - gf_bs_available
    - gf_dynstrcat
    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:1984,1
    - Dst: strlen
      Src: /src/gpac/src/utils/bitstream.c:1987,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/bitstream.c:1989,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/bitstream.c:1990,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - bs
    - str
    argTypes:
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1992
      start: 1981
    functionDepth: 4
    functionLinenumber: 1981
    functionLinenumberEnd: 1992
    functionName: gf_bs_write_utf8
    functionSourceFile: /src/gpac/src/utils/bitstream.c
    functionUses: 3
    functionsReached:
    - gf_bs_is_align
    - gf_bs_write_u8
    - strlen
    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_del
    - gf_list_count
    - gf_free
    - gf_list_get
    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_list_count
    - gf_free
    - DelSection
    - gf_list_del
    - gf_list_get
    - memset
    linkageType: ''
    returnType: void
    signature: void gf_cfg_clear(GF_Config * iniFile)
  - BBCount: 27
    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:115,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:122,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:122,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:122,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/configfile.c:123,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/configfile.c:124,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:125,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/configfile.c:126,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/configfile.c:128,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:131,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:132,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/configfile.c:133,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:138,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:139,1
    - Dst: gf_feof
      Src: /src/gpac/src/utils/configfile.c:153,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/configfile.c:157,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:158,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/configfile.c:163,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/configfile.c:164,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:165,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:171,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:174,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:180,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:196,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:197,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:198,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:199,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:200,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:200,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:200,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:201,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:203,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:203,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/configfile.c:205,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:206,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:207,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:212,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:213,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:214,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:217,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:218,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:219,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:228,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:229,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:229,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:231,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:235,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:240,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:240,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:246,1
    - Dst: strlen
      Src: /src/gpac/src/utils/configfile.c:247,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/configfile.c:249,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/configfile.c:252,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/configfile.c:255,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:266,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/configfile.c:267,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 132
    argCount: 3
    argNames:
    - tmp
    - filePath
    - file_name
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 92
    functionDepth: 4
    functionLinenumber: 92
    functionLinenumberEnd: 269
    functionName: gf_cfg_parse_config_file
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_cfg_clear
    - gf_list_add
    - strstr
    - gf_feof
    - strchr
    - gf_malloc
    - gf_fopen
    - gf_fgets
    - gf_realloc
    - gf_strcpy
    - strcmp
    - gf_list_new
    - strlen
    - sprintf
    - gf_fclose
    - gf_free
    - gf_strcat
    - gf_strdup
    - memset
    - gf_strlcat
    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:273,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:274,1
    - Dst: gf_cfg_parse_config_file
      Src: /src/gpac/src/utils/configfile.c:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - filePath
    - file_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 271
    functionDepth: 5
    functionLinenumber: 271
    functionLinenumberEnd: 277
    functionName: gf_cfg_force_new
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 2
    functionsReached:
    - memset
    - gf_malloc
    - gf_cfg_parse_config_file
    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:283,1
    - Dst: memset
      Src: /src/gpac/src/utils/configfile.c:284,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:286,1
    - Dst: gf_cfg_parse_config_file
      Src: /src/gpac/src/utils/configfile.c:290,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:291,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:292,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - filePath
    - file_name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 296
      start: 280
    functionDepth: 5
    functionLinenumber: 280
    functionLinenumberEnd: 296
    functionName: gf_cfg_new
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 4
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_cfg_parse_config_file
    - gf_cfg_clear
    - gf_list_new
    - memset
    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: 304
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 304
    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:318,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:322,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/configfile.c:324,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/configfile.c:326,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:328,1
    - Dst: strchr
      Src: /src/gpac/src/utils/configfile.c:329,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/configfile.c:330,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/configfile.c:332,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/configfile.c:336,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 306
    functionDepth: 2
    functionLinenumber: 306
    functionLinenumberEnd: 338
    functionName: gf_cfg_save
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 1
    functionsReached:
    - strchr
    - gf_fclose
    - gf_fopen
    - gf_list_enum
    - strnicmp
    - gf_fprintf
    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: 346
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 346
    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:352,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:353,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:354,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 348
    functionDepth: 4
    functionLinenumber: 348
    functionLinenumberEnd: 355
    functionName: gf_cfg_del
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 6
    functionsReached:
    - gf_cfg_clear
    - gf_free
    - 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:361,1
    - Dst: gf_cfg_clear
      Src: /src/gpac/src/utils/configfile.c:362,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 358
    functionDepth: 4
    functionLinenumber: 358
    functionLinenumberEnd: 364
    functionName: gf_cfg_remove
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_cfg_clear
    - gf_free
    - gf_file_delete
    linkageType: ''
    returnType: void
    signature: void gf_cfg_remove(GF_Config *iniFile)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:377,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:378,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:384,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:385,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 4
    argNames:
    - iniFile
    - secName
    - keyName
    - restricted_only
    argTypes:
    - GF_Config*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 367
    functionDepth: 2
    functionLinenumber: 367
    functionLinenumberEnd: 392
    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:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - iniFile
    - secName
    - keyName
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 393
    functionDepth: 3
    functionLinenumber: 393
    functionLinenumberEnd: 397
    functionName: gf_cfg_get_key
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 7
    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:407,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/configfile.c:408,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:414,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/configfile.c:415,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - iniFile
    - secName
    - keyName
    argTypes:
    - GF_Config*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 418
    functionName: gf_cfg_get_ikey
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - stricmp
    - gf_list_enum
    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:430,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:437,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:438,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/configfile.c:439,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:442,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:446,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:447,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:451,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:452,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:453,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/configfile.c:456,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/configfile.c:462,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:463,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:464,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:465,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:472,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:474,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:475,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: 479
      start: 421
    functionDepth: 3
    functionLinenumber: 421
    functionLinenumberEnd: 479
    functionName: gf_cfg_set_key_internal
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_list_enum
    - gf_list_del_item
    - strnicmp
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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:484,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: 486
      start: 481
    functionDepth: 4
    functionLinenumber: 481
    functionLinenumberEnd: 486
    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:491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - iniFile
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 492
    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:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - iniFile
    - secIndex
    argTypes:
    - GF_Config*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 500
    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:507,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:508,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/configfile.c:508,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - iniFile
    - secName
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 502
    functionDepth: 2
    functionLinenumber: 502
    functionLinenumberEnd: 511
    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:518,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:519,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/configfile.c:520,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - iniFile
    - secName
    - keyIndex
    argTypes:
    - GF_Config*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 513
    functionDepth: 2
    functionLinenumber: 513
    functionLinenumberEnd: 525
    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:535,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:536,1
    - Dst: DelSection
      Src: /src/gpac/src/utils/configfile.c:537,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/configfile.c:538,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - iniFile
    - secName
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 527
    functionDepth: 3
    functionLinenumber: 527
    functionLinenumberEnd: 543
    functionName: gf_cfg_del_section
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 5
    functionsReached:
    - DelSection
    - gf_list_enum
    - strcmp
    - 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:555,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:556,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/configfile.c:561,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/configfile.c:562,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/configfile.c:565,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:566,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:567,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/utils/configfile.c:568,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: 571
      start: 546
    functionDepth: 2
    functionLinenumber: 546
    functionLinenumberEnd: 571
    functionName: gf_cfg_insert_key
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_list_enum
    - strcmp
    - gf_strdup
    - gf_list_insert
    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:582,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/configfile.c:582,1
    - Dst: strtok
      Src: /src/gpac/src/utils/configfile.c:588,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:591,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:592,1
    - Dst: strtok
      Src: /src/gpac/src/utils/configfile.c:596,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/configfile.c:598,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: 600
      start: 575
    functionDepth: 4
    functionLinenumber: 575
    functionLinenumberEnd: 600
    functionName: gf_cfg_get_sub_key
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - strtok
    - gf_free
    - gf_cfg_get_key
    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:606,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/configfile.c:607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - iniFile
    - fileName
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 603
    functionDepth: 0
    functionLinenumber: 603
    functionLinenumberEnd: 609
    functionName: gf_cfg_set_filename
    functionSourceFile: /src/gpac/src/utils/configfile.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_free
    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:
    - memset
    - gf_free
    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_SAFEALLOC
    - gf_free
    - gf_malloc
    - memcpy
    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:
    - ABS
    - gf_path_add_line_to
    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_close
    - gf_path_add_move_to
    - gf_path_add_line_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_close
    - gf_path_add_move_to
    - gf_path_add_line_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_cos
    - gf_path_close
    - gf_path_add_move_to
    - gf_sin
    - gf_mulfix
    - gf_path_add_line_to
    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_mx2d_apply_coords
    - gf_realloc
    - memcpy
    - gf_rect_union
    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
    - gf_mulfix
    - pow
    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:
    - gf_path_add_line_to
    - FIX2INT
    - 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:
    - memcpy
    - gf_malloc
    - gf_add_n_bezier
    - gf_free
    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_init
    - gf_mx2d_add_translation
    - gf_cos
    - gf_path_add_line_to
    - gf_sqrt
    - gf_mx2d_apply_coords
    - gf_sin
    - gf_mx2d_copy
    - gf_mx2d_inverse
    - gf_mulfix
    - gf_mx2d_add_rotation
    - gf_atan2
    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_cos
    - gf_divfix
    - gf_sqrt
    - gf_acos
    - MIN
    - gf_assert
    - gf_sin
    - ABS
    - gf_mulfix
    - MAX
    - gf_path_add_line_to
    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_cos
    - gf_path_close
    - gf_path_add_move_to
    - gf_sin
    - gf_mulfix
    - gf_path_add_line_to
    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_path_get_control_bounds
    - gf_conic_check
    - gf_cubic_check
    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_divfix
    - gf_v2d_len
    - ABS
    - gf_mulfix
    - gf_subdivide_cubic
    - gf_path_add_line_to
    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_add_move_to_vec
    - gf_path_close
    - gf_path_add_line_to_vec
    - gf_path_clone
    - MAX
    - gf_path_new
    - gf_subdivide_cubic
    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_path_get_flatten
    - gf_free
    - 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:
    - isLeft
    - gf_subdivide_cubic_hit_test
    - MIN
    - MAX
    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:
    - isLeft
    - gf_path_get_bounds
    - gf_subdivide_cubic_hit_test
    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_path_get_flatten
    - gf_free
    - gf_malloc
    - gf_sqrt
    - gf_path_del
    - GF_SAFEALLOC
    - gf_mulfix
    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_init
    - gf_mx2d_add_translation
    - gf_divfix
    - gf_acos
    - gf_mulfix
    - gf_mx2d_add_rotation
    - gf_mx2d_add_matrix
    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:
    - GF_LOG
    - register_module
    - gf_list_add
    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_LOG
    - gf_opts_get_key
    - gf_strdup
    - 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_free
    - gf_cfg_del_section
    - gf_gpac_version
    - gf_mx_new
    - GF_LOG
    - gf_list_del
    - GF_SAFEALLOC
    - gf_opts_get_key
    - strcmp
    - gf_list_new
    - gf_opts_get_bool
    - gf_modules_refresh_module_directories
    - gf_opts_set_key
    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_list_count
    - gf_free
    - gf_list_del
    - gf_modules_free_module
    - gf_list_get
    - gf_mx_del
    - gf_list_rem
    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: snprintf
      Src: /src/gpac/src/utils/module.c:386,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/module.c:386,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/module.c:387,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/module.c:391,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:393,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/module.c:394,1
    - Dst: ModuleInstance*::load_func
      Src: /src/gpac/src/utils/module.c:399,1
    - Dst: ModuleInstance*::destroy_func
      Src: /src/gpac/src/utils/module.c:403,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/module.c:406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:409,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:414,1
    - Dst: gf_modules_unload_library
      Src: /src/gpac/src/utils/module.c:415,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:416,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/module.c:417,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 96
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 307
    functionDepth: 5
    functionLinenumber: 307
    functionLinenumberEnd: 419
    functionName: GF_BaseInterface *gf_modules_load(u32 whichplug, u32 InterfaceFamily)
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - ModuleInstance*::load_func
    - ModuleInstance*::destroy_func
    - gf_modules_load_library
    - snprintf
    - gf_4cc_to_str
    - gf_list_add
    - strstr
    - gf_cfg_get_key
    - gf_mx_v
    - gf_modules_check_load
    - gf_dynstrcat
    - gf_list_get
    - gf_mx_p
    - ModuleInstance*::query_func
    - gf_free
    - GF_LOG
    - gf_cfg_set_key
    - strncmp
    - gf_modules_unload_library
    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:428,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:432,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:435,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/module.c:437,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:439,1
    - Dst: strstr
      Src: /src/gpac/src/utils/module.c:440,1
    - Dst: gf_modules_load_library
      Src: /src/gpac/src/utils/module.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:443,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:444,1
    - Dst: ModuleInstance*::filterreg_func
      Src: /src/gpac/src/utils/module.c:449,1
    - Dst: gf_modules_unload_library
      Src: /src/gpac/src/utils/module.c:452,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - whichplug
    - fsess
    argTypes:
    - u32
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 421
    functionDepth: 5
    functionLinenumber: 421
    functionLinenumberEnd: 455
    functionName: gf_modules_load_filter
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 0
    functionsReached:
    - gf_cfg_get_key
    - ModuleInstance*::filterreg_func
    - gf_cfg_set_key
    - GF_LOG
    - gf_modules_load_library
    - gf_modules_check_load
    - strcmp
    - gf_list_get
    - strstr
    - strncmp
    - gf_modules_unload_library
    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:465,1
    - Dst: gf_modules_check_load
      Src: /src/gpac/src/utils/module.c:469,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/module.c:471,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/module.c:473,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:478,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:479,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/utils/module.c:480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:486,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/module.c:490,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:491,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/utils/module.c:493,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:495,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/module.c:497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:498,1
    - Dst: gf_module_get_file_name
      Src: /src/gpac/src/utils/module.c:502,1
    - Dst: strstr
      Src: /src/gpac/src/utils/module.c:503,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/module.c:508,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 457
    functionDepth: 5
    functionLinenumber: 457
    functionLinenumberEnd: 510
    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_list_count
    - gf_cfg_get_key
    - gf_module_get_file_name
    - gf_cfg_set_key
    - GF_LOG
    - gf_modules_check_load
    - gf_modules_close_interface
    - strcmp
    - gf_list_get
    - strstr
    - gf_modules_load
    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:522,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/module.c:525,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/module.c:527,1
    - Dst: ModuleInstance*::destroy_func
      Src: /src/gpac/src/utils/module.c:528,1
    - Dst: gf_modules_unload_library
      Src: /src/gpac/src/utils/module.c:529,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - ifce
    argTypes:
    - GF_BaseInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 512
    functionDepth: 2
    functionLinenumber: 512
    functionLinenumberEnd: 532
    functionName: gf_modules_close_interface
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 6
    functionsReached:
    - ModuleInstance*::destroy_func
    - gf_modules_unload_library
    - gf_list_find
    - 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:537,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - i
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 534
    functionDepth: 1
    functionLinenumber: 534
    functionLinenumberEnd: 540
    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: 548
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 548
    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:567,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 19
    argCount: 2
    argNames:
    - ifce
    - ifce_type
    argTypes:
    - GF_BaseInterface*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 553
    functionDepth: 0
    functionLinenumber: 553
    functionLinenumberEnd: 577
    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:584,1
    - Dst: module_check_ifce
      Src: /src/gpac/src/utils/module.c:585,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:586,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:595,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:598,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:601,1
    - Dst: gf_modules_load_by_name
      Src: /src/gpac/src/utils/module.c:607,1
    - Dst: module_check_ifce
      Src: /src/gpac/src/utils/module.c:608,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:609,1
    - Dst: gf_modules_count
      Src: /src/gpac/src/utils/module.c:615,1
    - Dst: gf_modules_load
      Src: /src/gpac/src/utils/module.c:617,1
    - Dst: module_check_ifce
      Src: /src/gpac/src/utils/module.c:620,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/utils/module.c:621,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 44
    argCount: 2
    argNames:
    - ifce_type
    - name
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 580
    functionDepth: 4
    functionLinenumber: 580
    functionLinenumberEnd: 629
    functionName: gf_module_load
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 2
    functionsReached:
    - gf_modules_load_by_name
    - gf_modules_count
    - gf_modules_close_interface
    - module_check_ifce
    - gf_opts_get_key
    - gf_modules_load
    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:638,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/utils/module.c:639,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:643,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/module.c:644,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/utils/module.c:653,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:654,1
    - Dst: strchr
      Src: /src/gpac/src/utils/module.c:656,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:659,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/module.c:662,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/src/utils/module.c:664,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/src/utils/module.c:670,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 2
    argNames:
    - dr
    - key_name
    argTypes:
    - GF_BaseInterface*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 633
    functionDepth: 1
    functionLinenumber: 633
    functionLinenumberEnd: 675
    functionName: gf_module_get_key
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 10
    functionsReached:
    - gf_sys_get_arg
    - strchr
    - gf_sys_mark_arg_used
    - gf_sys_get_argc
    - strcmp
    - strlen
    - gf_opts_get_key
    - strncmp
    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:679,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:681,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:681,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:681,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - dr
    - key_name
    argTypes:
    - GF_BaseInterface*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 676
    functionDepth: 2
    functionLinenumber: 676
    functionLinenumberEnd: 683
    functionName: gf_module_get_bool
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 10
    functionsReached:
    - gf_module_get_key
    - stricmp
    - strcmp
    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:687,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:689,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/module.c:689,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/module.c:689,1
    - Dst: atoi
      Src: /src/gpac/src/utils/module.c:689,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - dr
    - key_name
    argTypes:
    - GF_BaseInterface*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 684
    functionDepth: 2
    functionLinenumber: 684
    functionLinenumberEnd: 691
    functionName: gf_module_get_int
    functionSourceFile: /src/gpac/src/utils/module.c
    functionUses: 2
    functionsReached:
    - gf_module_get_key
    - stricmp
    - atoi
    - strcmp
    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
    - mul255
    - GF_COL_555
    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:
    - mul255
    - GF_COL_565
    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:
    - color_write_yuv422_10_to_yuv422
    - color_write_yvyu_to_yuv
    - load_line_nv21
    - color_write_yuv422_10_to_yuv
    - load_line_yv12_10
    - load_line_nv12
    - gf_malloc
    - load_line_yuv422_10
    - color_write_yuv420_to_yuv
    - color_write_rgb_to_32
    - color_write_yuv422_to_yuv
    - color_write_nv12_10_to_yuv
    - memcpy
    - load_line_yuv444
    - gf_cmx_apply_argb
    - load_line
    - format_is_yuv
    - load_line_yv12
    - ABS
    - gf_pixel_fmt_name
    - yuv2rgb_init
    - load_line_yuv444_10
    - gf_free
    - color_write_yuv444_10_to_yuv444
    - color_write_yuv444_10_to_yuv
    - color_write_rgb_to_24
    - GF_LOG
    - color_write_yuv444_to_yuv
    - load_line_yuv422
    - load_line_yuva
    - color_write_yv12_10_to_yuv
    - copy_row
    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:
    - memcmp
    - gf_cmx_init
    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:
    - gf_cmx_identity
    - memcpy
    - gf_mulfix
    - gf_cmx_copy
    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:
    - gf_mulfix
    - FIX2INT
    - CLIP_COMP
    - INT2FIX
    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:
    - GF_COL_ARGB
    - CLIP_COMP
    - INT2FIX
    - gf_mulfix
    - FIX2INT
    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:
    - gf_mulfix
    - CLIP_COMP
    - INT2FIX
    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:
    - INT2FIX
    - GF_COL_R
    - GF_COL_ARGB_FIXED
    - GF_COL_A
    - gf_cmx_apply
    - GF_COL_G
    - GF_COL_B
    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_load_si128
    - _mm_packus_epi16
    - _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_load_si128
    - _mm_packus_epi16
    - _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_load_si128
    - _mm_packus_epi16
    - _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_load_si128
    - _mm_packus_epi16
    - _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_load_si128
    - _mm_srli_epi16
    - _mm_store_si128
    - _mm_packus_epi16
    - _mm_srli_epi32
    - _mm_packs_epi32
    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: 1
    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:
    - GFINTCAST
    - color_write_yuv422_10_to_yuv422_intrin
    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
    - is_planar_yuv
    - gf_assert
    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:
    - is_planar_yuv
    - memcpy
    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:
    - is_planar_yuv
    - memcpy
    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:
    - is_planar_yuv
    - memcpy
    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:
    - GF_COL_ARGB
    - GF_LOG
    - strnicmp
    - strcmp
    - strlen
    - sscanf
    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_B
    - GF_COL_G
    - GF_COL_R
    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: 328
    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:
    - VirtualFree
    - VirtualQuery
    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:
    - assert
    - interlockedexchange
    - SleepEx
    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:
    - assert
    - interlockedexchange
    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_mutex_init
    - pthread_mutexattr_init
    - pthread_mutexattr_settype
    - pthread_mutexattr_destroy
    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:
    - interlockedcompareexchange
    - interlockedexchange
    - SleepEx
    - InitializeCriticalSection
    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:
    - init_malloc_global_mutex
    - time
    - ACQUIRE_MALLOC_GLOBAL_LOCK
    - read
    - GetSystemInfo
    - open
    - INITIAL_LOCK
    - RELEASE_MALLOC_GLOBAL_LOCK
    - close
    - GetTickCount
    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:
    - assert
    - ok_address
    - chunk2mem
    - 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: ((is_aligned(chunk2mem(p))) || (p->head == FENCEPOST_HEAD))
      pos:
        line_end: 3084
        line_start: 3084
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (sp != 0)
      pos:
        line_end: 3083
        line_start: 3083
        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(p))
      pos:
        line_end: 3089
        line_start: 3089
        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
    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:
    - pinuse
    - chunk_plus_offset
    - ok_address
    - chunk2mem
    - assert
    - segment_holding
    - is_aligned
    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: (use_mmap(m))
      pos:
        line_end: 3098
        line_start: 3098
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (is_mmapped(p))
      pos:
        line_end: 3097
        line_start: 3097
        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: ((len & (mparams.page_size-SIZE_T_ONE)) == 0)
      pos:
        line_end: 3102
        line_start: 3102
        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
    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:
    - use_mmap
    - is_small
    - chunksize
    - is_mmapped
    - chunk_plus_offset
    - chunk2mem
    - assert
    - ok_address
    - is_aligned
    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:
    - prev_chunk
    - assert
    - pinuse
    - is_mmapped
    - next_pinuse
    - do_check_mmapped_chunk
    - do_check_any_chunk
    - is_inuse
    - next_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: (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
    - 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: (!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: (p->fd->bk == p)
      pos:
        line_end: 3133
        line_start: 3133
        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:
    - assert
    - pinuse
    - chunksize
    - chunk_plus_offset
    - next_pinuse
    - is_mmapped
    - do_check_any_chunk
    - chunk2mem
    - is_inuse
    - is_aligned
    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 & CHUNK_ALIGN_MASK) == 0)
      pos:
        line_end: 3147
        line_start: 3147
        source_file: /src/gpac/src/utils/dlmalloc.c
    - 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: (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:
    - do_check_inuse_chunk
    - assert
    - 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: (tsize >= minsize_for_tree_index(idx))
      pos:
        line_end: 3165
        line_start: 3165
        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: (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
    - condition: (head != 0)
      pos:
        line_end: 3203
        line_start: 3203
        source_file: /src/gpac/src/utils/dlmalloc.c
    - 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: (u->child[0]->parent == u)
      pos:
        line_end: 3188
        line_start: 3188
        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: (u->child[0] == 0)
      pos:
        line_end: 3177
        line_start: 3177
        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: (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: (!is_inuse(u))
      pos:
        line_end: 3172
        line_start: 3172
        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
    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:
    - is_inuse
    - compute_tree_index
    - chunksize
    - next_pinuse
    - do_check_any_chunk
    - assert
    - minsize_for_tree_index
    - 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:
    - assert
    - treebin_at
    - do_check_tree
    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: (empty)
      pos:
        line_end: 3223
        line_start: 3223
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (small_index(size) == i)
      pos:
        line_end: 3231
        line_start: 3231
        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:
    - do_check_inuse_chunk
    - smallbin_at
    - chunksize
    - do_check_free_chunk
    - assert
    - small_index
    - next_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:
    - smallbin_at
    - treemap_is_marked
    - compute_tree_index
    - leftshift_for_tree_index
    - is_small
    - chunksize
    - treebin_at
    - smallmap_is_marked
    - small_index
    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:
    - do_check_inuse_chunk
    - next_chunk
    - is_inuse
    - pinuse
    - segment_holds
    - chunksize
    - is_initialized
    - do_check_free_chunk
    - bin_find
    - assert
    - align_as_chunk
    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: (bin_find(m, m->top) == 0)
      pos:
        line_end: 3329
        line_start: 3329
        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: (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_smallbin
    - traverse_and_check
    - do_check_top_chunk
    - chunksize
    - do_check_treebin
    - do_check_any_chunk
    - bin_find
    - assert
    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:
    - next_chunk
    - check_malloc_state
    - segment_holds
    - PREACTION
    - chunksize
    - ensure_initialization
    - is_initialized
    - POSTACTION
    - is_inuse
    - align_as_chunk
    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:
    - fprintf
    - next_chunk
    - check_malloc_state
    - segment_holds
    - PREACTION
    - chunksize
    - ensure_initialization
    - is_initialized
    - POSTACTION
    - is_inuse
    - align_as_chunk
    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
    - check_mmapped_chunk
    - chunk2mem
    - CALL_DIRECT_MMAP
    - mark_inuse_foot
    - assert
    - mmap_align
    - is_aligned
    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:
    - is_small
    - chunksize
    - chunk_plus_offset
    - CALL_MREMAP
    - check_mmapped_chunk
    - mark_inuse_foot
    - mmap_align
    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:
    - chunk2mem
    - align_offset
    - chunk_plus_offset
    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: (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
    - condition: ((char*)oldfirst > (char*)q)
      pos:
        line_end: 3792
        line_start: 3792
        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
    - is_inuse
    - pinuse
    - set_free_with_pinuse
    - check_top_chunk
    - chunksize
    - check_malloced_chunk
    - chunk_plus_offset
    - check_free_chunk
    - chunk2mem
    - unlink_chunk
    - set_size_and_pinuse_of_free_chunk
    - insert_chunk
    - assert
    - 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:
    - set_size_and_pinuse_of_inuse_chunk
    - init_top
    - set_free_with_pinuse
    - align_offset
    - pad_request
    - check_top_chunk
    - chunk_plus_offset
    - chunk2mem
    - insert_chunk
    - assert
    - segment_holding
    - is_aligned
    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:
    - ACQUIRE_MALLOC_GLOBAL_LOCK
    - chunk_plus_offset
    - is_extern_segment
    - check_malloced_chunk
    - segment_holding
    - use_mmap
    - init_bins
    - mmap_alloc
    - prepend_alloc
    - use_noncontiguous
    - RELEASE_MALLOC_GLOBAL_LOCK
    - set_size_and_pinuse_of_inuse_chunk
    - page_align
    - init_top
    - CALL_MMAP
    - check_top_chunk
    - add_segment
    - disable_contiguous
    - ensure_initialization
    - is_initialized
    - granularity_align
    - is_page_aligned
    - next_chunk
    - CALL_MORECORE
    - segment_holds
    - is_global
    - chunk2mem
    - 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:
    - insert_large_chunk
    - assert
    - segment_holds
    - chunksize
    - CALL_MUNMAP
    - is_mmapped_segment
    - unlink_large_chunk
    - is_extern_segment
    - is_inuse
    - align_as_chunk
    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:
    - init_top
    - ACQUIRE_MALLOC_GLOBAL_LOCK
    - CALL_MORECORE
    - release_unused_segments
    - check_top_chunk
    - CALL_MUNMAP
    - ensure_initialization
    - is_initialized
    - is_mmapped_segment
    - is_extern_segment
    - CALL_MREMAP
    - RELEASE_MALLOC_GLOBAL_LOCK
    - has_segment_link
    - segment_holding
    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
    - idx2bit
    - chunk_plus_offset
    - set_size_and_pinuse_of_free_chunk
    - set_inuse_and_pinuse
    - leftmost_child
    - RTCHECK
    - ok_next
    - chunksize
    - set_size_and_pinuse_of_inuse_chunk
    - leftshift_for_tree_index
    - left_bits
    - compute_tree_index
    - treebin_at
    - CORRUPTION_ERROR_ACTION
    - unlink_large_chunk
    - chunk2mem
    - insert_chunk
    - least_bit
    - assert
    - ok_address
    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:
    - leftmost_child
    - set_size_and_pinuse_of_inuse_chunk
    - RTCHECK
    - ok_next
    - compute_bit2idx
    - chunksize
    - replace_dv
    - treebin_at
    - chunk_plus_offset
    - CORRUPTION_ERROR_ACTION
    - unlink_large_chunk
    - chunk2mem
    - set_size_and_pinuse_of_free_chunk
    - least_bit
    - assert
    - ok_address
    - set_inuse_and_pinuse
    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:
    - internal_malloc
    - chunk_plus_offset
    - is_mmapped
    - request2size
    - set_inuse_and_pinuse
    - ok_pinuse
    - internal_free
    - RTCHECK
    - ok_next
    - chunksize
    - POSTACTION
    - memcpy
    - PREACTION
    - set_inuse
    - mmap_resize
    - check_inuse_chunk
    - USAGE_ERROR_ACTION
    - ok_inuse
    - overhead_for
    - chunk2mem
    - mem2chunk
    - ok_address
    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: (chunksize(p) >= nb)
      pos:
        line_end: 4452
        line_start: 4452
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: ((((size_t)(chunk2mem(p))) % alignment) == 0)
      pos:
        line_end: 4453
        line_start: 4453
        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
    - PREACTION
    - set_inuse
    - chunksize
    - is_mmapped
    - chunk_plus_offset
    - POSTACTION
    - chunk2mem
    - request2size
    - mem2chunk
    - check_inuse_chunk
    - assert
    - internal_free
    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: (!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
    - condition: (remainder_size == request2size(sizes[i]))
      pos:
        line_end: 4584
        line_start: 4584
        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:
    - use_mmap
    - set_size_and_pinuse_of_inuse_chunk
    - internal_malloc
    - disable_mmap
    - enable_mmap
    - PREACTION
    - chunksize
    - memset
    - is_mmapped
    - chunk_plus_offset
    - ensure_initialization
    - POSTACTION
    - chunk2mem
    - request2size
    - mem2chunk
    - check_inuse_chunk
    - assert
    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(i))
      pos:
        line_end: 4663
        line_start: 4663
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunksize(p) == small_index2size(idx))
      pos:
        line_end: 4645
        line_start: 4645
        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:
    - pad_request
    - compute_bit2idx
    - idx2bit
    - chunk_plus_offset
    - tmalloc_large
    - set_size_and_pinuse_of_free_chunk
    - check_malloced_chunk
    - set_inuse_and_pinuse
    - replace_dv
    - chunksize
    - POSTACTION
    - sys_alloc
    - set_size_and_pinuse_of_inuse_chunk
    - check_top_chunk
    - PREACTION
    - ensure_initialization
    - left_bits
    - tmalloc_small
    - small_index2size
    - unlink_first_small_chunk
    - smallbin_at
    - chunk2mem
    - least_bit
    - assert
    - small_index
    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:
    - should_trim
    - chunk_plus_offset
    - is_mmapped
    - check_free_chunk
    - set_size_and_pinuse_of_free_chunk
    - ok_pinuse
    - chunk_minus_offset
    - insert_large_chunk
    - release_unused_segments
    - RTCHECK
    - ok_next
    - chunksize
    - CALL_MUNMAP
    - POSTACTION
    - PREACTION
    - insert_small_chunk
    - check_inuse_chunk
    - ok_magic
    - sys_trim
    - USAGE_ERROR_ACTION
    - set_free_with_pinuse
    - pinuse
    - is_small
    - get_mstate_for
    - ok_inuse
    - unlink_chunk
    - mem2chunk
    - ok_address
    - cinuse
    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:
    - memset
    - dlmalloc
    - calloc_must_clear
    - 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:
    - internal_realloc
    - USAGE_ERROR_ACTION
    - dlfree
    - ok_magic
    - get_mstate_for
    - dlmalloc
    - 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:
    - ensure_initialization
    - dlmemalign
    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:
    - ensure_initialization
    - dlmemalign
    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
    - ensure_initialization
    - POSTACTION
    - sys_trim
    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:
    - is_inuse
    - chunksize
    - 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:
    - next_chunk
    - init_top
    - init_bins
    - pad_request
    - check_top_chunk
    - INITIAL_LOCK
    - disable_contiguous
    - chunk2mem
    - mem2chunk
    - memset
    - 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:
    - set_lock
    - CALL_MMAP
    - pad_request
    - ensure_initialization
    - granularity_align
    - init_user_mstate
    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:
    - ensure_initialization
    - init_user_mstate
    - set_lock
    - pad_request
    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
    - disable_mmap
    - enable_mmap
    - PREACTION
    - POSTACTION
    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:
    - USAGE_ERROR_ACTION
    - CALL_MUNMAP
    - 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(i))
      pos:
        line_end: 5098
        line_start: 5098
        source_file: /src/gpac/src/utils/dlmalloc.c
    - condition: (chunksize(p) == small_index2size(idx))
      pos:
        line_end: 5080
        line_start: 5080
        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:
    - pad_request
    - compute_bit2idx
    - idx2bit
    - chunk_plus_offset
    - tmalloc_large
    - set_size_and_pinuse_of_free_chunk
    - check_malloced_chunk
    - set_inuse_and_pinuse
    - replace_dv
    - chunksize
    - POSTACTION
    - sys_alloc
    - set_size_and_pinuse_of_inuse_chunk
    - check_top_chunk
    - PREACTION
    - left_bits
    - tmalloc_small
    - ok_magic
    - small_index2size
    - unlink_first_small_chunk
    - USAGE_ERROR_ACTION
    - smallbin_at
    - chunk2mem
    - least_bit
    - assert
    - small_index
    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:
    - should_trim
    - chunk_plus_offset
    - is_mmapped
    - check_free_chunk
    - set_size_and_pinuse_of_free_chunk
    - ok_pinuse
    - chunk_minus_offset
    - insert_large_chunk
    - release_unused_segments
    - RTCHECK
    - ok_next
    - chunksize
    - CALL_MUNMAP
    - POSTACTION
    - PREACTION
    - insert_small_chunk
    - check_inuse_chunk
    - ok_magic
    - sys_trim
    - USAGE_ERROR_ACTION
    - set_free_with_pinuse
    - pinuse
    - is_small
    - get_mstate_for
    - ok_inuse
    - unlink_chunk
    - mem2chunk
    - ok_address
    - cinuse
    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:
    - USAGE_ERROR_ACTION
    - internal_malloc
    - calloc_must_clear
    - ok_magic
    - mem2chunk
    - memset
    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:
    - internal_realloc
    - USAGE_ERROR_ACTION
    - get_mstate_for
    - mem2chunk
    - mspace_free
    - ok_magic
    - mspace_malloc
    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:
    - USAGE_ERROR_ACTION
    - PREACTION
    - POSTACTION
    - ok_magic
    - sys_trim
    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:
    - USAGE_ERROR_ACTION
    - internal_malloc_stats
    - 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:
    - internal_mallinfo
    - USAGE_ERROR_ACTION
    - ok_magic
    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:
    - is_inuse
    - chunksize
    - 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_LOG
    - GF_SAFEALLOC
    - hmux_get_session
    - gf_strdup
    - 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:
    - GF_LOG
    - memset
    - hmux_get_session
    - 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_LOG
    - GF_DownloadSession*::user_proc
    - gf_mx_p
    - hmux_get_session
    - gf_mx_v
    - memset
    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:
    - GF_LOG
    - gf_realloc
    - memcpy
    - hmux_get_session
    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:
    - SET_LAST_ERR
    - GF_LOG
    - gf_mx_p
    - 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:
    - h2_write_data
    - hmux_get_session
    - 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:
    - nghttp2_strerror
    - SET_LAST_ERR
    - GF_LOG
    - gf_assert
    - 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:
    - nghttp2_session_mem_recv
    - nghttp2_strerror
    - h2_session_write
    - GF_LOG
    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:
    - sprintf
    - gf_list_count
    - strchr
    - gf_malloc
    - gf_free
    - GF_LOG
    - gf_list_get
    - gf_assert
    - gf_log_tool_level_on
    - gf_dynstrcat
    - nghttp2_submit_request
    - NV_HDR
    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_list_count
    - sprintf
    - gf_free
    - gf_malloc
    - nghttp2_strerror
    - GF_LOG
    - gf_mx_v
    - h2_flush_send_ex
    - gf_mx_p
    - nghttp2_submit_response
    - gf_list_get
    - h2_session_write
    - NV_HDR
    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:
    - h2_flush_send_ex
    - gf_assert
    - GF_DownloadSession*::hmux_sess::resume
    - gf_sk_probe
    - gf_mx_p
    - gf_mx_v
    - memmove
    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_SAFEALLOC
    - gf_free
    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:
    - gf_dm_read_data
    - SET_LAST_ERR
    - gf_realloc
    - h2_session_write
    - memcpy
    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_session_write
    - h2_flush_send_ex
    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:
    - gf_dm_read_data
    - SET_LAST_ERR
    - gf_sys_clock_high_res
    - nghttp2_submit_shutdown_notice
    - h2_session_write
    - nghttp2_session_want_read
    linkageType: ''
    returnType: void
    signature: void h2_close_session(GF_DownloadSession *sess)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: nghttp2_session_callbacks_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:722,1
    - Dst: nghttp2_session_callbacks_set_send_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:723,1
    - Dst: nghttp2_session_callbacks_set_on_frame_recv_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:724,1
    - Dst: nghttp2_session_callbacks_set_before_frame_send_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:725,1
    - Dst: nghttp2_session_callbacks_set_on_data_chunk_recv_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:727,1
    - Dst: nghttp2_session_callbacks_set_on_stream_close_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:728,1
    - Dst: nghttp2_session_callbacks_set_on_header_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:729,1
    - Dst: nghttp2_session_callbacks_set_on_begin_headers_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:730,1
    - Dst: nghttp2_session_callbacks_set_error_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:731,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_nghttp2.c:733,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:734,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/downloader_nghttp2.c:735,1
    - Dst: nghttp2_session_callbacks_set_send_data_callback
      Src: /src/gpac/src/utils/downloader_nghttp2.c:737,1
    - Dst: nghttp2_session_server_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:740,1
    - Dst: nghttp2_session_client_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:742,1
    - Dst: H2SET_ASSIGN
      Src: /src/gpac/src/utils/downloader_nghttp2.c:751,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_nghttp2.c:753,1
    - Dst: H2SET_ASSIGN
      Src: /src/gpac/src/utils/downloader_nghttp2.c:755,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_nghttp2.c:757,1
    - Dst: H2SET_ASSIGN
      Src: /src/gpac/src/utils/downloader_nghttp2.c:759,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_nghttp2.c:761,1
    - Dst: H2SET_ASSIGN
      Src: /src/gpac/src/utils/downloader_nghttp2.c:763,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_nghttp2.c:765,1
    - Dst: nghttp2_session_set_local_window_size
      Src: /src/gpac/src/utils/downloader_nghttp2.c:767,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:769,1
    - Dst: nghttp2_session_callbacks_del
      Src: /src/gpac/src/utils/downloader_nghttp2.c:773,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_nghttp2.c:790,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_nghttp2.c:793,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader_nghttp2.c:794,1
    - Dst: h2_setup_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:801,1
    - Dst: nghttp2_session_upgrade2
      Src: /src/gpac/src/utils/downloader_nghttp2.c:806,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:807,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:812,1
    - Dst: nghttp2_submit_settings
      Src: /src/gpac/src/utils/downloader_nghttp2.c:819,1
    - Dst: SET_LAST_ERR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:822,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:825,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 80
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 826
      start: 714
    functionDepth: 2
    functionLinenumber: 714
    functionLinenumberEnd: 826
    functionName: h2_initialize_session
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_session_callbacks_set_error_callback
    - GF_SAFEALLOC
    - nghttp2_submit_settings
    - H2SET_ASSIGN
    - nghttp2_session_callbacks_set_on_frame_recv_callback
    - nghttp2_session_callbacks_set_on_header_callback
    - gf_list_add
    - nghttp2_session_callbacks_set_send_callback
    - gf_opts_get_int
    - nghttp2_session_callbacks_set_send_data_callback
    - nghttp2_session_callbacks_set_on_data_chunk_recv_callback
    - nghttp2_session_callbacks_new
    - SET_LAST_ERR
    - nghttp2_session_callbacks_set_before_frame_send_callback
    - gf_mx_new
    - nghttp2_session_callbacks_set_on_stream_close_callback
    - h2_setup_session
    - gf_list_new
    - nghttp2_session_callbacks_set_on_begin_headers_callback
    - nghttp2_session_client_new
    - sprintf
    - gf_free
    - GF_LOG
    - nghttp2_session_upgrade2
    - nghttp2_session_callbacks_del
    - nghttp2_session_server_new
    - nghttp2_session_set_local_window_size
    - gf_opts_get_bool
    - h2_session_write
    linkageType: ''
    returnType: void
    signature: void h2_initialize_session(GF_DownloadSession *sess)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _key
    - ','
    - _val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 750
    functionName: H2SET_ASSIGN
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: H2SET_ASSIGN(_key, _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PUSH_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:843,1
    - Dst: PUSH_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:844,1
    - Dst: nghttp2_pack_settings_payload
      Src: /src/gpac/src/utils/downloader_nghttp2.c:847,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/downloader_nghttp2.c:847,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/utils/downloader_nghttp2.c:848,1
    - Dst: PUSH_HDR
      Src: /src/gpac/src/utils/downloader_nghttp2.c:850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 830
    functionDepth: 1
    functionLinenumber: 830
    functionLinenumberEnd: 853
    functionName: http2_set_upgrade_headers
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - PUSH_HDR
    - nghttp2_pack_settings_payload
    - gf_base64_encode
    - GF_ARRAY_LENGTH
    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:865,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/downloader_nghttp2.c:865,1
    - Dst: h2_initialize_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:867,1
    - Dst: nghttp2_session_upgrade2
      Src: /src/gpac/src/utils/downloader_nghttp2.c:869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:871,1
    - Dst: nghttp2_strerror
      Src: /src/gpac/src/utils/downloader_nghttp2.c:871,1
    - Dst: nghttp2_session_mem_recv
      Src: /src/gpac/src/utils/downloader_nghttp2.c:876,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:878,1
    - Dst: nghttp2_strerror
      Src: /src/gpac/src/utils/downloader_nghttp2.c:878,1
    - Dst: h2_session_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:884,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_nghttp2.c:888,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 3
    argNames:
    - sess
    - body
    - body_len
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 855
    functionDepth: 3
    functionLinenumber: 855
    functionLinenumberEnd: 890
    functionName: http2_do_upgrade
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 0
    functionsReached:
    - nghttp2_strerror
    - GF_ARRAY_LENGTH
    - GF_LOG
    - nghttp2_session_upgrade2
    - nghttp2_session_mem_recv
    - h2_initialize_session
    - nghttp2_pack_settings_payload
    - 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:900,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_nghttp2.c:901,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_nghttp2.c:905,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/downloader_nghttp2.c:906,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_nghttp2.c:908,1
    - Dst: h2_initialize_session
      Src: /src/gpac/src/utils/downloader_nghttp2.c:909,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_DownloadSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 892
    functionDepth: 3
    functionLinenumber: 892
    functionLinenumberEnd: 911
    functionName: http2_check_upgrade
    functionSourceFile: /src/gpac/src/utils/downloader_nghttp2.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_assert
    - dm_sess_write
    - gf_dynstrcat
    - h2_initialize_session
    - strlen
    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:
    - gf_angle_diff
    - ABS
    - FT_IS_SMALL
    - 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:
    - gf_angle_diff
    - ABS
    - FT_IS_SMALL
    - 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:
    - gf_cos
    - gf_muldiv
    - ft_stroke_border_cubicto
    - gf_sin
    - gf_v2d_from_polar
    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:
    - gf_angle_diff
    - ft_stroke_border_arcto
    - 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_cubicto
    - ft_stroke_border_lineto
    - FT_SIDE_TO_ROTATE
    - gf_v2d_from_polar
    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:
    - gf_cos
    - FT_SIDE_TO_ROTATE
    - gf_divfix
    - gf_angle_diff
    - gf_v2d_from_polar
    - gf_mulfix
    - ft_stroke_border_lineto
    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:
    - gf_invfix
    - gf_cos
    - FT_SIDE_TO_ROTATE
    - gf_divfix
    - gf_angle_diff
    - gf_sin
    - ft_stroker_arcto
    - ABS
    - gf_v2d_from_polar
    - gf_mulfix
    - ft_stroke_border_lineto
    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_outside
    - gf_angle_diff
    - ft_stroker_inside
    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
    - ft_stroker_process_corner
    - gf_v2d_from_polar
    - ft_stroke_border_lineto
    - gf_atan2
    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_stroker_subpath_start
    - gf_cos
    - gf_divfix
    - FT_SIDE_TO_ROTATE
    - ft_stroke_border_conicto
    - ft_conic_split
    - gf_angle_diff
    - ft_stroker_process_corner
    - gf_v2d_from_polar
    - ft_conic_is_small_enough
    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_stroker_subpath_start
    - gf_cos
    - gf_divfix
    - FT_SIDE_TO_ROTATE
    - ft_stroke_border_cubicto
    - ft_stroker_process_corner
    - ft_cubic_is_small_enough
    - ABS
    - gf_v2d_from_polar
    - ft_cubic_split
    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:
    - gf_angle_diff
    - ft_stroker_add_reverse_left
    - ft_stroke_border_close
    - ft_stroker_outside
    - ft_stroker_cap
    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_ConicTo
    - FT_Stroker_EndSubPath
    - FT_Stroker_BeginSubPath
    - FT_Stroker_LineTo
    - FT_Stroker_CubicTo
    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:
    - gf_path_add_line_to_vec
    - memmove
    - 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_path_add_move_to_vec
    - gf_free
    - gf_malloc
    - gf_divfix
    - gf_path_add_move_to
    - gf_path_mergedashes
    - gf_path_add_line_to_vec
    - gf_path_get_dash
    - gf_v2d_len
    - gf_mulfix
    - gf_path_add_line_to
    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_divfix
    - evg_dash_subpath
    - gf_v2d_len
    - gf_mulfix
    - gf_path_new
    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_path_get_flatten
    - gf_free
    - gf_path_get_bounds
    - gf_divfix
    - gf_malloc
    - gf_path_new
    - gf_path_del
    - gf_path_dash
    - FT_Stroker_GetCounts
    - FT_Stroker_ParseOutline
    - gf_path_clone
    - gf_mulfix
    - memset
    - ft_stroke_border_export
    - gf_path_flatten
    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:
    - gf_sys_check_process_id
    - gf_cfg_get_key_count
    - gf_cfg_get_key_name
    - gf_cfg_set_key
    - sscanf
    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_list_count
    - gf_free
    - gf_list_get
    - gf_cfg_del
    - gf_cfg_new
    - GF_SAFEALLOC
    - cache_cleanup_processes
    - gf_cfg_get_key
    - gf_strdup
    - gf_list_insert
    - gf_list_add
    - sscanf
    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: snprintf
      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_list_count
    - gf_free
    - gf_list_del
    - gf_file_delete
    - gf_sys_create_lockfile
    - snprintf
    - gf_list_new
    - gf_list_pop_back
    - strstr
    - gf_enum_directory
    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_strdup
    - gf_free
    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_strdup
    - gf_free
    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_strdup
    - gf_free
    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_strdup
    - gf_free
    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_strdup
    - gf_free
    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_clock
    - gf_sys_create_lockfile
    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:
    - sprintf
    - gf_cfg_del
    - gf_cfg_new
    - gf_file_delete
    - snprintf
    - gf_cfg_set_key
    - cache_entry_lock
    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:
    - gf_fclose
    - gf_fopen
    - GF_LOG
    - stricmp
    - strtoul
    - gf_fsize
    - gf_cfg_get_key
    - sscanf
    - strncmp
    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: gf_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: gf_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: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:582,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:582,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:585,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:585,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:585,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/downloader_cache.c:587,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:591,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:592,1
    - Dst: gf_blob_register
      Src: /src/gpac/src/utils/downloader_cache.c:600,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/downloader_cache.c:602,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_cache.c:603,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/downloader_cache.c:610,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/downloader_cache.c:611,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/downloader_cache.c:612,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:613,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader_cache.c:617,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader_cache.c:620,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/downloader_cache.c:623,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/downloader_cache.c:624,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_cache.c:625,1
    - Dst: strlen
      Src: /src/gpac/src/utils/downloader_cache.c:625,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/downloader_cache.c:626,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_cache.c:629,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/downloader_cache.c:630,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/downloader_cache.c:633,1
    - Dst: cache_entry_lock
      Src: /src/gpac/src/utils/downloader_cache.c:634,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_cache.c:636,1
    - Dst: gf_cache_delete_entry
      Src: /src/gpac/src/utils/downloader_cache.c:637,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/downloader_cache.c:641,1
    - Dst: gf_cfg_force_new
      Src: /src/gpac/src/utils/downloader_cache.c:643,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/downloader_cache.c:644,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/downloader_cache.c:645,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: 142
    argCount: 6
    argNames:
    - cache_directory
    - url
    - start_range
    - end_range
    - mem_storage
    - mx
    argTypes:
    - char*
    - char*
    - u64
    - u64
    - Bool
    - GF_Mutex*
    assertStmts:
    - condition: ( strlen ( tmp ) == (_CACHE_HASH_SIZE * 2) )
      pos:
        line_end: 557
        line_start: 557
        source_file: /src/gpac/src/utils/downloader_cache.c
    - condition: (strlen(ext))
      pos:
        line_end: 624
        line_start: 624
        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_cache_set_mime_type
    - gf_sha1_csum
    - gf_cfg_get_filename
    - snprintf
    - gf_cache_set_last_modified_on_server
    - gf_cache_set_etag_on_disk
    - gf_malloc
    - gf_cache_set_last_modified_on_disk
    - gf_net_get_utc
    - gf_cache_check_if_cache_file_is_corrupted
    - cache_cleanup_processes
    - gf_dynstrcat
    - gf_cfg_del_section
    - gf_cfg_get_key
    - gf_strcpy
    - atoi
    - gf_file_exists
    - gf_cfg_del
    - gf_cfg_get_key_count
    - gf_sys_get_process_id
    - gf_cache_delete_entry
    - gf_cfg_force_new
    - strrchr
    - gf_blob_register
    - strcmp
    - gf_list_new
    - strlen
    - gf_cache_set_etag_on_server
    - sscanf
    - gf_strlcpy
    - sprintf
    - gf_free
    - GF_LOG
    - gf_strcat
    - gf_file_delete
    - gf_cfg_set_key
    - gf_strdup
    - assert
    - gf_strlcat
    - cache_entry_lock
    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_cache_get_last_modified_on_server
    - gf_cache_flush_disk_cache
    - gf_fclose
    - gf_cache_set_last_modified_on_disk
    - GF_LOG
    - gf_assert
    - gf_fflush
    - gf_cache_get_etag_on_server
    - sync
    - gf_cache_set_etag_on_disk
    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: gf_strlcpy
      Src: /src/gpac/src/utils/downloader_cache.c:805,1
    - Dst: strlen
      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: snprintf
      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_assert
    - snprintf
    - gf_fopen
    - gf_cfg_new
    - gf_net_get_utc
    - gf_mx_v
    - gf_realloc
    - gf_cfg_del
    - gf_mx_p
    - gf_blob_register
    - strlen
    - gf_strlcpy
    - sprintf
    - gf_free
    - GF_LOG
    - gf_fseek
    - gf_file_delete
    - gf_cfg_set_key
    - cache_entry_lock
    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: gf_strlcpy
      Src: /src/gpac/src/utils/downloader_cache.c:865,1
    - Dst: strlen
      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_LOG
    - gf_fwrite
    - gf_assert
    - gf_mx_v
    - gf_fflush
    - gf_mx_p
    - MAX
    - gf_blob_register
    - strlen
    - gf_cache_close_write_cache
    - memset
    - gf_realloc
    - memcpy
    - gf_strlcpy
    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: snprintf
      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:
    - sprintf
    - gf_cfg_get_key
    - gf_fclose
    - gf_free
    - gf_list_count
    - GF_LOG
    - gf_list_del
    - gf_cfg_del
    - gf_assert
    - gf_sys_get_process_id
    - gf_cfg_new
    - gf_file_delete
    - gf_blob_unregister
    - snprintf
    - gf_cfg_set_key
    - cache_cleanup_processes
    - cache_entry_lock
    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_list_count
    - gf_fclose
    - GF_LOG
    - gf_list_get
    - 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: snprintf
      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:
    - sprintf
    - gf_cfg_del
    - gf_cfg_new
    - gf_net_get_utc
    - gf_file_delete
    - snprintf
    - gf_cfg_set_key
    - cache_entry_lock
    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_add
    - gf_list_get
    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_strdup
    - gf_free
    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_strdup
    - gf_free
    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:
    - sprintf
    - gf_cfg_get_key
    - atoi
    - gf_cfg_del
    - gf_cfg_new
    - gf_mx_p
    - gf_file_delete
    - gf_mx_v
    - cache_entry_lock
    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_blob_get_ex
    - DownloadedCacheEntry::external_blob::range_valid
    - gf_mx_p
    - gf_mx_v
    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: gf_strlcpy
      Src: /src/gpac/src/utils/downloader_cache.c:1184,1
    - Dst: strlen
      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: gf_strlcpy
      Src: /src/gpac/src/utils/downloader_cache.c:1210,1
    - Dst: strlen
      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_LOG
    - gf_mx_v
    - gf_mx_p
    - gf_blob_register
    - gf_blob_unregister
    - strlen
    - MAX
    - gf_realloc
    - memcpy
    - gf_strlcpy
    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_list_count
    - strchr
    - gf_assert
    - gf_mx_v
    - gf_cache_get_start_range
    - gf_cache_get_url
    - gf_cache_get_end_range
    - gf_mx_p
    - strcmp
    - gf_list_get
    - strncmp
    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_list_count
    - gf_cache_remove_session_from_cache_entry
    - gf_mx_v
    - gf_cache_delete_entry
    - gf_cache_get_sessions_count_for_cache_entry
    - gf_mx_p
    - gf_list_get
    - 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_list_count
    - gf_cache_get_cache_filename
    - gf_assert
    - gf_cache_close_write_cache
    - gf_list_add
    - gf_dm_sess_notify_state
    - gf_cache_add_session_to_cache_entry
    - gf_cache_is_in_progress
    - gf_cache_create_entry
    - gf_cache_get_content_length
    - gf_cache_entry_persistent
    - gf_cache_get_sessions_count_for_cache_entry
    - gf_list_get
    - gf_cache_find_entry_by_url
    - gf_mx_v
    - gf_cache_entry_set_delete_files_when_deleted
    - SET_LAST_ERR
    - gf_cache_get_mime_type
    - gf_cache_entry_set_persistent
    - gf_cache_delete_entry
    - gf_mx_p
    - gf_cache_remove_entry_from_session
    - gf_cache_open_read
    - sprintf
    - GF_LOG
    - gf_list_del_item
    - gf_cache_entry_can_reuse
    - gf_dm_sess_set_header_ex
    - gf_cache_set_range
    - gf_cache_entry_is_shared
    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_list_count
    - gf_dm_get_url_info
    - gf_free
    - GF_LOG
    - gf_dm_url_info_init
    - gf_list_get
    - gf_assert
    - gf_cache_delete_entry
    - gf_cache_get_url
    - gf_cache_get_sessions_count_for_cache_entry
    - gf_mx_p
    - strcmp
    - gf_mx_v
    - gf_strdup
    - gf_dm_url_info_del
    - 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_list_count
    - gf_cache_set_mime
    - GF_LOG
    - gf_cache_create_entry
    - gf_cache_set_content
    - gf_assert
    - gf_mx_v
    - gf_cache_get_start_range
    - gf_cache_get_url
    - gf_cache_get_end_range
    - gf_mx_p
    - gf_cache_set_range
    - strcmp
    - gf_list_get
    - gf_cache_set_downtime
    - 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:
    - strchr
    - gf_cache_get_forced_headers
    - gf_dm_sess_clear_headers
    - GF_SAFEALLOC
    - gf_strdup
    - gf_list_add
    - strstr
    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_list_count
    - gf_cache_set_headers
    - gf_dm_sess_reload_cached_headers
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    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: 53
    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: 40
    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: 53
    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: 40
    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: 35
    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:
    - GetSystemTime
    - SystemTimeToFileTime
    - GetTimeZoneInformation
    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:
    - GetSystemTime
    - SystemTimeToFileTime
    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:
    - sprintf
    - MessageBox
    - CE_CharToWide
    - 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:
    - time
    - srand
    - 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: gf_strlcpy
      Src: /src/gpac/src/utils/os_divers.c:427,1
    - Dst: gf_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: gf_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: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:443,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:445,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - buf
    argTypes:
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 424
    functionDepth: 1
    functionLinenumber: 424
    functionLinenumberEnd: 448
    functionName: gf_get_user_name
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - GetUserName
    - getenv
    - getpwuid
    - getuid
    - gf_strlcpy
    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:456,1
    - Dst: toupper
      Src: /src/gpac/src/utils/os_divers.c:457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 460
    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:466,1
    - Dst: tolower
      Src: /src/gpac/src/utils/os_divers.c:467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 470
    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: 480
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 480
    functionName: gf_prompt_has_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    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: 483
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 483
    functionName: gf_prompt_get_char
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    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: 487
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 487
    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: 491
      start: 488
    functionDepth: 0
    functionLinenumber: 488
    functionLinenumberEnd: 491
    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:500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 501
    functionName: gf_prompt_has_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    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:506,1
    - Dst: getchar
      Src: /src/gpac/src/utils/os_divers.c:508,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 503
    functionDepth: 1
    functionLinenumber: 503
    functionLinenumberEnd: 509
    functionName: gf_prompt_get_char
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    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:515,1
    - Dst: GetStdHandle
      Src: /src/gpac/src/utils/os_divers.c:518,1
    - Dst: GetConsoleMode
      Src: /src/gpac/src/utils/os_divers.c:519,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:522,1
    - Dst: SetConsoleMode
      Src: /src/gpac/src/utils/os_divers.c:527,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - echo_off
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 528
    functionName: gf_prompt_set_echo_off
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - SetConsoleMode
    - GF_LOG
    - gf_sys_is_cov_mode
    - GetStdHandle
    - GetConsoleMode
    - GetLastError
    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:534,1
    - Dst: GetConsoleScreenBufferInfo
      Src: /src/gpac/src/utils/os_divers.c:535,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:539,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - width
    - height
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 530
    functionDepth: 1
    functionLinenumber: 530
    functionLinenumberEnd: 545
    functionName: gf_prompt_get_size
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GetStdHandle
    - GetConsoleScreenBufferInfo
    - GetLastError
    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:558,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 566
    functionName: init_keyboard
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - tcsetattr
    - tcgetattr
    linkageType: ''
    returnType: void
    signature: void init_keyboard()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:569,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_divers.c:570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - new_line
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 567
    functionDepth: 0
    functionLinenumber: 567
    functionLinenumberEnd: 571
    functionName: close_keyboard
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - tcsetattr
    - fprintf
    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:577,1
    - Dst: init_keyboard
      Src: /src/gpac/src/utils/os_divers.c:580,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:583,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - echo_off
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 573
    functionDepth: 1
    functionLinenumber: 573
    functionLinenumberEnd: 584
    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:591,1
    - Dst: getpgrp
      Src: /src/gpac/src/utils/os_divers.c:594,1
    - Dst: init_keyboard
      Src: /src/gpac/src/utils/os_divers.c:597,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:600,1
    - Dst: read
      Src: /src/gpac/src/utils/os_divers.c:601,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:603,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:608,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 586
    functionDepth: 1
    functionLinenumber: 586
    functionLinenumberEnd: 610
    functionName: gf_prompt_has_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - read
    - tcgetpgrp
    - init_keyboard
    - tcsetattr
    - close_keyboard
    - getpgrp
    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:617,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:622,1
    - Dst: read
      Src: /src/gpac/src/utils/os_divers.c:625,1
    - Dst: close_keyboard
      Src: /src/gpac/src/utils/os_divers.c:627,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 612
    functionDepth: 1
    functionLinenumber: 612
    functionLinenumberEnd: 629
    functionName: gf_prompt_get_char
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - read
    - close_keyboard
    - gf_sys_is_cov_mode
    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:636,1
    - Dst: ioctl
      Src: /src/gpac/src/utils/os_divers.c:643,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - width
    - height
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 653
    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:731,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 729
    functionDepth: 0
    functionLinenumber: 729
    functionLinenumberEnd: 732
    functionName: gf_sys_clock
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 54
    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:738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 736
    functionDepth: 0
    functionLinenumber: 736
    functionLinenumberEnd: 739
    functionName: gf_sys_clock_high_res
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 40
    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:750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 747
    functionDepth: 0
    functionLinenumber: 747
    functionLinenumberEnd: 753
    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:758,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 761
    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:766,1
    - Dst: timeGetTime
      Src: /src/gpac/src/utils/os_divers.c:768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 770
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 770
    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:774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 772
    functionDepth: 1
    functionLinenumber: 772
    functionLinenumberEnd: 776
    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: 788
      start: 782
    functionDepth: 0
    functionLinenumber: 782
    functionLinenumberEnd: 788
    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: 794
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 794
    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:809,1
    - Dst: sh4_put_fpscr
      Src: /src/gpac/src/utils/os_divers.c:815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 2
    argNames:
    - 'off'
    - 'on'
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 806
    functionDepth: 1
    functionLinenumber: 806
    functionLinenumberEnd: 820
    functionName: sh4_change_fpscr
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - sh4_get_fpscr
    - sh4_put_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:831,1
    - Dst: gmtime
      Src: /src/gpac/src/utils/os_divers.c:836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - time
    argTypes:
    - time_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 841
    functionName: gf_gmtime
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 9
    functionsReached:
    - FileTimeToSystemTime
    - gmtime
    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: 874
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 874
    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: 876
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 876
    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:880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 878
    functionDepth: 1
    functionLinenumber: 878
    functionLinenumberEnd: 881
    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: 887
      start: 883
    functionDepth: 0
    functionLinenumber: 883
    functionLinenumberEnd: 887
    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: 893
      start: 889
    functionDepth: 0
    functionLinenumber: 889
    functionLinenumberEnd: 893
    functionName: gf_sys_old_arch_compat
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 12
    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: 900
      start: 896
    functionDepth: 0
    functionLinenumber: 896
    functionLinenumberEnd: 900
    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:916,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:919,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:925,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 911
    functionDepth: 1
    functionLinenumber: 911
    functionLinenumberEnd: 928
    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: 938
      start: 935
    functionDepth: 0
    functionLinenumber: 935
    functionLinenumberEnd: 938
    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: 942
      start: 939
    functionDepth: 0
    functionLinenumber: 939
    functionLinenumberEnd: 942
    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:974,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:978,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:989,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:989,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:989,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:997,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:997,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1002,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1002,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1006,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/utils/os_divers.c:1007,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1011,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1011,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1015,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1015,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1019,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1021,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1023,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1025,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1027,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1029,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1032,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1034,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1040,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1042,1
    - Dst: gf_netcap_setup
      Src: /src/gpac/src/utils/os_divers.c:1045,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_divers.c:1050,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_divers.c:1051,1
    - Dst: gf_net_set_ntp_shift
      Src: /src/gpac/src/utils/os_divers.c:1052,1
    - Dst: gf_opts_load_option
      Src: /src/gpac/src/utils/os_divers.c:1054,1
    - Dst: getenv
      Src: /src/gpac/src/utils/os_divers.c:1064,1
    - Dst: gf_log_set_tools_levels
      Src: /src/gpac/src/utils/os_divers.c:1065,1
    - Dst: gf_log_reset_file
      Src: /src/gpac/src/utils/os_divers.c:1071,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_divers.c:1073,1
    - Dst: gf_sys_enable_rmtws
      Src: /src/gpac/src/utils/os_divers.c:1074,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/utils/os_divers.c:1077,1
    - Dst: gf_set_progress_callback
      Src: /src/gpac/src/utils/os_divers.c:1078,1
    - Dst: gf_cfg_load_restrict
      Src: /src/gpac/src/utils/os_divers.c:1082,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_divers.c:1092,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_divers.c:1095,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1096,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1097,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 123
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - s32
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 951
    functionDepth: 3
    functionLinenumber: 951
    functionLinenumberEnd: 1101
    functionName: gf_sys_set_args
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - gf_log_reset_file
    - strchr
    - getenv
    - gf_log_set_tools_levels
    - gf_realloc
    - memcpy
    - gf_log_set_tool_level
    - atoi
    - gf_sys_enable_rmtws
    - gf_set_progress_callback
    - strcmp
    - gf_netcap_setup
    - GF_LOG
    - stricmp
    - gf_opts_load_option
    - gf_net_set_ntp_shift
    - gf_opts_get_bool
    - strncmp
    - gf_cfg_load_restrict
    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: 1108
      start: 1103
    functionDepth: 0
    functionLinenumber: 1103
    functionLinenumberEnd: 1108
    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: 1116
      start: 1110
    functionDepth: 0
    functionLinenumber: 1110
    functionLinenumberEnd: 1116
    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: 1122
      start: 1118
    functionDepth: 0
    functionLinenumber: 1118
    functionLinenumberEnd: 1122
    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: 1129
      start: 1125
    functionDepth: 0
    functionLinenumber: 1125
    functionLinenumberEnd: 1129
    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: 1134
      start: 1130
    functionDepth: 0
    functionLinenumber: 1130
    functionLinenumberEnd: 1134
    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: 1141
      start: 1135
    functionDepth: 0
    functionLinenumber: 1135
    functionLinenumberEnd: 1141
    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:1154,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:1156,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:1158,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:1159,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_divers.c:1161,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 1
    argNames:
    - arg
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1142
    functionDepth: 0
    functionLinenumber: 1142
    functionLinenumberEnd: 1167
    functionName: gf_sys_find_global_arg
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - strchr
    - strncmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_sys_find_global_arg(const char *arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1182
      start: 1175
    functionDepth: 0
    functionLinenumber: 1175
    functionLinenumberEnd: 1182
    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: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1191
      start: 1184
    functionDepth: 0
    functionLinenumber: 1184
    functionLinenumberEnd: 1191
    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:1199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1201,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/os_divers.c:1205,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1207,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_divers.c:1208,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1209,1
    - Dst: gf_opts_get_key
      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: rmt_ws_run
      Src: /src/gpac/src/utils/os_divers.c:1213,1
    - Dst: rmt_ws_del
      Src: /src/gpac/src/utils/os_divers.c:1218,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - start
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1226
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1226
    functionName: gf_sys_enable_rmtws
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - rmt_ws_run
    - gf_opts_get_int
    - GF_LOG
    - rmt_ws_new
    - rmt_ws_del
    - gf_rmt_get_settings
    - gf_opts_get_bool
    - gf_opts_get_key
    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:1233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1235,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/os_divers.c:1239,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1241,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/os_divers.c:1242,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/os_divers.c:1243,1
    - Dst: gf_opts_get_key
      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: rmt_ws_run
      Src: /src/gpac/src/utils/os_divers.c:1247,1
    - Dst: rmt_ws_del
      Src: /src/gpac/src/utils/os_divers.c:1252,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - start
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1260
      start: 1228
    functionDepth: 1
    functionLinenumber: 1228
    functionLinenumberEnd: 1260
    functionName: gf_sys_enable_userws
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - rmt_ws_run
    - gf_opts_get_int
    - GF_LOG
    - rmt_ws_new
    - rmt_ws_del
    - gf_rmt_get_settings
    - gf_opts_get_bool
    - gf_opts_get_key
    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:1271,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_divers.c:1273,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: 1278
      start: 1266
    functionDepth: 2
    functionLinenumber: 1266
    functionLinenumberEnd: 1278
    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:1283,1
    - Dst: gf_blob_get_ex
      Src: /src/gpac/src/utils/os_divers.c:1284,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: 1285
      start: 1279
    functionDepth: 3
    functionLinenumber: 1279
    functionLinenumberEnd: 1285
    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:1292,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_divers.c:1294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - blob
    argTypes:
    - GF_Blob*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1287
    functionDepth: 2
    functionLinenumber: 1287
    functionLinenumberEnd: 1296
    functionName: gf_blob_release_ex
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gf_list_find
    - gf_mx_v
    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:1302,1
    - Dst: gf_blob_release_ex
      Src: /src/gpac/src/utils/os_divers.c:1303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - blob_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1298
    functionDepth: 3
    functionLinenumber: 1298
    functionLinenumberEnd: 1304
    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:1311,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_divers.c:1313,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_divers.c:1315,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_divers.c:1317,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_divers.c:1319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - blob
    argTypes:
    - GF_Blob*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1306
    functionDepth: 3
    functionLinenumber: 1306
    functionLinenumberEnd: 1320
    functionName: gf_blob_register
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 9
    functionsReached:
    - sprintf
    - gf_list_del_item
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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:1326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - blob
    argTypes:
    - GF_Blob*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1327
      start: 1322
    functionDepth: 3
    functionLinenumber: 1322
    functionLinenumberEnd: 1327
    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:1334,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_divers.c:1337,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - blob_url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1331
    functionDepth: 2
    functionLinenumber: 1331
    functionLinenumberEnd: 1340
    functionName: gf_blob_from_url
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - sscanf
    - gf_list_find
    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:1348,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: 1352
      start: 1344
    functionDepth: 0
    functionLinenumber: 1344
    functionLinenumberEnd: 1352
    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:1362,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1366,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:1367,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/utils/os_divers.c:1374,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_divers.c:1375,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_divers.c:1376,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_divers.c:1377,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:1378,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_divers.c:1380,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1360
    functionDepth: 6
    functionLinenumber: 1360
    functionLinenumberEnd: 1383
    functionName: gf_sys_get_lang_file
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_file_exists
    - gf_strcat
    - gf_cfg_del
    - gf_opts_default_shared_directory
    - gf_cfg_new
    - strcmp
    - gf_opts_get_key
    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:1389,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_divers.c:1392,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: 1395
      start: 1386
    functionDepth: 7
    functionLinenumber: 1386
    functionLinenumberEnd: 1395
    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:1400,1
    - Dst: gf_opts_get_section_name
      Src: /src/gpac/src/utils/os_divers.c:1406,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_divers.c:1407,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1409,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:1410,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_divers.c:1412,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_divers.c:1413,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:1420,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:1423,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/utils/os_divers.c:1424,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_divers.c:1428,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_divers.c:1430,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1436
      start: 1397
    functionDepth: 1
    functionLinenumber: 1397
    functionLinenumberEnd: 1436
    functionName: gf_sys_refresh_cache
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_section_name
    - gf_opts_del_section
    - gf_file_exists
    - gf_net_get_ntp
    - gf_opts_get_section_count
    - gf_file_delete
    - gf_opts_get_key
    - sscanf
    - strncmp
    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:1452,1
    - Dst: gf_logs_init
      Src: /src/gpac/src/utils/os_divers.c:1456,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/utils/os_divers.c:1458,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: sh4_change_fpscr
      Src: /src/gpac/src/utils/os_divers.c:1466,1
    - Dst: QueryPerformanceFrequency
      Src: /src/gpac/src/utils/os_divers.c:1472,1
    - Dst: QueryPerformanceCounter
      Src: /src/gpac/src/utils/os_divers.c:1473,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1480,1
    - Dst: timeBeginPeriod
      Src: /src/gpac/src/utils/os_divers.c:1484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1487,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1491,1
    - Dst: GetCurrentProcessId
      Src: /src/gpac/src/utils/os_divers.c:1492,1
    - Dst: GlobalMemoryStatus
      Src: /src/gpac/src/utils/os_divers.c:1494,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_divers.c:1498,1
    - Dst: GetModuleHandle
      Src: /src/gpac/src/utils/os_divers.c:1498,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_divers.c:1500,1
    - Dst: GetModuleHandle
      Src: /src/gpac/src/utils/os_divers.c:1500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1505,1
    - Dst: LoadLibrary
      Src: /src/gpac/src/utils/os_divers.c:1507,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/utils/os_divers.c:1508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1510,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1514,1
    - Dst: GetCurrentProcessId
      Src: /src/gpac/src/utils/os_divers.c:1515,1
    - Dst: GetSystemInfo
      Src: /src/gpac/src/utils/os_divers.c:1517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1520,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1527,1
    - Dst: getpid
      Src: /src/gpac/src/utils/os_divers.c:1528,1
    - Dst: sysconf
      Src: /src/gpac/src/utils/os_divers.c:1529,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:1532,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/os_divers.c:1533,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1535,1
    - Dst: setlocale
      Src: /src/gpac/src/utils/os_divers.c:1538,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/os_divers.c:1544,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/utils/os_divers.c:1546,1
    - Dst: gf_init_global_config
      Src: /src/gpac/src/utils/os_divers.c:1548,1
    - Dst: gf_sys_refresh_cache
      Src: /src/gpac/src/utils/os_divers.c:1550,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:1559,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/utils/os_divers.c:1562,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1564,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 80
    argCount: 2
    argNames:
    - mem_tracker_type
    - profile
    argTypes:
    - GF_MemTrackerType
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1571
      start: 1438
    functionDepth: 2
    functionLinenumber: 1438
    functionLinenumberEnd: 1571
    functionName: gf_sys_init
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 7
    functionsReached:
    - gf_sys_refresh_cache
    - QueryPerformanceCounter
    - GetModuleHandle
    - gf_rand_init
    - QueryPerformanceFrequency
    - gf_sys_get_rti
    - GetSystemInfo
    - GlobalMemoryStatus
    - gf_logs_init
    - LoadLibrary
    - gf_mem_enable_tracker
    - gf_log_set_tool_level
    - setlocale
    - getpid
    - gf_mx_new
    - gf_sys_clock
    - gf_sys_clock_high_res
    - GetProcAddress
    - GetCurrentProcessId
    - strcmp
    - sh4_change_fpscr
    - GF_LOG
    - timeBeginPeriod
    - gf_init_global_config
    - memset
    - sysconf
    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:1593,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/utils/os_divers.c:1598,1
    - Dst: gf_sys_enable_rmtws
      Src: /src/gpac/src/utils/os_divers.c:1602,1
    - Dst: gf_sys_enable_userws
      Src: /src/gpac/src/utils/os_divers.c:1603,1
    - Dst: gf_js_delete_runtime
      Src: /src/gpac/src/utils/os_divers.c:1607,1
    - Dst: gf_uninit_global_config
      Src: /src/gpac/src/utils/os_divers.c:1610,1
    - Dst: gf_logs_close
      Src: /src/gpac/src/utils/os_divers.c:1613,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:1615,1
    - Dst: gf_sys_cleanup_help
      Src: /src/gpac/src/utils/os_divers.c:1618,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/os_divers.c:1623,1
    - Dst: gf_log_reset_extras
      Src: /src/gpac/src/utils/os_divers.c:1625,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:1627,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_divers.c:1635,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_divers.c:1638,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_divers.c:1639,1
    - Dst: gf_net_close_capture
      Src: /src/gpac/src/utils/os_divers.c:1642,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_divers.c:1646,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_divers.c:1647,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1650
      start: 1581
    functionDepth: 5
    functionLinenumber: 1581
    functionLinenumberEnd: 1650
    functionName: gf_sys_close
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 9
    functionsReached:
    - fprintf
    - gf_free
    - gf_list_del
    - fflush
    - gf_cfg_del
    - FreeLibrary
    - gf_sys_enable_userws
    - gf_net_close_capture
    - gf_sys_enable_rmtws
    - gf_logs_close
    - gf_log_reset_extras
    - timeEndPeriod
    - gf_sys_cleanup_help
    - gf_uninit_global_config
    - gf_mx_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:1672,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:1678,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:1680,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:1685,1
    - Dst: GlobalMemoryStatus
      Src: /src/gpac/src/utils/os_divers.c:1687,1
    - Dst: GetCurrentPermissions
      Src: /src/gpac/src/utils/os_divers.c:1701,1
    - Dst: SetProcPermissions
      Src: /src/gpac/src/utils/os_divers.c:1702,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1703,1
    - Dst: Thread32First
      Src: /src/gpac/src/utils/os_divers.c:1709,1
    - Dst: GetThreadTimes
      Src: /src/gpac/src/utils/os_divers.c:1712,1
    - Dst: Thread32Next
      Src: /src/gpac/src/utils/os_divers.c:1719,1
    - Dst: CloseToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1721,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1729,1
    - Dst: Heap32ListFirst
      Src: /src/gpac/src/utils/os_divers.c:1730,1
    - Dst: Heap32First
      Src: /src/gpac/src/utils/os_divers.c:1733,1
    - Dst: Heap32Next
      Src: /src/gpac/src/utils/os_divers.c:1736,1
    - Dst: Heap32ListNext
      Src: /src/gpac/src/utils/os_divers.c:1738,1
    - Dst: CloseToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1740,1
    - Dst: SetProcPermissions
      Src: /src/gpac/src/utils/os_divers.c:1742,1
    - Dst: MyGetSystemTimes
      Src: /src/gpac/src/utils/os_divers.c:1751,1
    - Dst: MyQuerySystemInfo
      Src: /src/gpac/src/utils/os_divers.c:1760,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1770,1
    - Dst: Process32First
      Src: /src/gpac/src/utils/os_divers.c:1773,1
    - Dst: OpenProcess
      Src: /src/gpac/src/utils/os_divers.c:1776,1
    - Dst: GetProcessTimes
      Src: /src/gpac/src/utils/os_divers.c:1777,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1785,1
    - Dst: Process32Next
      Src: /src/gpac/src/utils/os_divers.c:1786,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1788,1
    - Dst: OpenProcess
      Src: /src/gpac/src/utils/os_divers.c:1794,1
    - Dst: GetProcessTimes
      Src: /src/gpac/src/utils/os_divers.c:1795,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1798,1
    - Dst: OpenProcess
      Src: /src/gpac/src/utils/os_divers.c:1806,1
    - Dst: MyGetProcessMemoryInfo
      Src: /src/gpac/src/utils/os_divers.c:1807,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1809,1
    - Dst: CreateToolhelp32Snapshot
      Src: /src/gpac/src/utils/os_divers.c:1817,1
    - Dst: Heap32ListFirst
      Src: /src/gpac/src/utils/os_divers.c:1818,1
    - Dst: Heap32First
      Src: /src/gpac/src/utils/os_divers.c:1821,1
    - Dst: Heap32Next
      Src: /src/gpac/src/utils/os_divers.c:1824,1
    - Dst: Heap32ListNext
      Src: /src/gpac/src/utils/os_divers.c:1826,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:1828,1
    - Dst: GlobalMemoryStatus
      Src: /src/gpac/src/utils/os_divers.c:1885,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:1901,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: 1903
      start: 1660
    functionDepth: 1
    functionLinenumber: 1660
    functionLinenumberEnd: 1903
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - SetProcPermissions
    - gf_assert
    - Heap32ListNext
    - CloseHandle
    - MyQuerySystemInfo
    - MyGetProcessMemoryInfo
    - Process32First
    - Heap32ListFirst
    - GetThreadTimes
    - Thread32Next
    - Process32Next
    - GlobalMemoryStatus
    - GetProcessTimes
    - CloseToolhelp32Snapshot
    - OpenProcess
    - memcpy
    - CreateToolhelp32Snapshot
    - MyGetSystemTimes
    - GetCurrentPermissions
    - gf_sys_clock
    - Heap32First
    - Heap32Next
    - Thread32First
    - memset
    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:1949,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:1950,1
    - Dst: sysctl
      Src: /src/gpac/src/utils/os_divers.c:1958,1
    - Dst: host_statistics
      Src: /src/gpac/src/utils/os_divers.c:1962,1
    - Dst: mach_host_self
      Src: /src/gpac/src/utils/os_divers.c:1962,1
    - Dst: sysctl
      Src: /src/gpac/src/utils/os_divers.c:1973,1
    - Dst: task_for_pid
      Src: /src/gpac/src/utils/os_divers.c:1979,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:1979,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1981,1
    - Dst: task_info
      Src: /src/gpac/src/utils/os_divers.c:1985,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:1985,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:1987,1
    - Dst: task_info
      Src: /src/gpac/src/utils/os_divers.c:1998,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:1998,1
    - Dst: task_threads
      Src: /src/gpac/src/utils/os_divers.c:2006,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2008,1
    - Dst: thread_info
      Src: /src/gpac/src/utils/os_divers.c:2014,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2016,1
    - Dst: mach_error_string
      Src: /src/gpac/src/utils/os_divers.c:2016,1
    - Dst: vm_deallocate
      Src: /src/gpac/src/utils/os_divers.c:2027,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2027,1
    - Dst: mach_port_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: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2058,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: 2060
      start: 1930
    functionDepth: 1
    functionLinenumber: 1930
    functionLinenumberEnd: 2060
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - mach_task_self
    - vm_deallocate
    - task_threads
    - GF_LOG
    - gf_sys_clock
    - task_for_pid
    - thread_info
    - mach_error_string
    - task_info
    - mach_port_deallocate
    - mach_host_self
    - memcpy
    - sysctl
    - host_statistics
    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:2082,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2084,1
    - Dst: task_info
      Src: /src/gpac/src/utils/os_divers.c:2089,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2089,1
    - Dst: task_threads
      Src: /src/gpac/src/utils/os_divers.c:2098,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2098,1
    - Dst: thread_info
      Src: /src/gpac/src/utils/os_divers.c:2107,1
    - Dst: vm_deallocate
      Src: /src/gpac/src/utils/os_divers.c:2110,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2110,1
    - Dst: vm_deallocate
      Src: /src/gpac/src/utils/os_divers.c:2129,1
    - Dst: mach_task_self
      Src: /src/gpac/src/utils/os_divers.c:2129,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_divers.c:2130,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2151,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: 2155
      start: 2068
    functionDepth: 1
    functionLinenumber: 2068
    functionLinenumberEnd: 2155
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - mach_task_self
    - vm_deallocate
    - task_threads
    - gf_sys_clock
    - gf_assert
    - thread_info
    - task_info
    - memcpy
    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:2184,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_divers.c:2186,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2188,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2193,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2197,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2198,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2202,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:2211,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2212,1
    - Dst: gf_fflush
      Src: /src/gpac/src/utils/os_divers.c:2214,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2215,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:2222,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:2225,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2242,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2244,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2246,1
    - Dst: getrusage
      Src: /src/gpac/src/utils/os_divers.c:2252,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:2256,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2257,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2259,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_divers.c:2260,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2261,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2265,1
    - Dst: EM_ASM_INT
      Src: /src/gpac/src/utils/os_divers.c:2271,1
    - Dst: mallinfo
      Src: /src/gpac/src/utils/os_divers.c:2272,1
    - Dst: sbrk
      Src: /src/gpac/src/utils/os_divers.c:2273,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_divers.c:2279,1
    - Dst: gf_fgets
      Src: /src/gpac/src/utils/os_divers.c:2282,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_divers.c:2283,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2284,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_divers.c:2286,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2287,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:2292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2294,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:2356,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: 2358
      start: 2175
    functionDepth: 1
    functionLinenumber: 2175
    functionLinenumberEnd: 2358
    functionName: gf_sys_get_rti_os
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - sprintf
    - strchr
    - gf_fclose
    - getrusage
    - gf_fopen
    - GF_LOG
    - gf_sys_clock
    - gf_assert
    - strnicmp
    - gf_fflush
    - sbrk
    - EM_ASM_INT
    - mallinfo
    - gf_fgets
    - memcpy
    - sscanf
    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:2367,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: 2375
      start: 2362
    functionDepth: 2
    functionLinenumber: 2362
    functionLinenumberEnd: 2375
    functionName: gf_sys_get_rti
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 8
    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:2385,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:2389,1
    - Dst: GetTempPath
      Src: /src/gpac/src/utils/os_divers.c:2391,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:2393,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:2395,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:2398,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2400,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_divers.c:2406,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_divers.c:2408,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_divers.c:2408,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:2409,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - do_create
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2413
      start: 2379
    functionDepth: 1
    functionLinenumber: 2379
    functionLinenumberEnd: 2413
    functionName: gf_get_default_cache_directory_ex
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_strcat
    - GetTempPath
    - gf_dir_exists
    - gf_mkdir
    - strlen
    - gf_opts_get_key
    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:2418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2419
      start: 2415
    functionDepth: 2
    functionLinenumber: 2415
    functionLinenumberEnd: 2419
    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:2427,1
    - Dst: GetSystemPowerStatus
      Src: /src/gpac/src/utils/os_divers.c:2435,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: 2443
      start: 2422
    functionDepth: 0
    functionLinenumber: 2422
    functionLinenumberEnd: 2443
    functionName: gf_sys_get_battery_state
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 2
    functionsReached:
    - GetSystemPowerStatus
    - GetSystemPowerStatusEx
    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:2469,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:2473,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2473,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2473,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2473,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_divers.c:2474,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_divers.c:2475,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2479,1
    - Dst: open
      Src: /src/gpac/src/utils/os_divers.c:2489,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_divers.c:2493,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_divers.c:2501,1
    - Dst: fcntl
      Src: /src/gpac/src/utils/os_divers.c:2511,1
    - Dst: ftruncate
      Src: /src/gpac/src/utils/os_divers.c:2518,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:2524,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_divers.c:2525,1
    - Dst: getpid
      Src: /src/gpac/src/utils/os_divers.c:2525,1
    - Dst: write
      Src: /src/gpac/src/utils/os_divers.c:2526,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2527,1
    - Dst: sync
      Src: /src/gpac/src/utils/os_divers.c:2531,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:2533,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_divers.c:2534,1
    - Dst: close
      Src: /src/gpac/src/utils/os_divers.c:2541,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 56
    argCount: 1
    argNames:
    - resourceName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2543
      start: 2466
    functionDepth: 3
    functionLinenumber: 2466
    functionLinenumberEnd: 2543
    functionName: gf_create_PID_file
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - ftruncate
    - gf_free
    - gf_malloc
    - write
    - getpid
    - gf_strcat
    - open
    - gf_get_default_cache_directory
    - snprintf
    - sync
    - strlen
    - gf_strdup
    - close
    - fcntl
    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:2558,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_divers.c:2559,1
    - Dst: CE_CharToWide
      Src: /src/gpac/src/utils/os_divers.c:2563,1
    - Dst: CreateMutex
      Src: /src/gpac/src/utils/os_divers.c:2564,1
    - Dst: CreateMutex
      Src: /src/gpac/src/utils/os_divers.c:2566,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:2568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2573,1
    - Dst: WaitForSingleObject
      Src: /src/gpac/src/utils/os_divers.c:2578,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_divers.c:2581,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2582,1
    - Dst: gf_global_resource_unlock
      Src: /src/gpac/src/utils/os_divers.c:2583,1
    - Dst: gf_create_PID_file
      Src: /src/gpac/src/utils/os_divers.c:2589,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2551
    functionDepth: 4
    functionLinenumber: 2551
    functionLinenumberEnd: 2591
    functionName: GF_GlobalLock * gf_global_resource_lock(const char * resourceName)
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - WaitForSingleObject
    - CE_CharToWide
    - GF_LOG
    - CreateMutex
    - gf_assert
    - gf_global_resource_unlock
    - gf_create_PID_file
    - GetLastError
    - gf_strdup
    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:2603,1
    - Dst: close
      Src: /src/gpac/src/utils/os_divers.c:2604,1
    - Dst: unlink
      Src: /src/gpac/src/utils/os_divers.c:2605,1
    - Dst: perror
      Src: /src/gpac/src/utils/os_divers.c:2606,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2607,1
    - Dst: ReleaseMutex
      Src: /src/gpac/src/utils/os_divers.c:2613,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:2615,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2616,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:2618,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_divers.c:2620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2621,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2626,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:2628,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - lock
    argTypes:
    - GF_GlobalLock*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2630
      start: 2598
    functionDepth: 1
    functionLinenumber: 2598
    functionLinenumberEnd: 2630
    functionName: gf_global_resource_unlock
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - gf_free
    - perror
    - GF_LOG
    - gf_assert
    - CloseHandle
    - ReleaseMutex
    - GetLastError
    - unlink
    - close
    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: 2641
      start: 2637
    functionDepth: 0
    functionLinenumber: 2637
    functionLinenumberEnd: 2641
    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:2651,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - sec
    - frac
    argTypes:
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2661
      start: 2646
    functionDepth: 1
    functionLinenumber: 2646
    functionLinenumberEnd: 2661
    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:2668,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2663
    functionDepth: 0
    functionLinenumber: 2663
    functionLinenumberEnd: 2673
    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: 2695
      start: 2675
    functionDepth: 0
    functionLinenumber: 2675
    functionLinenumberEnd: 2695
    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:2705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - ntp
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2716
      start: 2697
    functionDepth: 0
    functionLinenumber: 2697
    functionLinenumberEnd: 2716
    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: 2746
      start: 2725
    functionDepth: 0
    functionLinenumber: 2725
    functionLinenumberEnd: 2746
    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:2756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2765
      start: 2749
    functionDepth: 0
    functionLinenumber: 2749
    functionLinenumberEnd: 2765
    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:2784,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/utils/os_divers.c:2785,1
    - Dst: localtime
      Src: /src/gpac/src/utils/os_divers.c:2786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2791
      start: 2769
    functionDepth: 1
    functionLinenumber: 2769
    functionLinenumberEnd: 2791
    functionName: gf_net_get_timezone
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - time
    - gf_gmtime
    - localtime
    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:2801,1
    - Dst: localtime
      Src: /src/gpac/src/utils/os_divers.c:2802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2805
      start: 2793
    functionDepth: 0
    functionLinenumber: 2793
    functionLinenumberEnd: 2805
    functionName: gf_net_time_is_dst
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - time
    - localtime
    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: 2812
      start: 2809
    functionDepth: 0
    functionLinenumber: 2809
    functionLinenumberEnd: 2812
    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:2823,1
    - Dst: leap_year
      Src: /src/gpac/src/utils/os_divers.c:2827,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2837
      start: 2813
    functionDepth: 1
    functionLinenumber: 2813
    functionLinenumberEnd: 2837
    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:2842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2843
      start: 2840
    functionDepth: 0
    functionLinenumber: 2840
    functionLinenumberEnd: 2843
    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:2849,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2850
      start: 2847
    functionDepth: 0
    functionLinenumber: 2847
    functionLinenumberEnd: 2850
    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:2857,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2861
      start: 2853
    functionDepth: 0
    functionLinenumber: 2853
    functionLinenumberEnd: 2861
    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:2868,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tm
    argTypes:
    - struct tm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2866
    functionDepth: 0
    functionLinenumber: 2866
    functionLinenumberEnd: 2869
    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:2888,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_divers.c:2895,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2897,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2900,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2902,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2904,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2906,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2909,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2912,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2915,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:2918,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:2921,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2928,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: memset
      Src: /src/gpac/src/utils/os_divers.c:2943,1
    - Dst: SystemTimeToFileTime
      Src: /src/gpac/src/utils/os_divers.c:2950,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:2962,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_divers.c:2963,1
    - Dst: strcmp
      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: gf_mktime_utc
      Src: /src/gpac/src/utils/os_divers.c:2972,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 107
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2993
      start: 2873
    functionDepth: 2
    functionLinenumber: 2873
    functionLinenumberEnd: 2993
    functionName: gf_net_parse_date
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 5
    functionsReached:
    - strchr
    - gf_mktime_utc
    - GF_LOG
    - SystemTimeToFileTime
    - strcmp
    - strlen
    - memset
    - sscanf
    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:3004,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_divers.c:3008,1
    - Dst: SystemTimeToFileTime
      Src: /src/gpac/src/utils/os_divers.c:3015,1
    - Dst: gf_mktime_utc
      Src: /src/gpac/src/utils/os_divers.c:3025,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: 3038
      start: 2995
    functionDepth: 2
    functionLinenumber: 2995
    functionLinenumberEnd: 3038
    functionName: gf_net_get_utc_ts
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - memset
    - SystemTimeToFileTime
    - gf_mktime_utc
    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: 3054
      start: 3040
    functionDepth: 0
    functionLinenumber: 3040
    functionLinenumberEnd: 3054
    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:3063,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3070
      start: 3056
    functionDepth: 0
    functionLinenumber: 3056
    functionLinenumberEnd: 3070
    functionName: gf_net_get_utc
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 19
    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:3079,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3080,1
    - Dst: isalnum
      Src: /src/gpac/src/utils/os_divers.c:3087,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:3091,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3092,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3104,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - string
    - value
    argTypes:
    - char*
    - bin128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3108
      start: 3074
    functionDepth: 1
    functionLinenumber: 3074
    functionLinenumberEnd: 3108
    functionName: gf_bin128_parse
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 4
    functionsReached:
    - sprintf
    - GF_LOG
    - strnicmp
    - isalnum
    - strlen
    - sscanf
    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:3118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3126,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_divers.c:3131,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/os_divers.c:3135,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3138,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:3139,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 3
    argNames:
    - file
    - out_data
    - out_size
    argTypes:
    - FILE*
    - u8**
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3146
      start: 3111
    functionDepth: 1
    functionLinenumber: 3111
    functionLinenumberEnd: 3146
    functionName: gf_file_load_data_filep
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_fsize
    - gf_fread
    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:3152,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:3155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_divers.c:3158,1
    - Dst: gf_file_load_data_filep
      Src: /src/gpac/src/utils/os_divers.c:3161,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_divers.c:3162,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: 3164
      start: 3148
    functionDepth: 2
    functionLinenumber: 3148
    functionLinenumberEnd: 3164
    functionName: gf_file_load_data
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 18
    functionsReached:
    - gf_fclose
    - gf_file_exists
    - gf_fopen
    - GF_LOG
    - 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:3173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3174
      start: 3170
    functionDepth: 0
    functionLinenumber: 3170
    functionLinenumberEnd: 3174
    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:3178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3179
      start: 3175
    functionDepth: 0
    functionLinenumber: 3175
    functionLinenumberEnd: 3179
    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:3185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3186
      start: 3182
    functionDepth: 0
    functionLinenumber: 3182
    functionLinenumberEnd: 3186
    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:3190,1
    - Dst: CloseHandle
      Src: /src/gpac/src/utils/os_divers.c:3193,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3197
      start: 3187
    functionDepth: 0
    functionLinenumber: 3187
    functionLinenumberEnd: 3197
    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:3205,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/utils/os_divers.c:3205,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3206,1
    - Dst: open
      Src: /src/gpac/src/utils/os_divers.c:3211,1
    - Dst: write
      Src: /src/gpac/src/utils/os_divers.c:3213,1
    - Dst: close
      Src: /src/gpac/src/utils/os_divers.c:3214,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_divers.c:3220,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_divers.c:3222,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_divers.c:3222,1
    - Dst: fwrite
      Src: /src/gpac/src/utils/os_divers.c:3225,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_divers.c:3226,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/utils/os_divers.c:3235,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3238,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_divers.c:3239,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/utils/os_divers.c:3241,1
    - Dst: gf_sys_check_process_id
      Src: /src/gpac/src/utils/os_divers.c:3243,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/utils/os_divers.c:3246,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 27
    argCount: 1
    argNames:
    - lockname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3249
      start: 3200
    functionDepth: 3
    functionLinenumber: 3200
    functionLinenumberEnd: 3249
    functionName: GF_LockStatus::gf_sys_create_lockfile
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - fopen
    - sprintf
    - fclose
    - gf_free
    - write
    - gf_file_exists
    - gf_file_load_data
    - open
    - gf_sys_check_process_id
    - sscanf
    - fwrite
    - gf_sys_get_process_id
    - gf_file_delete
    - strlen
    - close
    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:3261,1
    - Dst: tcgetattr
      Src: /src/gpac/src/utils/os_divers.c:3264,1
    - Dst: old::old
      Src: /src/gpac/src/utils/os_divers.c:3267,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:3271,1
    - Dst: getchar
      Src: /src/gpac/src/utils/os_divers.c:3274,1
    - Dst: tcsetattr
      Src: /src/gpac/src/utils/os_divers.c:3275,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3277
      start: 3253
    functionDepth: 1
    functionLinenumber: 3253
    functionLinenumberEnd: 3277
    functionName: gf_getch
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - tcgetattr
    - gf_sys_is_cov_mode
    - tcsetattr
    - old::old
    - getchar
    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:3283,1
    - Dst: getchar
      Src: /src/gpac/src/utils/os_divers.c:3285,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3279
    functionDepth: 1
    functionLinenumber: 3279
    functionLinenumberEnd: 3286
    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:3295,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_divers.c:3298,1
    - Dst: perror
      Src: /src/gpac/src/utils/os_divers.c:3299,1
    - Dst: gf_getch
      Src: /src/gpac/src/utils/os_divers.c:3304,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_divers.c:3307,1
    - Dst: fputc
      Src: /src/gpac/src/utils/os_divers.c:3311,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_divers.c:3314,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 3
    argNames:
    - line
    - maxSize
    - showContent
    argTypes:
    - char*
    - int
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3319
      start: 3289
    functionDepth: 1
    functionLinenumber: 3289
    functionLinenumberEnd: 3319
    functionName: gf_read_line_input
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 3
    functionsReached:
    - fprintf
    - perror
    - fflush
    - gf_getch
    - gf_sys_is_cov_mode
    - fputc
    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:3328,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_divers.c:3330,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3332,1
    - Dst: gf_cfg_get_key
      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: strlen
      Src: /src/gpac/src/utils/os_divers.c:3335,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_divers.c:3335,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3336,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3342,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_divers.c:3346,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:3350,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_divers.c:3352,1
    - Dst: gf_sha256_csum
      Src: /src/gpac/src/utils/os_divers.c:3354,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_divers.c:3361,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/os_divers.c:3361,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_divers.c:3362,1
    - Dst: gf_cfg_save
      Src: /src/gpac/src/utils/os_divers.c:3363,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3365,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 37
    argCount: 2
    argNames:
    - user
    - password
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3369
      start: 3322
    functionDepth: 6
    functionLinenumber: 3322
    functionLinenumberEnd: 3369
    functionName: gf_creds_check_password
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 1
    functionsReached:
    - sprintf
    - gf_cfg_set_key
    - gf_cfg_del
    - gf_sha256_csum
    - gf_cfg_new
    - gf_net_get_utc
    - gf_cfg_get_key
    - strlen
    - gf_opts_get_key
    - sscanf
    - memcpy
    - gf_cfg_save
    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:3378,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_divers.c:3384,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_divers.c:3386,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_divers.c:3388,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_divers.c:3390,1
    - Dst: gf_token_find_word
      Src: /src/gpac/src/utils/os_divers.c:3391,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_divers.c:3393,1
    - Dst: gf_token_find_word
      Src: /src/gpac/src/utils/os_divers.c:3394,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3395,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_divers.c:3399,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - username
    - users
    - groups
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3401
      start: 3373
    functionDepth: 6
    functionLinenumber: 3373
    functionLinenumberEnd: 3401
    functionName: gf_creds_check_membership
    functionSourceFile: /src/gpac/src/utils/os_divers.c
    functionUses: 0
    functionsReached:
    - gf_cfg_del
    - gf_cfg_get_key_count
    - gf_cfg_new
    - gf_cfg_get_key_name
    - gf_token_find_word
    - gf_cfg_get_key
    - 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:
    - ANGLE_DEG_TO_RAD
    - GF_PAD_ROUND
    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_prenorm
    - gf_trig_pseudo_polarize
    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:
    - gppDiv_16_32s
    - gppInv_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:
    - gppSqrtLP_16_32s
    - gppSqrtHP_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:
    - gppCosLP_16_32s
    - gppCosHP_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:
    - gppSinCosLP_16_32s
    - gf_divfix
    - 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:
    - gppSqrtLP_16_32s
    - gppSqrtHP_16_32s
    - ABS
    - gppSquare_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_prenorm
    - GF_SIGN_LONG
    - gf_trig_pseudo_rotate
    - gf_trig_downscale
    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_prenorm
    - gf_trig_pseudo_polarize
    - 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_prenorm
    - gf_trig_pseudo_polarize
    - 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:
    - FIX2FLT
    - FLT2FIX
    - acos
    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:
    - asin
    - FIX2FLT
    - FLT2FIX
    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:
    - exit
    - ABS
    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_copy
    - gf_mulfix
    - gf_mx2d_is_identity
    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_copy
    - gf_mulfix
    - gf_mx2d_is_identity
    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_init
    - gf_mx2d_add_matrix
    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_init
    - gf_mx2d_add_translation
    - gf_cos
    - gf_sin
    - gf_mx2d_add_matrix
    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_init
    - gf_mx2d_add_matrix
    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_init
    - gf_mx2d_add_rotation
    - gf_mx2d_add_matrix
    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_init
    - gf_mx2d_add_matrix
    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_mx2d_init
    - gf_tan
    - 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_mx2d_init
    - gf_tan
    - 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:
    - gf_mx2d_init
    - FIX2FLT
    - FLT2FIX
    - gf_divfix
    - gf_mx2d_copy
    - gf_mulfix
    - gf_mx2d_is_identity
    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:
    - gf_cos
    - gf_divfix
    - ABS
    - gf_mulfix
    - memcpy
    - gf_atan2
    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:
    - gf_mx2d_apply_point
    - MIN
    - MAX
    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:
    - gf_ceil
    - gf_floor
    - FIX2INT
    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:
    - FIX2FLT
    - FLT2FIX
    - gppVec3DLength_16_32s
    - VEC_HIGH_MAG
    - gf_sqrt
    - sqrt
    - gf_mulfix
    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:
    - FIX2FLT
    - FLT2FIX
    - VEC_HIGH_MAG
    - gf_mulfix
    - gppVec3DLengthSq_16_32s
    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:
    - FIX2FLT
    - FLT2FIX
    - VEC_HIGH_MAG
    - gppVec3DDot_16_32s
    - gf_mulfix
    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_divfix
    - gf_vec_len
    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:
    - gppVec3DCross_16_32s
    - FIX2FLT
    - FLT2FIX
    - VEC_HIGH_MAG
    - gf_mulfix
    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_mulfix
    - gf_mx_init
    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_mulfix
    - gf_mx_init
    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_cos
    - gf_mx_add_matrix
    - gf_divfix
    - gf_sqrt
    - gf_mx_init
    - gf_sin
    - gf_mulfix
    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:
    - gf_mx2d_init
    - FIX2FLT
    - FLT2FIX
    - gf_mx_copy
    - gf_mx_init
    - gf_muldiv
    - gf_assert
    - gf_mulfix
    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_copy
    - gf_mx_init
    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: 2
    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_cos
    - gf_divfix
    - gf_mx_init
    - gf_muldiv
    - gf_sin
    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_cos
    - gf_divfix
    - gf_mx_init
    - gf_muldiv
    - gf_sin
    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_mx_init
    - gf_vec_norm
    - gf_vec_diff
    - gf_vec_cross
    - gf_mx_add_translation
    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_sqrt
    - gf_assert
    - atan
    - memcpy
    - pow
    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_divfix
    - gf_vec_norm
    - gf_quat_from_matrix
    - gf_assert
    - gf_vec_dot
    - gf_mulfix
    - gf_vec_len
    - gf_quat_to_rotation
    - memcpy
    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_bbox_refresh
    - gf_mx_apply_vec
    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_bbox_refresh
    - gf_mx_apply_vec
    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_bbox_refresh
    - gf_divfix
    - 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_mulfix
    - gf_mx_init
    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:
    - SWAP_ROWS
    - gf_invfix
    - gf_divfix
    - gf_mx_copy
    - gf_mx_init
    - ABS
    - 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_divfix
    - gf_vec_add
    - gf_vec_scale
    - gf_vec_dot
    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_cross
    - gf_vec_lensq
    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_divfix
    - gf_vec_scale
    - gf_vec_dot
    - ABS
    - gf_mulfix
    - gf_vec_len
    - gf_vec_cross
    - gf_vec_add
    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_diff
    - gf_vec_add
    - gf_vec_norm
    - 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_vec_scale
    - gf_divfix
    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_sqrt
    - gf_vec_scale
    - gf_vec_dot
    - ABS
    - gf_vec_rev
    - gf_vec_len
    - gf_vec_diff
    - gf_mulfix
    - gf_vec_add
    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_divfix
    - gf_vec_dot
    - ABS
    - gf_vec_diff
    - gf_vec_cross
    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_vec_cross
    - gf_divfix
    - 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_invfix
    - gf_mulfix
    - 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_divfix
    - gf_acos
    - gf_sin
    - gf_vec_norm
    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_cos
    - gf_sqrt
    - gf_muldiv
    - gf_sin
    - gf_mulfix
    - gf_quat_norm
    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_acos
    - gf_quat_from_rotation
    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_divfix
    - gf_acos
    - 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_scale
    - gf_vec_len
    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_refresh
    - gf_bbox_grow_point
    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_norm
    - gf_vec_scale
    - gf_vec_dot
    - gf_mx_apply_vec
    - gf_vec_diff
    - gf_vec_add
    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:
    - bidi_get_class
    - gf_utf8_is_right_to_left
    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_load_file
    - RAND_file_name
    - RAND_status
    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:
    - GF_LOG
    - nghttp2_select_next_protocol
    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:
    - init_prng
    - SSLeay_add_ssl_algorithms
    - GF_LOG
    - RAND_status
    - SSL_load_error_strings
    - SSLeay_add_all_algorithms
    - SSL_library_init
    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:
    - GF_LOG
    - tls_rt_get_name
    - snprintf
    - SSL_alert_desc_string_long
    - 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: gf_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: gf_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:
    - SSL_CTX_load_verify_locations
    - gf_ssl_init_lib
    - X509_get_default_cert_file_env
    - getenv
    - SSL_CTX_free
    - SSL_CTX_set_mode
    - gf_mx_v
    - SSL_CTX_set_next_proto_select_cb
    - X509_get_default_cert_file
    - ngtcp2_crypto_quictls_configure_client_context
    - SSLv23_client_method
    - gf_file_exists
    - SSL_CTX_set_msg_callback
    - gf_log_tool_level_on
    - gf_mx_p
    - SSL_CTX_set_default_verify_paths
    - strlen
    - GF_LOG
    - gf_strcat
    - SSL_CTX_set_options
    - SSL_CTX_new
    - SSL_CTX_set_alpn_protos
    - TLS_client_method
    - SSL_CTX_set_verify
    - gf_opts_get_bool
    - gf_opts_get_key
    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_conn_get_client_chosen_version
    - nghttp2_select_next_protocol
    - ngtcp2_crypto_conn_ref*::get_conn
    - SSL_get_app_data
    - strncmp
    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:
    - SSL_SESSION_set1_ticket_appdata
    - SSL_get0_session
    - ngtcp2_conn_get_negotiated_version
    - ngtcp2_crypto_conn_ref*::get_conn
    - SSL_get_app_data
    - htonl
    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:
    - ngtcp2_conn_get_client_chosen_version
    - SSL_SESSION_get0_ticket_appdata
    - ntohl
    - ngtcp2_crypto_conn_ref*::get_conn
    - memcpy
    - SSL_get_app_data
    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:
    - SSL_CTX_set1_groups_list
    - SSL_CTX_set_alpn_select_cb
    - SSL_CTX_set_ecdh_auto
    - SSL_CTX_use_certificate_chain_file
    - SSL_CTX_set_max_early_data
    - SSL_CTX_set_session_ticket_cb
    - SSL_CTX_free
    - SSL_CTX_set_mode
    - memcpy
    - SSL_CTX_use_PrivateKey_file
    - TLS_server_method
    - SSL_CTX_set_msg_callback
    - SSL_CTX_set_ciphersuites
    - gf_log_tool_level_on
    - SSL_CTX_set_default_verify_paths
    - SSL_CTX_check_private_key
    - SSL_CTX_set_next_protos_advertised_cb
    - GF_LOG
    - SSL_CTX_set_options
    - SSL_CTX_new
    - ERR_print_errors_fp
    - ngtcp2_crypto_quictls_configure_server_context
    - gf_opts_get_bool
    - SSLv23_server_method
    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:
    - gf_sk_get_handle
    - GF_LOG
    - ERR_print_errors_fp
    - SSL_free
    - gf_log_tool_level_on
    - SSL_accept
    - SSL_set_fd
    - SSL_shutdown
    - SSL_new
    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_opts_get_bool
    - ERR_error_string
    - SSL_get_verify_result
    - GF_LOG
    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:
    - SSL_get_error
    - GF_LOG
    - SSL_write
    - SSL_load_error_strings
    - ERR_get_error
    - ERR_error_string_n
    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:
    - memcmp
    - gf_assert
    - SSL_get0_alpn_selected
    - SSL_get0_next_proto_negotiated
    - h2_initialize_session
    - SSL_set_mode
    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:
    - gf_dm_ssl_init
    - gf_dm_disconnect
    - SSL_get0_alpn_selected
    - SSL_get0_next_proto_negotiated
    - SSL_set_connect_state
    - gf_dm_sess_notify_state
    - gf_sk_get_handle
    - SSL_load_error_strings
    - h2_initialize_session
    - SSL_ctrl
    - ERR_error_string_n
    - SSL_new
    - SSL_set_alpn_protos
    - SSL_connect
    - SSL_set_quic_method
    - SSL_get_error
    - SET_LAST_ERR
    - memcmp
    - gf_sys_clock_high_res
    - dm_sess_sk_del
    - SSL_free
    - gf_ssl_check_cert
    - SSL_set_fd
    - ERR_get_error
    - GF_LOG
    - SSL_set_mode
    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: gf_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: gf_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_strcpy
    - gf_free
    - gf_fclose
    - GF_LOG
    - gf_fopen
    - gf_dynstrcat
    - gf_base64_encode
    - gf_fread
    - strlen
    - gf_crypt_init
    - gf_opts_save
    - gf_crypt_open
    - gf_opts_get_key
    - gf_crypt_close
    - gf_crypt_encrypt
    - gf_opts_set_key
    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: gf_strcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:947,1
    - Dst: gf_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_strcpy
    - gf_list_count
    - gf_fclose
    - gf_crypt_decrypt
    - gf_user_credentials_save_digest
    - gf_fopen
    - GF_SAFEALLOC
    - strrchr
    - strcmp
    - gf_list_get
    - gf_fread
    - gf_crypt_init
    - strlen
    - gf_opts_get_key
    - gf_crypt_close
    - gf_crypt_open
    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: memcpy
      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:
    - gf_user_credentials_save_digest
    - memcpy
    - strlen
    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: gf_strcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:1023,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/downloader_ssl.c:1027,1
    - Dst: gf_user_credentials_save_digest
      Src: /src/gpac/src/utils/downloader_ssl.c:1029,1
    - Dst: gf_user_credentials_ask_password
      Src: /src/gpac/src/utils/downloader_ssl.c:1031,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ssl.c:1032,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_ssl.c:1034,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ssl.c:1035,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 6
    argNames:
    - dm
    - secure
    - server_name
    - username
    - password
    - valid
    argTypes:
    - GF_DownloadManager*
    - Bool
    - char*
    - char*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1040
      start: 1007
    functionDepth: 4
    functionLinenumber: 1007
    functionLinenumberEnd: 1040
    functionName: gf_user_credentials_register
    functionSourceFile: /src/gpac/src/utils/downloader_ssl.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - gf_free
    - gf_user_credentials_save_digest
    - GF_LOG
    - gf_list_del_item
    - gf_assert
    - gf_user_credentials_ask_password
    - GF_SAFEALLOC
    - gf_list_insert
    - gf_user_credentials_find_for_site
    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:
    - socket
    - closesocket
    - WSAStartup
    - WSACleanup
    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: gf_strcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:199,1
    - Dst: strlen
      Src: /src/gpac/src/utils/symbian_net.cpp:201,1
    - Dst: gf_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: 1
    functionLinenumber: 182
    functionLinenumberEnd: 208
    functionName: gf_sk_get_ipv6_addr
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 6
    functionsReached:
    - gf_strcpy
    - sprintf
    - getaddrinfo
    - strlen
    - memset
    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: gf_strlcpy
      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: gf_strlcpy
      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: 1
    functionLinenumber: 228
    functionLinenumberEnd: 249
    functionName: gf_sk_get_local_ip
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 2
    functionsReached:
    - getnameinfo
    - getsockname
    - gf_strlcpy
    - inet_ntoa
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_get_local_ip(GF_Socket *sock, char buffer[GF_MAX_IP_NAME_LEN])
  - 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: 4
    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: 6
    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: 8
    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:
    - setsockopt
    - closesocket
    - memcpy
    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: 20
    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:
    - socket
    - freeaddrinfo
    - connect
    - gf_sk_get_ipv6_addr
    - gf_sk_set_block_mode
    - htons
    - gf_sk_gf_free
    - gf_gethostbyname
    - closesocket
    - memcpy
    - inet_addr
    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: 8
    functionsReached:
    - gethostname
    - bind
    - gf_net_has_ipv6
    - socket
    - closesocket
    - freeaddrinfo
    - gf_sk_get_ipv6_addr
    - setsockopt
    - gf_sk_set_block_mode
    - gf_gethostbyname
    - htons
    - memset
    - memcpy
    - inet_addr
    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: 6
    functionsReached:
    - FD_SET
    - select
    - sendto
    - send
    - FD_ISSET
    - 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: 10
    functionsReached:
    - IN_MULTICAST
    - IN6_IS_ADDR_MULTICAST
    - freeaddrinfo
    - gf_sk_get_ipv6_addr
    - ntohl
    - htonl
    - inet_addr
    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: 4
    functionsReached:
    - gf_sk_is_multicast_address
    - bind
    - socket
    - closesocket
    - freeaddrinfo
    - gf_sk_get_ipv6_addr
    - setsockopt
    - gf_sk_set_block_mode
    - htons
    - gf_sk_ipv6_set_remote_address
    - memcpy
    - htonl
    - inet_addr
    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: 6
    functionsReached:
    - FD_SET
    - select
    - GF_LOG
    - recv
    - FD_ISSET
    - FD_ZERO
    - recvfrom
    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: 0
    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: 1
    functionsReached:
    - FD_SET
    - select
    - gf_malloc
    - accept
    - memset
    - memcpy
    - FD_ISSET
    - 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: 2
    functionsReached:
    - ntohs
    - getsockname
    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: 1
    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: gf_strlcpy
      Src: /src/gpac/src/utils/symbian_net.cpp:1016,1
    - Dst: gf_strlcpy
      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: 1
    functionLinenumber: 1008
    functionLinenumberEnd: 1022
    functionName: gf_sk_get_remote_address
    functionSourceFile: /src/gpac/src/utils/symbian_net.cpp
    functionUses: 1
    functionsReached:
    - getnameinfo
    - gf_strlcpy
    - inet_ntoa
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_sk_get_remote_address(GF_Socket *sock, char buf[GF_MAX_IP_NAME_LEN])
  - 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_SET
    - select
    - freeaddrinfo
    - sendto
    - gf_sk_get_ipv6_addr
    - htons
    - gf_gethostbyname
    - memcpy
    - FD_ISSET
    - FD_ZERO
    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_SET
    - select
    - recv
    - FD_ISSET
    - 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_SET
    - select
    - send
    - FD_ISSET
    - 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:
    - R
    - P
    - GET_UINT32_BE
    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: 160
    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: 44
    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:
    - PUT_UINT32_BE
    - gf_free
    - 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:
    - PUT_UINT32_BE
    - SHA1PadMessage
    - 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_sha1_starts
    - gf_fseek
    - gf_ftell
    - gf_fread
    - gf_sha1_update
    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_fclose
    - gf_fopen
    - gf_sha1_csum
    - gf_sha1_file_ptr
    - gf_blob_get
    - gf_blob_release
    - strncmp
    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_finish
    - memset
    - gf_sha1_update
    - gf_sha1_starts
    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: gf_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:
    - gf_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: 1
    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:
    - sprintf
    - gf_pixel_fmt_is_yuv
    - gf_dynstrcat
    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:
    - GL_CHECK_ERR
    - glEnable
    - GF_LOG
    - glGenBuffers
    - gf_pixel_get_size_info
    - glGenTextures
    - glBufferData
    - glBindBuffer
    - glTexParameteri
    - glDisable
    - gf_4cc_to_str
    - glBindTexture
    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:
    - GL_CHECK_ERR
    - glEnable
    - glTexSubImage2D
    - glUnmapBuffer
    - glMapBuffer
    - glTexImage2D
    - glBindBuffer
    - GF_FilterFrameInterface*::get_plane
    - glPixelTransferi
    - glPixelStorei
    - memcpy
    - glBindTexture
    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_ARRAY_LENGTH
    - gf_mx_init
    - GF_LOG
    - gf_mx_add_scale
    - gf_mx_transpose
    - gf_mx_add_translation
    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:
    - sprintf
    - GL_CHECK_ERR
    - glTexEnvf
    - glEnable
    - gf_mx_init
    - GF_LOG
    - glUniformMatrix4fv
    - glBindTexture
    - glClientActiveTexture
    - glGetUniformLocation
    - glTexParameteri
    - GF_GLTextureWrapper*::frame_ifce::get_gl_texture
    - glUniform1f
    - glActiveTexture
    - get_yuv_color_matrix
    - glUniform1i
    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_utf8_to_wcs
    - RemoveDirectory
    - gf_free
    - CE_CharToWide
    - GF_LOG
    - _wrmdir
    - rmdir
    - GetLastError
    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_utf8_to_wcs
    - _wmkdir
    - strchr
    - gf_free
    - CE_CharToWide
    - GF_LOG
    - mkdir
    - CreateDirectory
    - GetLastError
    - strcmp
    - strncmp
    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_utf8_to_wcs
    - gf_free
    - GetFileAttributes
    - CE_CharToWide
    - stat
    - GetFileAttributesW
    - S_ISDIR
    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_rmdir
    - gf_file_delete
    - gf_dir_cleanup
    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_add
    - gf_list_find
    - gf_list_new
    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_del
    - gf_list_count
    - gf_list_del_item
    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_utf8_to_wcs
    - gf_free
    - CE_CharToWide
    - GF_LOG
    - gf_fileio_file_delete
    - DeleteFile
    - remove
    - DeleteFileW
    - strncmp
    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:
    - gf_malloc
    - strlen
    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_utf8_to_wcs
    - gf_free
    - gf_fclose
    - gf_fileio_from_url
    - _waccess
    - gf_fopen
    - gf_dir_exists
    - gf_fileio_open_url
    - gf_fileio_resource_url
    - GetFileAttributesW
    - access
    - strncmp
    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_utf8_to_wcs
    - MoveFile
    - gf_free
    - rename
    - posix_spawn
    - CE_CharToWide
    - GF_LOG
    - gf_error_to_string
    - gf_sanetize_single_quoted_string
    - waitpid
    - MoveFileW
    - snprintf
    - system
    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_utf8_to_wcs
    - gf_free
    - CE_CharToWide
    - GF_LOG
    - FindFirstFile
    - _wstat64
    - FindClose
    - GetLastError
    - stat
    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: 4
    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_list_get
    - gf_mx_p
    - 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_v
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_list_new
    - gf_strdup
    - 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_list_count
    - fclose
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_mx_v
    - gf_file_delete
    - gf_mx_p
    - gf_list_get
    - gf_list_rem
    - gf_error_to_string
    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_rand
    - gf_rand_init
    - GetTempFileName
    - tmpfile
    - GetTempPath
    - gf_fopen
    - gf_wcs_to_utf8
    - _wfopen
    - _wtempnam
    - gf_free
    - TEXT
    - GF_LOG
    - GetEnvironmentVariableW
    - _getpid
    - gf_register_file_handle
    - GetLastError
    - free
    - gf_strdup
    - gf_unregister_file_handle
    - swprintf
    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:
    - sprintf
    - strchr
    - gf_free
    - gf_rand
    - gf_file_exists
    - GF_LOG
    - gf_file_temp_os
    - gf_sys_clock_high_res
    - gf_register_file_handle
    - gf_sys_get_process_id
    - gf_fopen_ex
    - gf_dynstrcat
    - strlen
    - gf_opts_get_key
    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: 1074
      start: 1064
    functionDepth: 0
    functionLinenumber: 1064
    functionLinenumberEnd: 1074
    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: 1089
      start: 1076
    functionDepth: 0
    functionLinenumber: 1076
    functionLinenumberEnd: 1089
    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: 1102
      start: 1091
    functionDepth: 0
    functionLinenumber: 1091
    functionLinenumberEnd: 1102
    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:1117,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1118,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1118,1
    - Dst: gf_unregister_file_handle
      Src: /src/gpac/src/utils/os_file.c:1125,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1126,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1127,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/utils/os_file.c:1128,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1131,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1136,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1140,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/utils/os_file.c:1141,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1141,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/utils/os_file.c:1156,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/utils/os_file.c:1157,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: 1162
      start: 1115
    functionDepth: 4
    functionLinenumber: 1115
    functionLinenumberEnd: 1162
    functionName: gfio_blob_open
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_crc_32
    - gf_fileio_from_mem
    - gf_fileio_del
    - strcmp
    - strlen
    - gf_fileio_get_udta
    - gf_unregister_file_handle
    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:1166,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - fileio
    - offset
    - whence
    argTypes:
    - GF_FileIO*
    - u64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1164
    functionDepth: 1
    functionLinenumber: 1164
    functionLinenumberEnd: 1185
    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:1188,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_file.c:1192,1
    - Dst: assert
      Src: /src/gpac/src/utils/os_file.c:1194,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: 1193
        line_start: 1193
        source_file: /src/gpac/src/utils/os_file.c
    constantsTouched: []
    func_position:
      end: 1197
      start: 1186
    functionDepth: 1
    functionLinenumber: 1186
    functionLinenumberEnd: 1197
    functionName: gfio_blob_read
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - assert
    - memcpy
    - 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:1200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1198
    functionDepth: 1
    functionLinenumber: 1198
    functionLinenumberEnd: 1202
    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:1205,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1203
    functionDepth: 1
    functionLinenumber: 1203
    functionLinenumberEnd: 1208
    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:1212,1
    - Dst: memchr
      Src: /src/gpac/src/utils/os_file.c:1217,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_file.c:1223,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - fileio
    - ptr
    - size
    argTypes:
    - GF_FileIO*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1210
    functionDepth: 1
    functionLinenumber: 1210
    functionLinenumberEnd: 1227
    functionName: gfio_blob_gets
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - memchr
    - memcpy
    - 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:1247,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1260,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/utils/os_file.c:1264,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_file.c:1265,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1266,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:1269,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/os_file.c:1270,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/os_file.c:1271,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1272,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: 1275
      start: 1231
    functionDepth: 1
    functionLinenumber: 1231
    functionLinenumberEnd: 1275
    functionName: gf_fileio_new
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 4
    functionsReached:
    - sprintf
    - gf_sys_clock
    - gf_mx_v
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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: 1281
      start: 1277
    functionDepth: 0
    functionLinenumber: 1277
    functionLinenumberEnd: 1281
    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: 1287
      start: 1283
    functionDepth: 0
    functionLinenumber: 1283
    functionLinenumberEnd: 1287
    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:1293,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/os_file.c:1294,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/os_file.c:1298,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/os_file.c:1299,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1302,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1304,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1305,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1306,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1307,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - gfio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1289
    functionDepth: 3
    functionLinenumber: 1289
    functionLinenumberEnd: 1310
    functionName: gf_fileio_del
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_mx_p
    - gf_mx_v
    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: 1316
      start: 1312
    functionDepth: 0
    functionLinenumber: 1312
    functionLinenumberEnd: 1316
    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:1329,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: 1330
      start: 1318
    functionDepth: 0
    functionLinenumber: 1318
    functionLinenumberEnd: 1330
    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:1336,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - gfio
    - buffer
    - nb_bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1332
    functionDepth: 0
    functionLinenumber: 1332
    functionLinenumberEnd: 1338
    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:1344,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - gfio
    - buffer
    - nb_bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1340
    functionDepth: 0
    functionLinenumber: 1340
    functionLinenumberEnd: 1345
    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:1351,1
    - Dst: va_copy
      Src: /src/gpac/src/utils/os_file.c:1355,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/os_file.c:1356,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_file.c:1357,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_file.c:1361,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/os_file.c:1363,1
    - Dst: GF_FileIO*::write
      Src: /src/gpac/src/utils/os_file.c:1365,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - gfio
    - format
    - args
    argTypes:
    - GF_FileIO*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1366
      start: 1347
    functionDepth: 0
    functionLinenumber: 1347
    functionLinenumberEnd: 1366
    functionName: gf_fileio_printf
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached:
    - GF_FileIO*::printf
    - GF_FileIO*::write
    - vsnprintf
    - va_end
    - gf_realloc
    - va_copy
    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: 1372
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1372
    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: 1378
      start: 1374
    functionDepth: 0
    functionLinenumber: 1374
    functionLinenumberEnd: 1378
    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:1387,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/os_file.c:1389,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_file.c:1390,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1391,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/os_file.c:1394,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/os_file.c:1395,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1396,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/os_file.c:1399,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1401,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1405
      start: 1380
    functionDepth: 2
    functionLinenumber: 1380
    functionLinenumberEnd: 1405
    functionName: gf_fileio_from_url
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 5
    functionsReached:
    - sprintf
    - gf_list_find
    - gf_mx_p
    - strcmp
    - gf_mx_v
    - sscanf
    - strncmp
    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:1410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1407
    functionDepth: 3
    functionLinenumber: 1407
    functionLinenumberEnd: 1412
    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:1417,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1418
      start: 1414
    functionDepth: 0
    functionLinenumber: 1414
    functionLinenumberEnd: 1418
    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:1423,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1425
      start: 1420
    functionDepth: 0
    functionLinenumber: 1420
    functionLinenumberEnd: 1425
    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:1432,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/utils/os_file.c:1434,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - gfio
    - new_res_url
    argTypes:
    - GF_FileIO*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1427
    functionDepth: 1
    functionLinenumber: 1427
    functionLinenumberEnd: 1435
    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: 1445
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1445
    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: 1452
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1452
    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:1457,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: 1465
      start: 1454
    functionDepth: 1
    functionLinenumber: 1454
    functionLinenumberEnd: 1465
    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: 1473
      start: 1467
    functionDepth: 0
    functionLinenumber: 1467
    functionLinenumberEnd: 1473
    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:1478,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - url
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1481
      start: 1475
    functionDepth: 3
    functionLinenumber: 1475
    functionLinenumberEnd: 1481
    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:1490,1
    - Dst: GF_FileIO*::tell
      Src: /src/gpac/src/utils/os_file.c:1493,1
    - Dst: ftell
      Src: /src/gpac/src/utils/os_file.c:1497,1
    - Dst: ftello64
      Src: /src/gpac/src/utils/os_file.c:1500,1
    - Dst: ftell
      Src: /src/gpac/src/utils/os_file.c:1502,1
    - Dst: _ftelli64
      Src: /src/gpac/src/utils/os_file.c:1505,1
    - Dst: ftello64
      Src: /src/gpac/src/utils/os_file.c:1507,1
    - Dst: ftello
      Src: /src/gpac/src/utils/os_file.c:1509,1
    - Dst: ftell
      Src: /src/gpac/src/utils/os_file.c:1511,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1513
      start: 1485
    functionDepth: 1
    functionLinenumber: 1485
    functionLinenumberEnd: 1513
    functionName: gf_ftell
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 16
    functionsReached:
    - _ftelli64
    - GF_FileIO*::tell
    - ftell
    - gf_fileio_check
    - ftello
    - ftello64
    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:1519,1
    - Dst: GF_FileIO*::seek
      Src: /src/gpac/src/utils/os_file.c:1522,1
    - Dst: fseek
      Src: /src/gpac/src/utils/os_file.c:1530,1
    - Dst: fseeko64
      Src: /src/gpac/src/utils/os_file.c:1533,1
    - Dst: fseek
      Src: /src/gpac/src/utils/os_file.c:1535,1
    - Dst: _fseeki64
      Src: /src/gpac/src/utils/os_file.c:1538,1
    - Dst: fseeko64
      Src: /src/gpac/src/utils/os_file.c:1540,1
    - Dst: fseeko
      Src: /src/gpac/src/utils/os_file.c:1542,1
    - Dst: fseek
      Src: /src/gpac/src/utils/os_file.c:1544,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - fp
    - offset
    - whence
    argTypes:
    - FILE*
    - s64
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1515
    functionDepth: 1
    functionLinenumber: 1515
    functionLinenumberEnd: 1546
    functionName: gf_fseek
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 31
    functionsReached:
    - gf_fileio_check
    - fseeko
    - _fseeki64
    - GF_FileIO*::seek
    - fseek
    - fseeko64
    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:1554,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/utils/os_file.c:1556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1559,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/os_file.c:1563,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/utils/os_file.c:1567,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1569,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/utils/os_file.c:1574,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1574,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - file_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1549
    functionDepth: 4
    functionLinenumber: 1549
    functionLinenumberEnd: 1576
    functionName: gf_fileio_from_blob
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_crc_32
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_blob_get
    - strlen
    - gf_blob_release
    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:1582,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1586,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/utils/os_file.c:1587,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1589,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/utils/os_file.c:1594,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1594,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_file.c:1595,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/utils/os_file.c:1595,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - URL
    - data
    - size
    argTypes:
    - char*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1597
      start: 1578
    functionDepth: 2
    functionLinenumber: 1578
    functionLinenumberEnd: 1597
    functionName: gf_fileio_from_mem
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_crc_32
    - gf_fopen
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_fileio_url
    - strlen
    - gf_strdup
    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: 1605
      start: 1602
    functionDepth: 0
    functionLinenumber: 1602
    functionLinenumberEnd: 1605
    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:1616,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:1621,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_file.c:1623,1
    - Dst: gf_fileio_from_blob
      Src: /src/gpac/src/utils/os_file.c:1625,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:1627,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:1632,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:1634,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1641,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:1644,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:1646,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1649,1
    - Dst: gf_fileio_read_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: strpbrk
      Src: /src/gpac/src/utils/os_file.c:1653,1
    - Dst: gf_fileio_write_mode
      Src: /src/gpac/src/utils/os_file.c:1653,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1654,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/utils/os_file.c:1657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1660,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/os_file.c:1660,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:1665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1669,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1670,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_file.c:1671,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1672,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1673,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1674,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1675,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_file.c:1681,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_file.c:1682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1684,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/os_file.c:1684,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1686,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1691,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1692,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1695,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:1700,1
    - Dst: gf_th_id
      Src: /src/gpac/src/utils/os_file.c:1700,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1701,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:1709,1
    - Dst: gf_utf8_to_wcs
      Src: /src/gpac/src/utils/os_file.c:1710,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1713,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1714,1
    - Dst: _wfsopen
      Src: /src/gpac/src/utils/os_file.c:1717,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1718,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1719,1
    - Dst: fopen64
      Src: /src/gpac/src/utils/os_file.c:1721,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_file.c:1723,1
    - Dst: fopen
      Src: /src/gpac/src/utils/os_file.c:1725,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:1729,1
    - Dst: gf_register_file_handle
      Src: /src/gpac/src/utils/os_file.c:1730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1732,1
    - Dst: strpbrk
      Src: /src/gpac/src/utils/os_file.c:1734,1
    - Dst: GetLastError
      Src: /src/gpac/src/utils/os_file.c:1736,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1739,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: 1744
      start: 1608
    functionDepth: 5
    functionLinenumber: 1608
    functionLinenumberEnd: 1744
    functionName: gf_fopen_ex
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_utf8_to_wcs
    - fopen
    - fopen64
    - strstr
    - strchr
    - gf_fileio_read_mode
    - gf_dir_exists
    - gf_fileio_from_blob
    - _wfsopen
    - gf_fileio_from_url
    - gf_th_id
    - strcmp
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - strpbrk
    - gf_register_file_handle
    - gf_fileio_open_url
    - gf_fileio_write_mode
    - GetLastError
    - gf_mkdir
    - gf_strdup
    - strncmp
    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:1753,1
    - Dst: _wopen
      Src: /src/gpac/src/utils/os_file.c:1755,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_file.c:1756,1
    - Dst: open
      Src: /src/gpac/src/utils/os_file.c:1759,1
    - Dst: open
      Src: /src/gpac/src/utils/os_file.c:1761,1
    - Dst: open
      Src: /src/gpac/src/utils/os_file.c:1763,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - file_name
    - oflags
    - uflags
    argTypes:
    - char*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1766
      start: 1747
    functionDepth: 1
    functionLinenumber: 1747
    functionLinenumberEnd: 1766
    functionName: gf_fd_open
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - gf_utf8_to_wcs
    - open
    - _wopen
    - gf_free
    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:1771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - file_name
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1768
    functionDepth: 6
    functionLinenumber: 1768
    functionLinenumberEnd: 1772
    functionName: gf_fopen
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 114
    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:1780,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1782,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/utils/os_file.c:1784,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_file.c:1788,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - file
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1789
      start: 1774
    functionDepth: 4
    functionLinenumber: 1774
    functionLinenumberEnd: 1789
    functionName: gf_fclose
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 124
    functionsReached:
    - gf_fileio_check
    - fclose
    - 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:1800,1
    - Dst: gf_fileio_write
      Src: /src/gpac/src/utils/os_file.c:1801,1
    - Dst: fwrite
      Src: /src/gpac/src/utils/os_file.c:1805,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1808,1
    - Dst: _get_errno
      Src: /src/gpac/src/utils/os_file.c:1812,1
    - Dst: strerror_r
      Src: /src/gpac/src/utils/os_file.c:1819,1
    - Dst: strerror_r
      Src: /src/gpac/src/utils/os_file.c:1821,1
    - Dst: strerror
      Src: /src/gpac/src/utils/os_file.c:1824,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_file.c:1827,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - ptr
    - nb_bytes
    - stream
    argTypes:
    - void*
    - size_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1831
      start: 1795
    functionDepth: 1
    functionLinenumber: 1795
    functionLinenumberEnd: 1831
    functionName: gf_fwrite
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 32
    functionsReached:
    - GF_LOG
    - gf_fileio_check
    - strerror
    - gf_fileio_write
    - fwrite
    - _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:1837,1
    - Dst: gf_fileio_read
      Src: /src/gpac/src/utils/os_file.c:1838,1
    - Dst: fread
      Src: /src/gpac/src/utils/os_file.c:1841,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ptr
    - nbytes
    - stream
    argTypes:
    - void*
    - size_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1843
      start: 1833
    functionDepth: 1
    functionLinenumber: 1833
    functionLinenumberEnd: 1843
    functionName: gf_fread
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 34
    functionsReached:
    - gf_fileio_read
    - gf_fileio_check
    - 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:1848,1
    - Dst: GF_FileIO*::gets
      Src: /src/gpac/src/utils/os_file.c:1851,1
    - Dst: gf_fileio_read
      Src: /src/gpac/src/utils/os_file.c:1856,1
    - Dst: fgets
      Src: /src/gpac/src/utils/os_file.c:1867,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 3
    argNames:
    - ptr
    - size
    - stream
    argTypes:
    - char*
    - size_t
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1868
      start: 1845
    functionDepth: 1
    functionLinenumber: 1845
    functionLinenumberEnd: 1868
    functionName: gf_fgets
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 11
    functionsReached:
    - gf_fileio_read
    - gf_fileio_check
    - fgets
    - GF_FileIO*::gets
    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:1873,1
    - Dst: gf_fileio_read
      Src: /src/gpac/src/utils/os_file.c:1876,1
    - Dst: fgetc
      Src: /src/gpac/src/utils/os_file.c:1880,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1881
      start: 1870
    functionDepth: 1
    functionLinenumber: 1870
    functionLinenumberEnd: 1881
    functionName: gf_fgetc
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 1
    functionsReached:
    - gf_fileio_read
    - gf_fileio_check
    - fgetc
    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:1886,1
    - Dst: gf_fileio_write
      Src: /src/gpac/src/utils/os_file.c:1891,1
    - Dst: fputc
      Src: /src/gpac/src/utils/os_file.c:1895,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - val
    - stream
    argTypes:
    - int
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1896
      start: 1883
    functionDepth: 1
    functionLinenumber: 1883
    functionLinenumberEnd: 1896
    functionName: gf_fputc
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - fputc
    - gf_fileio_check
    - gf_fileio_write
    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:1901,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:1903,1
    - Dst: gf_fileio_write
      Src: /src/gpac/src/utils/os_file.c:1904,1
    - Dst: fputs
      Src: /src/gpac/src/utils/os_file.c:1908,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - buf
    - stream
    argTypes:
    - char*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1898
    functionDepth: 1
    functionLinenumber: 1898
    functionLinenumberEnd: 1909
    functionName: gf_fputs
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - fputs
    - gf_fileio_check
    - gf_fileio_write
    - 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:1916,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/utils/os_file.c:1917,1
    - Dst: gf_fileio_printf
      Src: /src/gpac/src/utils/os_file.c:1918,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/os_file.c:1920,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_file.c:1922,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - stream
    - format
    argTypes:
    - FILE*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1924
      start: 1911
    functionDepth: 1
    functionLinenumber: 1911
    functionLinenumberEnd: 1924
    functionName: gf_fprintf
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 437
    functionsReached:
    - gf_fileio_check
    - va_end
    - va_start
    - gf_fileio_printf
    - vfprintf
    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:1930,1
    - Dst: gf_fileio_printf
      Src: /src/gpac/src/utils/os_file.c:1931,1
    - Dst: vfprintf
      Src: /src/gpac/src/utils/os_file.c:1933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - stream
    - format
    - args
    argTypes:
    - FILE*
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1936
      start: 1926
    functionDepth: 1
    functionLinenumber: 1926
    functionLinenumberEnd: 1936
    functionName: gf_vfprintf
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_printf
    - gf_fileio_check
    - vfprintf
    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:1941,1
    - Dst: gf_fileio_flush
      Src: /src/gpac/src/utils/os_file.c:1942,1
    - Dst: fflush
      Src: /src/gpac/src/utils/os_file.c:1944,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1945
      start: 1938
    functionDepth: 1
    functionLinenumber: 1938
    functionLinenumberEnd: 1945
    functionName: gf_fflush
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 6
    functionsReached:
    - fflush
    - gf_fileio_check
    - gf_fileio_flush
    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:1952,1
    - Dst: gf_fileio_eof
      Src: /src/gpac/src/utils/os_file.c:1953,1
    - Dst: feof
      Src: /src/gpac/src/utils/os_file.c:1955,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1956
      start: 1947
    functionDepth: 1
    functionLinenumber: 1947
    functionLinenumberEnd: 1956
    functionName: gf_feof
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - feof
    - gf_fileio_check
    - gf_fileio_eof
    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:1962,1
    - Dst: ferror
      Src: /src/gpac/src/utils/os_file.c:1965,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - stream
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1966
      start: 1959
    functionDepth: 1
    functionLinenumber: 1959
    functionLinenumberEnd: 1966
    functionName: gf_ferror
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 3
    functionsReached:
    - ferror
    - gf_fileio_check
    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:1973,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/os_file.c:1976,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/os_file.c:1981,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/os_file.c:1982,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/os_file.c:1983,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1968
    functionDepth: 1
    functionLinenumber: 1968
    functionLinenumberEnd: 1985
    functionName: gf_fsize
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 18
    functionsReached:
    - gf_ftell
    - gf_fileio_check
    - gf_fseek
    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:1998,1
    - Dst: fstat
      Src: /src/gpac/src/utils/os_file.c:2001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - fd
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2008
      start: 1988
    functionDepth: 0
    functionLinenumber: 1988
    functionLinenumberEnd: 2008
    functionName: gf_fd_fsize
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 2
    functionsReached:
    - _fstat64
    - fstat
    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:2020,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2027,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2037
      start: 2015
    functionDepth: 0
    functionLinenumber: 2015
    functionLinenumberEnd: 2037
    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:2047,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/utils/os_file.c:2048,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/utils/os_file.c:2049,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/utils/os_file.c:2051,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2054,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_file.c:2056,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2058,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 23
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 2042
    functionDepth: 3
    functionLinenumber: 2042
    functionLinenumberEnd: 2071
    functionName: gf_file_ext_start
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 21
    functionsReached:
    - gf_fileio_from_url
    - gf_file_basename
    - gf_fileio_resource_url
    - strrchr
    - strcmp
    - strncmp
    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:2077,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2082,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:2084,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_file.c:2084,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2085,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2090,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2091,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2093,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2110,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2113,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2114,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2115,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2118,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_file.c:2124,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_file.c:2125,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:2126,1
    - Dst: isalnum
      Src: /src/gpac/src/utils/os_file.c:2131,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2139,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2145,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2146,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2150,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_file.c:2152,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2154,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2157,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_file.c:2158,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_file.c:2160,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 71
    argCount: 2
    argNames:
    - path
    - assign_sep
    argTypes:
    - char*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2165
      start: 2074
    functionDepth: 1
    functionLinenumber: 2074
    functionLinenumberEnd: 2165
    functionName: gf_url_colon_suffix
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 17
    functionsReached:
    - strchr
    - atoi
    - gf_url_colon_suffix
    - isalnum
    - strrchr
    - strlen
    - strncmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_url_colon_suffix(const char *path, char assign_sep)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _fullpath
      Src: /src/gpac/src/utils/os_file.c:2171,1
    - Dst: realpath
      Src: /src/gpac/src/utils/os_file.c:2173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - path
    - resolved_path
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2175
      start: 2168
    functionDepth: 1
    functionLinenumber: 2168
    functionLinenumberEnd: 2175
    functionName: gf_realpath
    functionSourceFile: /src/gpac/src/utils/os_file.c
    functionUses: 0
    functionsReached:
    - realpath
    - _fullpath
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT * gf_realpath(const char* path, char* resolved_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    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: 133
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 133
    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:137,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: 142
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 142
    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: 148
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 148
    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:152,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: 157
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 157
    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: 164
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 164
    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: 171
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 171
    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:178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:179,1
    - Dst: RMT_ClientCtx*::on_del_cbk
      Src: /src/gpac/src/utils/rmt_ws.c:182,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/rmt_ws.c:187,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/rmt_ws.c:190,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:195,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/rmt_ws.c:196,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:202,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:204,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:207,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:210,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 211
    functionName: rmt_clientctx_del
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_free
    - GF_LOG
    - RMT_ClientCtx*::on_del_cbk
    - gf_dm_sess_del
    - gf_sk_group_unregister
    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:215,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/utils/rmt_ws.c:216,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:217,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/rmt_ws.c:220,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/utils/rmt_ws.c:226,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/rmt_ws.c:228,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/utils/rmt_ws.c:232,1
    - Dst: gf_dm_del
      Src: /src/gpac/src/utils/rmt_ws.c:234,1
    - Dst: gf_ssl_server_context_del
      Src: /src/gpac/src/utils/rmt_ws.c:238,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:240,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 213
    functionDepth: 3
    functionLinenumber: 213
    functionLinenumberEnd: 246
    functionName: rmt_serverctx_reset
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - rmt_clientctx_del
    - gf_sk_del
    - gf_free
    - gf_ssl_server_context_del
    - gf_list_del
    - gf_sk_group_unregister
    - gf_dm_del
    - gf_list_pop_back
    - gf_sk_group_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:252,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:254,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 248
    functionDepth: 3
    functionLinenumber: 248
    functionLinenumberEnd: 255
    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:263,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/utils/rmt_ws.c:263,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:264,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:265,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/utils/rmt_ws.c:265,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:268,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:269,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/rmt_ws.c:270,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:271,1
    - Dst: gf_dm_sess_send_reply
      Src: /src/gpac/src/utils/rmt_ws.c:275,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:275,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: 277
      start: 257
    functionDepth: 3
    functionLinenumber: 257
    functionLinenumberEnd: 277
    functionName: rmt_send_reply
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_dm_sess_send_reply
    - gf_gpac_version
    - gf_dm_sess_set_header
    - gf_net_get_utc
    - strlen
    - httpout_format_date
    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:283,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:288,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:292,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:300,1
    - Dst: gf_dm_sess_get_resource_name
      Src: /src/gpac/src/utils/rmt_ws.c:302,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/utils/rmt_ws.c:303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:304,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/rmt_ws.c:309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:316,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/utils/rmt_ws.c:321,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/utils/rmt_ws.c:322,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/rmt_ws.c:324,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/rmt_ws.c:326,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:327,1
    - Dst: rmt_send_reply
      Src: /src/gpac/src/utils/rmt_ws.c:329,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/rmt_ws.c:336,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/rmt_ws.c:337,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:339,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/utils/rmt_ws.c:345,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/utils/rmt_ws.c:347,1
    - Dst: gf_dm_sess_clear_headers
      Src: /src/gpac/src/utils/rmt_ws.c:355,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:357,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:358,1
    - Dst: gf_dm_sess_set_header
      Src: /src/gpac/src/utils/rmt_ws.c:359,1
    - Dst: rmt_send_reply
      Src: /src/gpac/src/utils/rmt_ws.c:361,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:367,1
    - Dst: RMT_Settings*::on_new_client_cbk
      Src: /src/gpac/src/utils/rmt_ws.c:368,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:374,1
    - Dst: memset
      Src: /src/gpac/src/utils/rmt_ws.c:379,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 279
    functionDepth: 5
    functionLinenumber: 279
    functionLinenumberEnd: 383
    functionName: rmt_on_http_session_data
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_sha1_csum
    - gf_dm_sess_set_header
    - gf_dm_sess_get_header
    - gf_dynstrcat
    - gf_rmt_get_settings
    - RMT_Settings*::on_new_client_cbk
    - gf_dm_sess_get_resource_name
    - gf_sys_clock_high_res
    - gf_dm_sess_clear_headers
    - gf_base64_encode
    - strcmp
    - strlen
    - gf_error_to_string
    - gf_free
    - rmt_send_reply
    - GF_LOG
    - gf_strcat
    - gf_strdup
    - memset
    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:390,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:392,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/rmt_ws.c:396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:397,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/rmt_ws.c:400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:401,1
    - Dst: gf_ssl_init_lib
      Src: /src/gpac/src/utils/rmt_ws.c:404,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:405,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/rmt_ws.c:409,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:411,1
    - Dst: gf_ssl_server_context_new
      Src: /src/gpac/src/utils/rmt_ws.c:413,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:420,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/utils/rmt_ws.c:426,1
    - Dst: gf_sk_new
      Src: /src/gpac/src/utils/rmt_ws.c:428,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/utils/rmt_ws.c:429,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/utils/rmt_ws.c:434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:436,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:436,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/rmt_ws.c:440,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/utils/rmt_ws.c:442,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:443,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/utils/rmt_ws.c:445,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:447,1
    - Dst: gf_dm_new
      Src: /src/gpac/src/utils/rmt_ws.c:448,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/rmt_ws.c:450,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/rmt_ws.c:451,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 386
    functionDepth: 4
    functionLinenumber: 386
    functionLinenumberEnd: 455
    functionName: rmt_create_server
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_dm_new
    - gf_opts_get_bool
    - gf_file_exists
    - GF_LOG
    - gf_ssl_server_context_new
    - gf_sk_listen
    - gf_error_to_string
    - gf_sk_group_register
    - gf_list_new
    - gf_sk_group_new
    - gf_sk_new
    - gf_sk_bind
    - gf_rmt_get_settings
    - gf_ssl_init_lib
    - gf_sk_server_mode
    - rmt_serverctx_reset
    - gf_opts_set_key
    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: 463
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 463
    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:471,1
    - Dst: gf_sk_accept
      Src: /src/gpac/src/utils/rmt_ws.c:475,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/utils/rmt_ws.c:476,1
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/utils/rmt_ws.c:479,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/rmt_ws.c:480,1
    - Dst: strlen
      Src: /src/gpac/src/utils/rmt_ws.c:480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:481,1
    - Dst: gf_ssl_new
      Src: /src/gpac/src/utils/rmt_ws.c:486,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:488,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:488,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:489,1
    - Dst: gf_dm_sess_new_server
      Src: /src/gpac/src/utils/rmt_ws.c:495,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:498,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:499,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/rmt_ws.c:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:502,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 465
    functionDepth: 3
    functionLinenumber: 465
    functionLinenumberEnd: 505
    functionName: rmt_server_handle_new_client
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_sk_get_remote_address_port
    - rmt_clientctx_del
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_sk_accept
    - gf_list_add
    - GF_SAFEALLOC
    - gf_ssl_new
    - gf_sk_group_register
    - strlen
    - gf_dm_sess_new_server
    - gf_error_to_string
    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:511,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:512,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:513,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:514,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:515,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:518,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:520,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:521,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:523,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:524,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/rmt_ws.c:527,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/rmt_ws.c:531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:532,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/rmt_ws.c:533,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/rmt_ws.c:535,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:536,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: 540
      start: 507
    functionDepth: 9
    functionLinenumber: 507
    functionLinenumberEnd: 540
    functionName: rmt_client_send_payload
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_write_long_int
    - gf_bs_new
    - dm_sess_write
    - gf_bs_del
    - gf_bs_write_data
    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:545,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: 555
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 555
    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:561,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:563,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:564,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:565,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:566,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:567,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:569,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/utils/rmt_ws.c:570,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:573,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/utils/rmt_ws.c:574,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:576,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/utils/rmt_ws.c:579,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/rmt_ws.c:585,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/utils/rmt_ws.c:585,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/rmt_ws.c:586,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/utils/rmt_ws.c:586,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:587,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/rmt_ws.c:587,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/utils/rmt_ws.c:587,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/rmt_ws.c:588,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/rmt_ws.c:593,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:594,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:594,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:597,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:597,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/rmt_ws.c:600,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:602,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/utils/rmt_ws.c:603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:615,1
    - Dst: rmt_client_handle_ws_payload
      Src: /src/gpac/src/utils/rmt_ws.c:632,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/rmt_ws.c:639,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:640,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:641,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:642,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:643,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/rmt_ws.c:644,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/utils/rmt_ws.c:645,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/rmt_ws.c:649,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:650,1
    - Dst: dm_sess_write
      Src: /src/gpac/src/utils/rmt_ws.c:651,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/rmt_ws.c:653,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:654,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:666,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:668,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 72
    argCount: 2
    argNames:
    - client
    - bs
    argTypes:
    - RMT_ClientCtx*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 557
    functionDepth: 9
    functionLinenumber: 557
    functionLinenumberEnd: 671
    functionName: rmt_client_handle_ws_frame
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_get_size
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_malloc
    - dm_sess_write
    - gf_bs_read_int
    - gf_bs_write_data
    - gf_error_to_string
    - gf_dm_read_data
    - rmt_client_handle_ws_payload
    - gf_free
    - GF_LOG
    - gf_bs_read_long_int
    - gf_bs_available
    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:676,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/utils/rmt_ws.c:679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:680,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:680,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/rmt_ws.c:685,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:686,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:688,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/rmt_ws.c:690,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:692,1
    - Dst: rmt_client_handle_ws_frame
      Src: /src/gpac/src/utils/rmt_ws.c:694,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:696,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/utils/rmt_ws.c:696,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/utils/rmt_ws.c:696,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/rmt_ws.c:701,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 673
    functionDepth: 10
    functionLinenumber: 673
    functionLinenumberEnd: 708
    functionName: rmt_client_handle_event
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_dm_read_data
    - gf_errno_str
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_bs_new
    - gf_bs_del
    - gf_dm_sess_process
    - rmt_client_handle_ws_frame
    - gf_bs_available
    - gf_error_to_string
    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:712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 710
    functionDepth: 2
    functionLinenumber: 710
    functionLinenumberEnd: 715
    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:720,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: 722
      start: 717
    functionDepth: 10
    functionLinenumber: 717
    functionLinenumberEnd: 722
    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:728,1
    - Dst: gf_rmt_get_settings
      Src: /src/gpac/src/utils/rmt_ws.c:731,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:734,1
    - Dst: gf_sk_probe
      Src: /src/gpac/src/utils/rmt_ws.c:739,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:741,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:749,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - client
    argTypes:
    - RMT_ClientCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 756
      start: 724
    functionDepth: 3
    functionLinenumber: 724
    functionLinenumberEnd: 756
    functionName: rmt_client_should_close
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_sk_probe
    - gf_sys_clock_high_res
    - gf_rmt_get_settings
    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:760,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/utils/rmt_ws.c:762,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/utils/rmt_ws.c:767,1
    - Dst: rmt_server_handle_new_client
      Src: /src/gpac/src/utils/rmt_ws.c:769,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/rmt_ws.c:779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/rmt_ws.c:781,1
    - Dst: rmt_client_should_close
      Src: /src/gpac/src/utils/rmt_ws.c:783,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/rmt_ws.c:785,1
    - Dst: rmt_clientctx_del
      Src: /src/gpac/src/utils/rmt_ws.c:788,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/utils/rmt_ws.c:793,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:798,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:802,1
    - Dst: rmt_client_send_ping
      Src: /src/gpac/src/utils/rmt_ws.c:803,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/rmt_ws.c:805,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/utils/rmt_ws.c:814,1
    - Dst: rmt_client_handle_event
      Src: /src/gpac/src/utils/rmt_ws.c:816,1
    - Dst: gf_sleep
      Src: /src/gpac/src/utils/rmt_ws.c:825,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - RMT_ServerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 758
    functionDepth: 11
    functionLinenumber: 758
    functionLinenumberEnd: 828
    functionName: rmt_server_wait_for_event
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_sk_group_select
    - gf_sk_group_sock_is_set
    - gf_list_count
    - rmt_client_should_close
    - rmt_clientctx_del
    - gf_sleep
    - GF_LOG
    - gf_list_get
    - rmt_client_handle_event
    - gf_sys_clock_high_res
    - gf_rmt_get_settings
    - rmt_server_handle_new_client
    - rmt_client_send_ping
    - 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:835,1
    - Dst: rmt_create_server
      Src: /src/gpac/src/utils/rmt_ws.c:845,1
    - Dst: rmt_serverctx_reset
      Src: /src/gpac/src/utils/rmt_ws.c:848,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:849,1
    - Dst: rmt_server_wait_for_event
      Src: /src/gpac/src/utils/rmt_ws.c:858,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:862,1
    - Dst: rmt_serverctx_reset
      Src: /src/gpac/src/utils/rmt_ws.c:863,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:864,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 1
    argNames:
    - par
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 830
    functionDepth: 12
    functionLinenumber: 830
    functionLinenumberEnd: 868
    functionName: rmt_ws_thread_main
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - rmt_create_server
    - GF_SAFEALLOC
    - 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: 877
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 877
    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:886,1
    - Dst: gf_th_stop
      Src: /src/gpac/src/utils/rmt_ws.c:888,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:890,1
    - Dst: gf_th_status
      Src: /src/gpac/src/utils/rmt_ws.c:890,1
    - Dst: gf_th_del
      Src: /src/gpac/src/utils/rmt_ws.c:892,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/rmt_ws.c:898,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - rmt
    argTypes:
    - RMT_WS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 880
    functionDepth: 1
    functionLinenumber: 880
    functionLinenumberEnd: 901
    functionName: rmt_ws_del
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_th_del
    - GF_LOG
    - gf_th_stop
    - 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:906,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:908,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 903
    functionDepth: 1
    functionLinenumber: 903
    functionLinenumberEnd: 926
    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:930,1
    - Dst: gf_th_run
      Src: /src/gpac/src/utils/rmt_ws.c:933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/rmt_ws.c:935,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/rmt_ws.c:935,1
    - Dst: rmt_ws_del
      Src: /src/gpac/src/utils/rmt_ws.c:936,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - rmt
    argTypes:
    - RMT_WS*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 928
    functionDepth: 2
    functionLinenumber: 928
    functionLinenumberEnd: 940
    functionName: rmt_ws_run
    functionSourceFile: /src/gpac/src/utils/rmt_ws.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - rmt_ws_del
    - gf_th_new
    - gf_th_run
    - 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: 946
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 946
    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: 949
      start: 947
    functionDepth: 0
    functionLinenumber: 947
    functionLinenumberEnd: 949
    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: 953
      start: 951
    functionDepth: 0
    functionLinenumber: 951
    functionLinenumberEnd: 953
    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: 956
      start: 954
    functionDepth: 0
    functionLinenumber: 954
    functionLinenumberEnd: 956
    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: 960
      start: 958
    functionDepth: 0
    functionLinenumber: 958
    functionLinenumberEnd: 960
    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: 963
      start: 961
    functionDepth: 0
    functionLinenumber: 961
    functionLinenumberEnd: 963
    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: 967
      start: 965
    functionDepth: 0
    functionLinenumber: 965
    functionLinenumberEnd: 967
    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: 970
      start: 968
    functionDepth: 0
    functionLinenumber: 968
    functionLinenumberEnd: 970
    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: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    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: 1451
    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: 48
    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
    - F
    - H
    - 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: gf_strlcpy
      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: gf_strlcpy
      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:
    - fopen
    - fclose
    - GF_LOG
    - gf_dir_exists
    - snprintf
    - strcmp
    - gf_strlcpy
    - gf_enum_directory
    linkageType: ''
    returnType: Bool
    signature: Bool check_file_exists(char *name, char *path, char outPath[GF_MAX_PATH])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:269,1
    - Dst: gf_strlcpy
      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: gf_strlcpy
      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: 1
    functionLinenumber: 266
    functionLinenumberEnd: 275
    functionName: gf_sys_set_android_paths
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_strlcpy
    - 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: gf_strlcpy
      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: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:288,1
    - Dst: gf_strlcat
      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: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:295,1
    - Dst: gf_strlcat
      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: gf_strlcat
      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: gf_strlcat
      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:
    - get_default_install_path
    - gf_dir_exists
    - getenv
    - gf_strlcat
    - gf_strlcpy
    linkageType: ''
    returnType: Bool
    signature: Bool get_default_install_path(char file_path[GF_MAX_PATH], u32 path_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:327,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:328,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:329,1
    - Dst: gf_strlcpy
      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: 1
    functionLinenumber: 325
    functionLinenumberEnd: 332
    functionName: get_default_install_path
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_strlcpy
    linkageType: ''
    returnType: Bool
    signature: Bool get_default_install_path(char file_path[GF_MAX_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: gf_strlcpy
      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: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:390,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/os_config_init.c:391,1
    - Dst: gf_strlcpy
      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: gf_strcpy
      Src: /src/gpac/src/utils/os_config_init.c:400,1
    - Dst: gf_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: gf_strlcat
      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: gf_strlcpy
      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: gf_strlcpy
      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: gf_strlcpy
      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: gf_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: gf_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: gf_strcpy
      Src: /src/gpac/src/utils/os_config_init.c:513,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:517,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:518,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:525,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:526,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:529,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: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:537,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:538,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:539,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:540,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:543,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:544,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:546,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:547,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:549,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:550,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:552,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:553,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:556,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: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:568,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:569,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:572,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:573,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:577,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:578,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:579,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:581,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:584,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:585,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:586,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:587,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:589,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:592,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:593,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:596,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:597,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:598,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:601,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:602,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:603,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:604,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:616,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:617,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:620,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:621,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:623,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:624,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:625,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:628,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:629,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:633,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:637,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:638,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:639,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:641,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:646,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:647,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:652,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:658,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:659,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:665,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:666,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:669,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:670,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:671,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:672,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:676,1
    - Dst: check_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:677,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 270
    argCount: 2
    argNames:
    - file_path
    - path_type
    argTypes:
    - char[]
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 356
    functionDepth: 3
    functionLinenumber: 356
    functionLinenumberEnd: 681
    functionName: get_default_install_path
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 2
    functionsReached:
    - strstr
    - check_file_exists
    - realpath
    - getenv
    - gf_dir_exists
    - GetModuleFileNameA
    - gf_strcpy
    - readlink
    - strrchr
    - strlen
    - _NSGetExecutablePath
    - gf_strlcpy
    - get_default_install_path
    - GF_LOG
    - gf_strcat
    - dladdr
    - gf_file_delete
    - gf_mkdir
    - gf_strlcat
    - strncmp
    linkageType: ''
    returnType: Bool
    signature: Bool get_default_install_path(char file_path[GF_MAX_PATH], u32 path_type)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: realpath
      Src: /src/gpac/src/utils/os_config_init.c:692,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:695,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_config_init.c:696,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:698,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:699,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:700,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:702,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_config_init.c:704,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:706,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:708,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_config_init.c:710,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:712,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - cfg
    - file_path
    argTypes:
    - GF_Config*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 713
      start: 688
    functionDepth: 5
    functionLinenumber: 688
    functionLinenumberEnd: 713
    functionName: gf_ios_refresh_cache_directory
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_cfg_set_key
    - realpath
    - gf_strcat
    - GF_LOG
    - gf_dir_exists
    - gf_assert
    - strcmp
    - gf_cfg_get_key
    - gf_mkdir
    - gf_opts_get_key
    - strstr
    linkageType: ''
    returnType: void
    signature: void gf_ios_refresh_cache_directory( GF_Config *cfg, const char *file_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:723,1
    - Dst: GetWindowsDirectory
      Src: /src/gpac/src/utils/os_config_init.c:726,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:727,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/os_config_init.c:727,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/os_config_init.c:728,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:731,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:733,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:736,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:739,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - szPath
    argTypes:
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 741
      start: 719
    functionDepth: 1
    functionLinenumber: 719
    functionLinenumberEnd: 741
    functionName: gf_get_default_font_dir
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_strlcat
    - GetWindowsDirectory
    - gf_strlcpy
    - strlen
    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:750,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:754,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:754,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:755,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:756,1
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/utils/os_config_init.c:757,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_config_init.c:765,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/os_config_init.c:767,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:769,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:771,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:773,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:775,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:782,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:784,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:788,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:790,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:792,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:794,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:800,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:803,1
    - Dst: gf_ios_refresh_cache_directory
      Src: /src/gpac/src/utils/os_config_init.c:808,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:810,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:811,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:812,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:813,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:815,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:816,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:817,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:819,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:820,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:821,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:822,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:823,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:826,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:827,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:828,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:829,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:830,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:831,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/os_config_init.c:832,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:837,1
    - Dst: gf_get_default_cache_directory_ex
      Src: /src/gpac/src/utils/os_config_init.c:837,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:841,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:842,1
    - Dst: gf_get_default_font_dir
      Src: /src/gpac/src/utils/os_config_init.c:845,1
    - Dst: gf_cfg_set_key
      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:848,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:852,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:854,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:856,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:858,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:862,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:868,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:869,1
    - Dst: getenv
      Src: /src/gpac/src/utils/os_config_init.c:873,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:875,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:876,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:880,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:882,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:883,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:884,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:887,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:888,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:891,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:892,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:893,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:894,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:897,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:898,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:899,1
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/utils/os_config_init.c:901,1
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/utils/os_config_init.c:904,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:906,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:908,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:909,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:910,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:914,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:918,1
    - Dst: gf_cfg_set_filename
      Src: /src/gpac/src/utils/os_config_init.c:921,1
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/utils/os_config_init.c:922,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_config_init.c:926,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/os_config_init.c:926,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:927,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:928,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 114
    argCount: 2
    argNames:
    - file_path
    - profile
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 744
    functionDepth: 6
    functionLinenumber: 744
    functionLinenumberEnd: 929
    functionName: create_default_config
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_cfg_get_filename
    - gf_cfg_get_key_name
    - snprintf
    - gf_cfg_get_section_name
    - gf_get_default_font_dir
    - gf_fopen
    - getenv
    - gf_cfg_new
    - gf_cfg_get_key
    - gf_cfg_discard_changes
    - gf_strcpy
    - gf_file_exists
    - gf_cfg_del
    - gf_cfg_get_key_count
    - strcmp
    - sprintf
    - gf_fclose
    - get_default_install_path
    - gf_cfg_get_section_count
    - GF_LOG
    - gf_strcat
    - stricmp
    - gf_ios_refresh_cache_directory
    - gf_get_default_cache_directory_ex
    - gf_cfg_set_key
    - gf_cfg_set_filename
    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:939,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:942,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:943,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:945,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/os_config_init.c:947,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:950,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:951,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:952,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:953,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/os_config_init.c:955,1
    - Dst: gf_ios_refresh_cache_directory
      Src: /src/gpac/src/utils/os_config_init.c:956,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:961,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:962,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:965,1
    - Dst: gf_cfg_set_key
      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:971,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:974,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:978,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:993,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:996,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1003,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1005,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1006,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1007,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1008,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1008,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1008,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:1010,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1011,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - GF_Config*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 933
    functionDepth: 6
    functionLinenumber: 933
    functionLinenumberEnd: 1017
    functionName: check_modules_dir
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_cfg_get_key
    - get_default_install_path
    - gf_strcat
    - gf_ios_refresh_cache_directory
    - gf_cfg_get_filename
    - strrchr
    - strcmp
    - gf_cfg_set_key
    - strstr
    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:1023,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1024,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: 1027
      start: 1021
    functionDepth: 3
    functionLinenumber: 1021
    functionLinenumberEnd: 1027
    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:1035,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:1038,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/utils/os_config_init.c:1040,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1043,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_config_init.c:1045,1
    - Dst: gf_rand
      Src: /src/gpac/src/utils/os_config_init.c:1045,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_sys_clock_high_res
      Src: /src/gpac/src/utils/os_config_init.c:1047,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/os_config_init.c:1057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1059,1
    - Dst: fwrite
      Src: /src/gpac/src/utils/os_config_init.c:1062,1
    - Dst: fclose
      Src: /src/gpac/src/utils/os_config_init.c:1063,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1064,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 2
    argNames:
    - cfg
    - szPath
    argTypes:
    - GF_Config*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1030
    functionDepth: 5
    functionLinenumber: 1030
    functionLinenumberEnd: 1066
    functionName: check_default_cred_file
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - fclose
    - gf_rand
    - gf_file_exists
    - GF_LOG
    - gf_fopen
    - gf_cfg_set_key
    - gf_dir_exists
    - gf_sys_clock_high_res
    - fwrite
    - gf_cfg_get_key
    - gf_strlcat
    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:1089,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/utils/os_config_init.c:1090,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1092,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1093,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1096,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1098,1
    - Dst: strpbrk
      Src: /src/gpac/src/utils/os_config_init.c:1105,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1107,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:1110,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1112,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1116,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1117,1
    - Dst: check_modules_dir
      Src: /src/gpac/src/utils/os_config_init.c:1119,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1123,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1124,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1125,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1128,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1132,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1133,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:1138,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:1139,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:1142,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1146,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
      Src: /src/gpac/src/utils/os_config_init.c:1156,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1157,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1161,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1166,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1168,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1169,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:1173,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1177,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1178,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1182,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1185,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1188,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/os_config_init.c:1191,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1192,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1200,1
    - Dst: create_default_config
      Src: /src/gpac/src/utils/os_config_init.c:1202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1212,1
    - Dst: check_modules_dir
      Src: /src/gpac/src/utils/os_config_init.c:1217,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1218,1
    - Dst: check_default_cred_file
      Src: /src/gpac/src/utils/os_config_init.c:1219,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1221,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1222,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_config_init.c:1223,1
    - Dst: gf_get_default_cache_directory_ex
      Src: /src/gpac/src/utils/os_config_init.c:1223,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:1224,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/os_config_init.c:1227,1
    - Dst: gf_cfg_get_filename
      Src: /src/gpac/src/utils/os_config_init.c:1227,1
    - Dst: strrchr
      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: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:1231,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/utils/os_config_init.c:1232,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/utils/os_config_init.c:1232,1
    - Dst: gf_cfg_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1234,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1243,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1244,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/utils/os_config_init.c:1246,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 143
    argCount: 1
    argNames:
    - profile
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1252
      start: 1079
    functionDepth: 7
    functionLinenumber: 1079
    functionLinenumberEnd: 1252
    functionName: gf_cfg_init
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - gf_cfg_get_filename
    - gf_cfg_get_key_name
    - strstr
    - gf_enum_directory
    - gf_opts_set_key
    - gf_dir_exists
    - gf_url_colon_suffix
    - create_default_config
    - gf_cfg_new
    - gf_cfg_get_key
    - check_modules_dir
    - gf_strcpy
    - gf_file_exists
    - gf_cfg_del
    - gf_cfg_get_key_count
    - strrchr
    - strcmp
    - strlen
    - sprintf
    - get_default_install_path
    - GF_LOG
    - gf_strcat
    - check_default_cred_file
    - strpbrk
    - stricmp
    - gf_get_default_cache_directory_ex
    - gf_mkdir
    - gf_cfg_set_key
    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:1258,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/os_config_init.c:1260,1
    - Dst: get_default_install_path
      Src: /src/gpac/src/utils/os_config_init.c:1263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - path_buffer
    argTypes:
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1264
      start: 1255
    functionDepth: 3
    functionLinenumber: 1255
    functionLinenumberEnd: 1264
    functionName: gf_opts_default_shared_directory
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - gf_opts_get_key
    - gf_strlcpy
    - get_default_install_path
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_opts_default_shared_directory(char path_buffer[GF_MAX_PATH])
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_cfg_init
      Src: /src/gpac/src/utils/os_config_init.c:1274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1276,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1277,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1279,1
    - Dst: gf_modules_new
      Src: /src/gpac/src/utils/os_config_init.c:1280,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - profile
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1282
      start: 1271
    functionDepth: 8
    functionLinenumber: 1271
    functionLinenumberEnd: 1282
    functionName: gf_init_global_config
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - exit
    - stricmp
    - gf_modules_new
    - gf_cfg_init
    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:1287,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1288,1
    - Dst: gf_modules_del
      Src: /src/gpac/src/utils/os_config_init.c:1290,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - discard_config
    argTypes:
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1284
    functionDepth: 5
    functionLinenumber: 1284
    functionLinenumberEnd: 1292
    functionName: gf_uninit_global_config
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_modules_del
    - gf_cfg_del
    - gf_cfg_discard_changes
    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:1300,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:1301,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/os_config_init.c:1302,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/utils/os_config_init.c:1303,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/utils/os_config_init.c:1304,1
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/utils/os_config_init.c:1306,1
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/utils/os_config_init.c:1309,1
    - Dst: gf_cfg_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1311,1
    - Dst: gf_cfg_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:1313,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1314,1
    - Dst: gf_cfg_set_key_internal
      Src: /src/gpac/src/utils/os_config_init.c:1315,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/utils/os_config_init.c:1318,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1297
    functionDepth: 6
    functionLinenumber: 1297
    functionLinenumberEnd: 1322
    functionName: gf_cfg_load_restrict
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - get_default_install_path
    - gf_cfg_get_section_count
    - gf_strcat
    - gf_file_exists
    - gf_cfg_del
    - gf_cfg_get_key_count
    - gf_cfg_new
    - gf_cfg_get_key_name
    - gf_cfg_set_key_internal
    - gf_cfg_get_key
    - 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:1330,1
    - Dst: gf_cfg_get_key
      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:1334,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1335
      start: 1325
    functionDepth: 4
    functionLinenumber: 1325
    functionLinenumberEnd: 1335
    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:1340,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - secName
    - keyName
    - keyValue
    argTypes:
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1336
    functionDepth: 5
    functionLinenumber: 1336
    functionLinenumberEnd: 1341
    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:1346,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - secName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1342
    functionDepth: 4
    functionLinenumber: 1342
    functionLinenumberEnd: 1347
    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:1352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1348
    functionDepth: 2
    functionLinenumber: 1348
    functionLinenumberEnd: 1353
    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:1358,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - secIndex
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1354
    functionDepth: 2
    functionLinenumber: 1354
    functionLinenumberEnd: 1359
    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:1364,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - secName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1360
    functionDepth: 3
    functionLinenumber: 1360
    functionLinenumberEnd: 1365
    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:1370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - secName
    - keyIndex
    argTypes:
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1366
    functionDepth: 3
    functionLinenumber: 1366
    functionLinenumberEnd: 1371
    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:1379,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1373
    functionDepth: 3
    functionLinenumber: 1373
    functionLinenumberEnd: 1381
    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:1386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1383
    functionDepth: 1
    functionLinenumber: 1383
    functionLinenumberEnd: 1387
    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:1391,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1388
    functionDepth: 1
    functionLinenumber: 1388
    functionLinenumberEnd: 1392
    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:1397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1398
      start: 1394
    functionDepth: 3
    functionLinenumber: 1394
    functionLinenumberEnd: 1398
    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: 1689
      start: 1685
    functionDepth: 0
    functionLinenumber: 1685
    functionLinenumberEnd: 1689
    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:1698,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - argname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1703
      start: 1691
    functionDepth: 0
    functionLinenumber: 1691
    functionLinenumberEnd: 1703
    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:1708,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1710,1
    - Dst: gpac_opt_default
      Src: /src/gpac/src/utils/os_config_init.c:1711,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1715,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1716,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1717,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1719
      start: 1705
    functionDepth: 5
    functionLinenumber: 1705
    functionLinenumberEnd: 1719
    functionName: gf_opts_get_bool
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 43
    functionsReached:
    - gpac_opt_default
    - gf_opts_get_key
    - strcmp
    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:1724,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1726,1
    - Dst: gpac_opt_default
      Src: /src/gpac/src/utils/os_config_init.c:1727,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1730,1
    - Dst: atoi
      Src: /src/gpac/src/utils/os_config_init.c:1742,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - secName
    - keyName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1744
      start: 1720
    functionDepth: 5
    functionLinenumber: 1720
    functionLinenumberEnd: 1744
    functionName: gf_opts_get_int
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 9
    functionsReached:
    - atoi
    - strcmp
    - strlen
    - gpac_opt_default
    - gf_opts_get_key
    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:1751,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1753,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1754,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_config_init.c:1757,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_config_init.c:1759,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1763,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_config_init.c:1770,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1774,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1776,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_config_init.c:1783,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1786,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/os_config_init.c:1789,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1792,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1793,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:1794,1
    - Dst: gf_opts_del_section
      Src: /src/gpac/src/utils/os_config_init.c:1797,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/os_config_init.c:1801,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1804,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1806,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1806,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1807,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1807,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1807,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1807,1
    - Dst: gpac_disable_progress
      Src: /src/gpac/src/utils/os_config_init.c:1810,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 55
    argCount: 1
    argNames:
    - opt_string
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1814
      start: 1746
    functionDepth: 6
    functionLinenumber: 1746
    functionLinenumberEnd: 1814
    functionName: gf_sys_set_cfg_option
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_opts_del_section
    - GF_LOG
    - stricmp
    - strcmp
    - strlen
    - gpac_disable_progress
    - memcpy
    - gf_opts_set_key
    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:1828,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1829,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1835,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1837,1
    - Dst: gf_sys_set_cfg_option
      Src: /src/gpac/src/utils/os_config_init.c:1838,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1841,1
    - Dst: gf_opts_get_section_count
      Src: /src/gpac/src/utils/os_config_init.c:1842,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1847,1
    - Dst: gf_opts_get_section_name
      Src: /src/gpac/src/utils/os_config_init.c:1852,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/utils/os_config_init.c:1853,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1857,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1857,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1858,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1858,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/src/utils/os_config_init.c:1863,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/os_config_init.c:1864,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1866,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1870,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1872,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1875,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1880,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/utils/os_config_init.c:1881,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1886,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1888,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1888,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1888,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1890,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1892,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1892,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1892,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1894,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1896,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1903,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/utils/os_config_init.c:1905,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1906,1
    - Dst: gf_module_reload_dirs
      Src: /src/gpac/src/utils/os_config_init.c:1907,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: 1912
      start: 1818
    functionDepth: 7
    functionLinenumber: 1818
    functionLinenumberEnd: 1912
    functionName: gf_opts_load_option
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - gf_opts_get_section_name
    - fprintf
    - strchr
    - gf_opts_set_key
    - gf_opts_get_key_count
    - gf_opts_get_key_name
    - gf_module_reload_dirs
    - gf_sys_set_cfg_option
    - strcmp
    - strncmp
    - strlen
    - gf_opts_get_key
    - gf_opts_get_section_count
    - gf_log_set_strict_error
    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:1927,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1929,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1934,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:1934,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1936,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1938,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 30
    argCount: 1
    argNames:
    - arg_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1948
      start: 1914
    functionDepth: 0
    functionLinenumber: 1914
    functionLinenumberEnd: 1948
    functionName: gf_sys_is_gpac_arg
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 1
    functionsReached:
    - strchr
    - strstr
    - strncmp
    - strlen
    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:1963,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1964,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1972,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1973,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1976,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1977,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1978,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:1981,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1983,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1984,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1986,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1988,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1989,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:1991,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:1992,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:1993,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:1994,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:1997,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2001,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:2002,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2011,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/os_config_init.c:2014,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2015,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2020,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2023,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2025,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2028,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2030,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2032,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2033,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2036,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:2044,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2047,1
    - Dst: gf_free
      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:2053,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2054,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:2060,1
    - Dst: gf_sys_format_help
      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:2063,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2064,1
    - Dst: gf_sys_format_help
      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:2066,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2067,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2068,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2072,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2074,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2075,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2079,1
    - Dst: gf_sys_localized
      Src: /src/gpac/src/utils/os_config_init.c:2079,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2082,1
    - Dst: gf_sys_localized
      Src: /src/gpac/src/utils/os_config_init.c:2082,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2084,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2086,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2090,1
    - Dst: gf_sys_format_help
      Src: /src/gpac/src/utils/os_config_init.c:2091,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: 2092
      start: 1951
    functionDepth: 8
    functionLinenumber: 1951
    functionLinenumberEnd: 2092
    functionName: gf_sys_print_arg
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 21
    functionsReached:
    - fprintf
    - strchr
    - gf_free
    - exit
    - gf_sys_localized
    - gf_sys_format_help
    - strcmp
    - strlen
    - gf_strdup
    - strstr
    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:2099,1
    - Dst: gf_sys_print_arg
      Src: /src/gpac/src/utils/os_config_init.c:2114,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: 2116
      start: 2095
    functionDepth: 9
    functionLinenumber: 2095
    functionLinenumberEnd: 2116
    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:2127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2131
      start: 2124
    functionDepth: 0
    functionLinenumber: 2124
    functionLinenumberEnd: 2131
    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:2167,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2175,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2177,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:2178,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2195,1
    - Dst: exit
      Src: /src/gpac/src/utils/os_config_init.c:2196,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 35
    argCount: 2
    argNames:
    - buf
    - c
    argTypes:
    - char*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2200
      start: 2162
    functionDepth: 0
    functionLinenumber: 2162
    functionLinenumberEnd: 2200
    functionName: check_char_balanced
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - fprintf
    - exit
    - strchr
    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:2230,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/os_config_init.c:2231,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_config_init.c:2232,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/os_config_init.c:2235,1
    - Dst: va_start
      Src: /src/gpac/src/utils/os_config_init.c:2237,1
    - Dst: vsprintf
      Src: /src/gpac/src/utils/os_config_init.c:2238,1
    - Dst: va_end
      Src: /src/gpac/src/utils/os_config_init.c:2239,1
    - Dst: check_char_balanced
      Src: /src/gpac/src/utils/os_config_init.c:2243,1
    - Dst: check_char_balanced
      Src: /src/gpac/src/utils/os_config_init.c:2244,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2268,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2273,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2284,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2285,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2285,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2286,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2289,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2293,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2352,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2354,1
    - Dst: strstr
      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:2370,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: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2381,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2384,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2388,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2392,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2395,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2397,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2400,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2407,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2409,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2414,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2417,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2418,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2420,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2421,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2425,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2447,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2451,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2458,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2462,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2466,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2472,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2480,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2481,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2490,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2495,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2503,1
    - Dst: strstr
      Src: /src/gpac/src/utils/os_config_init.c:2505,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2523,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2526,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2529,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2532,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2537,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2538,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2547,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: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2559,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2565,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2569,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2574,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2576,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2602,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2604,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2607,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2611,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2613,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2620,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/os_config_init.c:2621,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2623,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2625,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2629,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2630,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2631,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2631,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2632,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2633,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2634,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2634,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2635,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2636,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2637,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2637,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2638,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2639,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2640,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2640,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2641,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2642,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2643,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2643,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2644,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2645,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2646,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2646,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2647,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2648,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2649,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2649,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2650,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2650,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2650,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:2655,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2656,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2660,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2662,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2663,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2664,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2665,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2666,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2666,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/os_config_init.c:2666,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2668,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2669,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2671,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2672,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2675,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2684,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2687,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2688,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2693,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2696,1
    - Dst: gf_sys_set_console_code
      Src: /src/gpac/src/utils/os_config_init.c:2700,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2705,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2706,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2713,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2717,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2721,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2723,1
    - Dst: fprintf
      Src: /src/gpac/src/utils/os_config_init.c:2725,1
    CyclomaticComplexity: 199
    EdgeCount: 199
    ICount: 456
    argCount: 3
    argNames:
    - helpout
    - flags
    - fmt
    argTypes:
    - FILE*
    - GF_SysPrintArgFlags
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2203
    functionDepth: 2
    functionLinenumber: 2203
    functionLinenumberEnd: 2728
    functionName: gf_sys_format_help
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 45
    functionsReached:
    - fprintf
    - strchr
    - vsprintf
    - gf_sys_set_console_code
    - gf_assert
    - vsnprintf
    - va_end
    - check_char_balanced
    - va_start
    - strlen
    - strcmp
    - gf_realloc
    - strstr
    - strncmp
    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:2737,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/os_config_init.c:2738,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - text
    - subtext
    - subtext_len
    argTypes:
    - char*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2730
    functionDepth: 0
    functionLinenumber: 2730
    functionLinenumberEnd: 2745
    functionName: gf_strnistr
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 3
    functionsReached:
    - strnicmp
    - tolower
    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:2757,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/os_config_init.c:2761,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2765,1
    - Dst: strlen
      Src: /src/gpac/src/utils/os_config_init.c:2766,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2768,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/os_config_init.c:2770,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2774,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2775,1
    - Dst: gf_strnistr
      Src: /src/gpac/src/utils/os_config_init.c:2779,1
    - Dst: MIN
      Src: /src/gpac/src/utils/os_config_init.c:2779,1
    - Dst: gf_strnistr
      Src: /src/gpac/src/utils/os_config_init.c:2784,1
    - Dst: gf_strnistr
      Src: /src/gpac/src/utils/os_config_init.c:2786,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/os_config_init.c:2789,1
    - Dst: memset
      Src: /src/gpac/src/utils/os_config_init.c:2790,1
    - Dst: strchr
      Src: /src/gpac/src/utils/os_config_init.c:2798,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_config_init.c:2815,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/os_config_init.c:2837,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 69
    argCount: 2
    argNames:
    - orig
    - dst
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2845
      start: 2747
    functionDepth: 1
    functionLinenumber: 2747
    functionLinenumberEnd: 2845
    functionName: gf_sys_word_match
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 7
    functionsReached:
    - strchr
    - gf_free
    - gf_malloc
    - GF_LOG
    - MIN
    - gf_strnistr
    - memset
    - strlen
    - strncmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_sys_word_match(const char *orig, const char *dst)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: visibility
      Src: /src/gpac/src/utils/os_config_init.c:2851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2858
      start: 2851
    functionDepth: 0
    functionLinenumber: 2851
    functionLinenumberEnd: 2858
    functionName: __lsan_default_suppressions
    functionSourceFile: /src/gpac/src/utils/os_config_init.c
    functionUses: 0
    functionsReached:
    - visibility
    linkageType: ''
    returnType: char
    signature: char *__lsan_default_suppressions(void)
  - 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:
    - ngtcp2_crypto_generate_stateless_reset_token
    - memcpy
    - RAND_bytes
    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:
    - fprintf
    - va_end
    - vfprintf
    - va_start
    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:
    - fprintf
    - vfprintf
    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_LOG
    - gf_free
    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_strdup
    - GF_SAFEALLOC
    - gf_free
    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:
    - GF_LOG
    - ngtcp2_conn_extend_max_stream_offset
    - gf_realloc
    - memcpy
    - ngtcp2_conn_extend_max_offset
    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_offset
    - ngtcp2_conn_extend_max_stream_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
    - GF_DownloadSession*::user_proc
    - nghttp3_conn_set_stream_user_data
    - hmux_get_session
    - memset
    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_malloc
    - GF_LOG
    - nghttp3_rcbuf_get_buf
    - stricmp
    - GF_SAFEALLOC
    - strcmp
    - gf_list_add
    - memcpy
    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:
    - GF_LOG
    - nghttp3_strerror
    - 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:
    - ngtcp2_conn_shutdown_stream_write
    - ngtcp2_strerror
    - GF_LOG
    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:
    - SET_LAST_ERR
    - GF_LOG
    - gf_mx_v
    - gf_mx_p
    - ngtcp2_conn_extend_max_streams_uni
    - ngtcp2_is_bidi_stream
    - assert
    - 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: (sess->local_buf_len >= qr->local_buf_sent)
      pos:
        line_end: 589
        line_start: 589
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - 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
    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:
    - ngtcp2_conn_get_conn_info
    - nghttp3_conn_resume_stream
    - gf_assert
    - gf_mx_p
    - memmove
    - gf_mx_v
    - assert
    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_settings_default
    - GF_LOG
    - nghttp3_conn_client_new
    - ngtcp2_conn_get_local_transport_params
    - nghttp3_conn_server_new
    - ngtcp2_conn_get_streams_uni_left
    - nghttp3_conn_bind_control_stream
    - nghttp3_strerror
    - ngtcp2_conn_open_uni_stream
    - nghttp3_conn_bind_qpack_streams
    - ngtcp2_strerror
    - nghttp3_mem_default
    - nghttp3_conn_set_max_client_streams_bidi
    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:
    - gf_list_count
    - sprintf
    - strchr
    - gf_malloc
    - gf_free
    - h3_session_write_ex
    - GF_LOG
    - gf_list_get
    - ngtcp2_conn_open_bidi_stream
    - gf_assert
    - nghttp3_strerror
    - gf_log_tool_level_on
    - nghttp3_conn_submit_request
    - gf_dynstrcat
    - NGH3_HDR
    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:
    - h3_session_write_ex
    - nghttp3_conn_resume_stream
    - gf_assert
    - gf_mx_p
    - gf_mx_v
    - gf_realloc
    - memcpy
    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_list_count
    - sprintf
    - gf_free
    - gf_malloc
    - h3_data_pending
    - h3_setup_session
    - GF_LOG
    - gf_assert
    - gf_mx_v
    - nghttp3_strerror
    - gf_mx_p
    - gf_list_get
    - NGH3_HDR
    - nghttp3_conn_submit_response
    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:
    - ngtcp2_timestamp
    - GF_ARRAY_LENGTH
    - ngtcp2_conn_get_path_max_tx_udp_payload_size
    - ngtcp2_ccerr_set_liberr
    - quic_send_packet
    - gf_sk_send_ex
    - ngtcp2_path_storage_zero
    - nghttp3_err_infer_quic_app_error_code
    - assert
    - nghttp3_conn_add_write_offset
    - nghttp3_conn_block_stream
    - nghttp3_conn_writev_stream
    - nghttp3_strerror
    - quic_handle_error
    - ngtcp2_strerror
    - ngtcp2_conn_update_pkt_tx_time
    - ngtcp2_conn_get_max_data_left
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - ngtcp2_conn_get_max_tx_udp_payload_size
    - ngtcp2_conn_writev_stream
    - nghttp3_conn_shutdown_stream_write
    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:
    - ngtcp2_timestamp
    - ngtcp2_path_storage_zero
    - gf_sk_send_ex
    - ngtcp2_conn_write_connection_close
    - ngtcp2_conn_in_draining_period
    - ngtcp2_conn_in_closing_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:
    - ngtcp2_conn_del
    - gf_free
    - gf_list_del_item
    - nghttp3_conn_del
    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:
    - gf_dm_read_data
    - h3_data_pending
    - SET_LAST_ERR
    - gf_assert
    - gf_mx_p
    - gf_mx_v
    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_timestamp
    - GF_LOG
    - ngtcp2_ccerr_set_liberr
    - ngtcp2_strerror
    - ngtcp2_conn_read_pkt
    - ngtcp2_ccerr_set_tls_alert
    - ngtcp2_conn_get_tls_alert
    - 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_err_infer_quic_app_error_code
    - ngtcp2_ccerr_set_application_error
    - nghttp3_conn_read_stream
    - GF_LOG
    - ngtcp2_conn_extend_max_stream_offset
    - nghttp3_strerror
    - ngtcp2_conn_extend_max_offset
    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_err_infer_quic_app_error_code
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - nghttp3_strerror
    - nghttp3_conn_add_ack_offset
    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_err_infer_quic_app_error_code
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - nghttp3_strerror
    - nghttp3_conn_unblock_stream
    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_err_infer_quic_app_error_code
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - nghttp3_strerror
    - nghttp3_conn_shutdown_stream_read
    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_conn_close_stream
    - nghttp3_err_infer_quic_app_error_code
    - ngtcp2_ccerr_set_application_error
    - GF_LOG
    - nghttp3_strerror
    - ngtcp2_is_bidi_stream
    - ngtcp2_conn_extend_max_streams_uni
    - assert
    - 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:
    - GF_LOG
    - nghttp3_strerror
    - 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_shutdown
    - nghttp3_conn_submit_shutdown_notice
    - h3_session_write
    linkageType: ''
    returnType: void
    signature: void h3_close_session(GF_DownloadSession *sess)
  - BBCount: 34
    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: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1496,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1499,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1501,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1504,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1506,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1508,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1510,1
    - Dst: ngtcp2_transport_params_default
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1523,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1525,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1526,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1530,1
    - Dst: ngtcp2_crypto_generate_stateless_reset_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1547,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1549,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1549,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1554,1
    - Dst: ngtcp2_conn_server_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1559,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1559,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1567,1
    - Dst: ngtcp2_conn_client_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1573,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1576,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1576,1
    - Dst: ngtcp2_conn_set_tls_native_handle
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1582,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1585,1
    - Dst: h3_setup_session
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1600,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1602,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1606,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1607,1
    - Dst: h3_session_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1616,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1619,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1621,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1622,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1623,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 211
    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: 1625
      start: 1345
    functionDepth: 7
    functionLinenumber: 1345
    functionLinenumberEnd: 1625
    functionName: h3_initialize
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_timestamp
    - ngtcp2_crypto_generate_stateless_reset_token
    - GF_SAFEALLOC
    - RAND_bytes
    - gf_list_add
    - ngtcp2_conn_server_new
    - gf_sk_bind_ex
    - h3_session_write
    - gf_malloc
    - h3_setup_session
    - gf_opts_get_int
    - ngtcp2_settings_default
    - ngtcp2_conn_set_tls_native_handle
    - ngtcp2_transport_params_default
    - memcpy
    - ngtcp2_conn_client_new
    - nghttp3_set_debug_vprintf_callback
    - gf_mx_new
    - gf_ssl_try_connect
    - ngtcp2_strerror
    - strcmp
    - gf_list_new
    - sprintf
    - gf_free
    - GF_LOG
    - gf_sk_connect_ex
    - SSL_set_app_data
    - gf_opts_get_bool
    - gf_opts_get_key
    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:1630,1
    - Dst: gf_dm_read_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1639,1
    - Dst: h3_setup_http3
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1647,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 3
    argNames:
    - sess
    - server
    - server_port
    argTypes:
    - GF_DownloadSession*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1627
    functionDepth: 8
    functionLinenumber: 1627
    functionLinenumberEnd: 1648
    functionName: http3_connect
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 1
    functionsReached:
    - h3_initialize
    - gf_dm_read_data
    - 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: 1657
      start: 1652
    functionDepth: 0
    functionLinenumber: 1652
    functionLinenumberEnd: 1657
    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:1668,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1674,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1676,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1677,1
    - Dst: gf_sk_bind_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1678,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1680,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1681,1
    - Dst: gf_sk_set_block_mode
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1684,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1685,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1686,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1689,1
    - Dst: gf_sha256_csum
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1690,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: 1700
      start: 1661
    functionDepth: 3
    functionLinenumber: 1661
    functionLinenumberEnd: 1700
    functionName: gf_dm_quic_server_new
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_sk_del
    - gf_free
    - gf_sha256_csum
    - gf_list_new
    - gf_sk_set_block_mode
    - GF_SAFEALLOC
    - RAND_bytes
    - gf_sk_new_ex
    - ngtcp2_crypto_quictls_init
    - gf_sk_server_mode
    - gf_sk_bind_ex
    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:1703,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1704,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1705,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1706,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - qs
    argTypes:
    - GF_QuicServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1701
    functionDepth: 2
    functionLinenumber: 1701
    functionLinenumberEnd: 1707
    functionName: gf_dm_quic_server_del
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_sk_del
    - gf_free
    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: 1711
      start: 1708
    functionDepth: 0
    functionLinenumber: 1708
    functionLinenumberEnd: 1711
    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:1715,1
    - Dst: ngtcp2_crypto_verify_regular_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1716,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: 1723
      start: 1713
    functionDepth: 3
    functionLinenumber: 1713
    functionLinenumberEnd: 1723
    functionName: quic_verify_token
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_crypto_verify_regular_token
    - ngtcp2_timestamp
    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:1726,1
    - Dst: ngtcp2_crypto_verify_retry_token2
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1727,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: 1742
      start: 1724
    functionDepth: 3
    functionLinenumber: 1724
    functionLinenumberEnd: 1742
    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:1747,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: 1754
      start: 1744
    functionDepth: 0
    functionLinenumber: 1744
    functionLinenumberEnd: 1754
    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:1760,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1764,1
    - Dst: ngtcp2_crypto_generate_retry_token2
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1766,1
    - Dst: MIN
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1773,1
    - Dst: ngtcp2_crypto_write_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1776,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1780,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: 1783
      start: 1756
    functionDepth: 3
    functionLinenumber: 1756
    functionLinenumberEnd: 1783
    functionName: quic_send_retry
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_crypto_write_retry
    - ngtcp2_timestamp
    - quic_send_packet
    - MIN
    - RAND_bytes
    - ngtcp2_crypto_generate_retry_token2
    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:1791,1
    - Dst: ngtcp2_crypto_generate_stateless_reset_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1794,1
    - Dst: RAND_bytes
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1808,1
    - Dst: ngtcp2_pkt_write_stateless_reset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1813,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1817,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: 1820
      start: 1785
    functionDepth: 1
    functionLinenumber: 1785
    functionLinenumberEnd: 1820
    functionName: quic_send_stateless_reset
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_cid_init
    - quic_send_packet
    - ngtcp2_pkt_write_stateless_reset
    - ngtcp2_crypto_generate_stateless_reset_token
    - RAND_bytes
    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:1825,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1827,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: 1830
      start: 1822
    functionDepth: 1
    functionLinenumber: 1822
    functionLinenumberEnd: 1830
    functionName: quic_send_stateless_connection_close
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_crypto_write_connection_close
    - quic_send_packet
    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:1834,1
    - Dst: ngtcp2_conn_get_pto
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - qc
    argTypes:
    - GF_QuicConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1837
      start: 1832
    functionDepth: 2
    functionLinenumber: 1832
    functionLinenumberEnd: 1837
    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:1842,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1842,1
    - Dst: ngtcp2_path_storage_zero
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1847,1
    - Dst: ngtcp2_conn_write_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1849,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1849,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1851,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1851,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1857,1
    - Dst: ngtcp2_conn_get_pto
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1858,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - qc
    argTypes:
    - GF_QuicConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1860
      start: 1839
    functionDepth: 3
    functionLinenumber: 1839
    functionLinenumberEnd: 1860
    functionName: quic_start_closing_period
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_timestamp
    - ngtcp2_path_storage_zero
    - GF_LOG
    - gf_sys_clock_high_res
    - ngtcp2_conn_write_connection_close
    - ngtcp2_strerror
    - ngtcp2_conn_get_pto
    - ngtcp2_conn_in_draining_period
    - ngtcp2_conn_in_closing_period
    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:1864,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1865,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1866,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1866,1
    - Dst: ngtcp2_conn_get_path
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1867,1
    - Dst: quic_send_packet
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1868,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: 1863
        line_start: 1863
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (qc->conn)
      pos:
        line_end: 1864
        line_start: 1864
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    - condition: (!ngtcp2_conn_in_draining_period(qc->conn))
      pos:
        line_end: 1865
        line_start: 1865
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 1869
      start: 1862
    functionDepth: 1
    functionLinenumber: 1862
    functionLinenumberEnd: 1869
    functionName: quic_send_conn_close
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - assert
    - quic_send_packet
    - ngtcp2_conn_get_path
    - 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:1876,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1880,1
    - Dst: quic_send_conn_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1883,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - qc
    argTypes:
    - GF_QuicConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1886
      start: 1871
    functionDepth: 4
    functionLinenumber: 1871
    functionLinenumberEnd: 1886
    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: 1895
      start: 1888
    functionDepth: 0
    functionLinenumber: 1888
    functionLinenumberEnd: 1895
    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:1904,1
    - Dst: ngtcp2_timestamp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1904,1
    - Dst: quic_start_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1908,1
    - Dst: ngtcp2_ccerr_set_tls_alert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1917,1
    - Dst: ngtcp2_conn_get_tls_alert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1917,1
    - Dst: ngtcp2_ccerr_set_liberr
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1919,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1922,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1925,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1925,1
    - Dst: quic_handle_error
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1927,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - c
    - data
    - nb_bytes
    argTypes:
    - GF_QuicServerConnection*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1931
      start: 1897
    functionDepth: 5
    functionLinenumber: 1897
    functionLinenumberEnd: 1931
    functionName: gf_quic_on_data
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_timestamp
    - GF_LOG
    - quic_start_draining_period
    - ngtcp2_ccerr_set_liberr
    - quic_handle_error
    - ngtcp2_strerror
    - ngtcp2_conn_read_pkt
    - ngtcp2_ccerr_set_tls_alert
    - ngtcp2_conn_get_tls_alert
    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:1936,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1936,1
    - Dst: h3_session_write_ex
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1939,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - c
    argTypes:
    - GF_QuicServerConnection*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1940
      start: 1933
    functionDepth: 6
    functionLinenumber: 1933
    functionLinenumberEnd: 1940
    functionName: quic_on_write
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - ngtcp2_conn_in_draining_period
    - h3_session_write_ex
    - ngtcp2_conn_in_closing_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:1950,1
    - Dst: quic_send_stateless_reset
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1953,1
    - Dst: assert
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1961,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1965,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1969,1
    - Dst: quic_verify_retry_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1974,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1980,1
    - Dst: quic_verify_token
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1989,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:1991,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2002,1
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2013,1
    - Dst: gf_dm_sess_new_internal
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2016,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2018,1
    - Dst: GF_QuicServer*::accept_conn
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2022,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2023,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2024,1
    - Dst: SSL_new
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2029,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2031,1
    - Dst: SSL_set_accept_state
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2035,1
    - Dst: SSL_set_quic_early_data_enabled
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2037,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2040,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2042,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2045,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2048,1
    - Dst: h3_initialize
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2058,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2061,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2063,1
    - Dst: quic_send_stateless_connection_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2065,1
    - Dst: gf_quic_on_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2070,1
    - Dst: quic_send_retry
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2073,1
    - Dst: quic_on_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2077,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: 1960
        line_start: 1960
        source_file: /src/gpac/src/utils/downloader_ngtcp2.c
    constantsTouched: []
    func_position:
      end: 2081
      start: 1942
    functionDepth: 8
    functionLinenumber: 1942
    functionLinenumberEnd: 2081
    functionName: gf_quic_create_connection
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_sk_get_remote_address_port
    - quic_verify_retry_token
    - quic_verify_token
    - GF_SAFEALLOC
    - quic_send_stateless_connection_close
    - gf_list_add
    - GF_QuicServer*::accept_conn
    - ngtcp2_accept
    - gf_quic_on_data
    - quic_send_retry
    - SSL_set_accept_state
    - memcpy
    - SSL_set_quic_early_data_enabled
    - SSL_new
    - gf_dm_sess_new_internal
    - quic_send_stateless_reset
    - h3_initialize
    - gf_dm_sess_del
    - quic_on_write
    - gf_free
    - gf_list_del_item
    - assert
    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:2093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2097,1
    - Dst: gf_sk_get_address
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2103,1
    - Dst: ngtcp2_pkt_decode_version_cid
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2115,1
    - Dst: ngtcp2_strerror
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2115,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2120,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2122,1
    - Dst: memcmp
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2129,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2139,1
    - Dst: gf_quic_create_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2140,1
    - Dst: ngtcp2_conn_in_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2147,1
    - Dst: quic_send_conn_close
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2148,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2149,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2154,1
    - Dst: gf_quic_on_data
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2161,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2161,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2162,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 69
    argCount: 1
    argNames:
    - qs
    argTypes:
    - GF_QuicServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2171
      start: 2083
    functionDepth: 9
    functionLinenumber: 2083
    functionLinenumberEnd: 2171
    functionName: gf_dm_quic_process
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_sk_get_address
    - gf_list_count
    - gf_sk_receive
    - gf_quic_create_connection
    - gf_quic_on_data
    - GF_LOG
    - memcmp
    - ngtcp2_pkt_decode_version_cid
    - ngtcp2_strerror
    - quic_send_conn_close
    - detach_connection
    - gf_list_get
    - ngtcp2_conn_in_draining_period
    - ngtcp2_conn_in_closing_period
    - gf_error_to_string
    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:2178,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2180,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2181,1
    - Dst: ngtcp2_conn_in_closing_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2183,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2187,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2190,1
    - Dst: ngtcp2_conn_in_draining_period
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2192,1
    - Dst: detach_connection
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2196,1
    - Dst: quic_on_write
      Src: /src/gpac/src/utils/downloader_ngtcp2.c:2201,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 27
    argCount: 1
    argNames:
    - qs
    argTypes:
    - GF_QuicServer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2206
      start: 2173
    functionDepth: 7
    functionLinenumber: 2173
    functionLinenumberEnd: 2206
    functionName: gf_dm_quic_verify
    functionSourceFile: /src/gpac/src/utils/downloader_ngtcp2.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sys_clock_high_res
    - detach_connection
    - gf_list_get
    - ngtcp2_conn_in_draining_period
    - ngtcp2_conn_in_closing_period
    - quic_on_write
    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: 2214
      start: 2208
    functionDepth: 0
    functionLinenumber: 2208
    functionLinenumberEnd: 2214
    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_add
    - gf_th_id
    - gf_list_new
    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_del
    - gf_list_count
    - gf_list_del_item
    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:
    - sprintf
    - gf_list_count
    - gf_th_id
    - gf_list_get
    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: 17
    functionsReached:
    - sprintf
    - gf_malloc
    - gf_strdup
    - log_add_thread
    - gf_opts_get_bool
    - memset
    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_LOG
    - gf_sema_notify
    - gf_sys_clock
    - gf_th_id
    - pthread_once
    - gf_rand_init
    - GF_Thread*::Run
    - emscripten_unwind_to_js_event_loop
    - CloseHandle
    - GetLastError
    - GF_Thread*::RunBeforeExit
    - pthread_exit
    - pthread_setname_np
    - pthread_setspecific
    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:
    - WaitForSingleObject
    - GF_LOG
    - emscripten_is_main_runtime_thread
    - pthread_join
    - pthread_tryjoin_np
    - GetLastError
    - gf_th_status
    - pthread_cancel
    - pthread_kill
    - TerminateThread
    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: 3
    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: 13
    functionsReached:
    - Thread_Stop
    - gf_free
    - pthread_detach
    - log_del_thread
    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: 0
    functionsReached:
    - SetThreadPriority
    - GF_LOG
    - GetLastError
    - pthread_setschedparam
    - GetCurrentThread
    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:
    - GetCurrentThreadId
    - PTR_TO_U_CAST
    - pthread_self
    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: 25
    functionsReached:
    - gf_sleep
    - gf_free
    - GF_LOG
    - CloseHandle
    - gf_th_id
    - pthread_mutex_destroy
    - log_th_name
    - GetLastError
    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: 130
    functionsReached:
    - GF_LOG
    - gf_th_id
    - ReleaseMutex
    - GetLastError
    - 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: gf_strcpy
      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: 125
    functionsReached:
    - gf_strcpy
    - sprintf
    - WaitForSingleObject
    - GF_LOG
    - gf_th_id
    - gf_assert
    - log_th_name
    - gf_fatal_assert
    - pthread_mutex_lock
    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:
    - WaitForSingleObject
    - GF_LOG
    - gf_sys_clock
    - gf_th_id
    - gf_assert
    - pthread_mutex_trylock
    - log_th_name
    - gf_fatal_assert
    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:
    - CreateSemaphore
    - sprintf
    - gf_free
    - gf_malloc
    - gf_rand
    - sem_unlink
    - sem_open
    - GF_LOG
    - sem_init
    - MIN
    - gf_strdup
    - gf_net_get_utc
    - gf_opts_get_bool
    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: 4
    functionsReached:
    - sem_close
    - gf_free
    - sem_unlink
    - GF_LOG
    - CloseHandle
    - GetLastError
    - sem_destroy
    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: 3
    functionsReached:
    - sem_post
    - ReleaseSemaphore
    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: 1
    functionsReached:
    - GF_LOG
    - GetLastError
    - WaitForSingleObject
    - sem_wait
    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:
    - gf_sleep
    - WaitForSingleObject
    - sem_trywait
    - gf_sys_clock
    - sem_timedwait
    - clock_gettime
    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: gf_strcpy
      Src: /src/gpac/src/utils/xml_parser.c:67,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:68,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:71,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_parser.c:74,1
    - Dst: sscanf
      Src: /src/gpac/src/utils/xml_parser.c:76,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/utils/xml_parser.c:79,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:83,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:88,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:93,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:98,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/xml_parser.c:103,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 67
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 120
    functionName: xml_translate_xml_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - strchr
    - gf_malloc
    - strnicmp
    - gf_utf8_wcstombs
    - strlen
    - gf_realloc
    - sscanf
    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:201,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/xml_parser.c:202,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 205
    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:213,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 218
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/gpac/src/utils/xml_parser.c:227,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/xml_parser.c:228,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/xml_parser.c:228,1
    - Dst: va_end
      Src: /src/gpac/src/utils/xml_parser.c:229,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:231,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/utils/xml_parser.c:231,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/xml_parser.c:233,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/xml_parser.c:234,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:235,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/xml_parser.c:238,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - parser
    - linepos
    - fmt
    argTypes:
    - GF_SAXParser*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 242
    functionName: format_sax_error
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_strcat
    - vsnprintf
    - va_end
    - snprintf
    - va_start
    - strlen
    - memcpy
    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:248,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:249,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:251,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:259,1
    - Dst: GF_SAXParser*::sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:262,1
    - Dst: GF_SAXParser*::sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:265,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:271,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - parser
    - had_children
    argTypes:
    - GF_SAXParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 273
    functionName: xml_sax_node_end
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - strchr
    - xml_sax_swap
    - GF_SAXParser*::sax_node_end
    - gf_assert
    - format_sax_error
    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:281,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:292,1
    - Dst: xml_translate_xml_string
      Src: /src/gpac/src/utils/xml_parser.c:295,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:302,1
    - Dst: GF_SAXParser*::sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:305,1
    - Dst: GF_SAXParser*::sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:308,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:318,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:323,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 275
    functionDepth: 2
    functionLinenumber: 275
    functionLinenumberEnd: 325
    functionName: xml_sax_node_start
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - strchr
    - GF_SAXParser*::sax_node_start
    - gf_free
    - xml_sax_swap
    - gf_assert
    - xml_translate_xml_string
    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:357,1
    - Dst: xml_sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:360,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:370,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:378,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:389,1
    - Dst: xml_sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:397,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:403,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:411,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:425,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:440,1
    - Dst: xml_get_sax_attribute
      Src: /src/gpac/src/utils/xml_parser.c:445,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:448,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:449,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:463,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:509,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:512,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:516,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:520,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:530,1
    CyclomaticComplexity: 65
    EdgeCount: 65
    ICount: 191
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 327
    functionDepth: 3
    functionLinenumber: 327
    functionLinenumberEnd: 541
    functionName: xml_sax_parse_attribute
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - xml_sax_node_end
    - strchr
    - xml_get_sax_attribute
    - xml_sax_node_start
    - gf_assert
    - strncmp
    - format_sax_error
    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:557,1
    - Dst: xml_translate_xml_string
      Src: /src/gpac/src/utils/xml_parser.c:567,1
    - Dst: GF_SAXParser*::sax_text_content
      Src: /src/gpac/src/utils/xml_parser.c:569,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:570,1
    - Dst: GF_SAXParser*::sax_text_content
      Src: /src/gpac/src/utils/xml_parser.c:573,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 552
    functionDepth: 2
    functionLinenumber: 552
    functionLinenumberEnd: 578
    functionName: xml_sax_flush_text
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_SAXParser*::sax_text_content
    - gf_assert
    - 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:589,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:596,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:600,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:605,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - parser
    - txt_len
    argTypes:
    - GF_SAXParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 580
    functionDepth: 3
    functionLinenumber: 580
    functionLinenumberEnd: 606
    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:615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 619
    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:627,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 621
    functionDepth: 1
    functionLinenumber: 621
    functionLinenumberEnd: 632
    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:640,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 634
    functionDepth: 1
    functionLinenumber: 634
    functionLinenumberEnd: 645
    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:653,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:662,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:670,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:674,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:677,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/xml_parser.c:680,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:684,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:687,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:688,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:690,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:693,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:694,1
    - Dst: xml_get_current_text
      Src: /src/gpac/src/utils/xml_parser.c:696,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:697,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:700,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:701,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/utils/xml_parser.c:706,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:712,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:715,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 68
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 648
    functionDepth: 4
    functionLinenumber: 648
    functionLinenumberEnd: 716
    functionName: xml_sax_parse_entity
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_free
    - xml_sax_swap
    - gf_assert
    - gf_list_add
    - GF_SAFEALLOC
    - gf_dynstrcat
    - gf_strdup
    - gf_list_last
    - strlen
    - xml_sax_store_text
    - xml_get_current_text
    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:720,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:722,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:725,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:726,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:728,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 718
    functionDepth: 4
    functionLinenumber: 718
    functionLinenumberEnd: 731
    functionName: xml_sax_cdata
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - xml_sax_store_text
    - strstr
    - xml_sax_flush_text
    - gf_assert
    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:735,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:739,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:744,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 749
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 749
    functionName: xml_sax_parse_comments
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - xml_sax_swap
    - strstr
    - gf_assert
    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:789,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:798,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:803,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:810,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:859,1
    - Dst: xml_sax_node_start
      Src: /src/gpac/src/utils/xml_parser.c:863,1
    - Dst: xml_sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:864,1
    - Dst: xml_sax_node_end
      Src: /src/gpac/src/utils/xml_parser.c:867,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/xml_parser.c:882,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:885,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:886,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:893,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:893,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:894,1
    - Dst: xml_sax_flush_text
      Src: /src/gpac/src/utils/xml_parser.c:902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:907,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:911,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:918,1
    - Dst: gf_xml_sax_parse_intern
      Src: /src/gpac/src/utils/xml_parser.c:921,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:924,1
    - Dst: xml_sax_parse_comments
      Src: /src/gpac/src/utils/xml_parser.c:933,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:934,1
    - Dst: xml_sax_parse_attribute
      Src: /src/gpac/src/utils/xml_parser.c:940,1
    - Dst: xml_sax_parse_entity
      Src: /src/gpac/src/utils/xml_parser.c:944,1
    - Dst: xml_sax_skip_doctype
      Src: /src/gpac/src/utils/xml_parser.c:947,1
    - Dst: xml_sax_skip_xml_proc
      Src: /src/gpac/src/utils/xml_parser.c:950,1
    - Dst: xml_sax_cdata
      Src: /src/gpac/src/utils/xml_parser.c:953,1
    - Dst: xml_sax_store_text
      Src: /src/gpac/src/utils/xml_parser.c:966,1
    - Dst: xml_sax_swap
      Src: /src/gpac/src/utils/xml_parser.c:970,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 225
    argCount: 2
    argNames:
    - parser
    - force_parse
    argTypes:
    - GF_SAXParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 753
    functionDepth: 5
    functionLinenumber: 753
    functionLinenumberEnd: 976
    functionName: xml_sax_parse
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_parse_intern
    - gf_list_count
    - xml_sax_skip_doctype
    - xml_sax_swap
    - gf_assert
    - xml_sax_store_text
    - xml_sax_flush_text
    - xml_sax_cdata
    - xml_sax_parse_comments
    - xml_sax_parse_entity
    - xml_sax_node_end
    - xml_sax_parse_attribute
    - xml_sax_node_start
    - strcmp
    - gf_free
    - GF_LOG
    - gf_strdup
    - xml_sax_skip_xml_proc
    - strncmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err xml_sax_parse(GF_SAXParser *parser, Bool force_parse)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:981,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/xml_parser.c:992,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/xml_parser.c:995,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - parser
    - string
    argTypes:
    - GF_SAXParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 978
    functionDepth: 0
    functionLinenumber: 978
    functionLinenumberEnd: 999
    functionName: xml_sax_append_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - memcpy
    - strlen
    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:1004,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1007,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:1010,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:1012,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:1018,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: 1023
      start: 1001
    functionDepth: 1
    functionLinenumber: 1001
    functionLinenumberEnd: 1023
    functionName: gf_xml_locate_entity
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - strncmp
    - strlen
    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:1030,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1034,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1042,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1043,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/xml_parser.c:1045,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1046,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1049,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1049,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1050,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/xml_parser.c:1051,1
    - Dst: gf_xml_locate_entity
      Src: /src/gpac/src/utils/xml_parser.c:1053,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1054,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1058,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1059,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1065,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1066,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1070,1
    - Dst: gf_xml_locate_entity
      Src: /src/gpac/src/utils/xml_parser.c:1079,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1083,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1084,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1089,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1097,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1103,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1104,1
    - Dst: xml_sax_append_string
      Src: /src/gpac/src/utils/xml_parser.c:1109,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1110,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 60
    argCount: 2
    argNames:
    - parser
    - current
    argTypes:
    - GF_SAXParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1026
    functionDepth: 6
    functionLinenumber: 1026
    functionLinenumberEnd: 1111
    functionName: gf_xml_sax_parse_intern
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - sprintf
    - gf_free
    - gf_malloc
    - GF_LOG
    - xml_sax_parse
    - gf_xml_locate_entity
    - xml_sax_append_string
    - strrchr
    - strlen
    - strstr
    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:1124,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1125,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/utils/xml_parser.c:1126,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1129,1
    - Dst: gf_xml_sax_parse_intern
      Src: /src/gpac/src/utils/xml_parser.c:1138,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1139,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - parser
    - string
    argTypes:
    - GF_SAXParser*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1113
    functionDepth: 7
    functionLinenumber: 1113
    functionLinenumberEnd: 1141
    functionName: gf_xml_sax_parse
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_parse_intern
    - gf_free
    - gf_malloc
    - gf_utf8_wcslen
    - gf_utf8_wcstombs
    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:1154,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/utils/xml_parser.c:1174,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:1175,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1180,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 32
    argCount: 2
    argNames:
    - parser
    - BOM
    argTypes:
    - GF_SAXParser*
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1181
      start: 1144
    functionDepth: 8
    functionLinenumber: 1144
    functionLinenumberEnd: 1181
    functionName: gf_xml_sax_init
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_parse
    - gf_sys_is_cov_mode
    - format_sax_error
    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:1186,1
    - Dst: gf_list_rem_last
      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:1190,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:1193,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1196,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1198,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1183
    functionDepth: 2
    functionLinenumber: 1183
    functionLinenumberEnd: 1201
    functionName: xml_sax_reset
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_last
    - gf_free
    - 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:1273,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/utils/xml_parser.c:1276,1
    - Dst: MIN
      Src: /src/gpac/src/utils/xml_parser.c:1280,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/xml_parser.c:1282,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/utils/xml_parser.c:1289,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1291,1
    - Dst: GF_SAXParser*::on_progress
      Src: /src/gpac/src/utils/xml_parser.c:1292,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/utils/xml_parser.c:1294,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_parser.c:1309,1
    - Dst: gf_fsize
      Src: /src/gpac/src/utils/xml_parser.c:1312,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/xml_parser.c:1313,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_parser.c:1315,1
    - Dst: gf_fopen
      Src: /src/gpac/src/utils/xml_parser.c:1322,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/xml_parser.c:1323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1324,1
    - Dst: gf_gzopen
      Src: /src/gpac/src/utils/xml_parser.c:1327,1
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/xml_parser.c:1331,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/utils/xml_parser.c:1335,1
    - Dst: xml_sax_read_file
      Src: /src/gpac/src/utils/xml_parser.c:1338,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: 1339
      start: 1260
    functionDepth: 9
    functionLinenumber: 1260
    functionLinenumberEnd: 1339
    functionName: gf_xml_sax_parse_file
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 4
    functionsReached:
    - gf_xml_sax_parse
    - gf_fclose
    - gf_xml_sax_init
    - gf_fopen
    - GF_LOG
    - gf_gzread
    - MIN
    - gf_fsize
    - gf_blob_get
    - gf_fatal_assert
    - GF_SAXParser*::on_progress
    - gf_fread
    - gf_blob_release
    - memcpy
    - gf_gzopen
    - strncmp
    - xml_sax_read_file
    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: 1351
      start: 1341
    functionDepth: 0
    functionLinenumber: 1341
    functionLinenumberEnd: 1351
    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:1360,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1362,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/utils/xml_parser.c:1369,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1372
      start: 1353
    functionDepth: 6
    functionLinenumber: 1353
    functionLinenumberEnd: 1372
    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_opts_get_int
    - GF_SAFEALLOC
    - gf_list_new
    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:1377,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1378,1
    - Dst: gf_fclose
      Src: /src/gpac/src/utils/xml_parser.c:1380,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/utils/xml_parser.c:1382,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1384,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_SAXParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1374
    functionDepth: 5
    functionLinenumber: 1374
    functionLinenumberEnd: 1385
    functionName: gf_xml_sax_del
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 4
    functionsReached:
    - gf_fclose
    - gf_free
    - gf_list_del
    - gf_gzclose
    - xml_sax_reset
    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:1393,1
    - Dst: xml_sax_read_file
      Src: /src/gpac/src/utils/xml_parser.c:1395,1
    - Dst: xml_sax_parse
      Src: /src/gpac/src/utils/xml_parser.c:1397,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - parser
    - do_suspend
    argTypes:
    - GF_SAXParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1400
      start: 1387
    functionDepth: 6
    functionLinenumber: 1387
    functionLinenumberEnd: 1400
    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: 1406
      start: 1403
    functionDepth: 0
    functionLinenumber: 1403
    functionLinenumberEnd: 1406
    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: 1416
      start: 1409
    functionDepth: 0
    functionLinenumber: 1409
    functionLinenumberEnd: 1416
    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: 1425
      start: 1418
    functionDepth: 0
    functionLinenumber: 1418
    functionLinenumberEnd: 1425
    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:1462,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1464,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1466,1
    - Dst: gf_ftell
      Src: /src/gpac/src/utils/xml_parser.c:1473,1
    - Dst: gf_gztell
      Src: /src/gpac/src/utils/xml_parser.c:1475,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1478,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/xml_parser.c:1481,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1483,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1484,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/utils/xml_parser.c:1487,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1489,1
    - Dst: gf_feof
      Src: /src/gpac/src/utils/xml_parser.c:1498,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/utils/xml_parser.c:1500,1
    - Dst: gf_fread
      Src: /src/gpac/src/utils/xml_parser.c:1515,1
    - Dst: gf_gzread
      Src: /src/gpac/src/utils/xml_parser.c:1517,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1521,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1525,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1534,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/xml_parser.c:1537,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1539,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1541,1
    - Dst: strrchr
      Src: /src/gpac/src/utils/xml_parser.c:1550,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1554,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1555,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1557,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1560,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1567,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1569,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:1573,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1576,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1578,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1582,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1584,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:1590,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1592,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1595,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1596,1
    - Dst: strchr
      Src: /src/gpac/src/utils/xml_parser.c:1599,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1601,1
    - Dst: CPYCAT_ALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1606,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1610,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1611,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1612,1
    - Dst: gf_fseek
      Src: /src/gpac/src/utils/xml_parser.c:1616,1
    - Dst: gf_gzrewind
      Src: /src/gpac/src/utils/xml_parser.c:1618,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/utils/xml_parser.c:1619,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: 1623
      start: 1430
    functionDepth: 6
    functionLinenumber: 1430
    functionLinenumberEnd: 1623
    functionName: gf_xml_sax_peek_node
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_gzrewind
    - strstr
    - gf_feof
    - strchr
    - gf_malloc
    - gf_gzseek
    - gf_gztell
    - gf_gzread
    - gf_gzeof
    - gf_ftell
    - strrchr
    - strcmp
    - strlen
    - gf_strlcpy
    - gf_free
    - gf_fseek
    - gf_fread
    - gf_strdup
    - strncmp
    - CPYCAT_ALLOC
    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: 1453
      start: 1444
    functionDepth: 0
    functionLinenumber: 1444
    functionLinenumberEnd: 1453
    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: 1629
      start: 1625
    functionDepth: 0
    functionLinenumber: 1625
    functionLinenumberEnd: 1629
    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:1641,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1642,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: 1644
      start: 1638
    functionDepth: 0
    functionLinenumber: 1638
    functionLinenumberEnd: 1644
    functionName: on_peek_node_start
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_free
    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:1652,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/utils/xml_parser.c:1653,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/utils/xml_parser.c:1655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - file
    - ret
    argTypes:
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1657
      start: 1646
    functionDepth: 10
    functionLinenumber: 1646
    functionLinenumberEnd: 1657
    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: 1664
      start: 1660
    functionDepth: 0
    functionLinenumber: 1660
    functionLinenumberEnd: 1664
    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: 1670
      start: 1666
    functionDepth: 0
    functionLinenumber: 1666
    functionLinenumberEnd: 1670
    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:1692,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1693,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1694,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1695,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1696,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1697,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1702,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1703,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1704,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1705,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: 1708
      start: 1687
    functionDepth: 2
    functionLinenumber: 1687
    functionLinenumberEnd: 1708
    functionName: gf_xml_dom_node_reset
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_rem_last
    - gf_xml_dom_node_del
    - gf_list_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:1714,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1715,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1716,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1717,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1718,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1719,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1720
      start: 1710
    functionDepth: 3
    functionLinenumber: 1710
    functionLinenumberEnd: 1720
    functionName: gf_xml_dom_node_del
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 3
    functionsReached:
    - gf_list_del
    - gf_xml_dom_node_reset
    - gf_free
    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:1730,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1735,1
    - Dst: gf_list_new_prealloc
      Src: /src/gpac/src/utils/xml_parser.c:1740,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1742,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1743,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1744,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1747,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:1756,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1760,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1768,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1772,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1773,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1774,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: 1776
      start: 1724
    functionDepth: 2
    functionLinenumber: 1724
    functionLinenumberEnd: 1776
    functionName: on_dom_node_start
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_new_prealloc
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_list_add
    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:1781,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1782,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1784,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:1784,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1784,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:1784,1
    - Dst: format_sax_error
      Src: /src/gpac/src/utils/xml_parser.c:1786,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1788,1
    - Dst: gf_list_find
      Src: /src/gpac/src/utils/xml_parser.c:1791,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/xml_parser.c:1793,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1797,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1799,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1801,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 19
    argCount: 3
    argNames:
    - cbk
    - name
    - ns
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1804
      start: 1778
    functionDepth: 4
    functionLinenumber: 1778
    functionLinenumberEnd: 1804
    functionName: on_dom_node_end
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_rem_last
    - gf_list_find
    - gf_list_new
    - strcmp
    - strlen
    - gf_xml_dom_node_del
    - gf_list_last
    - gf_list_add
    - format_sax_error
    - 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:1810,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1813,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:1815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:1817,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1822,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:1823,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - cbk
    - content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1824
      start: 1806
    functionDepth: 1
    functionLinenumber: 1806
    functionLinenumberEnd: 1824
    functionName: on_dom_text_content
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - gf_list_last
    - gf_list_add
    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:1830,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1833,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1836
      start: 1826
    functionDepth: 1
    functionLinenumber: 1826
    functionLinenumberEnd: 1836
    functionName: GF_DOMParser *gf_xml_dom_new()
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    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:1841,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1846,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1847,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1848,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/utils/xml_parser.c:1850,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1853,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1855,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1858,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:1859,1
    - Dst: gf_list_last
      Src: /src/gpac/src/utils/xml_parser.c:1860,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/utils/xml_parser.c:1861,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:1862,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - dom
    - full_reset
    argTypes:
    - GF_DOMParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1866
      start: 1838
    functionDepth: 6
    functionLinenumber: 1838
    functionLinenumberEnd: 1866
    functionName: gf_xml_dom_reset
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_xml_sax_del
    - gf_list_del
    - gf_list_del_item
    - gf_list_rem_last
    - gf_xml_dom_node_del
    - gf_list_last
    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:1874,1
    - Dst: gf_list_del
      Src: /src/gpac/src/utils/xml_parser.c:1875,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:1876,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1877
      start: 1868
    functionDepth: 7
    functionLinenumber: 1868
    functionLinenumberEnd: 1877
    functionName: gf_xml_dom_del
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 25
    functionsReached:
    - gf_list_del
    - gf_xml_dom_reset
    - gf_free
    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:1886,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:1887,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1889
      start: 1879
    functionDepth: 3
    functionLinenumber: 1879
    functionLinenumberEnd: 1889
    functionName: gf_xml_dom_detach_root
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_del_item
    - gf_list_get
    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:1894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cbck
    - done
    - tot
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1891
    functionDepth: 0
    functionLinenumber: 1891
    functionLinenumberEnd: 1895
    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:1901,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1902,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/utils/xml_parser.c:1903,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/utils/xml_parser.c:1906,1
    - Dst: gf_xml_dom_reset
      Src: /src/gpac/src/utils/xml_parser.c:1907,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: 1909
      start: 1897
    functionDepth: 10
    functionLinenumber: 1897
    functionLinenumberEnd: 1909
    functionName: gf_xml_dom_parse
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 17
    functionsReached:
    - gf_xml_sax_parse_file
    - gf_xml_dom_reset
    - gf_xml_sax_new
    - gf_list_new
    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:1915,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:1916,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/utils/xml_parser.c:1917,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/utils/xml_parser.c:1918,1
    - Dst: gf_xml_dom_reset
      Src: /src/gpac/src/utils/xml_parser.c:1919,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - dom
    - string
    argTypes:
    - GF_DOMParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1921
      start: 1911
    functionDepth: 9
    functionLinenumber: 1911
    functionLinenumberEnd: 1921
    functionName: gf_xml_dom_parse_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 9
    functionsReached:
    - gf_xml_sax_init
    - gf_xml_dom_reset
    - gf_xml_sax_new
    - gf_list_new
    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: 1929
      start: 1923
    functionDepth: 0
    functionLinenumber: 1923
    functionLinenumberEnd: 1929
    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:1936,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:1938,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_DOMParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1941
      start: 1932
    functionDepth: 1
    functionLinenumber: 1932
    functionLinenumberEnd: 1941
    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: 1948
      start: 1944
    functionDepth: 0
    functionLinenumber: 1944
    functionLinenumberEnd: 1948
    functionName: gf_xml_dom_get_root
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 20
    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:1952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1953
      start: 1949
    functionDepth: 1
    functionLinenumber: 1949
    functionLinenumberEnd: 1953
    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:1957,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1958
      start: 1954
    functionDepth: 1
    functionLinenumber: 1954
    functionLinenumberEnd: 1958
    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:1963,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_DOMParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1964
      start: 1960
    functionDepth: 1
    functionLinenumber: 1960
    functionLinenumberEnd: 1964
    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:1969,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - parser
    - idx
    argTypes:
    - GF_DOMParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1970
      start: 1966
    functionDepth: 1
    functionLinenumber: 1966
    functionLinenumberEnd: 1970
    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:2025,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2026,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2027,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2035,1
    - Dst: SET_STRING_ESCAPED
      Src: /src/gpac/src/utils/xml_parser.c:2037,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: SET_STRING
      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_count
      Src: /src/gpac/src/utils/xml_parser.c:2049,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2051,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:2054,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2055,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2056,1
    - Dst: SET_STRING_ESCAPED
      Src: /src/gpac/src/utils/xml_parser.c:2057,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2058,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:2061,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2062,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2065,1
    - Dst: gf_list_count
      Src: /src/gpac/src/utils/xml_parser.c:2068,1
    - Dst: gf_list_get
      Src: /src/gpac/src/utils/xml_parser.c:2070,1
    - Dst: gf_xml_dom_node_serialize
      Src: /src/gpac/src/utils/xml_parser.c:2071,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
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2079,1
    - Dst: SET_STRING
      Src: /src/gpac/src/utils/xml_parser.c:2080,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: 2082
      start: 1973
    functionDepth: 1
    functionLinenumber: 1973
    functionLinenumberEnd: 2082
    functionName: gf_xml_dom_node_serialize
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - SET_STRING_ESCAPED
    - gf_xml_dom_node_serialize
    - SET_STRING
    - gf_list_get
    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: 1988
      start: 1978
    functionDepth: 0
    functionLinenumber: 1978
    functionLinenumberEnd: 1988
    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: 2022
      start: 1989
    functionDepth: 0
    functionLinenumber: 1989
    functionLinenumberEnd: 2022
    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:2090,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: 2092
      start: 2084
    functionDepth: 2
    functionLinenumber: 2084
    functionLinenumberEnd: 2092
    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:2099,1
    - Dst: strlen
      Src: /src/gpac/src/utils/xml_parser.c:2102,1
    - Dst: gf_xml_dom_node_serialize
      Src: /src/gpac/src/utils/xml_parser.c:2104,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: 2106
      start: 2094
    functionDepth: 2
    functionLinenumber: 2094
    functionLinenumberEnd: 2106
    functionName: gf_xml_dom_serialize_root
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_node_serialize
    - strlen
    - gf_dynstrcat
    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:2113,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/utils/xml_parser.c:2117,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2119,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - node
    - name
    - value
    argTypes:
    - GF_XMLNode*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2109
    functionDepth: 1
    functionLinenumber: 2109
    functionLinenumberEnd: 2121
    functionName: gf_xml_dom_set_attribute
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_xml_dom_create_attribute
    - gf_list_new
    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:2128,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:2129,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2135
      start: 2123
    functionDepth: 2
    functionLinenumber: 2123
    functionLinenumberEnd: 2135
    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:2142,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2145,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2148
      start: 2139
    functionDepth: 1
    functionLinenumber: 2139
    functionLinenumberEnd: 2148
    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:2155,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2158,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - node
    - child
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2159
      start: 2151
    functionDepth: 1
    functionLinenumber: 2151
    functionLinenumberEnd: 2159
    functionName: gf_xml_dom_append_child
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_list_new
    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:2176,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/utils/xml_parser.c:2178,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - node
    - child
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2179
      start: 2172
    functionDepth: 2
    functionLinenumber: 2172
    functionLinenumberEnd: 2179
    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:2186,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2189,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:2191,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2197,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:2199,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/xml_parser.c:2200,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - ns
    - name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2183
    functionDepth: 1
    functionLinenumber: 2183
    functionLinenumberEnd: 2208
    functionName: gf_xml_dom_node_new
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_free
    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:2215,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:2223,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_parser.c:2229,1
    - Dst: strstr
      Src: /src/gpac/src/utils/xml_parser.c:2231,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/xml_parser.c:2234,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/xml_parser.c:2235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:2239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/xml_parser.c:2244,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: 2246
      start: 2210
    functionDepth: 2
    functionLinenumber: 2210
    functionLinenumberEnd: 2246
    functionName: gf_xml_dom_node_check_namespace
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_enum
    - strcmp
    - strstr
    - strncmp
    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:2251,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2254,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:2272,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2276,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/utils/xml_parser.c:2282,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 29
    argCount: 4
    argNames:
    - file
    - before
    - str
    - after
    argTypes:
    - FILE*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2284
      start: 2248
    functionDepth: 2
    functionLinenumber: 2248
    functionLinenumberEnd: 2284
    functionName: gf_xml_dump_string
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 10
    functionsReached:
    - gf_fprintf
    - strlen
    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:2292,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2299,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2301,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:2303,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_parser.c:2305,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/utils/xml_parser.c:2307,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:2309,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2312,1
    - Dst: gf_strdup
      Src: /src/gpac/src/utils/xml_parser.c:2313,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2314,1
    - Dst: gf_list_new
      Src: /src/gpac/src/utils/xml_parser.c:2316,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/utils/xml_parser.c:2318,1
    - Dst: gf_xml_dom_node_clone
      Src: /src/gpac/src/utils/xml_parser.c:2319,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/utils/xml_parser.c:2321,1
    - Dst: gf_list_add
      Src: /src/gpac/src/utils/xml_parser.c:2324,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 1
    argNames:
    - node
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2327
      start: 2287
    functionDepth: 4
    functionLinenumber: 2287
    functionLinenumberEnd: 2327
    functionName: gf_xml_dom_node_clone
    functionSourceFile: /src/gpac/src/utils/xml_parser.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_xml_dom_node_del
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - gf_xml_dom_node_clone
    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:192,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:195,1
    - Dst: strchr
      Src: /src/gpac/src/utils/constants.c:200,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:205,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:208,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - cname
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 215
    functionName: gf_codecid_parse
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strnicmp
    - strchr
    - strcmp
    - strlen
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_codecid_parse(const char *cname)
  - BBCount: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/constants.c:337,1
    - Dst: strncmp
      Src: /src/gpac/src/utils/constants.c:340,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 119
    argCount: 1
    argNames:
    - isobmftype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 220
    functionDepth: 3
    functionLinenumber: 220
    functionLinenumberEnd: 344
    functionName: gf_codec_id_from_isobmf
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 3
    functionsReached:
    - strncmp
    - gf_4cc_to_str
    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: 354
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 354
    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: 365
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 365
    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:370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 374
    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:379,1
    - Dst: gf_opts_get_key_count
      Src: /src/gpac/src/utils/constants.c:380,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/utils/constants.c:382,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 376
    functionDepth: 5
    functionLinenumber: 376
    functionLinenumberEnd: 388
    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:393,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 390
    functionDepth: 1
    functionLinenumber: 390
    functionLinenumberEnd: 396
    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: 406
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 406
    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:412,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 415
      start: 409
    functionDepth: 1
    functionLinenumber: 409
    functionLinenumberEnd: 415
    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:420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 423
    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:433,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - stream_type
    - oti
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 436
    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:441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 444
    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:454,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - codecid
    argTypes:
    - GF_CodecID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 458
    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: 470
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 470
    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: 509
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 509
    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: 520
      start: 511
    functionDepth: 0
    functionLinenumber: 511
    functionLinenumberEnd: 520
    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:527,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:529,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:531,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:534,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:534,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:535,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 522
    functionDepth: 1
    functionLinenumber: 522
    functionLinenumberEnd: 538
    functionName: gf_stream_type_by_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - stricmp
    - strnicmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_stream_type_by_name(const char *val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/constants.c:551,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:555,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:559,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:562,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 546
    functionDepth: 1
    functionLinenumber: 546
    functionLinenumberEnd: 567
    functionName: gf_stream_type_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_strcat
    - GF_LOG
    - 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: 584
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 584
    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: 620
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 620
    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:658,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:660,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:666,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - af_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 654
    functionDepth: 1
    functionLinenumber: 654
    functionLinenumberEnd: 668
    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:678,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - sfmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 670
    functionDepth: 1
    functionLinenumber: 670
    functionLinenumberEnd: 680
    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:693,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - sfmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 681
    functionDepth: 1
    functionLinenumber: 681
    functionLinenumberEnd: 695
    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: gf_strcpy
      Src: /src/gpac/src/utils/constants.c:705,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:709,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:712,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:714,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 699
    functionDepth: 1
    functionLinenumber: 699
    functionLinenumberEnd: 720
    functionName: gf_audio_fmt_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - gf_strcat
    - GF_LOG
    - 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:730,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:735,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:739,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:741,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/constants.c:743,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 724
    functionDepth: 1
    functionLinenumber: 724
    functionLinenumberEnd: 751
    functionName: gf_audio_fmt_all_shortnames
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - GF_LOG
    - gf_strcat
    - strlen
    - memset
    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: 769
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 769
    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: 808
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 808
    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: 825
      start: 810
    functionDepth: 0
    functionLinenumber: 810
    functionLinenumberEnd: 825
    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:843,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - msubtype
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 840
    functionDepth: 1
    functionLinenumber: 840
    functionLinenumberEnd: 849
    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:854,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - afmt
    argTypes:
    - GF_AudioFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 860
      start: 851
    functionDepth: 1
    functionLinenumber: 851
    functionLinenumberEnd: 860
    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:898,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: 900
      start: 862
    functionDepth: 1
    functionLinenumber: 862
    functionLinenumberEnd: 900
    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:940,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_layout
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 942
      start: 933
    functionDepth: 1
    functionLinenumber: 933
    functionLinenumberEnd: 942
    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:951,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_layout
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 953
      start: 944
    functionDepth: 1
    functionLinenumber: 944
    functionLinenumberEnd: 953
    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:967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:969,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - ch_layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 955
    functionDepth: 1
    functionLinenumber: 955
    functionLinenumberEnd: 971
    functionName: gf_audio_fmt_get_layout_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_audio_fmt_get_layout_name
    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:978,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:980,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:985,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 973
    functionDepth: 1
    functionLinenumber: 973
    functionLinenumberEnd: 987
    functionName: gf_audio_fmt_get_layout_from_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - atoi
    - strcmp
    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:997,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - chan_layout
    argTypes:
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 990
    functionDepth: 1
    functionLinenumber: 990
    functionLinenumberEnd: 999
    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:1005,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1012,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1001
    functionDepth: 1
    functionLinenumber: 1001
    functionLinenumberEnd: 1014
    functionName: gf_audio_fmt_get_cicp_from_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - atoi
    - strcmp
    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:1022,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1024
      start: 1016
    functionDepth: 1
    functionLinenumber: 1016
    functionLinenumberEnd: 1024
    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: 1036
      start: 1027
    functionDepth: 0
    functionLinenumber: 1027
    functionLinenumberEnd: 1036
    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:1042,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:1044,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:1045,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1049
      start: 1039
    functionDepth: 1
    functionLinenumber: 1039
    functionLinenumberEnd: 1049
    functionName: gf_audio_fmt_cicp_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_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:1055,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - idx
    - short_name
    - ch_mask
    argTypes:
    - u32
    - char**
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1052
    functionDepth: 1
    functionLinenumber: 1052
    functionLinenumberEnd: 1060
    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: 1096
      start: 1063
    functionDepth: 0
    functionLinenumber: 1063
    functionLinenumberEnd: 1096
    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: 1117
      start: 1098
    functionDepth: 0
    functionLinenumber: 1098
    functionLinenumberEnd: 1117
    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: 1151
      start: 1120
    functionDepth: 0
    functionLinenumber: 1120
    functionLinenumberEnd: 1151
    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:1156,1
    - Dst: gf_audio_fmt_get_dolby_chanmap_from_layout
      Src: /src/gpac/src/utils/constants.c:1157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cicp
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1153
    functionDepth: 2
    functionLinenumber: 1153
    functionLinenumberEnd: 1158
    functionName: gf_audio_fmt_get_dolby_chanmap
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - gf_audio_fmt_get_layout_from_cicp
    - gf_audio_fmt_get_dolby_chanmap_from_layout
    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:1229,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1229,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1231,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1237,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - pf_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1239
      start: 1225
    functionDepth: 1
    functionLinenumber: 1225
    functionLinenumberEnd: 1239
    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:1246,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1246,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1254,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:1256,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 2
    argNames:
    - pf_4cc
    - pf_name
    argTypes:
    - GF_PixelFormat
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1262
      start: 1241
    functionDepth: 0
    functionLinenumber: 1241
    functionLinenumberEnd: 1262
    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:1272,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/constants.c:1272,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1264
    functionDepth: 3
    functionLinenumber: 1264
    functionLinenumberEnd: 1274
    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:1287,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/utils/constants.c:1287,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - pfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1275
    functionDepth: 3
    functionLinenumber: 1275
    functionLinenumberEnd: 1290
    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: 1306
      start: 1292
    functionDepth: 0
    functionLinenumber: 1292
    functionLinenumberEnd: 1306
    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: 1319
      start: 1309
    functionDepth: 0
    functionLinenumber: 1309
    functionLinenumberEnd: 1319
    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: gf_strcpy
      Src: /src/gpac/src/utils/constants.c:1329,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:1339,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1341,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:1344,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:1346,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1323
    functionDepth: 1
    functionLinenumber: 1323
    functionLinenumberEnd: 1352
    functionName: gf_pixel_fmt_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - gf_strcat
    - GF_LOG
    - 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:1371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:1373,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:1377,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:1379,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/utils/constants.c:1381,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1356
    functionDepth: 1
    functionLinenumber: 1356
    functionLinenumberEnd: 1388
    functionName: gf_pixel_fmt_all_shortnames
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_strcat
    - gf_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:1634,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:1634,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: 1643
      start: 1390
    functionDepth: 4
    functionLinenumber: 1390
    functionLinenumberEnd: 1643
    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: 1664
      start: 1645
    functionDepth: 0
    functionLinenumber: 1645
    functionLinenumberEnd: 1664
    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: 1685
      start: 1666
    functionDepth: 0
    functionLinenumber: 1666
    functionLinenumberEnd: 1685
    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:1758,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:1758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 72
    argCount: 1
    argNames:
    - pixfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1687
    functionDepth: 4
    functionLinenumber: 1687
    functionLinenumberEnd: 1762
    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:1843,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:1843,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 81
    argCount: 1
    argNames:
    - pixfmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1847
      start: 1764
    functionDepth: 4
    functionLinenumber: 1764
    functionLinenumberEnd: 1847
    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: 1883
      start: 1849
    functionDepth: 0
    functionLinenumber: 1849
    functionLinenumberEnd: 1883
    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:1910,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - qt_code
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1915
      start: 1907
    functionDepth: 1
    functionLinenumber: 1907
    functionLinenumberEnd: 1915
    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:1920,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - pix_fmt
    argTypes:
    - GF_PixelFormat
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1927
      start: 1917
    functionDepth: 1
    functionLinenumber: 1917
    functionLinenumberEnd: 1927
    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:2010,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - id3tag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2016
      start: 2007
    functionDepth: 1
    functionLinenumber: 2007
    functionLinenumberEnd: 2016
    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:2021,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - itag
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2026
      start: 2018
    functionDepth: 1
    functionLinenumber: 2018
    functionLinenumberEnd: 2026
    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:2031,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2033,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2033,1
    - Dst: strnicmp
      Src: /src/gpac/src/utils/constants.c:2035,1
    - Dst: strlen
      Src: /src/gpac/src/utils/constants.c:2035,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 1
    argNames:
    - tag_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2028
    functionDepth: 1
    functionLinenumber: 2028
    functionLinenumberEnd: 2040
    functionName: gf_itags_find_by_name
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 1
    functionsReached:
    - strlen
    - stricmp
    - GF_ARRAY_LENGTH
    - strnicmp
    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:2045,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2048
      start: 2042
    functionDepth: 1
    functionLinenumber: 2042
    functionLinenumberEnd: 2048
    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:2053,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2056
      start: 2050
    functionDepth: 1
    functionLinenumber: 2050
    functionLinenumberEnd: 2056
    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:2061,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2058
    functionDepth: 1
    functionLinenumber: 2058
    functionLinenumberEnd: 2064
    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:2069,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2072
      start: 2066
    functionDepth: 1
    functionLinenumber: 2066
    functionLinenumberEnd: 2072
    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:2077,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - tag_idx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2080
      start: 2074
    functionDepth: 1
    functionLinenumber: 2074
    functionLinenumberEnd: 2080
    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:2085,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 4
    argNames:
    - idx
    - itag
    - id3tag
    - type
    argTypes:
    - u32*
    - u32*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2093
      start: 2082
    functionDepth: 1
    functionLinenumber: 2082
    functionLinenumberEnd: 2093
    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: 2123
      start: 2116
    functionDepth: 0
    functionLinenumber: 2116
    functionLinenumberEnd: 2123
    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:2130,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2133
      start: 2124
    functionDepth: 0
    functionLinenumber: 2124
    functionLinenumberEnd: 2133
    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:2158,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/constants.c:2162,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2163,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - val
    - ival
    argTypes:
    - char*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2156
    functionDepth: 0
    functionLinenumber: 2156
    functionLinenumberEnd: 2166
    functionName: cicp_parse_int
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - stricmp
    - sprintf
    - sscanf
    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:2171,1
    - Dst: cicp_parse_int
      Src: /src/gpac/src/utils/constants.c:2172,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2174,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:2178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2179,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2182
      start: 2168
    functionDepth: 1
    functionLinenumber: 2168
    functionLinenumberEnd: 2182
    functionName: gf_cicp_parse_color_primaries
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    - GF_LOG
    - stricmp
    - strcmp
    - cicp_parse_int
    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:2187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_mx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2194
      start: 2184
    functionDepth: 1
    functionLinenumber: 2184
    functionLinenumberEnd: 2194
    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:2202,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:2204,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:2205,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2209
      start: 2198
    functionDepth: 1
    functionLinenumber: 2198
    functionLinenumberEnd: 2209
    functionName: gf_cicp_color_primaries_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_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:2241,1
    - Dst: cicp_parse_int
      Src: /src/gpac/src/utils/constants.c:2242,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2244,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:2248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2249,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2252
      start: 2238
    functionDepth: 1
    functionLinenumber: 2238
    functionLinenumberEnd: 2252
    functionName: gf_cicp_parse_color_transfer
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    - GF_LOG
    - stricmp
    - strcmp
    - cicp_parse_int
    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:2257,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_mx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2264
      start: 2254
    functionDepth: 1
    functionLinenumber: 2254
    functionLinenumberEnd: 2264
    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:2272,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:2274,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:2275,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2279
      start: 2268
    functionDepth: 1
    functionLinenumber: 2268
    functionLinenumberEnd: 2279
    functionName: gf_cicp_color_transfer_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_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:2302,1
    - Dst: cicp_parse_int
      Src: /src/gpac/src/utils/constants.c:2303,1
    - Dst: stricmp
      Src: /src/gpac/src/utils/constants.c:2305,1
    - Dst: strcmp
      Src: /src/gpac/src/utils/constants.c:2309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2310,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - val
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2313
      start: 2299
    functionDepth: 1
    functionLinenumber: 2299
    functionLinenumberEnd: 2313
    functionName: gf_cicp_parse_color_matrix
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 2
    functionsReached:
    - GF_ARRAY_LENGTH
    - GF_LOG
    - stricmp
    - strcmp
    - cicp_parse_int
    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:2318,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - cicp_mx
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2325
      start: 2315
    functionDepth: 1
    functionLinenumber: 2315
    functionLinenumberEnd: 2325
    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:2332,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:2334,1
    - Dst: gf_strcat
      Src: /src/gpac/src/utils/constants.c:2335,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2328
    functionDepth: 1
    functionLinenumber: 2328
    functionLinenumberEnd: 2339
    functionName: gf_cicp_color_matrix_all_names
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_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: 2376
      start: 2342
    functionDepth: 0
    functionLinenumber: 2342
    functionLinenumberEnd: 2376
    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: 2406
      start: 2378
    functionDepth: 0
    functionLinenumber: 2378
    functionLinenumberEnd: 2406
    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: 2425
      start: 2408
    functionDepth: 0
    functionLinenumber: 2408
    functionLinenumberEnd: 2425
    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:2441,1
    - Dst: TIMESTAMP_COMPARE
      Src: /src/gpac/src/utils/constants.c:2447,1
    - Dst: TIMESTAMP_COMPARE
      Src: /src/gpac/src/utils/constants.c:2453,1
    - Dst: memset
      Src: /src/gpac/src/utils/constants.c:2462,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2559,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2575,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2600,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2619,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2674,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2686,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2698,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2710,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2722,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2734,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2746,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2760,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2775,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2787,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/constants.c:2809,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/utils/constants.c:2809,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/utils/constants.c:2812,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2821,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2822,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2822,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2823,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/constants.c:2825,1
    - Dst: gf_bs_get_position
      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:2831,1
    - Dst: GF_4CC
      Src: /src/gpac/src/utils/constants.c:2831,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2832,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2833,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2836,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/utils/constants.c:2838,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2841,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:2845,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/utils/constants.c:2846,1
    - Dst: gf_bs_write_u8
      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_int
      Src: /src/gpac/src/utils/constants.c:2851,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/utils/constants.c:2852,1
    - Dst: gf_bs_write_int
      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_write_u32
      Src: /src/gpac/src/utils/constants.c:2856,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2857,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2858,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/utils/constants.c:2861,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/constants.c:2862,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/utils/constants.c:2863,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/utils/constants.c:2864,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/utils/constants.c:2865,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/utils/constants.c:2866,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: 2868
      start: 2426
    functionDepth: 9
    functionLinenumber: 2426
    functionLinenumberEnd: 2868
    functionName: gf_pixel_fmt_get_uncc
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - TIMESTAMP_COMPARE
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_get_content
    - GF_4CC
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_seek
    - memset
    - gf_bs_write_u8
    - gf_pixel_fmt_name
    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:2878,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/constants.c:2888,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/constants.c:2893,1
    - Dst: snprintf
      Src: /src/gpac/src/utils/constants.c:2901,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 30
    argCount: 3
    argNames:
    - dur
    - timescale
    - szDur
    argTypes:
    - u64
    - u32
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2905
      start: 2870
    functionDepth: 1
    functionLinenumber: 2870
    functionLinenumberEnd: 2905
    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:2911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - tc
    - szTimecode
    argTypes:
    - GF_TimeCode*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2913
      start: 2907
    functionDepth: 0
    functionLinenumber: 2907
    functionLinenumberEnd: 2913
    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:2921,1
    - Dst: gf_ceil
      Src: /src/gpac/src/utils/constants.c:2921,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - tc
    - timescale
    argTypes:
    - GF_TimeCode*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2923
      start: 2915
    functionDepth: 1
    functionLinenumber: 2915
    functionLinenumberEnd: 2923
    functionName: gf_timecode_to_timestamp
    functionSourceFile: /src/gpac/src/utils/constants.c
    functionUses: 0
    functionsReached:
    - gf_ceil
    - gf_timestamp_rescale
    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: 2930
      start: 2925
    functionDepth: 0
    functionLinenumber: 2925
    functionLinenumberEnd: 2930
    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:2946,1
    - Dst: TIMECODE_COMPARE
      Src: /src/gpac/src/utils/constants.c:2952,1
    - Dst: TIMECODE_COMPARE
      Src: /src/gpac/src/utils/constants.c:2958,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: 2998
      start: 2931
    functionDepth: 1
    functionLinenumber: 2931
    functionLinenumberEnd: 2998
    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: 760
    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: 24
    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: 212
    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: 1716
    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: 378
    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:
    - _alloca
    - CaptureStackBackTrace
    - SymInitialize
    - SymFromAddr
    - gf_assert
    - gf_memory_log
    - strlen
    - GetCurrentProcess
    - _snprintf
    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
    - gf_assert
    - gf_memory_log
    - snprintf
    - strlen
    - backtrace_symbols
    - free
    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:
    - MALLOC
    - gf_memory_log
    - gf_assert
    - 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:
    - gf_memory_log
    - FREE
    - 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_mem_malloc_tracker
    - gf_assert
    - REALLOC
    - gf_memory_log
    - gf_mem_free_tracker
    - register_address
    - unregister_address
    linkageType: ''
    returnType: void
    signature: void *gf_mem_realloc_tracker(void *ptr, size_t size, const char *filename,
      int line)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:414,1
    - Dst: gf_mem_malloc_tracker
      Src: /src/gpac/src/utils/alloc.c:415,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/alloc.c:416,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - str
    - filename
    - line
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 418
    functionName: gf_mem_strdup_tracker
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_mem_malloc_tracker
    - memcpy
    - 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:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - size
    - filename
    - line
    argTypes:
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 439
    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:443,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: 444
      start: 441
    functionDepth: 0
    functionLinenumber: 441
    functionLinenumberEnd: 444
    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:449,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: 450
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 450
    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:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ptr
    - filename
    - line
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 456
    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:461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - str
    - filename
    - line
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 462
    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: 487
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 487
    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: 496
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 496
    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: 527
      start: 520
    functionDepth: 0
    functionLinenumber: 520
    functionLinenumberEnd: 527
    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:533,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:535,1
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:544,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:546,1
    - Dst: store_backtrace
      Src: /src/gpac/src/utils/alloc.c:549,1
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:556,1
    - Dst: MALLOC
      Src: /src/gpac/src/utils/alloc.c:557,1
    - Dst: memcpy
      Src: /src/gpac/src/utils/alloc.c:559,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: 563
      start: 531
    functionDepth: 2
    functionLinenumber: 531
    functionLinenumberEnd: 563
    functionName: gf_memory_add_stack
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - MALLOC
    - gf_memory_log
    - strlen
    - store_backtrace
    - memcpy
    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: 578
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 578
    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:592,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:595,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - memory_element**
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 581
    functionDepth: 0
    functionLinenumber: 581
    functionLinenumberEnd: 602
    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:608,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/alloc.c:609,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:611,1
    - Dst: gf_memory_add_stack
      Src: /src/gpac/src/utils/alloc.c:612,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: 613
      start: 605
    functionDepth: 3
    functionLinenumber: 605
    functionLinenumberEnd: 613
    functionName: gf_memory_add
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_memory_hash
    - gf_memory_add_stack
    - CALLOC
    - 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:619,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:621,1
    - Dst: gf_memory_find_stack
      Src: /src/gpac/src/utils/alloc.c:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - memory_list
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 623
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 623
    functionName: gf_memory_find
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_memory_hash
    - gf_memory_find_stack
    - gf_assert
    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:630,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/alloc.c:631,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:632,1
    - Dst: gf_memory_del_item_stack
      Src: /src/gpac/src/utils/alloc.c:636,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:646,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - p
    - ptr
    argTypes:
    - memory_list*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 625
    functionDepth: 1
    functionLinenumber: 625
    functionLinenumberEnd: 651
    functionName: gf_memory_del_item
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - CALLOC
    - FREE
    - gf_memory_del_item_stack
    - gf_memory_hash
    - gf_fatal_assert
    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:674,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:675,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/utils/alloc.c:677,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/alloc.c:685,1
    - Dst: gf_memory_add
      Src: /src/gpac/src/utils/alloc.c:687,1
    - Dst: gf_memory_del_item
      Src: /src/gpac/src/utils/alloc.c:688,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:697,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: 698
      start: 670
    functionDepth: 4
    functionLinenumber: 670
    functionLinenumberEnd: 698
    functionName: register_address
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 4
    functionsReached:
    - gf_memory_add
    - gf_mx_new
    - gf_assert
    - gf_memory_del_item
    - gf_mx_p
    - gf_mx_v
    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:704,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:708,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - log_level
    - element
    argTypes:
    - unsigned int
    - memory_element*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 700
    functionDepth: 1
    functionLinenumber: 700
    functionLinenumberEnd: 710
    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:722,1
    - Dst: gf_memory_find
      Src: /src/gpac/src/utils/alloc.c:724,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:726,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:728,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:731,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:732,1
    - Dst: log_backtrace
      Src: /src/gpac/src/utils/alloc.c:734,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:737,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 714
    functionDepth: 2
    functionLinenumber: 714
    functionLinenumberEnd: 739
    functionName: gf_mem_check_address
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_memory_hash
    - gf_memory_log
    - gf_mx_p
    - gf_mx_v
    - log_backtrace
    - gf_memory_find
    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:748,1
    - Dst: gf_memory_find
      Src: /src/gpac/src/utils/alloc.c:759,1
    - Dst: gf_memory_find
      Src: /src/gpac/src/utils/alloc.c:761,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:762,1
    - Dst: gf_memory_hash
      Src: /src/gpac/src/utils/alloc.c:766,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:769,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:772,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:773,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:774,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:775,1
    - Dst: log_backtrace
      Src: /src/gpac/src/utils/alloc.c:776,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/utils/alloc.c:777,1
    - Dst: gf_memory_del_item
      Src: /src/gpac/src/utils/alloc.c:780,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:790,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:791,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/utils/alloc.c:794,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:797,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:810,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:813,1
    - Dst: FREE
      Src: /src/gpac/src/utils/alloc.c:819,1
    - Dst: gf_memory_add
      Src: /src/gpac/src/utils/alloc.c:823,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:829,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 51
    argCount: 3
    argNames:
    - ptr
    - filename
    - line
    argTypes:
    - void*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 743
    functionDepth: 4
    functionLinenumber: 743
    functionLinenumberEnd: 832
    functionName: unregister_address
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 2
    functionsReached:
    - gf_memory_add
    - FREE
    - gf_assert
    - gf_memory_hash
    - gf_memory_log
    - gf_memory_del_item
    - gf_mx_p
    - gf_fatal_assert
    - gf_mx_v
    - gf_mx_del
    - log_backtrace
    - gf_memory_find
    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:838,1
    - Dst: vsnprintf
      Src: /src/gpac/src/utils/alloc.c:839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/utils/alloc.c:841,1
    - Dst: va_end
      Src: /src/gpac/src/utils/alloc.c:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - level
    - fmt
    argTypes:
    - unsigned int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 834
    functionDepth: 1
    functionLinenumber: 834
    functionLinenumberEnd: 843
    functionName: gf_memory_log
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 10
    functionsReached:
    - vsnprintf
    - va_end
    - va_start
    - GF_LOG
    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:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 1
    functionLinenumber: 846
    functionLinenumberEnd: 849
    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: 855
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 855
    functionName: gf_memory_size
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 4
    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:863,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:864,1
    - Dst: gf_assert
      Src: /src/gpac/src/utils/alloc.c:867,1
    - Dst: gf_file_handles_count
      Src: /src/gpac/src/utils/alloc.c:869,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:872,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/utils/alloc.c:875,1
    - Dst: sprintf
      Src: /src/gpac/src/utils/alloc.c:887,1
    - Dst: strchr
      Src: /src/gpac/src/utils/alloc.c:890,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:893,1
    - Dst: log_backtrace
      Src: /src/gpac/src/utils/alloc.c:894,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:895,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:896,1
    - Dst: print_memory_size
      Src: /src/gpac/src/utils/alloc.c:900,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/utils/alloc.c:902,1
    - Dst: enum_open_handles
      Src: /src/gpac/src/utils/alloc.c:906,1
    - Dst: gf_memory_log
      Src: /src/gpac/src/utils/alloc.c:908,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 858
    functionDepth: 2
    functionLinenumber: 858
    functionLinenumberEnd: 911
    functionName: gf_memory_print
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 5
    functionsReached:
    - sprintf
    - strchr
    - gf_file_handles_count
    - gf_assert
    - gf_memory_log
    - gf_mx_p
    - print_memory_size
    - enum_open_handles
    - gf_mx_v
    - log_backtrace
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_memory_print()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/utils/alloc.c:924,1
    - Dst: gf_malloc
      Src: /src/gpac/src/utils/alloc.c:925,1
    - Dst: _vsnprintf
      Src: /src/gpac/src/utils/alloc.c:933,1
    - Dst: gf_realloc
      Src: /src/gpac/src/utils/alloc.c:943,1
    - Dst: gf_free
      Src: /src/gpac/src/utils/alloc.c:945,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - strp
    - fmt
    - ap
    argTypes:
    - char**
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 919
    functionDepth: 0
    functionLinenumber: 919
    functionLinenumberEnd: 952
    functionName: gf_vasprintf
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - strlen
    - gf_realloc
    - _vsnprintf
    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:960,1
    - Dst: gf_vasprintf
      Src: /src/gpac/src/utils/alloc.c:962,1
    - Dst: asprintf
      Src: /src/gpac/src/utils/alloc.c:964,1
    - Dst: va_end
      Src: /src/gpac/src/utils/alloc.c:966,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - strp
    - fmt
    argTypes:
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 955
    functionDepth: 1
    functionLinenumber: 955
    functionLinenumberEnd: 968
    functionName: gf_asprintf
    functionSourceFile: /src/gpac/src/utils/alloc.c
    functionUses: 0
    functionsReached:
    - asprintf
    - va_end
    - gf_vasprintf
    - va_start
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_asprintf(char **strp, const char *fmt, ...)
  - 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: 63
    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: 38
    functionsReached:
    - User::After
    - User::AfterHighRes
    - RTimer::CreateLocal
    - CActiveScheduler::RunIfReady
    - RTimer::After
    - User::WaitForRequest
    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: 1
    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:
    - time
    - srand
    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: gf_strlcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:145,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: gf_strlcpy
      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: gf_strlcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:162,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - buf
    argTypes:
    - char[]
    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:
    - GetUserName
    - getenv
    - getuid
    - getpwuid
    - gf_strlcpy
    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/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: gf_strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:198,1
    - Dst: strlen
      Src: /src/gpac/src/utils/symbian_os.cpp:199,1
    - Dst: gf_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: gf_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: gf_strcpy
      Src: /src/gpac/src/utils/symbian_os.cpp:219,1
    - Dst: gf_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: 1
    functionLinenumber: 186
    functionLinenumberEnd: 234
    functionName: gf_enum_directory
    functionSourceFile: /src/gpac/src/utils/symbian_os.cpp
    functionUses: 15
    functionsReached:
    - gf_strcpy
    - opendir
    - strlwr
    - gf_strcat
    - enum_dir_fct
    - readdir
    - strrchr
    - strcmp
    - strlen
    - stat
    - strstr
    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: 18
    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: 33
    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: 117
    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: 17
    functionsReached:
    - gf_strdup
    - memset
    - 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:
    - CActiveScheduler::Install
    - CActiveScheduler::Current
    - gf_sema_notify
    - GF_LOG
    - GF_Thread*::Run
    - CActiveScheduler::CActiveScheduler
    - DEV_Start
    - TRAP
    - GF_Thread*::threadH::Close
    - 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: 16
    functionsReached:
    - GF_LOG
    - gf_sema_wait
    - gf_sema_new
    - gf_sema_del
    - GF_Thread*::threadH::Create
    - _L
    - RThread::RThread
    - GF_Thread*::threadH::Resume
    - TBuf::Format
    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_th_status
    - GF_Thread*::threadH::Terminate
    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: 3
    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: 13
    functionsReached:
    - Thread_Stop
    - gf_free
    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: 0
    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: 25
    functionsReached:
    - sprintf
    - gf_free
    - gf_malloc
    - RMutex::RMutex
    - GF_Mutex*::hMutex::CreateLocal
    - gf_strdup
    - memset
    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: 26
    functionsReached:
    - gf_free
    - GF_Mutex*::hMutex::Close
    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: 134
    functionsReached:
    - GF_LOG
    - GF_Mutex*::hMutex::Signal
    - gf_th_id
    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: 129
    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_Semaphore*::hSemaphore::CreateGlobal
    - gf_free
    - gf_malloc
    - _L
    - RSemaphore::RSemaphore
    - TBuf::Format
    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: 5
    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: 4
    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: 2
    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: 7
    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: 9
    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: 8
    functionsReached:
    - TTimeIntervalMicroSeconds::Int64
    - RThread::GetCpuTime
    - RThread::Process
    - gf_sys_clock
    - TInt64
    - js_std_urlGet
    - RProcess::GetMemoryInfo
    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_list_count
    - gf_free
    - gf_list_del
    - ModuleInstance*::destroy_func
    - RLibrary*::Close
    - gf_list_get
    - 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:
    - sprintf
    - RLibrary*::Type
    - GF_LOG
    - HBufC::NewL
    - TPtrC8
    - User::StringLength
    - RLibrary*::Load
    - RLibrary*::Lookup
    - RLibrary*::Close
    - RLibrary::RLibrary
    - gf_cfg_set_key
    - HBufC*::Des
    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: gf_strdup
      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_module_is_loaded
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - strncmp
    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_list_count
    - stricmp
    - gf_cfg_get_key_count
    - enum_modules
    - gf_cfg_get_key_name
    - gf_cfg_get_key
    - gf_enum_directory
    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_reverse32
    - sha256_ror
    - sha256_endian_read32
    - sha256_endian_reverse64
    - memcpy
    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
    - gf_utf8_wcslen
    - strlen
    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
    - ConvertUTF8toUTF16
    - strlen
    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_utf8_mbstowcs
    - gf_calloc
    - gf_free
    - 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_utf8_wcstombs
    - gf_calloc
    - 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_LOG
    - gf_dm_sess_notify_state
    - gf_mx_p
    - gf_mx_v
    - curl_multi_remove_handle
    - gf_dm_configure_cache
    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:
    - memchr
    - gf_malloc
    - gf_sys_clock_high_res
    - GF_SAFEALLOC
    - strlen
    - gf_strdup
    - gf_list_add
    - memcpy
    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:
    - curl_easy_setopt
    - gf_realloc
    - memcpy
    - gf_sys_clock_high_res
    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:
    - curl_version_info
    - gf_free
    - gf_file_exists
    - GF_LOG
    - CURL_AT_LEAST_VERSION
    - curl_easy_getinfo
    - gf_strdup
    - curl_easy_option_next
    - gf_log_tool_level_on
    - gf_opts_get_key
    - curl_easy_strerror
    - gf_opts_get_bool
    - curl_easy_init
    - curl_easy_setopt
    - sscanf
    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:
    - curl_multi_perform
    - curl_multi_strerror
    - GF_LOG
    - curl_multi_remove_handle
    - gf_mx_p
    - curl_easy_strerror
    - gf_mx_v
    - curl_easy_getinfo
    - curl_multi_info_read
    - 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:
    - curl_easy_cleanup
    - curl_slist_free_all
    - GF_LOG
    - gf_mx_p
    - gf_mx_v
    - curl_multi_remove_handle
    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
    - strstr
    - strnicmp
    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:
    - SET_LAST_ERR
    - MIN
    - curl_flush
    - curl_easy_getinfo
    - memmove
    - memcpy
    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:
    - gf_dm_sess_notify_state
    - curl_flush
    - SET_LAST_ERR
    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:
    - gf_dm_disconnect
    - SET_LAST_ERR
    - GF_LOG
    - curl_flush
    - gf_sys_clock_high_res
    - gf_log_tool_level_on
    - gf_net_get_utc
    - curl_easy_getinfo
    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:
    - assert_equal_str
    - gf_free
    - 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:
    - sprintf
    - gf_isom_get_track_by_id
    - gf_list_enum
    - gf_isom_get_track_duration
    - gf_strdup
    - gf_odf_desc_new
    - gf_isom_get_filename
    - gf_list_add
    - gf_isom_get_timescale
    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:
    - GF_LOG
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    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_isom_last_error
    - gf_isom_get_media_type
    - gf_bifs_decode_command_list
    - gf_isom_get_edit
    - gf_isom_get_sample_count
    - gf_isom_get_sample
    - gf_laser_decoder_del
    - gf_list_add
    - gf_isom_get_edits_count
    - mp4_report
    - gf_bifs_decoder_new
    - gf_odf_codec_del
    - gf_odf_codec_get_com
    - gf_laser_decoder_new
    - gf_isom_get_media_timescale
    - gf_isom_get_esd
    - UpdateODCommand
    - gf_bifs_decoder_configure_stream
    - gf_odf_codec_set_au
    - gf_odf_codec_decode
    - gf_laser_decode_command_list
    - gf_set_progress
    - gf_odf_codec_new
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_isom_get_mpeg4_subtype
    - gf_fclose
    - gf_isom_text_set_streaming_mode
    - gf_isom_sample_del
    - gf_laser_decoder_configure_stream
    - gf_sm_stream_new
    - gf_isom_get_timescale
    - gf_sm_stream_au_new
    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_odf_desc_del
    - gf_isom_get_track_count
    - gf_isom_is_track_in_root_od
    - gf_isom_last_error
    - gf_isom_get_media_type
    - GF_LOG
    - gf_sm_isom_suspend
    - gf_isom_get_track_by_id
    - gf_isom_get_esd
    - gf_isom_get_root_od
    - gf_sys_is_cov_mode
    - gf_odf_get_bifs_config
    - mp4_report
    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_command_field_new
    - gf_sg_command_new
    - gf_node_register
    - gf_sg_find_node_by_name
    - gf_node_list_add_child
    - gf_list_add
    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:
    - sprintf
    - gf_list_count
    - gf_node_set_id
    - s2b_new_node
    - gf_list_enum
    - s2b_insert_appearance
    - s2b_get_color
    - gf_node_register
    - s2b_same_color
    - gf_list_add
    - s2b_get_alpha
    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:
    - gf_mx2d_init
    - gf_invfix
    - gf_mx2d_pre_multiply
    - FLT2FIX
    - gf_divfix
    - s2b_get_center_bounds
    - s2b_new_node
    - INT2FIX
    - s2b_get_color
    - gf_node_register
    - gf_sg_vrml_mf_alloc
    - gf_node_get_field_by_name
    - s2b_get_alpha
    - s2b_get_matrix
    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:
    - gf_mx2d_init
    - sprintf
    - s2b_new_node
    - gf_mx2d_add_scale
    - gf_node_register
    - gf_sg_find_node_by_name
    - gf_node_get_field_by_name
    - s2b_get_matrix
    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_gradient
    - s2b_get_appearance
    - swf_report
    - s2b_get_bitmap
    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_set_appearance
    - gf_node_init
    - s2b_new_node
    - gf_assert
    - gf_sg_proto_create_instance
    - gf_sg_vrml_mf_append
    - gf_node_register
    - gf_node_get_field_by_name
    - gf_sg_find_proto
    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:
    - s2b_merge_curve2d
    - gf_node_unregister
    - gf_node_register
    - 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_realloc
    - gf_malloc
    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_insert_rec_in_coord
    - gf_list_count
    - sprintf
    - s2b_shape_to_curve2d
    - gf_node_set_id
    - s2b_insert_shape
    - s2b_new_node
    - gf_list_enum
    - gf_node_new
    - gf_node_register
    - gf_list_get
    - gf_list_add
    - s2b_insert_symbol
    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:
    - sprintf
    - gf_node_get_tag
    - gf_node_set_id
    - gf_list_get
    - gf_node_get_class_name
    - swf_find_font
    - swf_report
    - gf_node_register
    - gf_sg_find_node_by_name
    - s2b_insert_symbol
    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_node_get_tag
    - s2b_new_node
    - gf_assert
    - gf_node_unregister
    - gf_malloc
    - s2b_get_appearance
    - swf_find_font
    - swf_report
    - memcpy
    - s2b_insert_symbol
    - gf_divfix
    - gf_list_enum
    - gf_node_insert_child
    - sprintf
    - FLT2FIX
    - gf_free
    - gf_node_set_id
    - s2b_get_glyph
    - gf_sg_vrml_mf_append
    - gf_utf8_wcstombs
    - gf_node_register
    - gf_strdup
    - gf_sg_vrml_mf_reset
    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: gf_dynstrcat
      Src: /src/gpac/src/scene_manager/swf_bifs.c:964,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/swf_bifs.c:965,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 3
    argNames:
    - sax_cbck
    - content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 958
    functionDepth: 1
    functionLinenumber: 958
    functionLinenumberEnd: 966
    functionName: swf_ntext
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - strlen
    - gf_dynstrcat
    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:980,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:988,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:993,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:994,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:996,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1002,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1003,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1006,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1009,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1012,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1015,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1019,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1020,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1021,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1023,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1024,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1027,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1028,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1035,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1036,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1037,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1038,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1041,1
    - Dst: gf_free
      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: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1050,1
    - Dst: s2b_get_appearance
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1051,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1053,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1056,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1057,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1060,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1063,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1066,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1069,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1074,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1075,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1077,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1078,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1080,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1081,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1086,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1089,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1090,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 100
    argCount: 2
    argNames:
    - read
    - text
    argTypes:
    - SWFReader*
    - SWFEditText*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1093
      start: 969
    functionDepth: 12
    functionLinenumber: 969
    functionLinenumberEnd: 1093
    functionName: swf_bifs_define_edit_text
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - gf_xml_sax_parse
    - gf_free
    - gf_node_set_id
    - gf_xml_sax_del
    - gf_xml_sax_init
    - gf_strcat
    - s2b_new_node
    - s2b_get_appearance
    - gf_node_insert_child
    - gf_sg_vrml_mf_append
    - gf_xml_sax_new
    - gf_node_register
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - s2b_insert_symbol
    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:1107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1109,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1112,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1113,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1114,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1116,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1117,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1123,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 1097
    functionDepth: 2
    functionLinenumber: 1097
    functionLinenumberEnd: 1129
    functionName: swf_bifs_end_of_clip
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_sg_find_node_by_name
    - gf_sg_command_new
    - gf_sg_command_field_new
    - gf_node_register
    - gf_list_get
    - gf_list_insert
    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:1137,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1138,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1140,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1142,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - read
    - depth
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1131
    functionDepth: 3
    functionLinenumber: 1131
    functionLinenumberEnd: 1147
    functionName: swf_bifs_allocate_depth
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_node_insert_child
    - sprintf
    - gf_node_register
    - 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:1155,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1157,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1163,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1165,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1166,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1176,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1179,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1186,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1188,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 2
    argNames:
    - read
    - root_only
    argTypes:
    - SWFReader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1189
      start: 1149
    functionDepth: 2
    functionLinenumber: 1149
    functionLinenumberEnd: 1189
    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_sm_stream_new
    - gf_list_add
    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:1195,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1199,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1201,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1205,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1206,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1207,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - read
    - at_time
    - od
    argTypes:
    - SWFReader*
    - u32
    - GF_ObjectDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1191
    functionDepth: 2
    functionLinenumber: 1191
    functionLinenumberEnd: 1208
    functionName: swf_insert_od
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_list_enum
    - gf_odf_com_new
    - 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: 1213
      start: 1210
    functionDepth: 0
    functionLinenumber: 1210
    functionLinenumberEnd: 1213
    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: 1218
      start: 1215
    functionDepth: 0
    functionLinenumber: 1215
    functionLinenumberEnd: 1218
    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:1234,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1238,1
    - Dst: swf_get_od_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1241,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1242,1
    - Dst: swf_get_es_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1244,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1252,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1254,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1257,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1259,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1264,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1265,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1266,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1268,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1269,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1273,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1274,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1277,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1279,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1280,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1282,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1283,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1290,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1291,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1295,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1296,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1297,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1298,1
    - Dst: gf_node_register
      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_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1301,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1302,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1308,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1313,1
    - Dst: swf_parse_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1315,1
    - Dst: swf_bifs_end_of_clip
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1318,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 69
    argCount: 2
    argNames:
    - read
    - nb_frames
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1325
      start: 1221
    functionDepth: 10
    functionLinenumber: 1221
    functionLinenumberEnd: 1325
    functionName: swf_bifs_define_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_new_node
    - swf_get_es_id
    - swf_init_od
    - gf_assert
    - gf_sg_vrml_mf_alloc
    - gf_list_add
    - swf_insert_od
    - swf_parse_sprite
    - gf_sg_find_node_by_name
    - gf_node_list_add_child
    - swf_get_od_id
    - gf_node_insert_child
    - gf_odf_desc_del
    - sprintf
    - gf_node_set_id
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_node_register
    - gf_sm_stream_new
    - swf_bifs_end_of_clip
    - gf_node_get_field_by_name
    - gf_sm_stream_au_new
    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:1340,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1341,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1344,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1346,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1347,1
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1351,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1355,1
    - Dst: swf_get_od_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1357,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1358,1
    - Dst: swf_get_es_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1360,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1368,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1371,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1372,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1377,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1381,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1383,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1387,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1388,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1389,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1391,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1393,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1395,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1396,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1403,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1406,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1419,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1420,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1423,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1424,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 74
    argCount: 3
    argNames:
    - read
    - snd
    - soundstream_first_block
    argTypes:
    - SWFReader*
    - SWFSound*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1436
      start: 1327
    functionDepth: 10
    functionLinenumber: 1327
    functionLinenumberEnd: 1436
    functionName: swf_bifs_setup_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_odf_desc_del
    - gf_node_set_id
    - swf_insert_od
    - s2b_new_node
    - swf_get_es_id
    - swf_init_od
    - swf_get_od_id
    - gf_node_insert_child
    - gf_node_get_field_by_name
    - gf_odf_desc_new
    - gf_node_register
    - gf_sg_vrml_mf_alloc
    - gf_sg_find_node_by_name
    - gf_strdup
    - gf_list_add
    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:1449,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1453,1
    - Dst: swf_get_od_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1455,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1456,1
    - Dst: swf_get_es_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1458,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1460,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1463,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1465,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1468,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1472,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1474,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1478,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1479,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1480,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1482,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1485,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1487,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1489,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1492,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1495,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1496,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 39
    argCount: 3
    argNames:
    - read
    - ID
    - fileName
    argTypes:
    - SWFReader*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1438
    functionDepth: 10
    functionLinenumber: 1438
    functionLinenumberEnd: 1500
    functionName: swf_bifs_setup_image
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - sprintf
    - gf_node_set_id
    - swf_insert_od
    - s2b_new_node
    - swf_get_es_id
    - swf_init_od
    - swf_get_od_id
    - gf_node_get_field_by_name
    - gf_odf_desc_new
    - gf_node_register
    - gf_sg_vrml_mf_alloc
    - gf_strdup
    - gf_list_add
    - s2b_insert_symbol
    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:1506,1
    - Dst: s2b_get_matrix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1514,1
    - Dst: s2b_get_color_matrix
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1516,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1519,1
    - Dst: gf_node_register
      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:1522,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1523,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1524,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1525,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
    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: 1533
      start: 1503
    functionDepth: 11
    functionLinenumber: 1503
    functionLinenumberEnd: 1533
    functionName: s2b_wrap_node
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_mx2d_is_identity
    - s2b_get_color_matrix
    - gf_node_insert_child
    - gf_node_register
    - s2b_get_matrix
    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:1544,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1546,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1548,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1550,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1558,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1559,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1561,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1563,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1564,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1568,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1570,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1571,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1572,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1574,1
    - Dst: gf_sg_vrml_field_copy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1576,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1583,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1585,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: 1586
      start: 1537
    functionDepth: 6
    functionLinenumber: 1537
    functionLinenumberEnd: 1586
    functionName: s2b_set_field
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_copy
    - gf_list_count
    - gf_sg_command_field_new
    - gf_free
    - gf_sg_command_new
    - gf_sg_vrml_field_pointer_new
    - gf_list_add
    - gf_node_register
    - gf_list_get
    - gf_strdup
    - gf_list_insert
    - gf_node_get_field_by_name
    - 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:1591,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1593,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1594,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1595,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1596,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - read
    - xrgb
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1598
      start: 1588
    functionDepth: 7
    functionLinenumber: 1588
    functionLinenumberEnd: 1598
    functionName: swf_bifs_set_backcol
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_set_field
    - INT2FIX
    - 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:1606,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1607,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1610,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - read
    - snd
    - stop
    argTypes:
    - SWFReader*
    - SWFSound*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1600
    functionDepth: 7
    functionLinenumber: 1600
    functionLinenumberEnd: 1613
    functionName: swf_bifs_start_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - sprintf
    - s2b_set_field
    - 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:1621,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1622,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1628,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1630,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1638,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1640,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1642,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1643,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1648,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1651,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: 1652
      start: 1615
    functionDepth: 7
    functionLinenumber: 1615
    functionLinenumberEnd: 1652
    functionName: s2b_control_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_list_count
    - gf_sg_find_node_by_name
    - s2b_set_field
    - gf_list_get
    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:1662,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1665,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1666,1
    - Dst: s2b_wrap_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1672,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1675,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1676,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1677,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1678,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1679,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1685,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1686,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1690,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1690,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1692,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1696,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1698,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1700,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1706,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1708,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: 1712
      start: 1654
    functionDepth: 12
    functionLinenumber: 1654
    functionLinenumberEnd: 1712
    functionName: swf_bifs_place_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - gf_sg_command_field_new
    - gf_sg_command_new
    - s2b_get_node
    - gf_list_count
    - gf_list_get
    - s2b_control_sprite
    - strnicmp
    - gf_node_register
    - s2b_wrap_node
    - gf_sg_find_node_by_name
    - gf_node_get_name
    - gf_list_add
    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:1720,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1721,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1722,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1723,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1724,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1729,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1730,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1731,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1734,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 3
    argNames:
    - read
    - depth
    - ID
    argTypes:
    - SWFReader*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1736
      start: 1714
    functionDepth: 8
    functionLinenumber: 1714
    functionLinenumberEnd: 1736
    functionName: swf_bifs_remove_obj
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_sg_command_field_new
    - gf_sg_command_new
    - s2b_control_sprite
    - gf_node_register
    - gf_sg_find_node_by_name
    - gf_list_add
    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:1746,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1749,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1750,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1751,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1752,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1753,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1758,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1777,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1783,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1738
    functionDepth: 3
    functionLinenumber: 1738
    functionLinenumberEnd: 1791
    functionName: swf_bifs_show_frame
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - gf_list_count
    - gf_sg_command_field_new
    - gf_sg_command_new
    - gf_node_register
    - gf_sg_find_node_by_name
    - gf_list_add
    - 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:1796,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1802,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1805,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1806,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: 1808
      start: 1794
    functionDepth: 10
    functionLinenumber: 1794
    functionLinenumberEnd: 1808
    functionName: s2b_button_add_child
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_node_insert_child
    - s2b_new_node
    - gf_node_set_id
    - gf_node_register
    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:1812,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1813,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1815,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1819,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1821,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: 1822
      start: 1810
    functionDepth: 2
    functionLinenumber: 1810
    functionLinenumberEnd: 1822
    functionName: s2b_button_add_route
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_sg_command_new
    - gf_node_get_id
    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:1841,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1842,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1845,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1847,1
    - Dst: s2b_get_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1855,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1857,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1858,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1861,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1862,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1866,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1867,1
    - Dst: s2b_insert_symbol
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1869,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1872,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1873,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1875,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1878,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1879,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1881,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1884,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1885,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1887,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1890,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1891,1
    - Dst: s2b_button_add_route
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1893,1
    - Dst: s2b_get_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1903,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1906,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1907,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1909,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1910,1
    - Dst: s2b_wrap_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1915,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1917,1
    - Dst: s2b_button_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1918,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1921,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1922,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1929,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1930,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1933,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1941,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1944,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1948,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1950,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1954,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1955,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1957,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1959,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 102
    argCount: 2
    argNames:
    - read
    - btn
    argTypes:
    - SWFReader*
    - SWF_Button*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1965
      start: 1825
    functionDepth: 12
    functionLinenumber: 1825
    functionLinenumberEnd: 1965
    functionName: swf_bifs_define_button
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_node_set_id
    - s2b_get_node
    - s2b_insert_symbol
    - gf_malloc
    - s2b_new_node
    - gf_list_new
    - s2b_control_sprite
    - s2b_set_field
    - gf_node_register
    - s2b_wrap_node
    - gf_sg_find_node_by_name
    - gf_node_list_add_child
    - gf_list_add
    - s2b_button_add_route
    - s2b_button_add_child
    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:1971,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1973,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1974,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1975,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1976,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1978,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1981,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1983,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1984,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1985,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1986,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/swf_bifs.c:1987,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - read
    - is_destroy
    argTypes:
    - SWFReader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1990
      start: 1967
    functionDepth: 3
    functionLinenumber: 1967
    functionLinenumberEnd: 1990
    functionName: swf_bifs_finalize
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - swf_bifs_end_of_clip
    - gf_list_get
    - gf_node_unregister
    - 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:2020,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2023,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2028,1
    - Dst: s2b_set_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2030,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2033,1
    - Dst: s2b_control_sprite
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2036,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 2
    argNames:
    - read
    - act
    argTypes:
    - SWFReader*
    - SWFAction*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2043
      start: 1992
    functionDepth: 8
    functionLinenumber: 1992
    functionLinenumberEnd: 2043
    functionName: swf_bifs_action
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - s2b_set_field
    - s2b_control_sprite
    - 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:2075,1
    - Dst: swf_nstart
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2076,1
    - Dst: swf_nend
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2077,1
    - Dst: swf_ntext
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2078,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2083,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2086,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2088,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2089,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2090,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2093,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2096,1
    - Dst: gf_node_register
      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_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2101,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2102,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2103,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2104,1
    - Dst: sprintf
      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_sys_is_test_mode
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2108,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2109,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2111,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2111,1
    - Dst: gf_gpac_copyright
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2111,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2113,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2116,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2120,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2121,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2122,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2125,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2126,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2127,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2128,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2131,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2132,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2133,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2134,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2136,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2137,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2138,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2139,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2142,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2143,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2144,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2145,1
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2154,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2167,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2169,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2170,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2171,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2173,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2175,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2176,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2179,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2182,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2184,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2187,1
    - Dst: swf_init_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2194,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2204,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2207,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2214,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2216,1
    - Dst: swf_insert_od
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2217,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2219,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2225,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2228,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2231,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2232,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2233,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2235,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2236,1
    - Dst: s2b_new_node
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2243,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2246,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2247,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2248,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2250,1
    - Dst: gf_sg_vrml_mf_alloc
      Src: /src/gpac/src/scene_manager/swf_bifs.c:2251,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 145
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2257
      start: 2045
    functionDepth: 10
    functionLinenumber: 2045
    functionLinenumberEnd: 2257
    functionName: swf_to_bifs_init
    functionSourceFile: /src/gpac/src/scene_manager/swf_bifs.c
    functionUses: 0
    functionsReached:
    - swf_nend
    - gf_gpac_version
    - s2b_new_node
    - swf_init_od
    - swf_nstart
    - gf_sg_vrml_mf_alloc
    - gf_sg_proto_new
    - gf_list_add
    - gf_sg_proto_field_get_field
    - swf_insert_od
    - gf_sg_vrml_mf_reset
    - gf_sys_is_test_mode
    - gf_node_list_add_child
    - gf_sg_proto_field_new
    - swf_ntext
    - gf_node_insert_child
    - sprintf
    - gf_bifs_proto_field_set_aq_info
    - gf_sg_command_new
    - gf_node_set_id
    - gf_odf_desc_del
    - gf_sys_is_cov_mode
    - gf_odf_desc_esd_new
    - gf_sg_vrml_mf_append
    - gf_odf_desc_new
    - gf_sm_stream_new
    - FIX2INT
    - gf_node_register
    - gf_strdup
    - gf_gpac_copyright
    - gf_node_get_field_by_name
    - gf_sm_stream_au_new
    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_SAFEALLOC
    - gf_list_new
    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_add
    - GF_SAFEALLOC
    - gf_list_enum
    - gf_list_new
    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_list_count
    - gf_sg_command_del
    - gf_free
    - gf_odf_com_del
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    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_list_last
    - gf_list_rem_last
    - gf_sm_au_del
    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_sm_reset_stream
    - gf_free
    - 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: 5
    functionsReached:
    - gf_list_count
    - gf_odf_desc_del
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_sm_delete_stream
    - gf_list_rem
    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_odf_desc_del
    - gf_list_enum
    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_malloc
    - gf_list_insert
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_list_new
    - memset
    - gf_list_add
    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_LOG
    - gf_list_count
    - gf_node_parent_of
    - gf_list_get
    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:
    - gf_list_count
    - gf_sg_command_del
    - gf_node_get_id
    - GF_LOG
    - gf_list_get
    - node_in_commands_subtree
    - 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_count
    - gf_sm_get_stream
    - gf_sg_command_del
    - gf_sg_command_new
    - GF_LOG
    - gf_list_get
    - gf_sm_au_del
    - gf_list_del
    - gf_assert
    - gf_sg_command_apply
    - store_or_aggregate
    - gf_list_new
    - gf_list_insert
    - gf_list_add
    - gf_sm_stream_au_new
    - gf_list_rem
    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: gf_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: 5
    functionsReached:
    - gf_strcpy
    - gf_sm_load_init_xmt
    - gf_file_ext_start
    - gf_free
    - strlwr
    - gf_sm_load_init_isom
    - GF_LOG
    - gf_sm_load_init_swf
    - gf_sm_load_init_bt
    - gf_sm_load_init_qt
    - strcmp
    - strlen
    - gf_sm_load_init_svg
    - strstr
    - gf_xml_get_root_type
    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: 5
    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: 4
    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:
    - strchr
    - gf_free
    - gf_malloc
    - gf_file_load_data
    - GF_LOG
    - sscanf
    - gf_url_concatenate
    - strnicmp
    - gf_base64_decode
    - strlen
    - strstr
    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_free
    - gf_malloc
    - zError
    - GF_LOG
    - gf_bs_get_size
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - memset
    - uncompress
    - 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:
    - swf_read_int
    - swf_read_sint
    - FLT2FIX
    - swf_align
    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_read_sint
    - swf_read_int
    - swf_align
    - 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:
    - memset
    - swf_read_sint
    - FLT2FIX
    - swf_read_int
    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
    - strlen
    - gf_strdup
    - swf_read_int
    - 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_SAFEALLOC
    - gf_free
    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:
    - memset
    - memcpy
    - 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
    - gf_malloc
    - FLT2FIX
    - swf_get_argb
    - swf_get_color
    - swf_get_16
    - swf_clone_shape_rec
    - swf_align
    - swf_get_matrix
    - swf_read_int
    - gf_list_add
    - memcpy
    - 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:
    - gf_realloc
    - swf_path_realloc_pts
    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_malloc
    - gf_assert
    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_rem
    - swf_free_shape_rec
    - gf_list_get
    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:
    - gf_realloc
    - memcpy
    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_list_count
    - gf_acos
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_add
    - swf_path_realloc_pts
    - gf_v2d_len
    - gf_list_get
    - ABSDIFF
    - gf_divfix
    - swf_append_path
    - gf_mulfix
    - gf_list_new
    - swf_path_add_type
    - gf_free
    - GF_LOG
    - gf_list_del
    - memset
    - 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:
    - gf_list_count
    - swf_resort_path
    - swf_reset_rec_list
    - swf_append_path
    - swf_referse_path
    - gf_list_get
    - swf_free_shape_rec
    - SWFReader*::define_shape
    - 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
    - gf_list_del
    - gf_list_get
    - swf_read_sint
    - swf_path_add_com
    - swf_flush_shape
    - swf_reset_rec_list
    - swf_read_int
    - swf_get_rec
    - swf_get_16
    - swf_align
    - gf_list_new
    - swf_parse_styles
    - memset
    - gf_list_add
    - 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_SAFEALLOC
    - gf_list_enum
    - gf_list_add
    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:
    - swf_skip_data
    - gf_free
    - swf_get_string
    - DO_ACT
    - gf_bs_is_overflow
    - memset
    - SWFReader*::action
    - swf_get_16
    - swf_read_int
    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:
    - gf_bs_align
    - swf_get_colormatrix
    - SWFReader*::define_button
    - swf_read_int
    - swf_get_16
    - gf_bs_read_int
    - swf_align
    - gf_cmx_init
    - swf_get_matrix
    - memset
    - swf_actions
    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_mx2d_init
    - gf_free
    - swf_get_string
    - swf_get_depth_entry
    - swf_get_colormatrix
    - swf_get_16
    - SWFReader*::place_obj
    - swf_report
    - SWFReader*::allocate_depth
    - swf_align
    - gf_cmx_init
    - swf_get_matrix
    - swf_read_int
    - memcpy
    - swf_mat_is_identity
    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_depth_entry
    - swf_get_16
    - 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
    - gf_malloc
    - swf_seek_file_to
    - GF_LOG
    - gf_list_new
    - swf_parse_shape_def
    - swf_get_rec
    - swf_get_16
    - GF_SAFEALLOC
    - swf_get_s16
    - swf_align
    - swf_get_file_pos
    - swf_get_32
    - swf_read_int
    - gf_list_add
    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
    - gf_malloc
    - swf_find_font
    - swf_get_16
    - swf_report
    - swf_read_int
    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:
    - gf_list_count
    - swf_get_argb
    - SWFReader*::define_text
    - GF_SAFEALLOC
    - gf_list_add
    - gf_malloc
    - swf_report
    - swf_align
    - gf_list_get
    - swf_get_rec
    - swf_get_16
    - gf_list_new
    - FLT2FIX
    - gf_free
    - gf_list_del
    - swf_get_color
    - swf_get_s16
    - swf_get_matrix
    - swf_read_int
    - 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
    - gf_free
    - swf_get_string
    - swf_get_argb
    - swf_read_int
    - swf_get_rec
    - swf_get_16
    - swf_align
    - memset
    - SWFReader*::define_edit_text
    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_fclose
    - gf_free
    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_list_count
    - gf_free
    - SWFReader*::define_sprite
    - gf_list_del
    - gf_list_new
    - swf_get_16
    - gf_list_get
    - 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_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:1840,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/scene_manager/swf_parse.c:1841,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:1843,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:1845,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:1848,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1849,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:1857,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:1860,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1866,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:1869,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/swf_parse.c:1872,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1876,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1877,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 61
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1881
      start: 1807
    functionDepth: 7
    functionLinenumber: 1807
    functionLinenumberEnd: 1881
    functionName: swf_def_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_ARRAY_LENGTH
    - gf_fopen
    - gf_strdup
    - swf_read_data
    - gf_fwrite
    - swf_get_16
    - GF_SAFEALLOC
    - swf_report
    - snprintf
    - gf_dynstrcat
    - swf_get_32
    - swf_read_int
    - gf_list_add
    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:1894,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1895,1
    - 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: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:1900,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:1902,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:1903,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:1904,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1908,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:1911,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1912,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1891
    functionDepth: 7
    functionLinenumber: 1891
    functionLinenumberEnd: 1916
    functionName: swf_skip_soundinfo
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_32
    - swf_read_int
    - swf_get_16
    - memset
    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:1923,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - read
    - ID
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1927
      start: 1918
    functionDepth: 2
    functionLinenumber: 1918
    functionLinenumberEnd: 1927
    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:1932,1
    - Dst: swf_skip_soundinfo
      Src: /src/gpac/src/scene_manager/swf_parse.c:1934,1
    - Dst: sndswf_get_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1936,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1938,1
    - Dst: SWFReader*::setup_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1942,1
    - Dst: SWFReader*::start_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1946,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1947
      start: 1929
    functionDepth: 8
    functionLinenumber: 1929
    functionLinenumberEnd: 1947
    functionName: swf_start_sound
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_skip_soundinfo
    - SWFReader*::setup_sound
    - sndswf_get_sound
    - SWFReader*::start_sound
    - swf_get_16
    - swf_report
    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:1955,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:1956,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:1959,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:1962,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_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1977,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1978,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1982,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1983,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:1989,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:1989,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: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:1993,1
    - Dst: SWFReader*::setup_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:1994,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:1997,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:1998,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2002
      start: 1949
    functionDepth: 8
    functionLinenumber: 1949
    functionLinenumberEnd: 2002
    functionName: swf_soundstream_hdr
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_ARRAY_LENGTH
    - SWFReader*::setup_sound
    - GF_SAFEALLOC
    - swf_report
    - swf_func_skip
    - snprintf
    - gf_strdup
    - swf_read_int
    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:2007,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2015,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2017,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2018,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2024,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2026,1
    - Dst: SWFReader*::setup_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:2031,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2038,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:2042,1
    - Dst: swf_read_int
      Src: /src/gpac/src/scene_manager/swf_parse.c:2043,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: GF_4CC
      Src: /src/gpac/src/scene_manager/swf_parse.c:2046,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/scene_manager/swf_parse.c:2047,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2053,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2060,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2063,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2064,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2072,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 54
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 2004
    functionDepth: 8
    functionLinenumber: 2004
    functionLinenumberEnd: 2075
    functionName: swf_soundstream_block
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_fopen
    - SWFReader*::setup_sound
    - GF_4CC
    - swf_read_data
    - swf_get_16
    - swf_func_skip
    - gf_fwrite
    - swf_read_int
    - gf_realloc
    - gf_mp3_frame_size
    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:2081,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2086,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2087,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2090
      start: 2077
    functionDepth: 7
    functionLinenumber: 2077
    functionLinenumberEnd: 2090
    functionName: swf_def_hdr_jpeg
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_read_data
    - swf_report
    - gf_malloc
    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:2106,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:2109,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2119,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2119,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: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2125,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2132,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2135,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2138,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2141,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2145,1
    - Dst: memmove
      Src: /src/gpac/src/scene_manager/swf_parse.c:2154,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2163,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2168,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2171,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2184,1
    - Dst: gf_img_parse
      Src: /src/gpac/src/scene_manager/swf_parse.c:2185,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2186,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2189,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2191,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/swf_parse.c:2194,1
    - Dst: gf_img_jpeg_dec
      Src: /src/gpac/src/scene_manager/swf_parse.c:2195,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2197,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2201,1
    - Dst: swf_read_data
      Src: /src/gpac/src/scene_manager/swf_parse.c:2203,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2206,1
    - Dst: uncompress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2208,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2213,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2217,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2217,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: gf_realloc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2223,1
    - Dst: gf_img_png_enc
      Src: /src/gpac/src/scene_manager/swf_parse.c:2224,1
    - Dst: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2226,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2227,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2228,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2231,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2234,1
    - Dst: SWFReader*::setup_image
      Src: /src/gpac/src/scene_manager/swf_parse.c:2237,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 100
    argCount: 2
    argNames:
    - read
    - version
    argTypes:
    - SWFReader*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2238
      start: 2093
    functionDepth: 7
    functionLinenumber: 2093
    functionLinenumberEnd: 2238
    functionName: swf_def_bits_jpeg
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_img_png_enc
    - gf_bs_new
    - gf_bs_del
    - SWFReader*::setup_image
    - snprintf
    - gf_fwrite
    - swf_get_32
    - gf_malloc
    - gf_img_parse
    - gf_fopen
    - swf_report
    - gf_realloc
    - swf_get_16
    - memmove
    - gf_img_jpeg_dec
    - gf_fclose
    - gf_free
    - swf_read_data
    - memset
    - uncompress
    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: 2351
      start: 2241
    functionDepth: 0
    functionLinenumber: 2241
    functionLinenumberEnd: 2351
    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:2356,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2356,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2357,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2358
      start: 2353
    functionDepth: 8
    functionLinenumber: 2353
    functionLinenumberEnd: 2358
    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:2368,1
    - Dst: swf_parse_shape_def
      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_place_obj
      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_remove_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_show_frame
      Src: /src/gpac/src/scene_manager/swf_parse.c:2384,1
    - Dst: swf_def_font
      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_info
      Src: /src/gpac/src/scene_manager/swf_parse.c:2390,1
    - Dst: swf_def_text
      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_edit_text
      Src: /src/gpac/src/scene_manager/swf_parse.c:2396,1
    - Dst: swf_def_sprite
      Src: /src/gpac/src/scene_manager/swf_parse.c:2398,1
    - Dst: swf_soundstream_hdr
      Src: /src/gpac/src/scene_manager/swf_parse.c:2402,1
    - Dst: swf_def_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:2404,1
    - Dst: swf_start_sound
      Src: /src/gpac/src/scene_manager/swf_parse.c:2406,1
    - Dst: swf_soundstream_block
      Src: /src/gpac/src/scene_manager/swf_parse.c:2408,1
    - Dst: swf_def_button
      Src: /src/gpac/src/scene_manager/swf_parse.c:2411,1
    - Dst: swf_def_button
      Src: /src/gpac/src/scene_manager/swf_parse.c:2413,1
    - Dst: swf_actions
      Src: /src/gpac/src/scene_manager/swf_parse.c:2416,1
    - Dst: swf_get_string
      Src: /src/gpac/src/scene_manager/swf_parse.c:2419,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2420,1
    - Dst: swf_def_hdr_jpeg
      Src: /src/gpac/src/scene_manager/swf_parse.c:2425,1
    - Dst: swf_def_bits_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_unknown_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 68
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2436
      start: 2360
    functionDepth: 11
    functionLinenumber: 2360
    functionLinenumberEnd: 2436
    functionName: swf_process_tag
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_def_bits_jpeg
    - swf_place_obj
    - swf_def_sound
    - swf_remove_obj
    - swf_def_hdr_jpeg
    - swf_def_sprite
    - swf_start_sound
    - swf_soundstream_hdr
    - swf_def_text
    - swf_actions
    - swf_def_font
    - swf_get_string
    - swf_parse_shape_def
    - swf_def_font_info
    - swf_def_edit_text
    - swf_soundstream_block
    - swf_show_frame
    - swf_def_button
    - swf_set_backcol
    - swf_unknown_tag
    - gf_free
    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:2446,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:2450,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:2451,1
    - Dst: swf_get_file_pos
      Src: /src/gpac/src/scene_manager/swf_parse.c:2453,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2455,1
    - Dst: swf_process_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2458,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:2459,1
    - Dst: swf_get_file_pos
      Src: /src/gpac/src/scene_manager/swf_parse.c:2462,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2464,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2464,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/scene_manager/swf_parse.c:2467,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2476,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2480
      start: 2438
    functionDepth: 12
    functionLinenumber: 2438
    functionLinenumberEnd: 2480
    functionName: swf_parse_tag
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_tag_name
    - swf_process_tag
    - swf_get_16
    - gf_set_progress
    - swf_report
    - swf_align
    - swf_get_file_pos
    - swf_get_32
    - 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:2488,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2490,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2490,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2497
      start: 2484
    functionDepth: 13
    functionLinenumber: 2484
    functionLinenumberEnd: 2497
    functionName: swf_parse_sprite
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 1
    functionsReached:
    - swf_get_tag_name
    - swf_report
    - 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:2503,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/swf_parse.c:2506,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2507,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/swf_parse.c:2508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:2509,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - read
    - e
    - format
    argTypes:
    - SWFReader*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2512
      start: 2500
    functionDepth: 2
    functionLinenumber: 2500
    functionLinenumberEnd: 2512
    functionName: swf_report
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 14
    functionsReached:
    - GF_LOG
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    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: 2519
      start: 2515
    functionDepth: 0
    functionLinenumber: 2515
    functionLinenumberEnd: 2519
    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:2529,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2532,1
    - Dst: SWFReader*::finalize
      Src: /src/gpac/src/scene_manager/swf_parse.c:2536,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2541,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_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2545,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2549
      start: 2521
    functionDepth: 13
    functionLinenumber: 2521
    functionLinenumberEnd: 2549
    functionName: gf_sm_load_run_swf
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - swf_get_tag_name
    - swf_parse_tag
    - gf_set_progress
    - swf_report
    - SWFReader*::finalize
    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:2554,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2555,1
    - Dst: SWFReader*::finalize
      Src: /src/gpac/src/scene_manager/swf_parse.c:2558,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:2561,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:2562,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:2563,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2564,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2566,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:2567,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:2568,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:2569,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2570,1
    - Dst: gf_free
      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_list_del
      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:2576,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2577,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/swf_parse.c:2579,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/swf_parse.c:2580,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/swf_parse.c:2581,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2582,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2583,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2584,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2586,1
    - Dst: swf_delete_sound_stream
      Src: /src/gpac/src/scene_manager/swf_parse.c:2587,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2589,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2590,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/swf_parse.c:2592,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2593,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2594,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2595
      start: 2551
    functionDepth: 6
    functionLinenumber: 2551
    functionLinenumberEnd: 2595
    functionName: gf_swf_reader_del
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_fclose
    - gf_list_del
    - gf_bs_del
    - gf_list_get
    - swf_delete_sound_stream
    - SWFReader*::finalize
    - 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:2602,1
    - Dst: gf_swf_reader_del
      Src: /src/gpac/src/scene_manager/swf_parse.c:2605,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2607
      start: 2597
    functionDepth: 7
    functionLinenumber: 2597
    functionLinenumberEnd: 2607
    functionName: gf_sm_load_done_swf
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_swf_reader_del
    - gf_fclose
    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:2613,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/swf_parse.c:2616,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:2618,1
    - Dst: gf_bs_from_file
      Src: /src/gpac/src/scene_manager/swf_parse.c:2620,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/scene_manager/swf_parse.c:2621,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2622,1
    - Dst: gf_list_new
      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_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:2628,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/swf_parse.c:2631,1
    - Dst: strrchr
      Src: /src/gpac/src/scene_manager/swf_parse.c:2632,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/swf_parse.c:2635,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - localPath
    - inputName
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2641
      start: 2609
    functionDepth: 1
    functionLinenumber: 2609
    functionLinenumberEnd: 2641
    functionName: gf_swf_reader_new
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fopen
    - gf_bs_from_file
    - gf_bs_set_eos_callback
    - GF_SAFEALLOC
    - strrchr
    - gf_list_new
    - gf_strdup
    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: 2652
      start: 2643
    functionDepth: 0
    functionLinenumber: 2643
    functionLinenumberEnd: 2652
    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:2660,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/scene_manager/swf_parse.c:2661,1
    - 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:2667,1
    - Dst: swf_get_32
      Src: /src/gpac/src/scene_manager/swf_parse.c:2668,1
    - Dst: swf_init_decompress
      Src: /src/gpac/src/scene_manager/swf_parse.c:2672,1
    - Dst: swf_get_rec
      Src: /src/gpac/src/scene_manager/swf_parse.c:2676,1
    - Dst: swf_align
      Src: /src/gpac/src/scene_manager/swf_parse.c:2680,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2681,1
    - Dst: swf_get_16
      Src: /src/gpac/src/scene_manager/swf_parse.c:2682,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:2683,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - read
    argTypes:
    - SWFReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2686
      start: 2654
    functionDepth: 8
    functionLinenumber: 2654
    functionLinenumberEnd: 2686
    functionName: gf_swf_read_header
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_LOG
    - swf_init_decompress
    - swf_get_rec
    - swf_get_16
    - swf_align
    - swf_get_32
    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: 2693
      start: 2688
    functionDepth: 0
    functionLinenumber: 2688
    functionLinenumberEnd: 2693
    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:2703,1
    - Dst: swf_func_skip
      Src: /src/gpac/src/scene_manager/swf_parse.c:2704,1
    - Dst: swf_def_hdr_jpeg
      Src: /src/gpac/src/scene_manager/swf_parse.c:2705,1
    - Dst: swf_get_tag_name
      Src: /src/gpac/src/scene_manager/swf_parse.c:2706,1
    - Dst: swf_unknown_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2707,1
    - Dst: swf_io_error
      Src: /src/gpac/src/scene_manager/swf_parse.c:2708,1
    - Dst: gf_swf_reader_new
      Src: /src/gpac/src/scene_manager/swf_parse.c:2712,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/swf_parse.c:2714,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/swf_parse.c:2720,1
    - Dst: gf_swf_read_header
      Src: /src/gpac/src/scene_manager/swf_parse.c:2723,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_parse.c:2725,1
    - Dst: FIX2INT
      Src: /src/gpac/src/scene_manager/swf_parse.c:2726,1
    - Dst: swf_report
      Src: /src/gpac/src/scene_manager/swf_parse.c:2730,1
    - Dst: swf_to_bifs_init
      Src: /src/gpac/src/scene_manager/swf_parse.c:2736,1
    - Dst: snprintf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2746,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/swf_parse.c:2746,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: gf_fopen
      Src: /src/gpac/src/scene_manager/swf_parse.c:2750,1
    - Dst: gf_swf_reader_set_user_mode
      Src: /src/gpac/src/scene_manager/swf_parse.c:2756,1
    - Dst: swf_to_svg_init
      Src: /src/gpac/src/scene_manager/swf_parse.c:2757,1
    - Dst: swf_parse_tag
      Src: /src/gpac/src/scene_manager/swf_parse.c:2766,1
    - Dst: gf_sm_load_done_swf
      Src: /src/gpac/src/scene_manager/swf_parse.c:2775,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 70
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2777
      start: 2695
    functionDepth: 13
    functionLinenumber: 2695
    functionLinenumberEnd: 2777
    functionName: gf_sm_load_init_swf
    functionSourceFile: /src/gpac/src/scene_manager/swf_parse.c
    functionUses: 1
    functionsReached:
    - swf_to_bifs_init
    - GF_ARRAY_LENGTH
    - swf_parse_tag
    - snprintf
    - gf_swf_reader_new
    - swf_def_hdr_jpeg
    - swf_get_tag_name
    - gf_fopen
    - gf_sm_load_done_swf
    - swf_report
    - gf_swf_reader_set_user_mode
    - gf_swf_read_header
    - swf_unknown_tag
    - FLT2FIX
    - GF_LOG
    - gf_sys_is_cov_mode
    - swf_io_error
    - swf_to_svg_init
    - swf_func_skip
    - FIX2INT
    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
    - GF_LOG
    - gf_xml_sax_suspend
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    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_set_progress
    - GF_SVG_Parser*::load::is::on_media_event
    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:
    - sprintf
    - gf_node_get_tag
    - gf_free
    - gf_malloc
    - strchr
    - gf_file_load_data
    - stricmp
    - strnicmp
    - gf_svg_delete_attribute_value
    - gf_base64_encode
    - svg_saf_get_stream
    - gf_dom_add_text_node
    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_list_count
    - gf_sg_find_node_by_name
    - gf_free
    - gf_xml_get_element_tag
    - gf_xml_sax_peek_node
    - gf_svg_parse_element_id
    - gf_node_new
    - gf_node_get_name
    - strcmp
    - gf_list_get
    - gf_list_add
    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_process_media_href
    - gf_node_store_embedded_data
    - svg_report
    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_list_del_item
    - gf_free
    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: 1
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - strchr
    - gf_node_get_attribute_by_tag
    - gf_free
    - svg_post_process_href
    - gf_svg_parse_attribute
    - svg_report
    - gf_node_register_iri
    - gf_list_get
    - gf_node_get_attribute_by_name
    - svg_parse_animation
    - gf_svg_resolve_smil_times
    - gf_node_init
    - gf_sg_get_namespace_code
    - gf_node_get_name
    - gf_sg_find_node_by_name
    - gf_strdup
    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: 10
    functionLinenumber: 520
    functionLinenumberEnd: 591
    functionName: svg_resolved_refs
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_node_get_attribute_by_tag
    - gf_node_dom_listener_add
    - gf_node_register_iri
    - gf_list_get
    - svg_parse_animation
    - gf_assert
    - strcmp
    - gf_sg_find_node_by_name
    - svg_delete_deferred_anim
    - 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_root_node
    - gf_node_get_attribute_by_tag
    - gf_assert
    - FIX2INT
    - gf_sg_set_scene_size_info
    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:
    - strchr
    - gf_sg_get_namespace_code_from_name
    - gf_sg_add_namespace
    - strlen
    - strncmp
    linkageType: ''
    returnType: void
    signature: void svg_check_namespace(GF_SVG_Parser *parser, const GF_XMLAttribute
      *attributes, u32 nb_attributes, Bool *has_ns)
  - BBCount: 89
    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: 128
    EdgeCount: 128
    ICount: 305
    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: 11
    functionLinenumber: 655
    functionLinenumberEnd: 1105
    functionName: svg_parse_element
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_get_line
    - gf_list_count
    - gf_node_get_attribute_by_tag
    - gf_xml_get_element_tag
    - gf_node_dom_listener_add
    - gf_mx2d_add_scale
    - gf_node_get_attribute_by_name
    - svg_resolved_refs
    - gf_node_new
    - GF_SAFEALLOC
    - gf_node_set_private
    - gf_node_get_name
    - gf_dom_event_type_by_name
    - gf_dom_listener_build
    - gf_list_add
    - svg_init_root_element
    - strchr
    - gf_mx2d_add_translation
    - gf_list_get
    - gf_sg_find_node_by_name
    - isdigit
    - svg_delete_deferred_anim
    - svg_post_process_href
    - gf_svg_parse_attribute
    - svg_report
    - gf_svg_parse_element_id
    - strcmp
    - strlen
    - gf_svg_is_timing_tag
    - gf_node_dirty_set
    - gf_svg_parse_style
    - gf_dom_add_text_node
    - svg_check_namespace
    - GF_LOG
    - svg_parse_point
    - gf_node_init
    - gf_svg_is_animation_tag
    - stricmp
    - svg_lsr_set_v2
    - GF_SVG_Parser*::load::scene_graph::NodeCallback
    - gf_sg_get_namespace_code
    - gf_node_register
    - gf_node_list_add_child_last
    - svg_parse_animation
    - gf_strdup
    - strncmp
    - 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_dom_get_key_type
    - gf_node_get_attribute_by_name
    - svg_process_media_href
    - gf_dom_event_type_by_name
    - strchr
    - gf_strdup
    - gf_sg_find_node_by_name
    - atoi
    - gf_node_get_id
    - svg_report
    - gf_svg_parse_attribute
    - strcmp
    - gf_sg_command_field_new
    - svg_parse_point
    - gf_xml_get_attribute_tag
    - gf_svg_create_attribute_value
    - svg_find_node
    - gf_node_register
    - FIX2INT
    - gf_xml_get_attribute_type
    - svg_lsr_set_v2
    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
    - atoi
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - strcmp
    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: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_svg.c:1579,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scene_manager/loader_svg.c:1580,1
    - Dst: gf_strcat
      Src: /src/gpac/src/scene_manager/loader_svg.c:1581,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_svg.c:1583,1
    - Dst: gf_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: 12
    functionLinenumber: 1363
    functionLinenumberEnd: 1793
    functionName: svg_node_start
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - lsr_parse_header
    - GF_SAFEALLOC
    - gf_list_add
    - gf_node_unregister
    - svg_init_root_element
    - gf_fopen
    - svg_saf_get_stream
    - gf_list_get
    - gf_node_set_callback_function
    - gf_list_last
    - gf_dom_add_updates_node
    - gf_node_list_add_child
    - gf_strcpy
    - svg_parse_element
    - lsr_parse_command
    - atoi
    - svg_report
    - gf_sg_reset
    - strcmp
    - gf_fprintf
    - gf_sg_command_del
    - gf_fclose
    - gf_sg_command_new
    - svg_check_namespace
    - gf_free
    - gf_strcat
    - GF_LOG
    - GF_4CC
    - gf_list_del_item
    - gf_odf_desc_esd_new
    - lsr_get_command_by_name
    - gf_odf_desc_new
    - svg_saf_get_next_available_stream
    - gf_sm_stream_new
    - gf_strdup
    - gf_odf_com_new
    - gf_sm_stream_au_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_dom_new_text_node
    - gf_node_list_add_child
    - strchr
    - svg_report
    - gf_node_register
    - gf_list_get
    - gf_strdup
    - gf_list_last
    - strlen
    - gf_node_changed
    - gf_dom_add_text_node
    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:
    - svg_report
    - gf_sys_is_cov_mode
    - GF_SAFEALLOC
    - gf_xml_sax_new
    - gf_sg_add_namespace
    - gf_list_new
    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: 10
    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
    - svg_delete_deferred_anim
    - gf_list_get
    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_list_count
    - gf_free
    - gf_list_rem_last
    - gf_node_register
    - gf_list_last
    - gf_node_unregister
    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_parse
    - svg_report
    - gf_xml_sax_init
    - GF_LOG
    - gf_list_enum
    - gf_xml_sax_get_error
    - svg_new_parser
    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: 11
    functionLinenumber: 2131
    functionLinenumberEnd: 2154
    functionName: load_svg_run
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - svg_report
    - GF_LOG
    - gf_sys_clock
    - gf_sm_load_initialize_svg
    - gf_xml_sax_get_error
    - gf_xml_sax_parse_file
    - gf_sm_svg_flush_state
    - svg_flush_animations
    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_list_del
    - gf_sm_svg_flush_state
    - gf_free
    - gf_xml_sax_del
    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: 11
    functionLinenumber: 2184
    functionLinenumberEnd: 2205
    functionName: load_svg_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_svg.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_parse
    - svg_report
    - gf_xml_sax_get_error
    - gf_sm_load_initialize_svg
    - load_svg_done
    - svg_flush_animations
    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:
    - memset
    - load_svg_done
    - gf_node_unregister
    - gf_sm_load_initialize_svg
    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:
    - GF_LOG
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    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_get_media_type
    - gf_isom_get_sample_count
    - gf_node_new
    - gf_sg_vrml_mf_alloc
    - gf_isom_get_sample
    - gf_fwrite
    - gf_list_add
    - gf_isom_get_visual_info
    - gf_fopen
    - gf_qtvr_report
    - gf_node_list_add_child
    - gf_odf_com_new
    - gf_isom_get_media_subtype
    - sprintf
    - gf_isom_get_track_count
    - gf_sg_command_new
    - gf_fclose
    - GF_LOG
    - gf_isom_open
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_isom_sample_del
    - gf_node_register
    - gf_sm_stream_new
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - gf_isom_delete
    - gf_sm_stream_au_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:144,1
    - Dst: va_start
      Src: /src/gpac/src/scene_manager/loader_xmt.c:147,1
    - Dst: vsnprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:148,1
    - Dst: va_end
      Src: /src/gpac/src/scene_manager/loader_xmt.c:149,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:150,1
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/scene_manager/loader_xmt.c:150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - parser
    - e
    - format
    argTypes:
    - GF_XMTParser*
    - GF_Err
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 155
    functionName: xmt_report
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_get_line
    - GF_LOG
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    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:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cbk
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 159
    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:165,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - ESID
    argTypes:
    - GF_XMTParser*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 160
    functionDepth: 2
    functionLinenumber: 160
    functionLinenumberEnd: 169
    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:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - ESID
    argTypes:
    - GF_XMTParser*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 171
    functionDepth: 2
    functionLinenumber: 171
    functionLinenumberEnd: 180
    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:188,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:188,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:189,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:189,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:191,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:193,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:194,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:202,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:204,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:207,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:210,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:214,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:218,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:221,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:222,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:223,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:224,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:231,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:234,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:237,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:238,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: 239
      start: 182
    functionDepth: 3
    functionLinenumber: 182
    functionLinenumberEnd: 239
    functionName: xmt_new_od_link
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_list_count
    - gf_free
    - atoi
    - xmt_report
    - gf_list_del
    - gf_list_new
    - strnicmp
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_list_add
    - sscanf
    - gf_list_rem
    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:248,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:248,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:249,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:249,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:251,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:253,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:254,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:264,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:272,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:273,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:277,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:277,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:281,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:284,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:285,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:287,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:288,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 3
    argNames:
    - parser
    - name
    - url
    argTypes:
    - GF_XMTParser*
    - char*
    - MFURL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 241
    functionDepth: 2
    functionLinenumber: 241
    functionLinenumberEnd: 289
    functionName: xmt_new_od_link_from_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - sprintf
    - atoi
    - gf_list_enum
    - gf_assert
    - gf_list_find
    - strnicmp
    - GF_SAFEALLOC
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - sscanf
    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:296,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:299,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:307,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:317,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:318,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:318,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:322,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:328,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:328,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:329,1
    - Dst: xmt_esid_available
      Src: /src/gpac/src/scene_manager/loader_xmt.c:333,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:337,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: 338
      start: 290
    functionDepth: 3
    functionLinenumber: 290
    functionLinenumberEnd: 338
    functionName: xmt_new_esd_link
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_esid_available
    - atoi
    - gf_list_enum
    - strnicmp
    - GF_SAFEALLOC
    - strcmp
    - gf_strdup
    - gf_list_add
    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:346,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:349,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:351,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: 356
      start: 339
    functionDepth: 2
    functionLinenumber: 339
    functionLinenumberEnd: 356
    functionName: xmt_set_depend_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_enum
    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:362,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:365,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:367,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - parser
    - od_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 358
    functionDepth: 2
    functionLinenumber: 358
    functionLinenumberEnd: 370
    functionName: xmt_get_od_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - sscanf
    - strcmp
    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:376,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:379,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:381,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 2
    argNames:
    - parser
    - esd_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 372
    functionDepth: 2
    functionLinenumber: 372
    functionLinenumberEnd: 384
    functionName: xmt_get_esd_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - sscanf
    - strcmp
    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:392,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:393,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:395,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:396,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:397,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:398,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:404,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:405,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:406,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:407,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:411,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:412,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:414,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:414,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:415,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:416,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 2
    argNames:
    - parser
    - stream_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 385
    functionDepth: 2
    functionLinenumber: 385
    functionLinenumberEnd: 418
    functionName: xmt_locate_stream
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_malloc
    - atoi
    - gf_list_enum
    - strnicmp
    - strcmp
    - gf_strdup
    - memset
    - gf_list_add
    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:424,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - ODID
    argTypes:
    - GF_XMTParser*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 429
    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:440,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:442,1
    - Dst: gf_list_rem
      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: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:446,1
    - Dst: xmt_esid_available
      Src: /src/gpac/src/scene_manager/loader_xmt.c:452,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:459,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:468,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:469,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:470,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:473,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:474,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:484,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:486,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:492,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:501,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:502,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:503,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:506,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:507,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:517,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:519,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:523,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:524,1
    - Dst: gf_list_rem
      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_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:527,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:531,1
    - Dst: xmt_odid_available
      Src: /src/gpac/src/scene_manager/loader_xmt.c:534,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:539,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:545,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:550,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:554,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:555,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:556,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:557,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:560,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:561,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:562,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:563,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:568,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:569,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:574,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:576,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:582,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:587,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:589,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:590,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:591,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:593,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:601,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:602,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:603,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:604,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 151
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 431
    functionDepth: 3
    functionLinenumber: 431
    functionLinenumberEnd: 606
    functionName: xmt_resolve_od_links
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_esid_available
    - sprintf
    - gf_list_count
    - gf_free
    - atoi
    - xmt_report
    - gf_list_del
    - gf_list_enum
    - stricmp
    - gf_assert
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_list_add
    - xmt_odid_available
    - strstr
    - 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:620,1
    - Dst: xmt_remove_link_for_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:621,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:626,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:635,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:636,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:637,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:638,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:644,1
    - Dst: gf_list_del_item
      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
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:655,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 2
    argNames:
    - parser
    - desc
    argTypes:
    - GF_XMTParser*
    - GF_Descriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 609
    functionDepth: 3
    functionLinenumber: 609
    functionLinenumberEnd: 658
    functionName: xmt_remove_link_for_descriptor
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 1
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_list_enum
    - xmt_remove_link_for_descriptor
    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:665,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:666,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 661
    functionDepth: 1
    functionLinenumber: 661
    functionLinenumberEnd: 670
    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:675,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:679,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:686,1
    - Dst: xmt_get_next_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:693,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:695,1
    - Dst: gf_xml_sax_get_line
      Src: /src/gpac/src/scene_manager/loader_xmt.c:695,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:695,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 671
    functionDepth: 2
    functionLinenumber: 671
    functionLinenumberEnd: 698
    functionName: xmt_get_node_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_get_line
    - strchr
    - GF_LOG
    - gf_node_get_name
    - xmt_get_next_node_id
    - sscanf
    - gf_sg_find_node
    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:706,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:709,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:711,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:714,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 718
      start: 700
    functionDepth: 1
    functionLinenumber: 700
    functionLinenumberEnd: 718
    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:727,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:732,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:733,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:733,1
    - Dst: gf_xml_sax_peek_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:735,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:743,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:749,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:750,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_xmt.c:753,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:755,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:756,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:758,1
    - Dst: xmt_get_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:760,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:761,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:762,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:763,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 2
    argNames:
    - parser
    - ID
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 720
    functionDepth: 9
    functionLinenumber: 720
    functionLinenumberEnd: 766
    functionName: xmt_find_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sg_find_node_by_name
    - gf_free
    - gf_node_set_id
    - xmt_report
    - gf_xml_sax_peek_node
    - xmt_get_node_tag
    - gf_node_init
    - gf_sg_proto_create_instance
    - xmt_get_node_id
    - gf_node_new
    - gf_node_get_name
    - strcmp
    - gf_list_get
    - gf_list_add
    - gf_sg_find_proto
    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:788,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: 790
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 790
    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:794,1
    - Dst: atof
      Src: /src/gpac/src/scene_manager/loader_xmt.c:794,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: 796
      start: 791
    functionDepth: 1
    functionLinenumber: 791
    functionLinenumberEnd: 796
    functionName: xmt_parse_float
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - atof
    - FLT2FIX
    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:800,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: 802
      start: 797
    functionDepth: 0
    functionLinenumber: 797
    functionLinenumberEnd: 802
    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: 2
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:807,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:807,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - parser
    - name
    - val
    - a_value
    argTypes:
    - GF_XMTParser*
    - char*
    - SFBool*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 812
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 812
    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:826,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:827,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:829,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:841,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:841,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:842,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:842,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:843,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:844,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:847,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:848,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:850,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:854,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:856,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:858,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:858,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:861,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:861,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:868,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:868,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:872,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:874,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:876,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:876,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:877,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: 879
      start: 814
    functionDepth: 1
    functionLinenumber: 814
    functionLinenumberEnd: 879
    functionName: xmt_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_free
    - strlen
    - gf_strdup
    - strncmp
    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:889,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:893,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:897,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:904,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:905,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: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:911,1
    - Dst: xmt_new_od_link_from_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:912,1
    - Dst: xmt_new_od_link_from_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:914,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: 916
      start: 881
    functionDepth: 3
    functionLinenumber: 881
    functionLinenumberEnd: 916
    functionName: xmt_parse_url
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_free
    - xmt_new_od_link_from_node
    - gf_assert
    - strnicmp
    - strstr
    - xmt_parse_string
    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:926,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:929,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: 932
      start: 919
    functionDepth: 2
    functionLinenumber: 919
    functionLinenumberEnd: 932
    functionName: xmt_parse_script
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - xmt_parse_string
    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: 938
      start: 934
    functionDepth: 0
    functionLinenumber: 934
    functionLinenumberEnd: 938
    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:942,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:943,1
    - Dst: stricmp
      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
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:945,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:946,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: 948
      start: 939
    functionDepth: 3
    functionLinenumber: 939
    functionLinenumberEnd: 948
    functionName: xmt_check_time_offset
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_field_is_sftime_offset
    - gf_node_get_tag
    - stricmp
    - xmt_offset_time
    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:955,1
    - Dst: xmt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_xmt.c:958,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:961,1
    - Dst: xmt_parse_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:964,1
    - Dst: xmt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:965,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:969,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:970,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:973,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:974,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:978,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:979,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_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:984,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:985,1
    - Dst: xmt_parse_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:988,1
    - Dst: gf_sm_update_bitwrapper_buffer
      Src: /src/gpac/src/scene_manager/loader_xmt.c:990,1
    - Dst: xmt_parse_script
      Src: /src/gpac/src/scene_manager/loader_xmt.c:994,1
    - Dst: xmt_parse_int
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1013,1
    - Dst: xmt_parse_int
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1015,1
    - Dst: xmt_parse_int
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1017,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1021,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1022,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1028,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1028,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 107
    argCount: 4
    argNames:
    - parser
    - info
    - n
    - a_value
    argTypes:
    - GF_XMTParser*
    - GF_FieldInfo*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1064
      start: 950
    functionDepth: 4
    functionLinenumber: 950
    functionLinenumberEnd: 1064
    functionName: xmt_parse_sf_field
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_int
    - gf_free
    - gf_malloc
    - xmt_parse_time
    - xmt_parse_string
    - xmt_check_time_offset
    - xmt_parse_float
    - strstr
    - xmt_parse_script
    - sscanf
    - gf_sm_update_bitwrapper_buffer
    - xmt_parse_bool
    linkageType: ''
    returnType: u32
    signature: u32 xmt_parse_sf_field(GF_XMTParser *parser, GF_FieldInfo *info, GF_Node
      *n, char *a_value)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1070,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1072,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1076,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1087,1
    - Dst: xmt_parse_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1092,1
    - Dst: xmt_parse_url
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1094,1
    - Dst: xmt_parse_script
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1096,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1098,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 4
    argNames:
    - parser
    - info
    - n
    - value
    argTypes:
    - GF_XMTParser*
    - GF_FieldInfo*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1106
      start: 1066
    functionDepth: 5
    functionLinenumber: 1066
    functionLinenumberEnd: 1106
    functionName: xmt_parse_mf_field
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_url
    - xmt_parse_sf_field
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_get_sf_type
    - xmt_parse_script
    - strlen
    - gf_sg_vrml_mf_reset
    - xmt_parse_string
    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:1111,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1113,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1114,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1114,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_XMTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1108
    functionDepth: 1
    functionLinenumber: 1108
    functionLinenumberEnd: 1117
    functionName: xmt_has_been_def
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_name
    - strcmp
    - gf_list_get
    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:1123,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1126,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1127,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1128,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - parser
    - name
    - del_com
    argTypes:
    - GF_XMTParser*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1119
    functionDepth: 2
    functionLinenumber: 1119
    functionLinenumberEnd: 1133
    functionName: xmt_get_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_route_find_by_name
    - gf_list_enum
    - strcmp
    - 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:1139,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1142,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - ID
    argTypes:
    - GF_XMTParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1146
      start: 1135
    functionDepth: 2
    functionLinenumber: 1135
    functionLinenumberEnd: 1146
    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:1151,1
    - Dst: gf_sg_get_next_available_route_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1153,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1157
      start: 1147
    functionDepth: 2
    functionLinenumber: 1147
    functionLinenumberEnd: 1157
    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:1163,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1165,1
    - Dst: xmt_get_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1169,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1171,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1175,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1180,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1180,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1181
      start: 1159
    functionDepth: 3
    functionLinenumber: 1159
    functionLinenumberEnd: 1181
    functionName: xmt_resolve_routes
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - xmt_report
    - gf_list_rem_last
    - xmt_get_route
    - gf_list_last
    - gf_list_rem
    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:1195,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1196,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1197,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1198,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1199,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1200,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1203,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1205,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1209,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1211,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1214,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1221,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1225,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1227,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1231,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1232,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1233,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1238,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1243,1
    - Dst: xmt_get_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1244,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1246,1
    - Dst: xmt_route_id_used
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1249,1
    - Dst: xmt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1252,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1258,1
    - Dst: gf_sg_set_max_defined_route_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1260,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1264,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1266,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1270,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1272,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1273,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: 1275
      start: 1182
    functionDepth: 10
    functionLinenumber: 1182
    functionLinenumberEnd: 1275
    functionName: xmt_parse_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_set_max_defined_route_id
    - gf_sg_route_set_name
    - atoi
    - gf_node_get_id
    - xmt_report
    - gf_sg_route_new
    - gf_strdup
    - xmt_find_node
    - strnicmp
    - xmt_route_id_used
    - xmt_get_next_route_id
    - strcmp
    - strlen
    - xmt_get_route
    - gf_node_get_field_by_name
    - strstr
    - gf_sg_route_set_id
    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:1282,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: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1300,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1301,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1304,1
    - Dst: xmt_offset_time
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1305,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1311,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1313,1
    - Dst: xmt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1315,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1278
    functionDepth: 4
    functionLinenumber: 1278
    functionLinenumberEnd: 1320
    functionName: xmt_update_timenode
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_node_get_field
    - gf_node_get_tag
    - xmt_check_time_offset
    - xmt_offset_time
    linkageType: ''
    returnType: void
    signature: void xmt_update_timenode(GF_XMTParser *parser, GF_Node *node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_strlcpy
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1325,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1326,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - in
    - out
    - out_size
    argTypes:
    - char*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1327
      start: 1322
    functionDepth: 1
    functionLinenumber: 1322
    functionLinenumberEnd: 1327
    functionName: xmt_strip_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_strlcpy
    - 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:1332,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1332,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: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: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:1348,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1349,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1349,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: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: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:1352,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: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: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:1355,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1357,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1358,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1359,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1360,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1361,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1362,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1363,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1364,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 63
    argCount: 1
    argNames:
    - _name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1366
      start: 1329
    functionDepth: 2
    functionLinenumber: 1329
    functionLinenumberEnd: 1366
    functionName: xmt_get_ft_by_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_strip_name
    - strcmp
    - 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:1370,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1370,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1372,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1372,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1373,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1373,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1374,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1374,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - _name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1367
    functionDepth: 2
    functionLinenumber: 1367
    functionLinenumberEnd: 1376
    functionName: xmt_get_script_et_by_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_strip_name
    - strcmp
    - 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:1380,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1380,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1382,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1382,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1383,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1383,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1384,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1384,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1385,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1385,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 1
    argNames:
    - _name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1377
    functionDepth: 2
    functionLinenumber: 1377
    functionLinenumberEnd: 1387
    functionName: xmt_get_et_by_name
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_strip_name
    - strcmp
    - 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:1400,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1401,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1402,1
    - Dst: xmt_get_ft_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1402,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1403,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1403,1
    - Dst: xmt_get_script_et_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1403,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1404,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1404,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1406,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1409,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1413,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1414,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1415,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1417,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: 1420
      start: 1389
    functionDepth: 6
    functionLinenumber: 1389
    functionLinenumberEnd: 1420
    functionName: xmt_parse_script_field
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_mf_field
    - xmt_report
    - xmt_get_script_et_by_name
    - xmt_parse_sf_field
    - xmt_get_ft_by_name
    - strcmp
    - strlen
    - gf_sg_script_field_new
    - gf_sg_vrml_is_sf_field
    - gf_node_get_field_by_name
    - strstr
    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:1426,1
    - Dst: gf_sg_get_next_available_proto_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1427,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_XMTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1431
      start: 1422
    functionDepth: 2
    functionLinenumber: 1422
    functionLinenumberEnd: 1431
    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: 10
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1443,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1444,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1446,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1447,1
    - Dst: xmt_get_next_proto_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1450,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1451,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1457,1
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1463,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1469,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 4
    argNames:
    - parser
    - attributes
    - nb_attributes
    - proto_list
    argTypes:
    - GF_XMTParser*
    - GF_XMLAttribute*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1471
      start: 1433
    functionDepth: 6
    functionLinenumber: 1433
    functionLinenumberEnd: 1471
    functionName: xmt_parse_proto
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_mf_field
    - xmt_get_next_proto_id
    - gf_sg_proto_get_graph
    - strlen
    - strcmp
    - gf_sg_proto_new
    - gf_list_add
    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:1475,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1476,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1477,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1478,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1479,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1480,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1481,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1482,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1483,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1484,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1485,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1486,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1487,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1488,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 30
    argCount: 1
    argNames:
    - QP_Type
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1472
    functionDepth: 0
    functionLinenumber: 1472
    functionLinenumberEnd: 1491
    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:1496,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1499,1
    - Dst: gf_node_in_table
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1502,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: 1505
      start: 1493
    functionDepth: 5
    functionLinenumber: 1493
    functionLinenumberEnd: 1505
    functionName: x3d_get_default_container
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_in_table
    - gf_node_get_field
    - gf_node_get_field_count
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err x3d_get_default_container(GF_Node *par, GF_Node *n, GF_FieldInfo
      *info)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1511,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1514,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1518,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1519,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1522
      start: 1508
    functionDepth: 3
    functionLinenumber: 1508
    functionLinenumberEnd: 1522
    functionName: xmt_remove_od_links_for_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_del_item
    - gf_node_get_field
    - gf_node_get_field_count
    - gf_list_enum
    linkageType: ''
    returnType: void
    signature: void xmt_remove_od_links_for_node(GF_XMTParser *parser, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1527,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1528,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1532
      start: 1524
    functionDepth: 1
    functionLinenumber: 1524
    functionLinenumberEnd: 1532
    functionName: xmt_node_on_stack
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool xmt_node_on_stack(GF_XMTParser *parser, GF_Node *node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: xmt_node_on_stack
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1536,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1537,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1538,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1539,1
    - Dst: xmt_remove_od_links_for_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1540,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1541,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1534
    functionDepth: 4
    functionLinenumber: 1534
    functionLinenumberEnd: 1542
    functionName: xmt_discard_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_node_on_stack
    - gf_list_del_item
    - xmt_remove_od_links_for_node
    - gf_node_register
    - gf_node_unregister
    linkageType: ''
    returnType: void
    signature: void xmt_discard_node(GF_XMTParser *parser, GF_Node *node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1549,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1550,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1552,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1553,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1556,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1557,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1559,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1562,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1579,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1581,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1582,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1584,1
    - Dst: xmt_discard_subtree
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1588,1
    - Dst: xmt_discard_subtree
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1592,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 45
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1597
      start: 1544
    functionDepth: 3
    functionLinenumber: 1544
    functionLinenumberEnd: 1597
    functionName: xmt_discard_subtree
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_node_get_field
    - gf_free
    - xmt_discard_subtree
    - gf_list_del_item
    - gf_list_get
    - gf_node_get_field_count
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void xmt_discard_subtree(GF_XMTParser* parser, GF_Node* node)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: xmt_remove_od_links_for_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1604,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1605,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1608,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1614,1
    - Dst: xmt_remove_od_links_recursive
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1617,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1624,1
    - Dst: xmt_remove_od_links_recursive
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1627,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_XMTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1633
      start: 1599
    functionDepth: 4
    functionLinenumber: 1599
    functionLinenumberEnd: 1633
    functionName: xmt_remove_od_links_recursive
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 1
    functionsReached:
    - gf_node_get_field
    - xmt_remove_od_links_recursive
    - xmt_remove_od_links_for_node
    - gf_list_find
    - gf_node_get_field_count
    linkageType: ''
    returnType: void
    signature: void xmt_remove_od_links_recursive(GF_XMTParser* parser, GF_Node* node)
  - BBCount: 111
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1648,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1649,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1651,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1652,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1653,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1654,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1656,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1666,1
    - Dst: xmt_parse_script_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1667,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1670,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1670,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1674,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1674,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1675,1
    - Dst: xmt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1676,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1681,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1684,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1692,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1694,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1695,1
    - Dst: xmt_get_ft_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1695,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1696,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1696,1
    - Dst: xmt_get_et_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1696,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1697,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1697,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1699,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1700,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1701,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1702,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1703,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1705,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1707,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1713,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1715,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1716,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1723,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1723,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1726,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1726,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1729,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1736,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1737,1
    - Dst: xmt_get_protofield_qp_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1737,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1738,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1738,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1739,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1739,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1740,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1740,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1741,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1741,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1742,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1742,1
    - Dst: strncmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1742,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1745,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1745,1
    - Dst: xmt_parse_float
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1746,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1749,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1754,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1758,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1762,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1765,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1771,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1772,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1773,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1776,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1780,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1783,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1784,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1790,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1790,1
    - Dst: gf_sg_proto_field_find_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1795,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1797,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1800,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1802,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1803,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1805,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1806,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1806,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1811,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1814,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1820,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1821,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1822,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1822,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1825,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1828,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1830,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1834,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1835,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1837,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1839,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1840,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1846,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1846,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1854,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1860,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1861,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1864,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1869,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1872,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1881,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1887,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1890,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1893,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1898,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1909,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1915,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1916,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1917,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1918,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1920,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1923,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1924,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1925,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1925,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1928,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1937,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1938,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1944,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1947,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1949,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1965,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1967,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1968,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1971,1
    - Dst: xmt_has_been_def
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1973,1
    - Dst: xmt_get_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1974,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1975,1
    - Dst: xmt_discard_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1978,1
    - Dst: xmt_get_node_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1984,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1990,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1993,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1997,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1998,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1999,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1999,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:1999,1
    - Dst: xmt_discard_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2004,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2016,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2018,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2019,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2025,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2025,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2029,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2030,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2031,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2032,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2034,1
    - Dst: xmt_update_timenode
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2039,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2042,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2043,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2045,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2048,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2049,1
    - Dst: x3d_get_default_container
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2055,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2059,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2068,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2070,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2074,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2075,1
    - Dst: gf_node_changed
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2078,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2080,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2085,1
    - Dst: gf_sg_proto_load_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2089,1
    CyclomaticComplexity: 178
    EdgeCount: 178
    ICount: 395
    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: 2092
      start: 1635
    functionDepth: 11
    functionLinenumber: 1635
    functionLinenumberEnd: 2092
    functionName: xmt_parse_element
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_node_get_class_name
    - gf_assert
    - GF_SAFEALLOC
    - gf_node_new
    - gf_sg_vrml_is_sf_field
    - gf_list_add
    - gf_node_unregister
    - strstr
    - gf_sg_proto_field_get_field
    - xmt_get_et_by_name
    - gf_sg_proto_field_set_ised
    - xmt_get_node_tag
    - xmt_get_ft_by_name
    - gf_sg_proto_create_instance
    - gf_sg_proto_field_find_by_name
    - gf_sg_script_field_new
    - gf_sg_find_node_by_name
    - gf_list_last
    - xmt_parse_mf_field
    - gf_node_get_field
    - gf_sg_proto_field_new
    - atoi
    - gf_sg_proto_mark_field_loaded
    - x3d_get_default_container
    - xmt_parse_script_field
    - xmt_parse_float
    - xmt_get_node_id
    - xmt_discard_node
    - strcmp
    - strlen
    - gf_list_new
    - xmt_parse_route
    - gf_node_get_field_count
    - gf_sg_proto_load_code
    - gf_error_to_string
    - gf_sg_command_field_new
    - gf_bifs_proto_field_set_aq_info
    - gf_sg_command_new
    - gf_node_set_id
    - xmt_report
    - gf_node_init
    - xmt_parse_proto
    - xmt_parse_sf_field
    - xmt_get_protofield_qp_type
    - xmt_find_node
    - gf_list_del_item
    - xmt_update_timenode
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_get_sf_type
    - xmt_has_been_def
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_node_get_field_by_name
    - gf_node_changed
    - gf_sg_find_proto
    - strncmp
    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:2103,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2110,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2111,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2112,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2113,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2117,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2118,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2122,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2126,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2130,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2134,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2135,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2146,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2152,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2153,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2153,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2154,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2155,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2156,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2157,1
    - Dst: gf_odf_set_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2159,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2160,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2162,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2162,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2165,1
    - Dst: xmt_new_od_link
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2171,1
    - Dst: xmt_new_esd_link
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2173,1
    - Dst: xmt_set_depend_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2176,1
    - Dst: xmt_set_depend_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2177,1
    - Dst: gf_odf_desc_add_desc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2191,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2193,1
    - Dst: xmt_remove_link_for_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2194,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2195,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2212,1
    - Dst: xmt_get_es_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2218,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2219,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: 2227
      start: 2095
    functionDepth: 4
    functionLinenumber: 2095
    functionLinenumberEnd: 2227
    functionName: xmt_parse_descriptor
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_odf_set_field
    - atoi
    - xmt_report
    - stricmp
    - xmt_new_esd_link
    - xmt_remove_link_for_descriptor
    - gf_odf_desc_new
    - xmt_new_od_link
    - gf_sm_stream_new
    - strcmp
    - gf_odf_get_tag_by_name
    - gf_strdup
    - xmt_set_depend_id
    - strlen
    - xmt_get_es_name
    - 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: 146
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2235,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2242,1
    - Dst: strlen
      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: atof
      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:2248,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2249,1
    - Dst: xmt_locate_stream
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2250,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2251,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2257,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2259,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2263,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2264,1
    - Dst: xmt_parse_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2266,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2269,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2270,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2276,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2282,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:2284,1
    - Dst: gf_node_get_field_by_name
      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_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2292,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2295,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2301,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2304,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2306,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2307,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2309,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2314,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2320,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2321,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2322,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2323,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2324,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2326,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2328,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2330,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2336,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2338,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2339,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2342,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2349,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2349,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2349,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2373,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2374,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2374,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2375,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2375,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2376,1
    - Dst: xmt_locate_stream
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2377,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2379,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2383,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2384,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2385,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2386,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2387,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2388,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2389,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2390,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2391,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2392,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2393,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2394,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2395,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2396,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2408,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2409,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2410,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2412,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2421,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2425,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2429,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2432,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2434,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2438,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2440,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2446,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2447,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2449,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2459,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2461,1
    - Dst: xmt_remove_od_links_recursive
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2463,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2466,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2467,1
    - Dst: xmt_discard_subtree
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2468,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2469,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2472,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2476,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2480,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2484,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2488,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2489,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2490,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2490,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2491,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2495,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2498,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2505,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2509,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2511,1
    - Dst: gf_sm_stream_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2514,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2517,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2518,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2519,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2524,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2530,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2534,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2537,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2538,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2550,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2550,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2553,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2560,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2562,1
    - Dst: gf_sg_proto_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2564,1
    - Dst: gf_node_get_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2564,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2568,1
    - Dst: xmt_find_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2576,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2579,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2580,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2585,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2588,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2590,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2591,1
    - Dst: xmt_parse_mf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2593,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2596,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2599,1
    - Dst: xmt_parse_sf_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2601,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2615,1
    - Dst: xmt_get_route
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2622,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2624,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2626,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2630,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2637,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2639,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2640,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2640,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2642,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2644,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2658,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2658,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2659,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2659,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2660,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2660,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2674,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2675,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2675,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2676,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2676,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2677,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2678,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2685,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2686,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2687,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2688,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2692,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2696,1
    - Dst: gf_sm_stream_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2698,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2700,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2701,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2702,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2703,1
    - Dst: xmt_get_od_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2708,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2711,1
    - Dst: xmt_get_esd_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2713,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2714,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2716,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2730,1
    - Dst: xmt_get_od_id
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2732,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2733,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2735,1
    CyclomaticComplexity: 196
    EdgeCount: 196
    ICount: 483
    argCount: 4
    argNames:
    - parser
    - name
    - attributes
    - nb_attributes
    argTypes:
    - GF_XMTParser*
    - char*
    - GF_XMLAttribute*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2229
    functionDepth: 11
    functionLinenumber: 2229
    functionLinenumberEnd: 2745
    functionName: xmt_parse_command
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - atof
    - gf_list_count
    - gf_sm_stream_find
    - gf_node_get_tag
    - gf_node_get_class_name
    - gf_sg_vrml_is_sf_field
    - xmt_get_route
    - gf_list_add
    - gf_node_unregister
    - gf_node_get_proto
    - FIX2FLT
    - strchr
    - gf_strdup
    - gf_list_find
    - gf_list_get
    - gf_realloc
    - xmt_get_esd_id
    - gf_odf_com_new
    - xmt_parse_mf_field
    - gf_node_get_field
    - xmt_get_od_id
    - atoi
    - gf_node_get_id
    - xmt_locate_stream
    - strcmp
    - strlen
    - floor
    - xmt_parse_route
    - gf_list_pop_back
    - gf_sg_proto_get_id
    - gf_sg_command_field_new
    - xmt_remove_od_links_recursive
    - gf_sg_command_new
    - xmt_report
    - xmt_discard_subtree
    - xmt_parse_sf_field
    - xmt_find_node
    - stricmp
    - gf_sg_vrml_get_sf_type
    - gf_sm_stream_new
    - gf_node_register
    - gf_node_list_get_child
    - gf_node_get_field_by_name
    - gf_sg_find_proto
    - gf_sm_stream_au_new
    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:2754,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2762,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2763,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2765,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2767,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2778,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2780,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2782,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2790,1
    - Dst: xmt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2791,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2792,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:2806,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2808,1
    - Dst: gf_sg_set_scene_size_info
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2814,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2817,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2825,1
    - Dst: xmt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2826,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2827,1
    - Dst: xmt_parse_command
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2829,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2838,1
    - Dst: xmt_parse_element
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2841,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2843,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2847,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2852,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: 2854
      start: 2747
    functionDepth: 12
    functionLinenumber: 2747
    functionLinenumberEnd: 2854
    functionName: xmt_node_start
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_parse_command
    - gf_xml_sax_suspend
    - xmt_parse_element
    - GF_SAFEALLOC
    - xmt_parse_descriptor
    - strcmp
    - gf_list_new
    - gf_node_register
    - gf_list_last
    - gf_list_add
    - gf_sg_set_scene_size_info
    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: 96
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2865,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2869,1
    - Dst: gf_odf_get_tag_by_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2870,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2875,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2881,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2887,1
    - Dst: xmt_remove_link_for_descriptor
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2889,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2890,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2895,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2900,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2908,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2910,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2913,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2914,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2915,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2916,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2917,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2920,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2922,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2933,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2937,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2937,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2937,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2941,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2945,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2945,1
    - Dst: xmt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2947,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2954,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2956,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2960,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2962,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2964,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2967,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2967,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2967,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2972,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2981,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2987,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2987,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2988,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2988,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2989,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2989,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:2993,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3000,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3002,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3004,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3006,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3007,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3009,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3014,1
    - Dst: xmt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3019,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3022,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3034,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3034,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3034,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3049,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3049,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3056,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3057,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3058,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3060,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3060,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3064,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3065,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3067,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3073,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3074,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3077,1
    - Dst: xmt_discard_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3085,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3092,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3093,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3096,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3098,1
    - Dst: xmt_remove_od_links_for_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3099,1
    - Dst: xmt_discard_subtree
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3100,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3101,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3102,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3113,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3115,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3121,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3128,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3131,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3136,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3138,1
    - Dst: gf_sg_vrml_field_pointer_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3141,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3149,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3150,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3154,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3155,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3156,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3164,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3165,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3167,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3169,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3170,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3171,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3181,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3183,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3184,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3185,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3201,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3202,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3206,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3208,1
    - Dst: gf_node_get_field_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3216,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3219,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3236,1
    - Dst: xmt_remove_od_links_for_node
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3238,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3239,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3243,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3244,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3246,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3246,1
    CyclomaticComplexity: 150
    EdgeCount: 150
    ICount: 337
    argCount: 3
    argNames:
    - sax_cbck
    - name
    - name_space
    argTypes:
    - void*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3248
      start: 2856
    functionDepth: 9
    functionLinenumber: 2856
    functionLinenumberEnd: 3248
    functionName: xmt_node_end
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sg_vrml_field_pointer_del
    - xmt_remove_od_links_for_node
    - gf_list_rem_last
    - gf_node_get_class_name
    - gf_node_new
    - GF_SAFEALLOC
    - gf_odf_get_tag_by_name
    - gf_list_add
    - gf_node_unregister
    - xmt_resolve_routes
    - gf_sg_set_root_node
    - gf_sg_script_load
    - xmt_get_node_tag
    - gf_node_list_add_child
    - gf_list_last
    - gf_node_get_field
    - gf_sg_get_root_node
    - xmt_discard_node
    - strcmp
    - gf_list_new
    - gf_node_get_field_count
    - gf_sg_proto_add_node_code
    - gf_odf_desc_del
    - gf_sg_command_field_new
    - gf_free
    - xmt_report
    - gf_node_init
    - GF_LOG
    - gf_list_del
    - xmt_discard_subtree
    - xmt_remove_link_for_descriptor
    - gf_list_del_item
    - gf_sm_stream_new
    - gf_node_register
    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:3256,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3262,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3266,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3274,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3275,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3276,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: 3282
      start: 3250
    functionDepth: 3
    functionLinenumber: 3250
    functionLinenumberEnd: 3282
    functionName: xmt_text_content
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - gf_sg_vrml_mf_reset
    - gf_sg_vrml_mf_append
    - strlen
    - gf_strdup
    - gf_list_last
    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:3289,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3292,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3293,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3294,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3295,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3296,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3297,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3298,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3299,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3301,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3307
      start: 3285
    functionDepth: 1
    functionLinenumber: 3285
    functionLinenumberEnd: 3307
    functionName: xmt_new_parser
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_xml_sax_new
    - gf_list_new
    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:3318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3335,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3336,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3346
      start: 3309
    functionDepth: 2
    functionLinenumber: 3309
    functionLinenumberEnd: 3346
    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:3356,1
    - Dst: xmt_new_parser
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3362,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3363,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3365,1
    - Dst: xmt_new_parser
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3377,1
    - Dst: xmt_restore_context
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3383,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3387,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 2
    argNames:
    - load
    - str_data
    argTypes:
    - GF_SceneLoader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3390
      start: 3349
    functionDepth: 9
    functionLinenumber: 3349
    functionLinenumberEnd: 3390
    functionName: load_xmt_initialize
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_parse
    - gf_xml_sax_init
    - GF_LOG
    - xmt_report
    - xmt_restore_context
    - xmt_new_parser
    - strlen
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_xmt_initialize(GF_SceneLoader *load, const char *str_data)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: load_xmt_initialize
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3398,1
    - Dst: gf_xml_sax_parse_file
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3404,1
    - Dst: xmt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3419,1
    - Dst: xmt_resolve_od_links
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3420,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3423,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3423,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3426
      start: 3393
    functionDepth: 10
    functionLinenumber: 3393
    functionLinenumberEnd: 3426
    functionName: load_xmt_run
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - xmt_resolve_routes
    - xmt_resolve_od_links
    - xmt_report
    - gf_xml_sax_get_error
    - gf_xml_sax_parse_file
    - load_xmt_initialize
    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:3433,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3435,1
    - Dst: xmt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3438,1
    - Dst: xmt_resolve_od_links
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3439,1
    - Dst: xmt_report
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3442,1
    - Dst: gf_xml_sax_get_error
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3442,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - load
    - str
    argTypes:
    - GF_SceneLoader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3444
      start: 3428
    functionDepth: 10
    functionLinenumber: 3428
    functionLinenumberEnd: 3444
    functionName: load_xmt_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_xml_sax_parse
    - xmt_resolve_routes
    - xmt_resolve_od_links
    - xmt_report
    - gf_xml_sax_get_error
    - load_xmt_initialize
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err load_xmt_parse_string(GF_SceneLoader *load, const char *str)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3452,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3453,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3454,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3460,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3463,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3465,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3466,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3467,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3468,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3469,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3471,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3474,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3476,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3477,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3479,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3480,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3481,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3483,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3484,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3485,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3487,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3488,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3489,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3490,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3491,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3492,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_xmt.c:3493,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3495
      start: 3446
    functionDepth: 6
    functionLinenumber: 3446
    functionLinenumberEnd: 3495
    functionName: load_xmt_done
    functionSourceFile: /src/gpac/src/scene_manager/loader_xmt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_tag
    - gf_free
    - gf_odf_desc_del
    - gf_xml_sax_del
    - gf_list_del
    - gf_list_get
    - gf_list_rem_last
    - gf_list_find
    - gf_node_register
    - gf_list_new
    - gf_list_last
    - gf_list_add
    - gf_node_unregister
    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:3500,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - load
    - suspend
    argTypes:
    - GF_SceneLoader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3502
      start: 3497
    functionDepth: 7
    functionLinenumber: 3497
    functionLinenumberEnd: 3502
    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:3511,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3513
      start: 3505
    functionDepth: 10
    functionLinenumber: 3505
    functionLinenumberEnd: 3513
    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_odf_desc_del
    - gf_list_enum
    - gf_list_rem
    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_sm_get_mux_info
    - gf_isom_get_media_timescale
    - gf_isom_get_media_duration
    - gf_isom_set_edit
    - gf_isom_get_track_by_id
    - gf_isom_use_compact_size
    - gf_isom_set_track_interleaving_group
    - gf_isom_get_timescale
    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_isom_set_track_enabled
    - gf_odf_desc_del
    - gf_isom_get_track_id
    - gf_isom_last_error
    - gf_odf_encode_ui_config
    - gf_odf_desc_new
    - gf_isom_new_track
    - gf_isom_new_mpeg4_description
    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: gf_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: gf_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_sm_get_mux_info
    - gf_isom_last_error
    - gf_url_concatenate
    - GF_SAFEALLOC
    - gf_isom_new_mpeg4_description
    - strchr
    - gf_sm_import_ui_stream
    - gf_strcpy
    - gf_file_ext_start
    - atoi
    - gf_isom_set_edit
    - gf_list_enum
    - strnicmp
    - gf_isom_add_user_data
    - gf_isom_set_track_reference
    - gf_isom_new_track
    - gf_isom_get_track_id
    - gf_isom_set_track_enabled
    - gf_odf_desc_del
    - gf_free
    - gf_isom_add_desc_to_description
    - GF_LOG
    - gf_isom_open
    - gf_isom_get_track_by_id
    - stricmp
    - gf_media_import
    - gf_odf_desc_new
    - gf_file_delete
    - gf_isom_delete
    - gf_isom_get_timescale
    - gf_list_rem
    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_sm_get_mux_info
    - gf_free
    - gf_sm_import_bifs_subtitle
    - gf_url_concatenate
    - gf_sm_remove_mux_info
    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_list_count
    - gf_node_get_tag
    - gf_sm_get_mux_info
    - gf_isom_add_track_to_root_od
    - gf_isom_last_error
    - gf_isom_change_mpeg4_description
    - gf_sm_finalize_mux
    - gf_bifs_encoder_new
    - gf_isom_add_sample
    - gf_isom_get_media_duration
    - gf_isom_set_visual_info
    - gf_laser_encoder_new_stream
    - gf_isom_sample_new
    - gf_isom_new_mpeg4_description
    - gf_odf_get_laser_config
    - gf_sm_import_stream
    - gf_laser_encode_au
    - gf_bifs_encoder_del
    - gf_sm_locate_esd
    - gf_bifs_encode_au
    - gf_isom_set_pl_indication
    - gf_laser_encoder_get_config
    - gf_isom_update_duration
    - gf_list_get
    - gf_bifs_encoder_get_version
    - memcpy
    - gf_laser_encoder_new
    - gf_list_enum
    - gf_sg_get_root_node
    - gf_get_bit_size
    - gf_isom_new_track
    - gf_sg_command_apply_list
    - gf_laser_encoder_del
    - gf_bifs_encoder_set_source_url
    - gf_isom_set_track_enabled
    - gf_sg_command_del
    - gf_odf_desc_del
    - gf_isom_get_track_id
    - gf_free
    - gf_isom_add_sample_shadow
    - gf_isom_set_last_sample_duration
    - GF_LOG
    - gf_isom_get_track_by_id
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_isom_sample_del
    - gf_bifs_encoder_get_rap
    - gf_odf_get_bifs_config
    - memset
    - gf_bifs_encoder_get_config
    - gf_laser_encoder_get_rap
    - gf_bifs_encoder_new_stream
    - gf_list_rem
    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_isom_add_track_to_root_od
    - gf_isom_change_mpeg4_description
    - gf_sm_finalize_mux
    - gf_isom_add_sample
    - gf_isom_get_sample_count
    - gf_isom_sample_new
    - gf_isom_new_mpeg4_description
    - gf_odf_codec_del
    - gf_sm_import_stream
    - gf_sm_locate_esd
    - gf_isom_set_pl_indication
    - gf_isom_update_duration
    - gf_odf_codec_add_com
    - gf_list_enum
    - gf_odf_codec_get_au
    - gf_odf_codec_new
    - gf_isom_new_track
    - gf_error_to_string
    - gf_isom_get_track_id
    - gf_isom_set_track_enabled
    - gf_isom_add_sample_shadow
    - gf_free
    - gf_odf_com_del
    - gf_odf_desc_del
    - gf_isom_set_last_sample_duration
    - GF_LOG
    - gf_odf_desc_esd_new
    - gf_odf_codec_encode
    - gf_odf_desc_new
    - gf_odf_codec_apply_com
    - gf_isom_sample_del
    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: 2
    functionsReached:
    - gf_isom_set_brand_info
    - gf_list_count
    - gf_sm_import_specials
    - gf_isom_set_pl_indication
    - gf_isom_modify_alternate_brand
    - gf_isom_set_root_od_url
    - gf_isom_add_desc_to_root_od
    - gf_isom_set_root_od_id
    - gf_sm_encode_od
    - gf_list_get
    - gf_sm_encode_scene
    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:
    - sprintf
    - gf_file_ext_start
    - gf_fclose
    - gf_fopen
    - sscanf
    - strnicmp
    - strcmp
    - strlen
    - gf_fgets
    - REM_TRAIL_MARKS
    - strstr
    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_vrml_field_pointer_new
    - GF_ARRAY_LENGTH
    - gf_assert
    - gf_list_add
    - gf_fopen
    - gf_sg_find_node_by_name
    - gf_fgets
    - gf_list_enum
    - strnicmp
    - strlen
    - sscanf
    - gf_sg_command_field_new
    - gf_sg_command_new
    - gf_fclose
    - GF_LOG
    - MIN
    - gf_odf_desc_new
    - gf_sg_vrml_mf_append
    - gf_sm_stream_new
    - gf_node_register
    - gf_strdup
    - REM_TRAIL_MARKS
    - gf_node_get_field_by_name
    - gf_sm_stream_au_new
    - gf_utf8_is_legal
    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_vrml_field_pointer_new
    - GF_ARRAY_LENGTH
    - gf_list_add
    - gf_fopen
    - gf_sg_find_node_by_name
    - gf_fgets
    - atoi
    - gf_list_enum
    - strlen
    - gf_sg_command_field_new
    - gf_sg_command_new
    - gf_fclose
    - GF_LOG
    - MIN
    - gf_odf_desc_new
    - gf_sg_vrml_mf_append
    - gf_sm_stream_new
    - gf_node_register
    - gf_strdup
    - REM_TRAIL_MARKS
    - gf_node_get_field_by_name
    - gf_sm_stream_au_new
    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:
    - GF_LOG
    - vsnprintf
    - gf_log_tool_level_on
    - va_end
    - va_start
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gf_bt_report(GF_BTParser *parser, GF_Err e, char *format, ...)
  - BBCount: 70
    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:246,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:247,1
    - Dst: gf_gztell
      Src: /src/gpac/src/scene_manager/loader_bt.c:271,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:277,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:284,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:287,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:292,1
    - Dst: gf_gztell
      Src: /src/gpac/src/scene_manager/loader_bt.c:297,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/scene_manager/loader_bt.c:300,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:310,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:311,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:313,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:315,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:319,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:320,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:322,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:327,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:331,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_bt.c:334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:336,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:340,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:343,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:344,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:345,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:348,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:353,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:359,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:365,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:367,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:368,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:373,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:379,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:382,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:388,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:392,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:394,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:405,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:410,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:412,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:415,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:416,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:417,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:421,1
    - Dst: memmove
      Src: /src/gpac/src/scene_manager/loader_bt.c:425,1
    - Dst: memcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:426,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:427,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:435,1
    CyclomaticComplexity: 110
    EdgeCount: 110
    ICount: 266
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 136
    functionDepth: 6
    functionLinenumber: 136
    functionLinenumberEnd: 444
    functionName: gf_bt_check_line
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_gzgetc
    - GF_SAFEALLOC
    - gf_list_add
    - strstr
    - gf_gzgets
    - strchr
    - gf_bt_report
    - gf_gzseek
    - gf_list_get
    - memcpy
    - gf_gztell
    - gf_gzeof
    - strnicmp
    - gf_set_progress
    - strcmp
    - strlen
    - sscanf
    - GF_LOG
    - gf_utf8_wcstombs
    - gf_strdup
    - memmove
    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: 449
      start: 446
    functionDepth: 0
    functionLinenumber: 446
    functionLinenumberEnd: 449
    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:453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - code
    argTypes:
    - GF_BTParser*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 451
    functionDepth: 7
    functionLinenumber: 451
    functionLinenumberEnd: 459
    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:466,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_bt.c:471,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_bt.c:499,1
    - Dst: MIN
      Src: /src/gpac/src/scene_manager/loader_bt.c:505,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/scene_manager/loader_bt.c:505,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 48
    argCount: 2
    argNames:
    - parser
    - point_break
    argTypes:
    - GF_BTParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 461
    functionDepth: 7
    functionLinenumber: 461
    functionLinenumberEnd: 508
    functionName: gf_bt_get_next
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_check_line
    - MIN
    - GF_ARRAY_LENGTH
    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:521,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/scene_manager/loader_bt.c:526,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:527,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:540,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:541,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:562,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:570,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:575,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:583,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:588,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:593,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:602,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 82
    argCount: 2
    argNames:
    - parser
    - string_delim
    argTypes:
    - GF_BTParser*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 510
    functionDepth: 7
    functionLinenumber: 510
    functionLinenumberEnd: 612
    functionName: gf_bt_get_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_check_line
    - gf_malloc
    - gf_gzeof
    - strchr
    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:617,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:617,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:617,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 2
    argNames:
    - parser
    - str
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 622
    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:628,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: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:637,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:638,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:639,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:640,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:641,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:642,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:643,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:644,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:645,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:646,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:647,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:648,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:649,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:650,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:651,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:652,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:653,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:654,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:656,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:659,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:662,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 62
    argCount: 3
    argNames:
    - parser
    - str
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - s32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 624
    functionDepth: 3
    functionLinenumber: 624
    functionLinenumberEnd: 665
    functionName: check_keyword
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_bt_report
    - strcmp
    - strlen
    - sscanf
    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:671,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:673,1
    - Dst: check_keyword
      Src: /src/gpac/src/scene_manager/loader_bt.c:675,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:676,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:679,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:680,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:682,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - Fixed*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 667
    functionDepth: 8
    functionLinenumber: 667
    functionLinenumberEnd: 684
    functionName: gf_bt_parse_float
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_check_externproto_field
    - INT2FIX
    - check_keyword
    - sscanf
    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:687,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:689,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:690,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:691,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - SFDouble*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 685
    functionDepth: 8
    functionLinenumber: 685
    functionLinenumberEnd: 694
    functionName: gf_bt_parse_double
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_check_externproto_field
    - sscanf
    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:697,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:699,1
    - Dst: check_keyword
      Src: /src/gpac/src/scene_manager/loader_bt.c:701,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:703,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:704,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:705,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - SFInt32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 708
      start: 695
    functionDepth: 8
    functionLinenumber: 695
    functionLinenumberEnd: 708
    functionName: gf_bt_parse_int
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_check_externproto_field
    - check_keyword
    - strnicmp
    - sscanf
    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:711,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:713,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:715,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:715,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:718,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:718,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:721,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 3
    argNames:
    - parser
    - name
    - val
    argTypes:
    - GF_BTParser*
    - char*
    - SFBool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 709
    functionDepth: 8
    functionLinenumber: 709
    functionLinenumberEnd: 724
    functionName: gf_bt_parse_bool
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_get_next
    - gf_bt_report
    - stricmp
    - gf_bt_check_externproto_field
    - strcmp
    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:730,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:732,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:734,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:735,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:737,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:738,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:739,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:740,1
    - Dst: gf_color_parse
      Src: /src/gpac/src/scene_manager/loader_bt.c:743,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:745,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
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - parser
    - name
    - col
    argTypes:
    - GF_BTParser*
    - char*
    - SFColor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 726
    functionDepth: 9
    functionLinenumber: 726
    functionLinenumberEnd: 751
    functionName: gf_bt_parse_color
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_bt_check_code
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_check_externproto_field
    - INT2FIX
    - gf_bt_parse_float
    - sscanf
    - gf_color_parse
    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:756,1
    - Dst: gf_bt_check_externproto_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:758,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:763,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:764,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:765,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:766,1
    - Dst: INT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:767,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:770,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:771,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/scene_manager/loader_bt.c:773,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:774,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:775,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:776,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:777,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:778,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:779,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 3
    argNames:
    - parser
    - name
    - col
    argTypes:
    - GF_BTParser*
    - char*
    - SFColorRGBA*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 753
    functionDepth: 9
    functionLinenumber: 753
    functionLinenumberEnd: 781
    functionName: gf_bt_parse_colorRGBA
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_bt_check_code
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_check_externproto_field
    - INT2FIX
    - gf_bt_parse_float
    - sscanf
    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: 791
      start: 783
    functionDepth: 0
    functionLinenumber: 783
    functionLinenumberEnd: 791
    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:796,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:797,1
    - Dst: stricmp
      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:798,1
    - Dst: gf_sg_proto_field_is_sftime_offset
      Src: /src/gpac/src/scene_manager/loader_bt.c:799,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:800,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: 802
      start: 793
    functionDepth: 3
    functionLinenumber: 793
    functionLinenumberEnd: 802
    functionName: gf_bt_check_time_offset
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_tag
    - stricmp
    - gf_sg_proto_field_is_sftime_offset
    - gf_bt_offset_time
    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:807,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:810,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:813,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:814,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:817,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:818,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:821,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:822,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:825,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:826,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:829,1
    - Dst: gf_bt_offset_time
      Src: /src/gpac/src/scene_manager/loader_bt.c:830,1
    - Dst: gf_node_get_num_fields_in_mode
      Src: /src/gpac/src/scene_manager/loader_bt.c:836,1
    - Dst: gf_node_get_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:838,1
    - Dst: gf_bt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_bt.c:840,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 2
    argNames:
    - parser
    - node
    argTypes:
    - GF_BTParser*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 803
    functionDepth: 4
    functionLinenumber: 803
    functionLinenumberEnd: 845
    functionName: gf_bt_update_timenode
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_num_fields_in_mode
    - gf_node_get_field
    - gf_node_get_tag
    - gf_bt_check_time_offset
    - gf_bt_offset_time
    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:852,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:856,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:860,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:864,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:868,1
    - Dst: gf_bt_check_time_offset
      Src: /src/gpac/src/scene_manager/loader_bt.c:870,1
    - Dst: gf_bt_parse_color
      Src: /src/gpac/src/scene_manager/loader_bt.c:873,1
    - Dst: gf_bt_parse_colorRGBA
      Src: /src/gpac/src/scene_manager/loader_bt.c:876,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:879,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:882,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:883,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:887,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:890,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:891,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:895,1
    - Dst: gf_bt_check_code
      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:899,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:902,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:903,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:907,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:910,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:911,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:914,1
    - Dst: gf_bt_parse_double
      Src: /src/gpac/src/scene_manager/loader_bt.c:915,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:919,1
    - Dst: gf_bt_check_code
      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:923,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:926,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:927,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:930,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:931,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:935,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:937,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:939,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:941,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:947,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:948,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:950,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:953,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:955,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:958,1
    - Dst: gf_sm_update_bitwrapper_buffer
      Src: /src/gpac/src/scene_manager/loader_bt.c:961,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:971,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:972,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:975,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:977,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:980,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:985,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:986,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:988,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_bt.c:990,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:991,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:995,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1002,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1011,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1014,1
    - Dst: gf_bt_parse_bifs_command
      Src: /src/gpac/src/scene_manager/loader_bt.c:1015,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1025,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1027,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1029,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1033,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:1034,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1036,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:1037,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1037,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1038,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1068,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1069,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:1071,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1077,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1078,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1079,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1082,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1083,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1084,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1085,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1085,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1098,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1101,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: 1102
      start: 848
    functionDepth: 10
    functionLinenumber: 848
    functionLinenumberEnd: 1102
    functionName: gf_bt_sffield
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_get_class_name
    - strstr
    - strchr
    - gf_malloc
    - gf_bt_parse_bool
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_get_string
    - gf_bt_parse_int
    - gf_sm_update_bitwrapper_buffer
    - gf_bt_check_code
    - gf_bt_parse_bifs_command
    - gf_bt_peek_node
    - strnicmp
    - gf_bt_parse_float
    - strcmp
    - strlen
    - gf_bt_check_time_offset
    - sscanf
    - gf_bt_parse_color
    - gf_bt_parse_double
    - sprintf
    - gf_free
    - gf_node_get_field_by_name
    - gf_bt_parse_colorRGBA
    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:1109,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1114,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_bt.c:1116,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1118,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_bt.c:1119,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1120,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1123,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: 1126
      start: 1104
    functionDepth: 11
    functionLinenumber: 1104
    functionLinenumberEnd: 1126
    functionName: gf_bt_mffield
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_sffield
    - gf_bt_check_code
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_get_sf_type
    - 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:1138,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1140,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1140,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1141,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: 1143
      start: 1128
    functionDepth: 5
    functionLinenumber: 1128
    functionLinenumberEnd: 1143
    functionName: gf_bt_check_ndt
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_in_table
    - gf_bt_report
    - gf_node_unregister
    - gf_node_get_class_name
    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:1149,1
    - Dst: gf_sg_get_next_available_node_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1150,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1145
    functionDepth: 1
    functionLinenumber: 1145
    functionLinenumberEnd: 1154
    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:1159,1
    - Dst: gf_sg_get_next_available_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1161,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1155
    functionDepth: 2
    functionLinenumber: 1155
    functionLinenumberEnd: 1165
    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:1170,1
    - Dst: gf_sg_get_next_available_proto_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1166
    functionDepth: 2
    functionLinenumber: 1166
    functionLinenumberEnd: 1175
    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:1181,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:1184,1
    - Dst: gf_sg_find_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1192,1
    - Dst: gf_bt_get_next_node_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:1202,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1202,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 2
    argNames:
    - parser
    - defName
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1205
      start: 1177
    functionDepth: 2
    functionLinenumber: 1177
    functionLinenumberEnd: 1205
    functionName: gf_bt_get_def_id
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_bt_get_next_node_id
    - GF_LOG
    - gf_node_get_name
    - sscanf
    - gf_sg_find_node
    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:1214,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1217,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1219,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1220,1
    - Dst: gf_sg_proto_field_find_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1223,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1225,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1228,1
    - Dst: gf_sg_proto_field_set_ised
      Src: /src/gpac/src/scene_manager/loader_bt.c:1229,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1230,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: 1232
      start: 1207
    functionDepth: 8
    functionLinenumber: 1207
    functionLinenumberEnd: 1232
    functionName: gf_bt_set_field_is
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_proto_field_set_ised
    - gf_bt_get_next
    - gf_bt_report
    - strnicmp
    - gf_bt_check_line
    - gf_sg_proto_field_find_by_name
    - gf_sg_proto_field_get_field
    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:1237,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:1240,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1241,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1241,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1242,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - parser
    argTypes:
    - GF_BTParser*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1234
    functionDepth: 3
    functionLinenumber: 1234
    functionLinenumberEnd: 1245
    functionName: gf_bt_check_unresolved_nodes
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bt_report
    - gf_node_get_name
    - gf_list_get
    - 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:1250,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:1252,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1253,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1253,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1247
    functionDepth: 1
    functionLinenumber: 1247
    functionLinenumberEnd: 1256
    functionName: gf_bt_has_been_def
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_node_get_name
    - strcmp
    - gf_list_get
    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:1264,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1267,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1270,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1271,1
    - Dst: gf_node_mpeg4_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1274,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1276,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1277,1
    - Dst: gf_node_x3d_type_by_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1279,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - parser
    - node_name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1258
    functionDepth: 1
    functionLinenumber: 1258
    functionLinenumberEnd: 1284
    functionName: gf_bt_get_node_tag
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_node_x3d_type_by_class_name
    - strcmp
    - gf_node_mpeg4_type_by_class_name
    linkageType: ''
    returnType: u32
    signature: u32 gf_bt_get_node_tag(GF_BTParser *parser, char *node_name)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1302,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1305,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1311,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1313,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1314,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1315,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1317,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1321,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_bt.c:1323,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1324,1
    - Dst: gf_bt_has_been_def
      Src: /src/gpac/src/scene_manager/loader_bt.c:1326,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1328,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1329,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1332,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1335,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1336,1
    - Dst: gf_sg_find_node_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1337,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1340,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1341,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1342,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:1343,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1344,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:1346,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1347,1
    - Dst: gf_bt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:1351,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1355,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1362,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1363,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_bt.c:1373,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1375,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1389,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1392,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:1394,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1402,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1404,1
    - Dst: gf_bt_update_timenode
      Src: /src/gpac/src/scene_manager/loader_bt.c:1407,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1409,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1412,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1415,1
    - Dst: gf_bt_report
      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: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1423,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1425,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1426,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1427,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1431,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1432,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1437,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1443,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:1445,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1450,1
    - Dst: gf_bt_get_string
      Src: /src/gpac/src/scene_manager/loader_bt.c:1451,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1452,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1457,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1459,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1461,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1463,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1465,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:1467,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1474,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1476,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1478,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1480,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1484,1
    - Dst: gf_bt_parse_bool
      Src: /src/gpac/src/scene_manager/loader_bt.c:1486,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1496,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1496,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1497,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1497,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1498,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1498,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1500,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1503,1
    - Dst: gf_sg_field_type_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1504,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1506,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1510,1
    - Dst: gf_sg_script_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1511,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1512,1
    - Dst: gf_bt_set_field_is
      Src: /src/gpac/src/scene_manager/loader_bt.c:1514,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1519,1
    - Dst: gf_sg_proto_mark_field_loaded
      Src: /src/gpac/src/scene_manager/loader_bt.c:1523,1
    - Dst: gf_bt_set_field_is
      Src: /src/gpac/src/scene_manager/loader_bt.c:1524,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1530,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1534,1
    - Dst: gf_bt_check_ndt
      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:1546,1
    - Dst: gf_node_unregister_children
      Src: /src/gpac/src/scene_manager/loader_bt.c:1553,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1557,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1559,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1560,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:1563,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:1564,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1571,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1572,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1574,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1580,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1584,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:1587,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_bt.c:1587,1
    - Dst: gf_node_replace
      Src: /src/gpac/src/scene_manager/loader_bt.c:1591,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1592,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_bt.c:1593,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1598,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1599,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1602,1
    - Dst: gf_sg_proto_load_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1607,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:1612,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1613,1
    CyclomaticComplexity: 125
    EdgeCount: 125
    ICount: 291
    argCount: 4
    argNames:
    - parser
    - node_name
    - parent
    - szDEFName
    argTypes:
    - GF_BTParser*
    - char*
    - GF_Node*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1615
      start: 1286
    functionDepth: 12
    functionLinenumber: 1286
    functionLinenumberEnd: 1615
    functionName: gf_bt_sf_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_bt_sffield
    - gf_node_get_tag
    - gf_node_new
    - gf_sg_vrml_is_sf_field
    - gf_list_add
    - gf_bt_has_been_def
    - gf_node_unregister
    - gf_bt_parse_bool
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_get_string
    - gf_sg_proto_create_instance
    - gf_sg_script_field_new
    - gf_sg_find_node_by_name
    - gf_sg_field_type_by_name
    - gf_node_replace
    - gf_bt_get_node_tag
    - gf_node_get_id
    - gf_bt_check_code
    - gf_sg_proto_mark_field_loaded
    - gf_bt_get_def_id
    - gf_bt_update_timenode
    - gf_bt_mffield
    - gf_bt_parse_float
    - strcmp
    - gf_list_new
    - gf_sg_proto_load_code
    - gf_node_set_id
    - gf_free
    - gf_bt_parse_route
    - gf_bt_check_ndt
    - gf_node_init
    - gf_list_del_item
    - gf_bt_sf_node
    - gf_node_register
    - gf_node_list_add_child_last
    - gf_strdup
    - gf_node_get_field_by_name
    - gf_node_unregister_children
    - gf_sg_find_proto
    - gf_bt_set_field_is
    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:1629,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:1632,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:1634,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1635,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1635,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1642,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1646,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1647,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1648,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1649,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1650,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1651,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1652,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1654,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1654,1
    - Dst: gf_list_find
      Src: /src/gpac/src/scene_manager/loader_bt.c:1656,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1661,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1664,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1665,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1666,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1667,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1668,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1669,1
    - Dst: gf_bt_get_node_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:1673,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1678,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1685,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1686,1
    - Dst: gf_sg_proto_create_instance
      Src: /src/gpac/src/scene_manager/loader_bt.c:1689,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1691,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1693,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1695,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1696,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_bt.c:1697,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1698,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1700,1
    - Dst: gf_gzrewind
      Src: /src/gpac/src/scene_manager/loader_bt.c:1709,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:1710,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:1712,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 79
    argCount: 2
    argNames:
    - parser
    - defID
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1620
    functionDepth: 9
    functionLinenumber: 1620
    functionLinenumberEnd: 1717
    functionName: gf_bt_peek_node
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_gzrewind
    - gf_node_new
    - gf_node_get_name
    - gf_list_add
    - gf_bt_get_next
    - gf_bt_report
    - gf_list_find
    - gf_sg_proto_create_instance
    - gf_gzseek
    - gf_sg_find_node_by_name
    - gf_list_get
    - gf_strcpy
    - gf_bt_get_node_tag
    - gf_bt_check_code
    - gf_bt_get_def_id
    - strcmp
    - gf_free
    - gf_node_set_id
    - gf_node_init
    - gf_bt_check_line
    - gf_strdup
    - gf_sg_find_proto
    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:1723,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_bt.c:1726,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1727,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1730
      start: 1719
    functionDepth: 2
    functionLinenumber: 1719
    functionLinenumberEnd: 1730
    functionName: gf_bt_get_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_sg_route_find_by_name
    - gf_list_enum
    - strcmp
    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:1736,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_bt.c:1739,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - parser
    - ID
    argTypes:
    - GF_BTParser*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1732
    functionDepth: 2
    functionLinenumber: 1732
    functionLinenumberEnd: 1743
    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:1747,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1747,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1748,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1748,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1749,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1749,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1750,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1750,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 1
    argNames:
    - eventName
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1745
    functionDepth: 0
    functionLinenumber: 1745
    functionLinenumberEnd: 1752
    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: 46
    BranchProfiles: []
    Callsites:
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1769,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1771,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1772,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1773,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1774,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1775,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1776,1
    - Dst: gf_bt_get_next_proto_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1778,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1781,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:1782,1
    - Dst: gf_sg_proto_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1784,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:1785,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:1791,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1793,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1794,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1797,1
    - Dst: get_evt_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1799,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1801,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1804,1
    - Dst: gf_sg_field_type_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1805,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1807,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1810,1
    - Dst: gf_sg_proto_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:1811,1
    - Dst: gf_sg_proto_field_get_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1814,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1816,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1817,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:1818,1
    - Dst: get_evt_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1818,1
    - Dst: gf_bt_sf_node
      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:1823,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1826,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1827,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:1828,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:1831,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1832,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:1839,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1842,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1843,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1844,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1845,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1848,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1851,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1852,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:1853,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1854,1
    - Dst: strcmp
      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:1860,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1861,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1864,1
    - Dst: gf_bt_parse_float
      Src: /src/gpac/src/scene_manager/loader_bt.c:1865,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1866,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1867,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:1870,1
    - Dst: gf_bifs_proto_field_set_aq_info
      Src: /src/gpac/src/scene_manager/loader_bt.c:1876,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1877,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1878,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1888,1
    - Dst: gf_sg_vrml_mf_reset
      Src: /src/gpac/src/scene_manager/loader_bt.c:1890,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1892,1
    - Dst: gf_sg_vrml_mf_append
      Src: /src/gpac/src/scene_manager/loader_bt.c:1893,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1894,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1895,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1897,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1898,1
    - Dst: sprintf
      Src: /src/gpac/src/scene_manager/loader_bt.c:1901,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1902,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:1904,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1909,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1910,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1917,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1918,1
    - Dst: gf_sg_proto_get_graph
      Src: /src/gpac/src/scene_manager/loader_bt.c:1925,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1928,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1930,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1931,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1931,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:1932,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1933,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1935,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1936,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1937,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1938,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1940,1
    - Dst: gf_bt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1941,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1942,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:1943,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1947,1
    - Dst: gf_bt_get_def_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1951,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1953,1
    - Dst: gf_sg_proto_add_node_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:1955,1
    - Dst: gf_bt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_bt.c:1958,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:1959,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_bt.c:1965,1
    - Dst: gf_sg_proto_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:1966,1
    CyclomaticComplexity: 71
    EdgeCount: 71
    ICount: 202
    argCount: 3
    argNames:
    - parser
    - proto_code
    - proto_list
    argTypes:
    - GF_BTParser*
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1968
      start: 1754
    functionDepth: 13
    functionLinenumber: 1754
    functionLinenumberEnd: 1968
    functionName: gf_bt_parse_proto
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - get_evt_type
    - gf_bt_sffield
    - gf_bt_parse_proto
    - gf_sg_vrml_is_sf_field
    - gf_sg_proto_new
    - gf_list_add
    - gf_sg_proto_field_get_field
    - gf_bt_get_next
    - gf_bt_report
    - gf_sg_proto_get_graph
    - gf_bt_parse_int
    - gf_sg_field_type_by_name
    - gf_bt_get_next_route_id
    - gf_sg_route_set_id
    - gf_strcpy
    - gf_sg_proto_field_new
    - gf_bt_check_code
    - gf_bt_check_unresolved_nodes
    - gf_bt_get_def_id
    - strnicmp
    - gf_bt_mffield
    - gf_bt_parse_float
    - strcmp
    - strlen
    - sscanf
    - gf_sg_proto_add_node_code
    - sprintf
    - gf_bifs_proto_field_set_aq_info
    - gf_free
    - gf_bt_parse_route
    - gf_sg_route_set_name
    - gf_node_set_id
    - gf_bt_resolve_routes
    - gf_list_del_item
    - gf_bt_sf_node
    - gf_bt_get_next_proto_id
    - gf_sg_vrml_mf_append
    - gf_sg_vrml_get_sf_type
    - gf_node_list_add_child_last
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - gf_bt_get_route
    - gf_sg_find_proto
    - gf_sg_proto_del
    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: gf_strcpy
      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:1981,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:1982,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1983,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1984,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:1985,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_bt.c:1987,1
    - Dst: gf_bt_route_id_used
      Src: /src/gpac/src/scene_manager/loader_bt.c:1990,1
    - Dst: gf_bt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:1993,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:1994,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:1994,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:1996,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:1998,1
    - Dst: gf_bt_check_code
      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: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2005,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2006,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2008,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2009,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2011,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2012,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2014,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2018,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2018,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2018,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2021,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2022,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2023,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2027,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2027,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2028,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2030,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2033,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2034,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2037,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2038,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2040,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2041,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2043,1
    - Dst: strstr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2044,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2046,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2050,1
    - Dst: gf_node_get_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2050,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2050,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2054,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2056,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2060,1
    - Dst: gf_sg_set_max_defined_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2063,1
    - Dst: gf_sg_route_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2070,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2072,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2073,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: 2076
      start: 1971
    functionDepth: 10
    functionLinenumber: 1971
    functionLinenumberEnd: 2076
    functionName: gf_bt_parse_route
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 2
    functionsReached:
    - gf_node_get_class_name
    - gf_bt_get_route
    - gf_node_get_name
    - strstr
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_get_next_route_id
    - gf_sg_route_set_id
    - gf_strcpy
    - atoi
    - gf_bt_check_code
    - gf_node_get_id
    - gf_sg_route_new
    - gf_bt_peek_node
    - gf_bt_route_id_used
    - strnicmp
    - strcmp
    - gf_sg_set_max_defined_route_id
    - gf_sg_route_set_name
    - gf_strdup
    - gf_node_get_field_by_name
    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:2081,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:2082,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:2083,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2087,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2088,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:2089,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:2097,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:2097,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - parser
    - clean
    argTypes:
    - GF_BTParser*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2098
      start: 2078
    functionDepth: 3
    functionLinenumber: 2078
    functionLinenumberEnd: 2098
    functionName: gf_bt_resolve_routes
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_bt_report
    - gf_list_get
    - gf_bt_get_route
    - 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:2104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - com
    - node
    argTypes:
    - GF_Command*
    - GF_Node*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2105
      start: 2101
    functionDepth: 2
    functionLinenumber: 2101
    functionLinenumberEnd: 2105
    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:2117,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2124,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2125,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: gf_sg_route_find_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2128,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2129,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2130,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2131,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2132,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2134,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2138,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2140,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2142,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2143,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2147,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2148,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2149,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2150,1
    - Dst: gf_bt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_bt.c:2152,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2153,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:2154,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:2154,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2157,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2158,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2158,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:2159,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2165,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2169,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2173,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2174,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2176,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2177,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2178,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2179,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2181,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2182,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2183,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2184,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2185,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2186,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2189,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2190,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2191,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:2193,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2196,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2200,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2201,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2202,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2204,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2206,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2210,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2211,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2213,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2219,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2220,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2227,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2229,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2230,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2233,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:2234,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2239,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2241,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2242,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2244,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2250,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2255,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2256,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2257,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2260,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2261,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2264,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2267,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2268,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2274,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2275,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2279,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2284,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2292,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2294,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2295,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2296,1
    - Dst: gf_bt_check_code
      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_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2301,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2302,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2303,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2305,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2307,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2309,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:2311,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2313,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2314,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2316,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2318,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2319,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2320,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2321,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2324,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2325,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2326,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2328,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2331,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2334,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2347,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/scene_manager/loader_bt.c:2347,1
    - Dst: floor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2350,1
    - Dst: gf_node_list_get_child
      Src: /src/gpac/src/scene_manager/loader_bt.c:2354,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2356,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2358,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2359,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2360,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2362,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2366,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2367,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2368,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2372,1
    - Dst: strchr
      Src: /src/gpac/src/scene_manager/loader_bt.c:2375,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2378,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2380,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2382,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2384,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2385,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2388,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2389,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2390,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2392,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2398,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2399,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2401,1
    - Dst: gf_node_get_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:2405,1
    - Dst: gf_node_get_tag
      Src: /src/gpac/src/scene_manager/loader_bt.c:2409,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2416,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2420,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2429,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2432,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2434,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2440,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2442,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2443,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2448,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2450,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:2453,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2458,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2463,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2464,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2466,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2474,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2481,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2481,1
    - Dst: strcmp
      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:2483,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2484,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2485,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2486,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2488,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2489,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2493,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2493,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2494,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2496,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2497,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2498,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2500,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2502,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2503,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2505,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2506,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2508,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2509,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2511,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2512,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2513,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2516,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2517,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2521,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2522,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2523,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2526,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2527,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2528,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2529,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2536,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2538,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2539,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2542,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2543,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2544,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2547,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2550,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2555,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2557,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2561,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2566,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2567,1
    - Dst: strcmp
      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:2569,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2570,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:2571,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2573,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2575,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:2578,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2579,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2581,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2582,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2584,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2586,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2587,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2588,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2589,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2591,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2592,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2593,1
    - Dst: gf_node_get_class_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2593,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2595,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2596,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2597,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2598,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2600,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2602,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2603,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2604,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2609,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2611,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2614,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2615,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2616,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2620,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2625,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2626,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2628,1
    - Dst: gf_node_unregister
      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:2632,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2634,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2638,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2642,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2643,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2644,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2645,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2647,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2649,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2650,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2652,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2653,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2655,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2656,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2657,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2659,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2662,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2669,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2671,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2677,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2678,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2682,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2683,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2685,1
    - Dst: gf_node_list_add_child_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:2686,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2691,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2692,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2693,1
    - Dst: gf_bt_mffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2695,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2702,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2706,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2707,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2708,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2709,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2711,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2713,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2714,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2716,1
    - Dst: gf_node_get_field_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2717,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2719,1
    - Dst: gf_sg_vrml_is_sf_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2721,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2722,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2724,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2725,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2728,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2729,1
    - Dst: gf_sg_vrml_get_sf_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2730,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2732,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:2734,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2735,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2736,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2737,1
    - Dst: gf_sg_command_field_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2740,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2746,1
    - Dst: gf_bt_check_ndt
      Src: /src/gpac/src/scene_manager/loader_bt.c:2748,1
    - Dst: gf_sg_vrml_field_pointer_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2751,1
    - Dst: gf_bt_sffield
      Src: /src/gpac/src/scene_manager/loader_bt.c:2752,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2757,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2760,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2761,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2762,1
    - Dst: gf_bt_peek_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2763,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2765,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2767,1
    - Dst: bd_set_com_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:2768,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2769,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2772,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2773,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2774,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2776,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2777,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:2778,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2781,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2784,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2785,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2786,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2787,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2788,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2789,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2792,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2794,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2795,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2797,1
    - Dst: gf_sg_find_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:2798,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2800,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:2803,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2807,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2810,1
    - Dst: gf_sg_command_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2813,1
    CyclomaticComplexity: 214
    EdgeCount: 214
    ICount: 719
    argCount: 3
    argNames:
    - parser
    - name
    - cmdList
    argTypes:
    - GF_BTParser*
    - char*
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2107
    functionDepth: 14
    functionLinenumber: 2107
    functionLinenumberEnd: 2815
    functionName: gf_bt_parse_bifs_command
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_sg_vrml_field_pointer_new
    - gf_list_count
    - gf_bt_parse_proto
    - gf_bt_sffield
    - gf_node_get_tag
    - gf_node_get_class_name
    - gf_bt_get_route
    - gf_sg_vrml_is_sf_field
    - gf_list_add
    - gf_node_unregister
    - FIX2FLT
    - strchr
    - gf_bt_get_next
    - gf_sg_route_find_by_name
    - gf_bt_report
    - gf_bt_parse_int
    - gf_realloc
    - gf_strcpy
    - gf_bt_check_code
    - gf_node_get_id
    - gf_bt_peek_node
    - bd_set_com_node
    - gf_bt_mffield
    - strcmp
    - floor
    - sscanf
    - gf_sg_command_field_new
    - gf_sg_command_del
    - gf_sg_command_new
    - gf_bt_parse_route
    - gf_bt_check_ndt
    - gf_bt_resolve_routes
    - gf_node_list_get_child
    - gf_bt_sf_node
    - gf_sg_vrml_get_sf_type
    - gf_node_list_add_child_last
    - gf_strdup
    - gf_node_get_field_by_name
    - gf_sg_find_proto
    - 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:2831,1
    - Dst: gf_ipmpx_get_tag
      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_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2838,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2841,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2845,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2846,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2847,1
    - Dst: gf_ipmpx_get_field_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:2848,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2852,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2853,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2854,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2856,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2857,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2860,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2865,1
    - Dst: gf_bt_check_code
      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:2867,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:2868,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2870,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:2874,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:2875,1
    - Dst: gf_bt_check_code
      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:2884,1
    - Dst: gf_ipmpx_set_byte_array
      Src: /src/gpac/src/scene_manager/loader_bt.c:2886,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2887,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2889,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2896,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2897,1
    - Dst: stricmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2898,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2899,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2900,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2903,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2904,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2906,1
    - Dst: gf_ipmpx_set_byte_array
      Src: /src/gpac/src/scene_manager/loader_bt.c:2908,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2910,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2911,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2917,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2918,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:2919,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2921,1
    - Dst: gf_ipmpx_set_sub_data
      Src: /src/gpac/src/scene_manager/loader_bt.c:2925,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2926,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2927,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2934,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:2935,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2937,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2938,1
    - Dst: gf_ipmpx_set_sub_data
      Src: /src/gpac/src/scene_manager/loader_bt.c:2941,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2942,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2943,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2947,1
    - Dst: gf_ipmpx_set_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:2948,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2951,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2952,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 124
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2959
      start: 2820
    functionDepth: 8
    functionLinenumber: 2820
    functionLinenumberEnd: 2959
    functionName: gf_bt_parse_ipmpx
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_strcpy
    - gf_bt_check_code
    - gf_ipmpx_data_del
    - gf_bt_get_next
    - gf_bt_report
    - gf_ipmpx_data_new
    - gf_assert
    - stricmp
    - gf_ipmpx_get_field_type
    - gf_bt_parse_descriptor
    - gf_ipmpx_set_sub_data
    - gf_ipmpx_get_tag
    - gf_bt_parse_ipmpx
    - gf_list_add
    - gf_ipmpx_set_field
    - gf_ipmpx_set_byte_array
    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:2964,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2966,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:2967,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: 2969
      start: 2962
    functionDepth: 3
    functionLinenumber: 2962
    functionLinenumberEnd: 2969
    functionName: gf_bt_add_desc
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_odf_desc_del
    - gf_bt_report
    - 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:2980,1
    - Dst: gf_odf_get_tag_by_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:2982,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:2984,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:2987,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2990,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:2995,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:2996,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:2997,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:2999,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3000,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3001,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3002,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:3003,1
    - Dst: gf_odf_get_field_type
      Src: /src/gpac/src/scene_manager/loader_bt.c:3006,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3012,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3013,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3016,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3017,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:3018,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3020,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3024,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3031,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3032,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3035,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3036,1
    - Dst: gf_bt_parse_ipmpx
      Src: /src/gpac/src/scene_manager/loader_bt.c:3037,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3039,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3045,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3048,1
    - Dst: gf_ipmpx_data_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3049,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3058,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3059,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3060,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3062,1
    - Dst: gf_bt_add_desc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3066,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3070,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3074,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3075,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3077,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3078,1
    - Dst: gf_bt_add_desc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3081,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3085,1
    - Dst: gf_odf_set_field
      Src: /src/gpac/src/scene_manager/loader_bt.c:3086,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3089,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3090,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3118,1
    - Dst: gf_sm_get_mux_info
      Src: /src/gpac/src/scene_manager/loader_bt.c:3125,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:3135,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 144
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3139
      start: 2971
    functionDepth: 9
    functionLinenumber: 2971
    functionLinenumberEnd: 3139
    functionName: gf_bt_parse_descriptor
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 2
    functionsReached:
    - gf_strcpy
    - gf_odf_get_field_type
    - gf_odf_desc_del
    - gf_bt_add_desc
    - gf_odf_set_field
    - gf_bt_check_code
    - gf_sm_get_mux_info
    - gf_ipmpx_data_del
    - gf_bt_get_next
    - gf_bt_report
    - gf_bt_parse_descriptor
    - gf_odf_desc_new
    - gf_bt_parse_ipmpx
    - gf_sm_stream_new
    - gf_odf_get_tag_by_name
    - strcmp
    - gf_strdup
    - gf_list_add
    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:3146,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3147,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3149,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3151,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3152,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3155,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3156,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3159,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3160,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3161,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3161,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3162,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3165,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3167,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3172,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3174,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3175,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3176,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3179,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3180,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3183,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3185,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3186,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3187,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3188,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3191,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3192,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3199,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3200,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3201,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3202,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3205,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3207,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3212,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3212,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3214,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3215,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3218,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3219,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3222,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3223,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3224,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3225,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3228,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3230,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3234,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3237,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3238,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3240,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3242,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3243,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3246,1
    - Dst: gf_list_add
      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_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3251,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3253,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3260,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3263,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3264,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3265,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3268,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3271,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3272,1
    - Dst: gf_odf_com_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3275,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3277,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3280,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3281,1
    - Dst: gf_realloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3283,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3289,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 140
    argCount: 2
    argNames:
    - parser
    - name
    argTypes:
    - GF_BTParser*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3141
    functionDepth: 10
    functionLinenumber: 3141
    functionLinenumberEnd: 3292
    functionName: gf_bt_parse_od_command
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_check_code
    - gf_bt_get_next
    - gf_bt_report
    - gf_list_add
    - gf_bt_parse_descriptor
    - gf_bt_parse_int
    - strcmp
    - gf_realloc
    - gf_odf_com_new
    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:3320,1
    - Dst: gf_node_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3322,1
    - Dst: gf_node_register
      Src: /src/gpac/src/scene_manager/loader_bt.c:3324,1
    - Dst: gf_node_init
      Src: /src/gpac/src/scene_manager/loader_bt.c:3325,1
    - Dst: gf_sg_set_root_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:3326,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:3328,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3337,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3340,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3345,1
    - Dst: gf_bt_force_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3345,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3346,1
    - Dst: gf_bt_force_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3346,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3347,1
    - Dst: gf_bt_force_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3347,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3348,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3348,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3349,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3354,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3354,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3355,1
    - Dst: gf_bt_parse_descriptor
      Src: /src/gpac/src/scene_manager/loader_bt.c:3356,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3359,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3359,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3361,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3363,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3364,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3365,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3371,1
    - Dst: atoi
      Src: /src/gpac/src/scene_manager/loader_bt.c:3373,1
    - Dst: sscanf
      Src: /src/gpac/src/scene_manager/loader_bt.c:3375,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3376,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3384,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3395,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3396,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3397,1
    - Dst: gf_bt_parse_int
      Src: /src/gpac/src/scene_manager/loader_bt.c:3398,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3401,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3402,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3408,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3408,1
    - Dst: gf_bt_parse_proto
      Src: /src/gpac/src/scene_manager/loader_bt.c:3409,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3412,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3414,1
    - Dst: gf_bt_get_next
      Src: /src/gpac/src/scene_manager/loader_bt.c:3415,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:3416,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3419,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3423,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3424,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3425,1
    - Dst: gf_bt_parse_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:3428,1
    - Dst: gf_bt_get_route
      Src: /src/gpac/src/scene_manager/loader_bt.c:3430,1
    - Dst: gf_bt_get_next_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:3431,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/loader_bt.c:3434,1
    - Dst: gf_sg_set_max_defined_route_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:3435,1
    - Dst: gf_sg_route_set_id
      Src: /src/gpac/src/scene_manager/loader_bt.c:3437,1
    - Dst: gf_sg_route_set_name
      Src: /src/gpac/src/scene_manager/loader_bt.c:3438,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3444,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:3450,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3457,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3458,1
    - Dst: gf_bt_parse_od_command
      Src: /src/gpac/src/scene_manager/loader_bt.c:3459,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3463,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3463,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3463,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3463,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3465,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3465,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3465,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3465,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3465,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3465,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3466,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3475,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3478,1
    - Dst: gf_list_last
      Src: /src/gpac/src/scene_manager/loader_bt.c:3484,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3494,1
    - Dst: gf_bt_parse_bifs_command
      Src: /src/gpac/src/scene_manager/loader_bt.c:3496,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3500,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3501,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3502,1
    - Dst: strcmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3503,1
    - Dst: gf_bt_sf_node
      Src: /src/gpac/src/scene_manager/loader_bt.c:3509,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3513,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:3516,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/scene_manager/loader_bt.c:3517,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3521,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:3522,1
    - Dst: gf_assert
      Src: /src/gpac/src/scene_manager/loader_bt.c:3523,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3524,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3525,1
    - Dst: gf_node_unregister
      Src: /src/gpac/src/scene_manager/loader_bt.c:3529,1
    - Dst: gf_node_insert_child
      Src: /src/gpac/src/scene_manager/loader_bt.c:3532,1
    - Dst: gf_bt_check_code
      Src: /src/gpac/src/scene_manager/loader_bt.c:3546,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3547,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3548,1
    - Dst: gf_bt_resolve_routes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3553,1
    - Dst: gf_bt_check_unresolved_nodes
      Src: /src/gpac/src/scene_manager/loader_bt.c:3554,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:3557,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:3558,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:3559,1
    - Dst: gf_sg_script_load
      Src: /src/gpac/src/scene_manager/loader_bt.c:3560,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 210
    argCount: 3
    argNames:
    - parser
    - init_com
    - initial_run
    argTypes:
    - GF_BTParser*
    - GF_Command*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3563
      start: 3296
    functionDepth: 15
    functionLinenumber: 3296
    functionLinenumberEnd: 3563
    functionName: gf_bt_loader_run_intern
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_parse_proto
    - gf_list_count
    - gf_assert
    - gf_node_new
    - gf_list_add
    - gf_node_unregister
    - gf_sg_set_root_node
    - gf_sg_script_load
    - gf_bt_get_next
    - gf_bt_force_line
    - gf_bt_report
    - gf_bt_parse_int
    - gf_list_get
    - gf_list_last
    - gf_bt_get_next_route_id
    - gf_sg_route_set_id
    - gf_strcpy
    - atoi
    - gf_bt_check_code
    - gf_bt_parse_bifs_command
    - gf_bt_check_unresolved_nodes
    - gf_sg_get_root_node
    - gf_bt_parse_od_command
    - gf_node_insert_child
    - strcmp
    - strlen
    - gf_sg_set_max_defined_route_id
    - sscanf
    - gf_odf_desc_del
    - gf_sg_command_new
    - gf_bt_parse_route
    - gf_sg_route_set_name
    - gf_node_init
    - gf_bt_resolve_routes
    - gf_list_del_item
    - gf_bt_sf_node
    - gf_bt_parse_descriptor
    - gf_node_register
    - gf_sm_stream_new
    - gf_strdup
    - gf_bt_get_route
    - gf_sm_stream_au_new
    - 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:3576,1
    - Dst: gf_fsize
      Src: /src/gpac/src/scene_manager/loader_bt.c:3579,1
    - Dst: gf_fclose
      Src: /src/gpac/src/scene_manager/loader_bt.c:3580,1
    - Dst: gf_gzopen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3582,1
    - Dst: gf_malloc
      Src: /src/gpac/src/scene_manager/loader_bt.c:3585,1
    - Dst: memset
      Src: /src/gpac/src/scene_manager/loader_bt.c:3586,1
    - Dst: gf_gzgets
      Src: /src/gpac/src/scene_manager/loader_bt.c:3590,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3591,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3595,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/scene_manager/loader_bt.c:3600,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3606,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3610,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3614,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3618,1
    - Dst: gf_gzseek
      Src: /src/gpac/src/scene_manager/loader_bt.c:3623,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/scene_manager/loader_bt.c:3629,1
    - Dst: strnicmp
      Src: /src/gpac/src/scene_manager/loader_bt.c:3630,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/scene_manager/loader_bt.c:3645,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:3667,1
    - Dst: gf_bt_check_line
      Src: /src/gpac/src/scene_manager/loader_bt.c:3675,1
    - Dst: gf_sm_stream_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3684,1
    - Dst: gf_sm_stream_au_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3685,1
    - Dst: GF_LOG
      Src: /src/gpac/src/scene_manager/loader_bt.c:3689,1
    - Dst: gf_sg_command_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3694,1
    - Dst: gf_list_add
      Src: /src/gpac/src/scene_manager/loader_bt.c:3695,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3699,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 108
    argCount: 3
    argNames:
    - load
    - str
    - input_only
    argTypes:
    - GF_SceneLoader*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3703
      start: 3565
    functionDepth: 16
    functionLinenumber: 3565
    functionLinenumberEnd: 3703
    functionName: gf_sm_load_bt_initialize
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_add
    - gf_gzgets
    - gf_malloc
    - gf_fopen
    - gf_bt_report
    - gf_fsize
    - gf_gzseek
    - gf_strcpy
    - gf_file_ext_start
    - gf_list_enum
    - strnicmp
    - gf_gzopen
    - strlen
    - gf_fclose
    - gf_sg_command_new
    - GF_LOG
    - gf_bt_check_line
    - gf_sm_stream_new
    - memset
    - gf_bt_loader_run_intern
    - gf_sm_stream_au_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:3709,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3710,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3711,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3712,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3713,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:3714,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:3715,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:3716,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3717,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3718,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3719,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3721,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3722,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/scene_manager/loader_bt.c:3724,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3725,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3726,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3728
      start: 3705
    functionDepth: 3
    functionLinenumber: 3705
    functionLinenumberEnd: 3728
    functionName: load_bt_done
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_gzclose
    - gf_list_get
    - 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:3737,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3741,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/scene_manager/loader_bt.c:3747,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3752,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3760
      start: 3730
    functionDepth: 17
    functionLinenumber: 3730
    functionLinenumberEnd: 3760
    functionName: load_bt_run
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_bt_loader_run_intern
    - gf_gzclose
    - gf_free
    - gf_sm_load_bt_initialize
    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:3776,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3777,1
    - Dst: gf_sm_load_bt_initialize
      Src: /src/gpac/src/scene_manager/loader_bt.c:3780,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3782,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3786,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3789,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - load
    - str
    argTypes:
    - GF_SceneLoader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3791
      start: 3763
    functionDepth: 17
    functionLinenumber: 3763
    functionLinenumberEnd: 3791
    functionName: load_bt_parse_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sm_load_bt_initialize
    - strlen
    - gf_strdup
    - gf_bt_loader_run_intern
    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: 3796
      start: 3793
    functionDepth: 0
    functionLinenumber: 3793
    functionLinenumberEnd: 3796
    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:3806,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3810,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3811,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3812,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3813,1
    - Dst: gf_list_new
      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_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3816,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/scene_manager/loader_bt.c:3824,1
    - Dst: gf_bt_report
      Src: /src/gpac/src/scene_manager/loader_bt.c:3825,1
    - Dst: gf_sm_load_bt_initialize
      Src: /src/gpac/src/scene_manager/loader_bt.c:3829,1
    - Dst: load_bt_done
      Src: /src/gpac/src/scene_manager/loader_bt.c:3831,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 1
    argNames:
    - load
    argTypes:
    - GF_SceneLoader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3835
      start: 3798
    functionDepth: 17
    functionLinenumber: 3798
    functionLinenumberEnd: 3835
    functionName: gf_sm_load_init_bt
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 1
    functionsReached:
    - gf_bt_report
    - gf_sys_is_cov_mode
    - gf_sm_load_bt_initialize
    - GF_SAFEALLOC
    - gf_list_new
    - load_bt_done
    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:3843,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3844,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/loader_bt.c:3846,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3848,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3849,1
    - Dst: strlen
      Src: /src/gpac/src/scene_manager/loader_bt.c:3852,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3854,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3855,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3856,1
    - Dst: gf_list_new
      Src: /src/gpac/src/scene_manager/loader_bt.c:3857,1
    - Dst: gf_bt_loader_run_intern
      Src: /src/gpac/src/scene_manager/loader_bt.c:3859,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3860,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3861,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3862,1
    - Dst: gf_list_count
      Src: /src/gpac/src/scene_manager/loader_bt.c:3863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/scene_manager/loader_bt.c:3864,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/scene_manager/loader_bt.c:3865,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3866,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3867,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3868,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3870,1
    - Dst: gf_list_del
      Src: /src/gpac/src/scene_manager/loader_bt.c:3871,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3873,1
    - Dst: gf_free
      Src: /src/gpac/src/scene_manager/loader_bt.c:3874,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: 3877
      start: 3838
    functionDepth: 16
    functionLinenumber: 3838
    functionLinenumberEnd: 3877
    functionName: gf_sm_load_bt_from_string
    functionSourceFile: /src/gpac/src/scene_manager/loader_bt.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_new
    - GF_SAFEALLOC
    - strlen
    - gf_bt_loader_run_intern
    - gf_list_rem
    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_SAFEALLOC
    - gf_list_new
    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_list_rem
    - gf_free
    - gf_list_get
    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_list_del
    - gf_free
    - 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_sg_proto_get_class_name
    - gf_list_enum
    - gf_node_get_class_name
    - GF_SAFEALLOC
    - gf_list_add
    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_count
    - StatFixed
    - gf_list_get
    - StatSVGPoint
    - gf_mx2d_is_identity
    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_list_add
    - gf_list_enum
    - gf_node_get_id
    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_node_get_field_count
    - gf_node_get_field
    - StatSVGAttribute
    - StatField
    - gf_node_unregister
    - gf_sg_vrml_field_equal
    - StatIsUSE
    - gf_node_new
    - gf_node_register
    - gf_sg_proto_create_node
    - gf_node_set_cyclic_traverse_flag
    - StatNodeGraph
    - StatNode
    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:
    - gf_list_count
    - gf_node_get_field
    - StatField
    - StatSingleField
    - gf_sg_vrml_get_sf_type
    - StatRemField
    - gf_list_get
    - gf_node_list_get_child
    - StatNodeGraph
    - StatNode
    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_sm_stats_for_command
    - gf_list_get
    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: 2
    functionsReached:
    - gf_list_count
    - gf_sm_stats_for_graph
    - gf_list_enum
    - 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:
    - NewSceneStats
    - gf_malloc
    - gf_list_new
    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: 2
    functionsReached:
    - gf_list_del
    - gf_free
    - DeleteStatisitics
    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: 26
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/scene_manager/scene_dump.c:86,1
    - Dst: gf_strdup
      Src: /src/gpac/src/scene_manager/scene_dump.c:102,1
    - Dst: gf_dynstrcat
      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_strdup
      Src: /src/gpac/src/scene_manager/scene_dump.c:156,1
    - Dst: gf_dynstrcat
      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: 32
    EdgeCount: 32
    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:
    - gf_free
    - gf_fopen
    - gf_list_new
    - GF_SAFEALLOC
    - gf_dynstrcat
    - gf_strdup
    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: 1
    functionsReached:
    - gf_list_count
    - gf_fclose
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_node_unregister
    - 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_count
    - gf_gpac_version
    - gf_odf_dump_desc
    - gf_list_get
    - gf_fprintf
    - gf_gpac_copyright
    - 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_add
    - gf_list_find
    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:
    - gf_fprintf
    - DUMP_IND
    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:
    - gf_fprintf
    - DUMP_IND
    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:
    - gf_fprintf
    - DUMP_IND
    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:
    - gf_fprintf
    - DUMP_IND
    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:
    - gf_fprintf
    - DUMP_IND
    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_malloc
    - gf_utf8_mbstowcs
    - strlen
    - gf_fprintf
    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_fprintf
    - gf_node_get_name_and_id
    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: gf_strlcpy
      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_node_get_field
    - FIX2FLT
    - scene_dump_vrml_id
    - gf_malloc
    - gf_free
    - gf_node_get_tag
    - strchr
    - gf_fputc
    - scene_dump_utf_string
    - fwprintf
    - gf_utf8_mbstowcs
    - gf_base64_encode
    - strlen
    - gf_fprintf
    - DUMP_IND
    - gf_strlcpy
    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:
    - EndAttribute
    - gf_sg_vrml_mf_get_item
    - gf_assert
    - gf_dump_vrml_sffield
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_fprintf
    - StartAttribute
    - gf_dump_vrml_node
    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_list_count
    - gf_node_get_tag
    - scene_dump_vrml_id
    - EndElementHeader
    - StartList
    - EndList
    - gf_assert
    - gf_sg_vrml_is_sf_field
    - EndElement
    - gf_sg_vrml_mf_get_item
    - StartElement
    - gf_sm_dump_command_list
    - gf_dump_vrml_node
    - gf_node_get_field
    - EndAttribute
    - strcmp
    - gf_fprintf
    - gf_node_get_field_count
    - StartAttribute
    - gf_dump_vrml_sffield
    - gf_sg_vrml_get_sf_type
    - assert
    - DUMP_IND
    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:
    - GetXMTFieldTypeValueName
    - gf_sg_vrml_mf_get_item
    - gf_sg_vrml_get_event_type_name
    - gf_dump_vrml_simple_field
    - gf_dump_vrml_sffield
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_dump_vrml_node
    - gf_fprintf
    - DUMP_IND
    - gf_sg_vrml_get_field_type_name
    - GetXMTFieldTypeName
    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:
    - GetXMTFieldTypeValueName
    - gf_sg_vrml_mf_get_item
    - gf_dump_vrml_sffield
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_fprintf
    - DUMP_IND
    - gf_dump_vrml_node
    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:
    - EndElement
    - gf_dump_vrml_get_IS
    - EndElementHeader
    - StartElement
    - gf_sg_vrml_get_event_type_name
    - gf_fprintf
    - DUMP_IND
    - gf_sg_vrml_get_field_type_name
    - gf_sg_proto_get_field
    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_list_count
    - gf_node_get_tag
    - scene_dump_vrml_id
    - gf_dump_vrml_is_def_node
    - EndElementHeader
    - gf_dump_vrml_get_IS
    - gf_node_get_class_name
    - gf_node_new
    - gf_dump_vrml_IS_field
    - gf_node_unregister
    - gf_malloc
    - gf_dump_vrml_field
    - EndElement
    - scene_dump_vrml_can_dump
    - StartElement
    - gf_sg_vrml_field_equal
    - gf_sg_proto_create_instance
    - gf_node_get_field
    - gf_node_get_id
    - EndAttribute
    - gf_fprintf
    - gf_node_get_field_count
    - StartAttribute
    - gf_dump_vrml_dyn_field
    - gf_free
    - GF_LOG
    - gf_node_register
    - DUMP_IND
    - gf_dump_vrml_proto_field
    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:
    - gf_list_count
    - gf_node_get_field
    - scene_dump_vrml_id
    - gf_list_enum
    - gf_dump_vrml_simple_field
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    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:
    - gf_list_count
    - gf_node_get_field
    - scene_dump_vrml_id
    - gf_dump_vrml_field
    - gf_list_enum
    - gf_dump_vrml_simple_field
    - gf_sg_vrml_get_sf_type
    - gf_fprintf
    - DUMP_IND
    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:
    - gf_list_count
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - gf_dump_vrml_node
    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: gf_strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1824,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_list_count
    - sprintf
    - scene_dump_vrml_id
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - gf_dump_vrml_node
    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_dump_find_node
    - gf_fprintf
    - memset
    - gf_list_add
    - gf_dump_vrml_route
    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: gf_strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1896,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_list_count
    - gf_node_get_field
    - sprintf
    - scene_dump_vrml_id
    - gf_dump_vrml_simple_field
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - memcpy
    - gf_dump_vrml_node
    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: gf_strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:1953,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_list_count
    - gf_node_get_field
    - sprintf
    - scene_dump_vrml_id
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    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:
    - gf_fprintf
    - DUMP_IND
    - scene_dump_vrml_id
    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:
    - gf_fprintf
    - scene_dump_vrml_route_id
    - DUMP_IND
    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:
    - gf_list_count
    - scene_dump_vrml_id
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - gf_dump_vrml_node
    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:
    - gf_list_count
    - gf_node_get_field
    - scene_dump_vrml_id
    - EndList
    - gf_sm_dump_command_list
    - gf_dump_vrml_simple_field
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - gf_dump_vrml_node
    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: gf_strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:2131,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_list_count
    - gf_node_get_field
    - sprintf
    - scene_dump_vrml_id
    - gf_dump_vrml_simple_field
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - gf_dump_vrml_node
    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: gf_strcpy
      Src: /src/gpac/src/scene_manager/scene_dump.c:2196,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_list_count
    - gf_node_get_field
    - sprintf
    - scene_dump_vrml_id
    - gf_dump_vrml_simple_field
    - gf_sg_proto_create_instance
    - gf_node_new
    - gf_sg_vrml_get_sf_type
    - gf_sg_vrml_is_sf_field
    - gf_list_get
    - gf_fprintf
    - gf_node_register
    - DUMP_IND
    - gf_node_unregister
    - gf_sg_find_proto
    - gf_dump_vrml_node
    - gf_sg_find_node
    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:
    - scene_dump_vrml_route_id
    - scene_dump_vrml_find_route_name
    - gf_dump_find_node
    - gf_fprintf
    - memset
    - DUMP_IND
    - gf_dump_vrml_route
    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:
    - sprintf
    - gf_node_get_field
    - gf_node_get_id
    - gf_node_get_name_and_id
    - scene_dump_vrml_route_id
    - EndAttribute
    - gf_node_get_name
    - gf_fprintf
    - DUMP_IND
    - StartAttribute
    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:
    - gf_list_count
    - FIX2FLT
    - gf_sg_proto_get_graph
    - gf_list_enum
    - gf_dump_vrml_sffield
    - DumpProtos
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - gf_dump_vrml_route
    - gf_dump_vrml_node
    - 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:
    - gf_list_count
    - EndElementHeader
    - gf_dump_vrml_route
    - EndAttribute
    - StartElement
    - DumpProtos
    - gf_list_get
    - gf_fprintf
    - DUMP_IND
    - StartAttribute
    - gf_dump_vrml_node
    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:
    - gf_fprintf
    - DUMP_IND
    - DumpProtos
    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:
    - sprintf
    - gf_node_get_name_and_id
    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:
    - sprintf
    - gf_sg_get_namespace_qname
    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:
    - gf_fprintf
    - gf_dump_svg_element
    - sd_get_lsr_namespace
    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_node_get_field
    - gf_free
    - sd_get_lsr_namespace
    - gf_svg_get_attribute_name
    - gf_sg_find_node
    - gf_list_get
    - gf_fprintf
    - lsr_format_node_id
    - DUMP_IND
    - gf_svg_dump_attribute
    - gf_svg_dump_attribute_indexed
    - gf_dump_svg_element
    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:
    - sd_get_lsr_namespace
    - gf_list_get
    - gf_fprintf
    - lsr_format_node_id
    - DUMP_IND
    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:
    - FIX2FLT
    - sd_get_lsr_namespace
    - gf_dom_event_get_name
    - gf_dom_get_key_name
    - gf_fprintf
    - lsr_format_node_id
    - DUMP_IND
    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:
    - gf_fprintf
    - lsr_format_node_id
    - DUMP_IND
    - sd_get_lsr_namespace
    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:
    - gf_list_count
    - DumpIndexDelete
    - DumpNodeInsert
    - gf_assert
    - DumpSceneReplace
    - DumpRouteReplace
    - DumpMultipleIndexedReplace
    - DumpLSRAddReplaceInsert
    - DumpRouteDelete
    - EndElement
    - DumpNodeDelete
    - DumpLSRActivate
    - DumpLSRSendEvent
    - DumpIndexReplace
    - DumpLSRDelete
    - gf_list_get
    - DumpNodeReplace
    - DumpFieldReplace
    - DumpProtoInsert
    - DumpGlobalQP
    - DumpRouteInsert
    - DumpXReplace
    - DumpIndexInsert
    - gf_fprintf
    - GF_LOG
    - DumpLSRNewScene
    - DumpMultipleReplace
    - DUMP_IND
    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_list_count
    - gf_node_get_attribute_by_tag
    - gf_node_get_class_name
    - gf_sm_dump_command_list
    - gf_node_get_graph
    - gf_dom_event_dump_listeners
    - gf_sg_get_namespace_qname
    - gf_node_get_id
    - scene_dump_utf_string
    - strlen
    - gf_fprintf
    - gf_xml_push_namespaces
    - gf_svg_dump_attribute
    - sprintf
    - gf_free
    - gf_xml_pop_namespaces
    - gf_svg_get_attribute_name
    - lsr_format_node_id
    - DUMP_IND
    - gf_xml_get_element_namespace
    - strncmp
    - gf_dump_svg_element
    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_fprintf
    - gf_list_count
    - gf_list_get
    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:
    - SD_DumpDOMElement
    - scene_dump_utf_string
    - gf_fprintf
    - DUMP_IND
    - gf_sg_get_namespace_qname
    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: 1
    functionsReached:
    - SD_DumpDOMElement
    - gf_dump_setup
    - gf_dump_finalize
    - EndElement
    - EndElementHeader
    - gf_fprintf
    - StartElement
    - gf_list_enum
    - DumpProtos
    - gf_dump_vrml_route
    - gf_dump_vrml_node
    - gf_dump_svg_element
    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_list_add
    - gf_list_enum
    - gf_assert
    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: 2
    functionsReached:
    - gf_list_count
    - dump_od_to_saf
    - gf_sm_dumper_del
    - gf_dump_setup
    - ReorderAUContext
    - gf_sm_dump_command_list
    - gf_list_get
    - gf_dump_svg_element
    - gf_sm_dumper_new
    - gf_dump_vrml_node
    - gf_dump_finalize
    - gf_sm_dump_saf_hdr
    - gf_list_enum
    - gf_odf_dump_com_list
    - gf_list_new
    - gf_fprintf
    - DumpProtos
    - gf_list_del
    - GF_LOG
    - gf_dump_vrml_route
    - 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_odf_desc_del
    - gf_malloc
    - gf_bifs_encoder_new
    - GF_LOG
    - gf_odf_desc_new
    - gf_get_bit_size
    - gf_bifs_encoder_get_version
    - gf_odf_get_bifs_config
    - gf_bifs_encoder_get_config
    - memcpy
    - gf_bifs_encoder_new_stream
    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_odf_desc_del
    - gf_malloc
    - gf_laser_encoder_new
    - gf_laser_encoder_get_config
    - gf_odf_desc_new
    - gf_laser_encoder_new_stream
    - memset
    - memcpy
    - gf_odf_get_laser_config
    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_odf_desc_del
    - gf_sm_setup_lsrenc
    - gf_list_enum
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_list_add
    - gf_sm_setup_bifsenc
    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_get
    - gf_node_dirty_reset
    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_list_count
    - gf_laser_encode_au
    - gf_free
    - GF_LOG
    - gf_bifs_encode_au
    - gf_seng_encode_dims_au
    - gf_sm_check_for_modif
    - callback
    - gf_list_get
    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: 1
    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: gf_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: gf_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:
    - gf_strcpy
    - gf_sm_dump
    - gf_file_ext_start
    - gf_sm_encode_to_file
    - gf_strcat
    - gf_isom_open
    - stricmp
    - gf_isom_close
    - gf_isom_delete
    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: 1
    functionsReached:
    - gf_list_count
    - gf_sm_load_string
    - gf_list_enum
    - gf_sm_live_encode_scene_au
    - gf_list_get
    - gf_seng_create_new_au
    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_list_count
    - gf_laser_encode_au
    - gf_free
    - GF_LOG
    - gf_bifs_encode_au
    - gf_seng_encode_dims_au
    - callback
    - gf_list_get
    - gf_list_add
    - gf_seng_create_new_au
    - gf_list_rem
    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_count
    - GF_LOG
    - gf_list_get
    - gf_list_enum
    - gf_sm_live_encode_scene_au
    - gf_sm_load_run
    - gf_seng_create_new_au
    - gf_error_to_string
    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: 1
    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: 1
    functionsReached:
    - gf_bifs_encoder_del
    - gf_free
    - gf_sm_load_done
    - gf_sg_del
    - gf_laser_encoder_del
    - gf_sm_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_count
    - gf_sg_command_del
    - gf_list_del
    - gf_node_get_graph
    - gf_list_get
    - gf_sg_command_apply_list
    - 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:
    - gf_node_get_private
    - seng_exec_conditional
    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:
    - gf_node_get_private
    - seng_exec_conditional
    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_sm_live_setup
    - gf_seng_terminate
    - GF_LOG
    - gf_sg_set_private
    - gf_sys_is_cov_mode
    - seng_conditional_activate
    - gf_sm_new
    - GF_SAFEALLOC
    - gf_sg_new
    - seng_conditional_reverse_activate
    - gf_sm_load_init
    - gf_sm_load_run
    - gf_sg_set_node_callback
    - memset
    - gf_seng_create_new_au
    - gf_error_to_string
    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_sm_live_setup
    - gf_seng_terminate
    - GF_LOG
    - GF_SAFEALLOC
    - gf_error_to_string
    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_live_setup
    - gf_sm_load_string
    - gf_seng_terminate
    - GF_LOG
    - gf_sm_new
    - GF_SAFEALLOC
    - gf_sg_new
    - memset
    - strstr
    - gf_error_to_string
    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_malloc
    - gf_odf_desc_write
    - gf_list_enum
    - gf_base64_encode
    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_odf_desc_copy
    - gf_list_enum
    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: memcpy
      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:
    - vsnprintf
    - va_end
    - va_start
    - strlen
    - memmove
    - gf_realloc
    - memcpy
    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:
    - FIX2FLT
    - swf_svg_print
    - INT2FIX
    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:
    - FIX2FLT
    - swf_svg_print
    - INT2FIX
    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:
    - FIX2FLT
    - swf_svg_print_color
    - swf_report
    - swf_svg_print_alpha
    - swf_svg_print
    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:
    - FIX2FLT
    - swf_svg_print
    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:
    - FIX2FLT
    - gf_mx2d_decompose
    - swf_svg_print
    - gf_mx2d_is_identity
    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:
    - sprintf
    - gf_list_count
    - gf_list_enum
    - swf_svg_print_shape_record_to_path_d
    - swg_svg_print_shape_record_to_fill_stroke
    - gf_list_add
    - 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:
    - FIX2FLT
    - FLT2FIX
    - gf_malloc
    - gf_divfix
    - gf_list_enum
    - swf_find_font
    - gf_utf8_wcstombs
    - swf_report
    - swf_svg_print
    - swf_svg_print_matrix
    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_count
    - gf_free
    - gf_list_del
    - gf_list_new
    - gf_list_get
    - SWFReader*::add_sample
    - gf_list_insert
    - gf_list_add
    - swf_svg_print
    - swf_svg_print_matrix
    - 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:
    - SWFReader*::add_header
    - swf_svg_print
    - gf_free
    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:
    - gf_free
    - FLT2FIX
    - SWFReader*::add_header
    - 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_list_count
    - gf_free
    - JS_IsUndefined
    - gf_list_del
    - glDeleteTextures
    - JS_GetOpaque
    - glDeleteFramebuffers
    - glDeleteRenderbuffers
    - JS_FreeValueRT
    - gf_list_get
    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_count
    - JS_IsUndefined
    - JS_GetOpaque
    - JS_MarkValue
    - gf_list_get
    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:
    - glDeleteTextures
    - gf_list_del_item
    - gf_free
    - JS_GetOpaque
    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:
    - gf_malloc
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsArray
    - JS_IsException
    - JS_IsObject
    - JS_ToInt32
    - JS_GetPropertyUint32
    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_ToFloat64
    - gf_malloc
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsArray
    - JS_IsException
    - JS_IsObject
    - JS_ToInt32
    - JS_GetPropertyUint32
    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_IsUndefined
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetArrayBuffer
    - JS_ToInt64
    - JS_ToInt32
    - JS_IsArrayBuffer
    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_NewInt32
    - js_throw_err
    - JS_DupValue
    - JS_GetOpaque
    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:
    - JS_NewString
    - JS_NewObject
    - glGetActiveAttrib
    - JS_NewInt32
    - JS_SetPropertyStr
    - glGetActiveUniform
    - js_throw_err
    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_count
    - JS_NewArray
    - js_throw_err
    - JS_SetPropertyUint32
    - JS_DupValue
    - gf_list_get
    - glGetAttachedShaders
    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_NewBool
    - JS_NewString
    - JS_NewObject
    - JS_GetOpaque
    - JS_SetPropertyStr
    - js_throw_err
    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_ToBool
    - strchr
    - glGetString
    - JS_NewString
    - JS_NewArray
    - JS_NewInt32
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_SetPropertyStr
    - js_throw_err
    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
    - glGetString
    - GF_LOG
    - strstr
    - JS_GetOpaque
    - JS_FreeCString
    - js_throw_err
    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:
    - WGL_GET_U32
    - glGetBufferParameteriv
    - js_throw_err
    - JS_NewInt32
    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:
    - JS_NewBool
    - WGL_GET_U32
    - gf_list_count
    - gf_free
    - gf_malloc
    - JS_NewFloat64
    - glGetString
    - JS_NewString
    - glGetBooleanv
    - JS_NewArray
    - glGetFloatv
    - JS_GetOpaque
    - JS_NewInt32
    - JS_SetPropertyUint32
    - JS_DupValue
    - gf_list_get
    - js_throw_err
    - glGetIntegerv
    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:
    - WGL_GET_U32
    - glGetFramebufferAttachmentParameteriv
    - gf_list_count
    - JS_NewInt32
    - JS_GetOpaque
    - JS_DupValue
    - gf_list_get
    - js_throw_err
    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:
    - WGL_GET_U32
    - glGetProgramiv
    - WGL_GET_GLID
    - JS_NewInt32
    - js_throw_err
    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:
    - WGL_GET_U32
    - glGetRenderbufferParameteriv
    - js_throw_err
    - JS_NewInt32
    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:
    - WGL_GET_U32
    - glGetShaderiv
    - WGL_GET_GLID
    - JS_NewInt32
    - js_throw_err
    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:
    - WGL_GET_U32
    - glGetShaderPrecisionFormat
    - JS_NewObject
    - JS_NewInt32
    - JS_SetPropertyStr
    - js_throw_err
    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:
    - glGetShaderiv
    - glGetShaderSource
    - gf_malloc
    - gf_free
    - JS_NewString
    - glGetProgramiv
    - WGL_GET_GLID
    - glGetShaderInfoLog
    - glGetProgramInfoLog
    - js_throw_err
    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:
    - WGL_GET_U32
    - js_throw_err
    - glGetTexParameteriv
    - JS_NewInt32
    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:
    - WGL_GET_U32
    - WGL_GET_S32
    - JS_GetOpaque
    - glPixelStorei
    - js_throw_err
    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: gf_strcpy
      Src: /src/gpac/src/jsmods/webgl.c:874,1
    - Dst: sprintf
      Src: /src/gpac/src/jsmods/webgl.c:877,1
    - Dst: gf_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:
    - gf_strcpy
    - sprintf
    - gf_strcat
    - glGetProgramiv
    - WGL_GET_GLID
    - glGetUniformLocation
    - js_throw_err_msg
    - RETURN_SINGLE_OR_ARRAY
    - glGetUniformfv
    - strcmp
    - glGetUniformiv
    - glGetActiveUniform
    - js_throw_err
    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:
    - WGL_GET_U32
    - gf_list_count
    - JS_NewFloat64
    - glGetVertexAttribfv
    - glGetVertexAttribiv
    - JS_NewArray
    - JS_NewInt32
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_DupValue
    - gf_list_get
    - js_throw_err
    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:
    - JS_NewInt64
    - WGL_GET_U32
    - js_throw_err
    - glGetVertexAttribPointerv
    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:
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - glReadPixels
    - WGL_GET_S32
    - js_throw_err
    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
    - strcmp
    - gf_list_get
    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:
    - JS_ToCString
    - gf_list_count
    - strchr
    - gf_free
    - gf_gl_txw_insert_fragment_shader
    - GF_LOG
    - glShaderSource
    - WGL_GET_GLID
    - strstr
    - js_throw_err_msg
    - JS_GetOpaque
    - gf_dynstrcat
    - JS_FreeCString
    - wgl_locate_named_tx
    - gf_list_get
    - strlen
    - js_throw_err
    - strncmp
    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:
    - gf_filter_pck_get_frame_interface
    - jsf_get_packet
    - 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:
    - glTexImage2D
    - glTexSubImage2D
    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:
    - wgl_GetArrayBuffer
    - JS_IsNull
    - GF_SAFEALLOC
    - JS_IsObject
    - gf_list_add
    - WGL_GET_U32
    - JS_FreeValue
    - WGL_GET_S32
    - js_throw_err
    - js_evg_is_texture
    - wgl_tex_image_2d
    - js_evg_set_named_texture_gl
    - js_evg_get_texture_named
    - gf_pixel_fmt_name
    - gf_free
    - JS_SetOpaque
    - glDeleteTextures
    - gf_list_del_item
    - js_evg_get_texture_info
    - JS_GetOpaque
    - JS_SwitchClassID
    - wgl_named_texture_upload
    - gf_strdup
    - js_throw_err_msg
    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:
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - wgl_tex_sub_image_2d
    - js_throw_err_msg
    - WGL_GET_S32
    - JS_GetOpaque
    - js_evg_get_texture_info
    - JS_IsObject
    - js_throw_err
    - gf_pixel_fmt_name
    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:
    - glUseProgram
    - js_throw_err
    - WGL_GET_GLID
    - JS_GetOpaque
    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:
    - WGL_GET_U32
    - js_throw_err
    - glActiveTexture
    - JS_GetOpaque
    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:
    - JS_IsString
    - JS_IsNull
    - GF_SAFEALLOC
    - JS_IsObject
    - gf_list_add
    - JS_NewObjectClass
    - JS_ToCString
    - JS_GetPropertyStr
    - JS_DupValue
    - js_throw_err
    - JS_ToBool
    - JS_IsBool
    - JS_FreeCString
    - gf_cicp_parse_color_matrix
    - JS_ToInt32
    - sprintf
    - JS_SetOpaque
    - JS_GetOpaque
    - glGenTextures
    - JS_IsInteger
    - gf_strdup
    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:
    - WGL_GET_U32
    - GL_CHECK_ERR
    - JS_GetOpaque
    - gf_gl_txw_bind
    - js_throw_err
    - glBindTexture
    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:
    - JS_NewObjectClass
    - gf_list_count
    - WGL_GET_STRING
    - JS_SetOpaque
    - WGL_GET_GLID
    - glGetUniformLocation
    - JS_GetOpaque
    - JS_FreeCString
    - GF_SAFEALLOC
    - JS_DupValue
    - strcmp
    - gf_list_get
    - gf_list_add
    - js_throw_err
    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:
    - WGL_GET_U32
    - WGL_GET_GLID
    - JS_GetOpaque
    - js_throw_err
    - glBindFramebuffer
    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_IsUndefined
    - gf_filter_pck_get_frame_interface
    - JS_FreeValue
    - JS_Call
    - gf_js_lock
    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:
    - gf_filter_pid_get_property
    - JS_ToBool
    - JS_IsUndefined
    - js_throw_err_msg
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetOpaque
    - JS_DupValue
    - js_throw_err
    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:
    - gf_malloc
    - jsf_set_gl_active
    - glReadPixels
    - glCheckFramebufferStatus
    - gf_js_lock
    - memcpy
    - glBindFramebuffer
    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:
    - glGenFramebuffers
    - glBindRenderbuffer
    - js_throw_err_msg
    - glDeleteFramebuffers
    - glDeleteRenderbuffers
    - defined
    - glGenRenderbuffers
    - glFramebufferTexture2D
    - glCheckFramebufferStatus
    - glBindFramebuffer
    - gf_free
    - glGetError
    - glRenderbufferStorage
    - glDeleteTextures
    - glTexImage2D
    - glGenTextures
    - glTexParameteri
    - glFramebufferRenderbuffer
    - glBindTexture
    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:
    - JS_IsString
    - GF_SAFEALLOC
    - JS_IsObject
    - webgl_setup_fbo
    - JS_NewObjectClass
    - JS_ToCString
    - jsf_request_opengl
    - JS_FreeValue
    - WGL_GET_S32
    - JS_GetPropertyStr
    - JS_DupValue
    - GET_BOOL
    - JS_ToBool
    - JS_NewObject
    - JS_FreeCString
    - strcmp
    - JS_SetPropertyStr
    - JS_NewInt32
    - gf_list_new
    - JS_ToInt32
    - gf_free
    - JS_IsUndefined
    - JS_SetOpaque
    - js_throw_err_msg
    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:
    - GF_JS_EXCEPTION
    - js_throw_err
    - JS_NewString
    - JS_GetOpaque
    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:
    - gf_list_count
    - glUseProgram
    - glGetError
    - glDisable
    - jsf_set_gl_active
    - js_throw_err
    - gf_gl_txw_bind
    - glBindBuffer
    - gf_list_get
    - glCheckFramebufferStatus
    - js_throw_err_msg
    - glActiveTexture
    - glBindFramebuffer
    - glBindTexture
    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:
    - WGL_GET_BOOL
    - js_throw_err
    - wgl_activate_gl
    - JS_GetOpaque
    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:
    - WGL_GET_U32
    - JS_IsUndefined
    - glDeleteTextures
    - JS_GetOpaque
    - glDeleteFramebuffers
    - glDeleteRenderbuffers
    - webgl_setup_fbo
    - js_throw_err
    - wgl_activate_gl
    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:
    - wgl_named_texture_upload
    - js_throw_err
    - JS_GetOpaque
    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:
    - gf_gl_txw_reset
    - js_throw_err
    - JS_GetOpaque
    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_NewString
    - js_throw_err
    - JS_NewInt32
    - JS_GetOpaque
    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_ToBool
    - js_throw_err
    - JS_GetOpaque
    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:
    - glBufferData
    - glBindBuffer
    - glGenBuffers
    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:
    - GF_JS_EXCEPTION
    - WGL_GET_U32
    - GL_CHECK_ERR
    - glEnable
    - glEnableVertexAttribArray
    - JS_GetOpaque
    - glDrawElements
    - glBindBuffer
    - glVertexAttribPointer
    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_GetRuntime
    - JS_NewCFunction2
    - countof
    - JS_NewObject
    - JS_SetModuleExport
    - INITCLASS
    - JS_SetClassProto
    - JS_SetPropertyFunctionList
    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_NewCModule
    - JS_AddModuleExport
    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:
    - gf_free
    - JS_FreeValueRT
    - gf_evg_surface_delete
    - JS_GetOpaque
    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_MarkValue
    - JS_GetOpaque
    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_ToInt32
    - JS_Call
    - JS_NewInt32
    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_JS_EXCEPTION
    - JS_IsString
    - GF_SAFEALLOC
    - JS_IsObject
    - JS_GetArrayBuffer
    - JS_NewObjectClass
    - JS_ToCString
    - gf_malloc
    - gf_evg_surface_attach_to_buffer
    - JS_IsException
    - gf_evg_surface_new
    - gf_evg_surface_delete
    - gf_pixel_fmt_parse
    - JS_FreeCString
    - JS_ToInt32
    - gf_free
    - JS_SetOpaque
    - gf_pixel_get_size_info
    - JS_IsInteger
    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_NewBool
    - GF_JS_EXCEPTION
    - gf_evg_surface_use_clipper
    - JS_GetOpaque
    - gf_pixel_is_wide_depth
    - gf_evg_surface_get_mask_mode
    - JS_DupValue
    - gf_pixel_fmt_is_yuv
    - JS_NewInt32
    - gf_evg_surface_get_raster_level
    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:
    - GF_JS_EXCEPTION
    - gf_evg_surface_set_alpha_callback
    - gf_evg_surface_set_point_size
    - JS_IsNull
    - JS_IsObject
    - gf_evg_surface_set_fragment_shader
    - gf_evg_surface_set_clip_zero
    - gf_evg_surface_set_depth_buffer
    - JS_FreeValue
    - JS_IsFunction
    - gf_evg_surface_set_min_depth
    - JS_DupValue
    - EVG_GET_FLOAT
    - js_throw_err
    - gf_evg_surface_set_ccw
    - JS_ToBool
    - gf_evg_surface_set_mask_mode
    - gf_evg_surface_set_point_smooth
    - gf_evg_surface_set_matrix
    - gf_evg_surface_set_line_size
    - gf_evg_surface_set_path
    - gf_evg_surface_set_clipper
    - gf_evg_surface_set_backcull
    - gf_evg_surface_set_max_depth
    - gf_evg_surface_set_vertex_shader
    - gf_evg_surface_set_composite_mode
    - gf_evg_surface_set_raster_level
    - gf_evg_surface_set_matrix_3d
    - JS_ToInt32
    - text_set_path
    - gf_evg_surface_set_center_coords
    - canvas_get_irect
    - evg_get_array
    - JS_GetOpaque
    - gf_evg_surface_disable_early_depth
    - gf_evg_surface_write_depth
    - gf_evg_set_depth_test
    - js_throw_err_msg
    - gf_evg_surface_set_antialias
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToFloat64
    - GF_COL_ARGB
    - canvas_get_irect
    - JS_IsString
    - gf_evg_surface_clear
    - JS_GetOpaque
    - JS_FreeCString
    - JS_IsObject
    - JS_ToInt32
    - gf_color_parse
    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_JS_EXCEPTION
    - JS_ToBool
    - JS_NewFloat64
    - JS_IsBool
    - JS_NewObject
    - JS_NewArray
    - JS_NewInt32
    - JS_GetOpaque
    - get_color_from_args
    - gf_gf_evg_rgb_to_yuv_f
    - JS_SetPropertyUint32
    - gf_evg_yuv_to_rgb_f
    - JS_SetPropertyStr
    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_JS_EXCEPTION
    - gf_free
    - JS_GetOpaque
    - canvas_constructor_internal
    - JS_IsObject
    - JS_GetArrayBuffer
    - gf_evg_surface_attach_to_buffer
    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:
    - GF_JS_EXCEPTION
    - get_stencil
    - JS_ToFloat64
    - JS_IsUndefined
    - JS_IsNumber
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    - gf_evg_surface_multi_fill
    - JS_IsArray
    - JS_IsObject
    - gf_evg_surface_fill
    - JS_ToInt32
    - JS_GetPropertyUint32
    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:
    - GF_JS_EXCEPTION
    - JS_IsString
    - JS_IsNull
    - gf_pixel_fmt_is_yuv
    - ffmpeg_pixfmt_from_gpac
    - JS_IsObject
    - JS_ToCString
    - JS_FreeValue
    - JS_GetPropertyStr
    - gf_evg_stencil_get_texture_planes
    - sws_getCachedContext
    - js_throw_err
    - gf_pixel_get_bytes_per_pixel
    - JS_ToFloat64
    - JS_FreeCString
    - strcmp
    - sws_scale
    - canvas_get_irect
    - JS_GetOpaque
    - gf_pixel_get_size_info
    - memset
    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:
    - GF_JS_EXCEPTION
    - gf_evg_enable_threading
    - JS_GetOpaque
    - JS_ToInt32
    - js_throw_err
    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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - JS_FreeValue
    - JS_GetOpaque
    - gf_evg_surface_enable_3d
    - js_throw_err
    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_ToBool
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_FreeValue
    - JS_Call
    - JS_IsException
    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_ToBool
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_FreeValue
    - JS_Call
    - JS_IsException
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx_init
    - gf_evg_surface_set_projection
    - gf_evg_surface_set_modelview
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsArray
    - JS_ToInt32
    - js_throw_err_msg
    - JS_GetPropertyUint32
    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_GetPropertyStr
    - JS_FreeValue
    - 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:
    - GF_JS_EXCEPTION
    - evg_get_array
    - gf_evg_surface_draw_array
    - JS_GetOpaque
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - EVG_GET_FLOAT
    - text_update_path
    - gf_evg_surface_draw_path
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - gf_evg_surface_clear_depth
    - EVG_GET_FLOAT
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - gf_evg_surface_viewport
    - JS_GetOpaque
    - JS_ToInt32
    - js_throw_err
    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_set_ss
    - _mm_max_ss
    - _mm_min_ss
    - _mm_store_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:
    - fprintf
    - gf_evg_stencil_get_pixel_yuv
    - gf_assert
    - gf_evg_stencil_get_pixel_f
    - gf_vec_diff
    - gf_vec_len_p
    - gf_vec_cross_p
    - gf_evg_stencil_get_pixel
    - evg_float_clamp
    - gf_gf_evg_rgb_to_yuv_f
    - gf_evg_yuv_to_rgb_f
    - sqrtf
    - gf_evg_stencil_get_pixel_yuv_f
    - BASE_FUN2
    - vai_call_lerp
    - BASE_COND
    - BASE_FUN
    - ABS
    - gf_evg_stencil_get_pixel_yuv_wide
    - gf_evg_stencil_get_pixel_wide
    - gf_vec_norm
    - GF_LOG
    - gf_vec_dot_p
    - gf_mx_apply_vec_4x4
    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_malloc
    - vai_call_lerp_init
    - gf_list_add
    - gf_list_pop_back
    - memcpy
    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_list_pop_back
    - gf_free
    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
    - gf_list_del
    - shader_reset_vars_stack
    - JS_GetOpaque
    - shader_reset
    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_MarkValue
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - JS_ToFloat64
    - JS_IsString
    - JS_GetOpaque
    - strcmp
    - JS_ToInt32
    - js_throw_err_msg
    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:
    - JS_GetRuntime
    - GF_JS_EXCEPTION
    - shader_push_builtin
    - JS_IsString
    - get_value_type
    - JS_IsObject
    - JS_GetPropertyUint32
    - JS_ToCString
    - strchr
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsArray
    - JS_DupValue
    - EVG_GET_FLOAT
    - shader_reset
    - gf_realloc
    - JS_ToBool
    - JS_ToFloat64
    - JS_IsBool
    - JS_IsNumber
    - JS_FreeCString
    - strcmp
    - JS_NewInt32
    - get_builtin_var_name
    - JS_ToInt32
    - gf_free
    - shader_reset_vars_stack
    - JS_GetOpaque
    - JS_IsInteger
    - gf_strdup
    - memset
    - js_throw_err_msg
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_IsBool
    - JS_IsUndefined
    - JS_IsNumber
    - JS_FreeValue
    - evg_get_array
    - JS_GetPropertyStr
    - JS_GetOpaque
    - GET_COMP
    - JS_IsArray
    - JS_IsInteger
    - EVG_GET_FLOAT
    - JS_IsObject
    - JS_ToInt32
    - js_throw_err_msg
    - JS_GetPropertyUint32
    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_ARGB
    - gf_evg_stencil_get_pixel_yuv
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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_SAFEALLOC
    - gf_free
    - gf_malloc
    - strcmp
    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_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - load_builtin_shader
    - JS_SetOpaque
    - JS_IsString
    - js_throw_err
    - JS_GetOpaque
    - JS_FreeCString
    - GF_SAFEALLOC
    - gf_list_new
    - JS_ToInt32
    - js_throw_err_msg
    - gf_error_to_string
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - get_color_from_args
    - CLAMPCOLF
    - EVG_GET_FLOAT
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - JS_NewObject
    - JS_GetOpaque
    - 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:
    - GF_JS_EXCEPTION
    - FLT2FIX
    - JS_GetPropertyStr
    - JS_GetOpaque
    - EVG_GET_FLOAT
    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:
    - GF_JS_EXCEPTION
    - vai_call_lerp
    - JS_DupValue
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_GetOpaque
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - evg_get_array
    - js_throw_err
    - JS_NewInt32
    - GF_SAFEALLOC
    - JS_DupValue
    - JS_SetPropertyStr
    - JS_ToInt32
    - js_throw_err_msg
    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:
    - gf_free
    - JS_FreeValueRT
    - JS_GetOpaque
    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_MarkValue
    - JS_GetOpaque
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - evg_get_array
    - js_throw_err
    - GF_SAFEALLOC
    - JS_DupValue
    - JS_ToInt32
    - js_throw_err_msg
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_GetOpaque
    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:
    - gf_free
    - JS_FreeValueRT
    - JS_GetOpaque
    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_MarkValue
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - JS_GetOpaque
    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:
    - gf_free
    - JS_GetOpaque
    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_NewBool
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    - gf_mx2d_is_identity
    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:
    - gf_mx2d_init
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FIX2FLT
    - JS_ToBool
    - JS_GetOpaque
    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_JS_EXCEPTION
    - JS_ToBool
    - gf_mx2d_pre_multiply
    - JS_GetOpaque
    - JS_DupValue
    - gf_mx2d_add_matrix
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - gf_mx2d_add_translation
    - FLT2FIX
    - GETD
    - JS_GetOpaque
    - JS_DupValue
    - JS_IsObject
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_GetOpaque
    - JS_DupValue
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx2d_add_scale_at
    - gf_mx2d_add_scale
    - JS_GetOpaque
    - JS_DupValue
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx2d_add_skew
    - JS_GetOpaque
    - JS_DupValue
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_GetOpaque
    - JS_DupValue
    - gf_mx2d_add_skew_x
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx2d_add_skew_y
    - JS_GetOpaque
    - JS_DupValue
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_NewFloat64
    - FIX2FLT
    - gf_mx2d_apply_point
    - JS_IsUndefined
    - JS_NewObject
    - JS_IsNumber
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsObject
    - JS_SetPropertyStr
    - gf_mx2d_apply_rect
    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:
    - gf_mx2d_inverse
    - GF_JS_EXCEPTION
    - JS_DupValue
    - JS_GetOpaque
    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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - gf_mx2d_copy
    - JS_GetOpaque
    - GF_SAFEALLOC
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_NewObject
    - JS_GetOpaque
    - JS_SetPropertyStr
    - gf_mx2d_decompose
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_mx2d_copy
    - GF_SAFEALLOC
    - JS_IsObject
    - js_throw_err
    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:
    - gf_free
    - JS_GetOpaque
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_SetOpaque
    - JS_FreeValue
    - JS_GetOpaque
    - gf_cmx_copy
    - GF_SAFEALLOC
    - JS_IsArray
    - gf_cmx_init
    - JS_IsObject
    - JS_IsException
    - js_throw_err
    - JS_GetPropertyUint32
    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_NewBool
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - FIX2FLT
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FIX2FLT
    - JS_GetOpaque
    - gf_cmx_init
    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:
    - GF_JS_EXCEPTION
    - gf_cmx_multiply
    - JS_DupValue
    - JS_GetOpaque
    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_ToFloat64
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsArray
    - JS_ToInt32
    - JS_GetPropertyUint32
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - JS_IsString
    - GF_COL_R
    - get_color
    - GF_COL_G
    - JS_IsObject
    - JS_ToCString
    - FIX2FLT
    - gf_cmx_apply
    - gf_cmx_apply_fixed
    - GF_COL_ARGB
    - JS_NewObject
    - JS_FreeCString
    - JS_NewInt32
    - JS_SetPropertyStr
    - gf_color_parse
    - FLT2FIX
    - JS_GetOpaque
    - GF_COL_A
    - GF_COL_B
    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:
    - gf_path_del
    - JS_GetOpaque
    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
    - GF_JS_EXCEPTION
    - gf_path_close
    - gf_path_reset
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_path_clone
    - JS_DupValue
    - JS_IsException
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_path_add_move_to
    - JS_GetOpaque
    - JS_DupValue
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_path_add_cubic_to
    - JS_GetOpaque
    - JS_DupValue
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_GetOpaque
    - JS_DupValue
    - gf_path_add_quadratic_to
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToBool
    - FLT2FIX
    - GETD
    - JS_GetOpaque
    - JS_DupValue
    - JS_IsObject
    - gf_path_add_rect_center
    - gf_path_add_rect
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_path_add_ellipse
    - GETD
    - JS_GetOpaque
    - JS_DupValue
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_malloc
    - gf_path_add_bezier
    - gf_free
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    - JS_DupValue
    - JS_IsObject
    - memset
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToBool
    - FLT2FIX
    - gf_path_add_svg_arc_to
    - JS_GetOpaque
    - JS_DupValue
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToBool
    - FLT2FIX
    - gf_path_add_svg_arc_to
    - JS_GetOpaque
    - JS_DupValue
    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_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_path_add_arc
    - JS_GetOpaque
    - JS_DupValue
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - JS_DupValue
    - gf_path_add_subpath
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_DupValue
    - gf_path_flatten
    - JS_GetOpaque
    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
    - GF_JS_EXCEPTION
    - gf_path_get_flatten
    - JS_SetOpaque
    - JS_GetOpaque
    - JS_IsException
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_GetOpaque
    - JS_IsObject
    - GETIT
    - gf_path_point_over
    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_JS_EXCEPTION
    - GETIT_I
    - JS_IsNull
    - JS_IsObject
    - JS_GetPropertyUint32
    - JS_NewObjectClass
    - gf_malloc
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsArray
    - JS_ToFloat64
    - gf_path_get_outline
    - JS_ToInt32
    - FLT2FIX
    - gf_free
    - GETIT_F
    - JS_SetOpaque
    - JS_GetOpaque
    - memset
    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_JS_EXCEPTION
    - gf_path_del
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_path_new
    - gf_path_add_subpath
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - gf_path_get_bounds
    - JS_NewObject
    - JS_SetPropertyStr
    - gf_path_get_control_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:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_path_is_empty
    - JS_GetOpaque
    - path_check_rect
    - path_bounds_ex
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_GetOpaque
    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_JS_EXCEPTION
    - JS_SetOpaque
    - JS_IsException
    - gf_path_new
    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:
    - gf_evg_stencil_delete
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_evg_stencil_set_linear_gradient
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - JS_IsObject
    - gf_evg_stencil_set_radial_gradient
    - 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:
    - gf_evg_stencil_type
    - GF_JS_EXCEPTION
    - stencil_set_radial
    - JS_GetOpaque
    - stencil_set_linear
    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:
    - JS_ToCString
    - JS_ToFloat64
    - JS_IsString
    - GF_COL_R
    - GF_COL_A
    - JS_FreeCString
    - GF_COL_G
    - JS_IsNull
    - get_color
    - JS_IsObject
    - GF_COL_B
    - gf_color_parse
    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:
    - gf_evg_stencil_type
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToCString
    - GF_COL_ARGB
    - FLT2FIX
    - gf_evg_stencil_push_gradient_interpolation
    - JS_IsString
    - JS_GetOpaque
    - get_color_from_args
    - JS_FreeCString
    - gf_color_parse
    - gf_evg_stencil_set_gradient_interpolation
    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:
    - gf_evg_stencil_type
    - GF_JS_EXCEPTION
    - JS_ToCString
    - GF_COL_ARGB
    - JS_IsString
    - gf_evg_stencil_set_brush_color
    - JS_GetOpaque
    - get_color_from_args
    - JS_FreeCString
    - gf_color_parse
    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_evg_stencil_type
    - GF_JS_EXCEPTION
    - sprintf
    - JS_NewString
    - JS_GetOpaque
    - GF_COL_R
    - gf_evg_stencil_get_brush_color
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - gf_evg_stencil_set_alpha
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - gf_evg_stencil_get_alpha
    - JS_GetOpaque
    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:
    - gf_evg_stencil_type
    - GF_JS_EXCEPTION
    - JS_NewObjectClass
    - gf_evg_stencil_get_matrix
    - JS_SetOpaque
    - gf_evg_stencil_get_color_matrix
    - gf_evg_stencil_get_auto_matrix
    - JS_GetOpaque
    - gf_mx2d_copy
    - GF_SAFEALLOC
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_evg_stencil_set_gradient_mode
    - gf_evg_stencil_set_matrix
    - gf_evg_stencil_set_color_matrix
    - JS_GetOpaque
    - JS_IsNull
    - gf_evg_stencil_set_auto_matrix
    - JS_ToInt32
    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
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - JS_IsException
    - gf_evg_stencil_new
    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:
    - texture_reset
    - gf_free
    - JS_GetOpaque
    - JS_FreeValueRT
    - gf_evg_stencil_delete
    - 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_MarkValue
    - JS_GetOpaque
    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_NewBool
    - GF_JS_EXCEPTION
    - JS_NewObjectClass
    - JS_NewArrayBuffer
    - gf_evg_stencil_get_matrix
    - JS_SetOpaque
    - gf_evg_stencil_get_color_matrix
    - gf_evg_stencil_get_auto_matrix
    - JS_GetOpaque
    - gf_mx2d_copy
    - GF_SAFEALLOC
    - JS_NewInt32
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_evg_stencil_set_matrix
    - gf_evg_stencil_set_color_matrix
    - gf_evg_stencil_set_mapping
    - JS_GetOpaque
    - JS_IsNull
    - gf_evg_stencil_set_auto_matrix
    - JS_ToInt32
    - gf_evg_stencil_set_filter
    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_JS_EXCEPTION
    - GF_COL_R
    - GF_SAFEALLOC
    - GF_COL_G
    - gf_evg_stencil_new
    - gf_evg_argb_to_ayuv
    - JS_NewObjectClass
    - gf_malloc
    - gf_evg_stencil_get_pixel
    - gf_evg_stencil_delete
    - js_throw_err
    - rgb2hsv
    - hsv2rgb
    - gf_error_to_string
    - gf_free
    - gf_evg_stencil_set_texture
    - JS_SetOpaque
    - gf_evg_ayuv_to_argb
    - JS_GetOpaque
    - gf_pixel_get_size_info
    - GF_COL_A
    - GF_COL_B
    - js_throw_err_msg
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - gf_malloc
    - gf_evg_stencil_set_texture
    - JS_SetOpaque
    - js_throw_err
    - JS_GetOpaque
    - GF_SAFEALLOC
    - gf_evg_stencil_get_pixel
    - JS_IsObject
    - gf_evg_stencil_new
    - JS_ToInt32
    - 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_JS_EXCEPTION
    - SET_CLAMP
    - GF_COL_R
    - GF_SAFEALLOC
    - GF_COL_G
    - JS_IsObject
    - gf_evg_stencil_new
    - JS_GetPropertyUint32
    - JS_NewObjectClass
    - gf_malloc
    - JS_FreeValue
    - JS_GetPropertyStr
    - gf_evg_stencil_get_pixel
    - js_throw_err
    - JS_ToInt32
    - gf_free
    - gf_evg_stencil_set_texture
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_pixel_get_size_info
    - GF_COL_B
    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:
    - GF_JS_EXCEPTION
    - jsf_is_packet
    - gf_evg_stencil_set_texture_planes
    - gf_evg_stencil_set_texture
    - JS_FreeValue
    - gf_assert
    - JS_GetOpaque
    - gf_pixel_get_size_info
    - JS_DupValue
    - JS_IsObject
    - wgl_named_texture_upload
    - JS_IsException
    - gf_pixel_get_nb_comp
    - js_throw_err
    - jsf_get_filter_packet_planes
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToBool
    - JS_NewFloat64
    - JS_NewObject
    - JS_NewArray
    - JS_NewInt32
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - gf_evg_stencil_get_pixel_f
    - JS_SetPropertyStr
    - JS_ToInt32
    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_img_jpeg_dec
    - gf_free
    - gf_malloc
    - gf_img_parse
    - gf_evg_stencil_set_texture
    - gf_bs_new
    - gf_img_png_dec
    - gf_pixel_get_size_info
    - gf_bs_del
    - gf_pixel_get_nb_comp
    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: gf_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:
    - gf_free
    - jsf_get_script_filename
    - gf_file_exists
    - gf_strcat
    - gf_file_load_data
    - texture_load_data
    - gf_url_concatenate
    - gf_opts_default_shared_directory
    - strncmp
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - texture_load_data
    - JS_IsArrayBuffer
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_GetArrayBuffer
    - texture_load_file
    - js_throw_err_msg
    - gf_error_to_string
    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_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_GetOpaque
    - JS_FreeCString
    - gf_strdup
    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_JS_EXCEPTION
    - GF_COL_ARGB
    - JS_GetOpaque
    - get_color_from_args
    - gf_evg_stencil_set_pad_color
    - js_throw_err_msg
    - gf_error_to_string
    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_JS_EXCEPTION
    - sprintf
    - gf_evg_stencil_get_pad_color
    - JS_NewString
    - JS_GetOpaque
    - GF_COL_R
    - GF_COL_A
    - GF_COL_G
    - GF_COL_B
    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:
    - GF_JS_EXCEPTION
    - gf_evg_stencil_get_pixel_fast
    - JS_NewFloat64
    - JS_IsString
    - JS_NewArray
    - GF_COL_R
    - GF_COL_G
    - JS_SetPropertyUint32
    - gf_pixel_fmt_is_yuv
    - strstr
    - FCLAMP
    - JS_ToCString
    - JS_IsException
    - JS_ToBool
    - JS_NewObject
    - JS_FreeCString
    - JS_SetPropertyStr
    - JS_GetOpaque
    - GF_COL_A
    - gf_pixel_fmt_is_transparent
    - GF_COL_B
    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:
    - GF_LOG
    - GETCOMP
    - JS_FreeValue
    - gf_js_try_lock
    - JS_Call
    - JS_NewInt32
    - gf_js_lock
    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_JS_EXCEPTION
    - JS_IsString
    - GF_SAFEALLOC
    - JS_IsObject
    - JS_GetArrayBuffer
    - gf_evg_stencil_new
    - JS_NewObjectClass
    - JS_ToCString
    - jsf_is_packet
    - gf_evg_stencil_set_texture_planes
    - JS_IsFunction
    - JS_DupValue
    - JS_IsException
    - gf_evg_stencil_delete
    - js_throw_err
    - JS_ToBool
    - gf_pixel_is_wide_depth
    - JS_FreeCString
    - gf_pixel_fmt_parse
    - JS_ToInt32
    - jsf_get_filter_packet_planes
    - gf_error_to_string
    - gf_free
    - gf_evg_stencil_set_texture_parametric
    - gf_evg_stencil_set_texture
    - texture_load_data
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_pixel_get_size_info
    - gf_pixel_get_nb_comp
    - texture_load_file
    - js_throw_err_msg
    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_path_del
    - gf_list_count
    - gf_list_pop_back
    - 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
    - gf_list_del
    - JS_GetOpaque
    - text_reset_fonts
    - text_reset
    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_NewBool
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - JS_NewString
    - JS_NewArray
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - JS_NewInt32
    - JS_SetPropertyStr
    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:
    - gf_mx2d_init
    - gf_list_count
    - gf_mx2d_add_translation
    - FLT2FIX
    - gf_divfix
    - gf_path_del
    - gf_mx2d_add_scale
    - INT2FIX
    - gf_font_span_create_path
    - gf_list_get
    - gf_path_new
    - gf_path_add_subpath
    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:
    - gf_evg_surface_set_path
    - gf_evg_surface_force_aa
    - text_update_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:
    - gf_font_manager_create_span
    - JS_ToCString
    - strchr
    - FLT2FIX
    - JS_FreeCString
    - gf_list_add
    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_JS_EXCEPTION
    - JS_ToBool
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_path_clone
    - 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_JS_EXCEPTION
    - gf_list_count
    - FLT2FIX
    - gf_font_manager_set_font
    - gf_font_manager_refresh_span_bounds
    - js_throw_err_msg
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    - JS_IsArray
    - gf_list_get
    - JS_ToInt32
    - text_reset
    - JS_GetPropertyUint32
    - text_set_text_from_value
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToFloat64
    - gf_malloc
    - JS_ToBool
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - text_reset_fonts
    - JS_IsArray
    - JS_FreeCString
    - gf_strdup
    - JS_ToInt32
    - JS_GetPropertyUint32
    - TOG_FLAG
    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_NewBool
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - gf_path_get_bounds
    - JS_NewObject
    - gf_path_del
    - JS_NewInt32
    - JS_GetOpaque
    - JS_SetPropertyStr
    - text_update_path
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - gf_free
    - jsf_get_font_manager
    - JS_SetOpaque
    - js_throw_err_msg
    - GF_SAFEALLOC
    - JS_IsException
    - gf_list_new
    - js_throw_err
    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:
    - gf_free
    - JS_GetOpaque
    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_NewBool
    - GF_JS_EXCEPTION
    - gf_mx_get_yaw_pitch_roll
    - JS_NewFloat64
    - FIX2FLT
    - MAKEVEC4
    - JS_NewArray
    - JS_GetOpaque
    - gf_mx_decompose
    - MAKEVEC
    - JS_SetPropertyUint32
    - gf_mx_is_identity
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx_init
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsArray
    - JS_ToInt32
    - JS_GetPropertyUint32
    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
    - GF_JS_EXCEPTION
    - gf_mx_copy
    - JS_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    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:
    - gf_mx_equal
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - FLT2FIX
    - JS_GetOpaque
    - JS_DupValue
    - EVG_GET_FLOAT
    - WGL_GET_VEC3
    - JS_IsObject
    - gf_mx_add_translation
    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:
    - GF_JS_EXCEPTION
    - FLT2FIX
    - gf_mx_add_scale
    - JS_GetOpaque
    - JS_DupValue
    - EVG_GET_FLOAT
    - WGL_GET_VEC3
    - 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:
    - GF_JS_EXCEPTION
    - FLT2FIX
    - gf_mx_add_rotation
    - JS_GetOpaque
    - WGL_GET_VEC4
    - JS_DupValue
    - EVG_GET_FLOAT
    - 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_JS_EXCEPTION
    - JS_ToBool
    - gf_mx_add_matrix
    - gf_free
    - gf_mx_add_matrix_4x4
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_mx_from_mx2d
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_mx_inverse
    - JS_GetOpaque
    - JS_DupValue
    - 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:
    - GF_JS_EXCEPTION
    - JS_DupValue
    - gf_mx_transpose
    - JS_GetOpaque
    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:
    - MAKEVEC4
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - FLT2FIX
    - gf_mx_apply_rect
    - JS_IsUndefined
    - WGL_GET_VEC3F
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - MAKERECT
    - gf_mx_apply_vec
    - MAKEVEC
    - JS_IsObject
    - EVG_GET_FLOAT
    - gf_mx_apply_vec_4x4
    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: 3
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - FLT2FIX
    - gf_mx_ortho
    - JS_GetOpaque
    - gf_mx_ortho_reverse_z
    - JS_DupValue
    - EVG_GET_FLOAT
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - FLT2FIX
    - JS_GetOpaque
    - gf_mx_perspective_reverse_z
    - JS_DupValue
    - EVG_GET_FLOAT
    - gf_mx_perspective
    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_JS_EXCEPTION
    - gf_mx_lookat
    - WGL_GET_VEC3F
    - JS_GetOpaque
    - JS_DupValue
    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:
    - JS_NewObjectClass
    - gf_mx_copy
    - gf_mx_init
    - WGL_GET_VEC3F
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_mx_rotation_matrix_from_vectors
    - GF_SAFEALLOC
    - js_throw_err
    - gf_mx_from_mx2d
    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:
    - mesh_free
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - mesh_gl_update_buffers
    - JS_GetOpaque
    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:
    - mesh_gl_draw
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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
    - GF_JS_EXCEPTION
    - new_mesh
    - JS_SetOpaque
    - JS_GetOpaque
    - mesh_from_path
    - js_throw_err
    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_IsNumber
    - JS_IsString
    - gf_pixel_fmt_parse
    - JS_FreeCString
    - JS_NewInt32
    - JS_ToInt32
    - js_throw_err_msg
    - gf_pixel_get_bytes_per_pixel
    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_GetRuntime
    - JS_GetGlobalObject
    - JS_NewCFunction2
    - countof
    - JS_NewObject
    - JS_SetPropertyFunctionList
    - JS_SetModuleExport
    - gf_sys_is_cov_mode
    - JS_NewInt32
    - JS_FreeValue
    - JS_NewClass
    - JS_NewClassID
    - JS_SetClassProto
    - JS_SetPropertyStr
    - va_gc_mark
    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_NewCModule
    - JS_AddModuleExport
    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_MarkValue
    - JS_GetOpaque
    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:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - gf_free
    - FIX2FLT
    - JS_NewString
    - gf_url_concatenate
    - gf_sys_is_cov_mode
    - JS_GetOpaque
    - gf_sc_get_option
    - gf_sc_get_selected_text
    - gf_sc_get_fps
    - GF_Compositor*::root_scene::graph::script_action
    - JS_NewInt32
    - gf_strdup
    - memset
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - JS_ToFloat64
    - JS_IsString
    - gf_sc_send_event
    - strnicmp
    - JS_GetOpaque
    - JS_FreeCString
    - gf_sc_set_option
    - GF_Compositor*::video_out::ProcessEvent
    - memset
    - JS_ToInt32
    - gf_sc_user_event
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_gpac_version
    - JS_NewString
    - JS_IsNumber
    - stricmp
    - JS_IsString
    - scenejs_get_compositor
    - gf_opts_get_key_name
    - gf_filter_get_arg_str
    - JS_FreeCString
    - strcmp
    - JS_ToInt32
    - gf_opts_get_key
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_IsString
    - scenejs_get_compositor
    - JS_FreeCString
    - strcmp
    - gf_filter_send_update
    - gf_opts_set_key
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - GF_COL_ARGB
    - scenejs_get_compositor
    - gf_sc_invalidate
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_IsBool
    - scenejs_get_compositor
    - gf_scene_switch_quality
    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
    - gf_filter_ui_event
    - scenejs_get_compositor
    - memset
    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:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_sc_navigation_supported
    - scenejs_get_compositor
    - JS_IsInteger
    - JS_ToInt32
    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_set_size
    - GF_JS_EXCEPTION
    - JS_ToBool
    - scenejs_get_compositor
    - gf_sc_send_event
    - JS_ToInt32
    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:
    - memset
    - JS_ToInt32
    - scenejs_get_compositor
    - 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_sc_reset_graphics
    - GF_JS_EXCEPTION
    - JS_ToBool
    - scenejs_get_compositor
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - scenejs_get_compositor
    - GF_Compositor*::video_out::ProcessEvent
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - scenejs_get_compositor
    - GF_SceneGraph*::GetSceneTime
    - JSVAL_TO_OBJECT
    - JS_IsObject
    - gf_sg_js_get_node
    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:
    - JS_NewInt64
    - gf_list_count
    - JS_NewFloat64
    - gf_clock_time_absolute
    - gf_filter_pid_get_property
    - gf_filter_count_source_by_protocol
    - strstr
    - gf_stream_type_name
    - gf_odm_get_object_info
    - gf_list_get
    - gf_filter_get_info
    - JS_NewString
    - gf_sys_clock
    - gf_filter_pid_get_info_str
    - gf_sc_is_over
    - JS_NewInt32
    - JS_NewBool
    - sprintf
    - gf_filter_release_property
    - gf_sc_send_event
    - JS_GetOpaque
    - gf_net_ntp_diff_ms
    - gf_filter_pid_get_info
    - memset
    - gf_4cc_to_str
    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:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - sprintf
    - JS_NewFloat64
    - atoi
    - JS_NewString
    - JS_NewObject
    - gf_filter_release_property
    - sscanf
    - JS_NewInt32
    - JS_GetOpaque
    - gf_filter_pid_get_info_str
    - JS_IsException
    - JS_SetPropertyStr
    - strcmp
    - JS_ToInt32
    - strstr
    - strncmp
    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:
    - GF_JS_EXCEPTION
    - JS_NewObject
    - gf_filter_release_property
    - JS_NewInt32
    - JS_GetOpaque
    - gf_filter_pid_get_info_str
    - JS_IsException
    - JS_SetPropertyStr
    - JS_ToInt32
    - sscanf
    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:
    - GF_JS_EXCEPTION
    - gf_filter_in_parent_chain
    - JS_GetOpaque
    - jsff_get_filter
    - gf_filter_pid_is_filter_in_parents
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - atoi
    - GF_FEVT_INIT
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_IsInteger
    - strcmp
    - gf_filter_pid_send_event
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - gf_scene_resume_live
    - JS_GetOpaque
    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:
    - gf_scene_set_service_id
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - gf_scene_select_object
    - JS_GetOpaque
    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_JS_EXCEPTION
    - JS_SetOpaque
    - JS_GetOpaque
    - gf_list_get
    - JS_ToInt32
    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:
    - gf_scene_set_addon_layout_info
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_ToCString
    - gf_sys_is_cov_mode
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - do_enable_addon
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - do_enable_addon
    - strcmp
    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_filter_pid_get_property
    - GF_JS_EXCEPTION
    - JS_NewString
    - JS_NewObject
    - JS_NewArray
    - JS_NewInt32
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - gf_list_get
    - JS_SetPropertyStr
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - strchr
    - gf_list_count
    - gf_free
    - gf_list_get
    - JS_SetOpaque
    - JS_IsString
    - scenejs_get_compositor
    - JS_GetOpaque
    - JS_FreeCString
    - gf_url_percent_encode
    - JS_IsException
    - strlen
    - strstr
    - strncmp
    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_NewBool
    - GF_JS_EXCEPTION
    - gf_list_count
    - JS_NewFloat64
    - FIX2FLT
    - JS_NewString
    - JS_NewArray
    - JS_GetOpaque
    - gf_dom_event_get_name
    - JS_SetPropertyUint32
    - gf_dom_get_key_name
    - JS_NewInt32
    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_ToBool
    - JS_IsBool
    - JS_SetOpaque
    - JS_IsNumber
    - JS_FreeValue
    - JS_Call
    - JS_ToInt32
    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_js_lock
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_list_pop_front
    - GF_LOG
    - gf_mx_try_lock
    - gf_js_try_lock
    - gf_mx_p
    - gf_mx_v
    - gjs_event_filter_process
    - gf_list_add
    - memcpy
    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:
    - GF_JS_EXCEPTION
    - JS_IsUndefined
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetOpaque
    - gf_filter_add_event_listener
    - JS_IsNull
    - JS_DupValue
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - stricmp
    - JS_IsString
    - scenejs_get_compositor
    - JS_IsNull
    - JS_FreeCString
    - gf_sc_focus_switch_ring
    - JS_IsObject
    - gf_sg_js_get_node
    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
    - GF_JS_EXCEPTION
    - gf_sg_get_scene_size_info
    - JS_NewBool
    - gf_sc_animation_get_scenegraph
    - gf_node_get_private
    - JS_SetOpaque
    - JS_NewInt32
    - JS_GetOpaque
    - gf_sg_get_private
    - JS_IsObject
    - JS_IsException
    - gf_sg_js_get_node
    - JS_SetPropertyStr
    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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - scenejs_get_compositor
    - memset
    - gf_sc_user_event
    linkageType: ''
    returnType: JSValue
    signature: JSValue scenejs_show_keyboard(JSContext *ctx, JSValueConst this_val,
      int argc, JSValueConst *argv)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1860,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1861,1
    - Dst: gf_fs_unload_script
      Src: /src/gpac/src/jsmods/scene_js.c:1864,1
    - Dst: gf_filter_remove_event_listener
      Src: /src/gpac/src/jsmods/scene_js.c:1868,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/scene_js.c:1872,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 2
    argNames:
    - c
    - global_obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1858
    functionDepth: 1
    functionLinenumber: 1858
    functionLinenumberEnd: 1874
    functionName: scenejs_unload
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_GetOpaque
    - JS_GetPropertyStr
    - gf_fs_unload_script
    - gf_filter_remove_event_listener
    linkageType: ''
    returnType: void
    signature: void scenejs_unload(JSContext *c, JSValue global_obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1877,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1880,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:1882,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/scene_js.c:1883,1
    - Dst: gf_cfg_discard_changes
      Src: /src/gpac/src/jsmods/scene_js.c:1884,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/jsmods/scene_js.c:1885,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/scene_js.c:1887,1
    - Dst: gf_list_count
      Src: /src/gpac/src/jsmods/scene_js.c:1889,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/jsmods/scene_js.c:1890,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:1891,1
    - Dst: gf_list_del
      Src: /src/gpac/src/jsmods/scene_js.c:1893,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/jsmods/scene_js.c:1894,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/jsmods/scene_js.c:1897,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/scene_js.c:1899,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1900
      start: 1875
    functionDepth: 5
    functionLinenumber: 1875
    functionLinenumberEnd: 1900
    functionName: scenejs_finalize
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - JS_SetOpaque
    - gf_cfg_del
    - JS_GetOpaque
    - JS_FreeValueRT
    - gf_mx_del
    - gf_list_pop_back
    - gf_cfg_discard_changes
    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:1906,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/scene_js.c:1911,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/scene_js.c:1912,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/jsmods/scene_js.c:1913,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1918,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1921,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_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1932,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/scene_js.c:1933,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/scene_js.c:1933,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/jsmods/scene_js.c:1934,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/scene_js.c:1936,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/scene_js.c:1937,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/scene_js.c:1937,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/jsmods/scene_js.c:1939,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/scene_js.c:1940,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/scene_js.c:1940,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/scene_js.c:1942,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1944,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/scene_js.c:1945,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/scene_js.c:1945,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1946,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1947,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/scene_js.c:1947,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/jsmods/scene_js.c:1950,1
    - Dst: gf_fs_load_js_api
      Src: /src/gpac/src/jsmods/scene_js.c:1959,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/scene_js.c:1965,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/scene_js.c:1966,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/scene_js.c:1966,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/scene_js.c:1967,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/scene_js.c:1968,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:1985,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: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:1999,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2000,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2001,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2002,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2003,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2004,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2006,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2007,1
    - Dst: DECLARE_CONST
      Src: /src/gpac/src/jsmods/scene_js.c:2008,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/scene_js.c:2010,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/scene_js.c:2012,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 85
    argCount: 2
    argNames:
    - c
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2014
      start: 1902
    functionDepth: 1
    functionLinenumber: 1902
    functionLinenumberEnd: 2014
    functionName: js_scene_init
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_GetRuntime
    - JS_SetModuleExport
    - GF_SceneGraph*::script_action
    - JS_NewClassID
    - GF_SAFEALLOC
    - gf_fs_load_js_api
    - JS_SetPropertyFunctionList
    - JS_NewObjectClass
    - countof
    - JS_FreeValue
    - JS_DupValue
    - gf_mx_new
    - gf_list_new
    - JS_SetPropertyStr
    - DECLARE_CONST
    - JS_GetGlobalObject
    - JS_SetOpaque
    - JS_GetContextOpaque
    - JS_NewClass
    - JS_SetClassProto
    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: 1972
      start: 1970
    functionDepth: 0
    functionLinenumber: 1970
    functionLinenumberEnd: 1972
    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:2020,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/scene_js.c:2023,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2025
      start: 2017
    functionDepth: 1
    functionLinenumber: 2017
    functionLinenumberEnd: 2025
    functionName: qjs_module_init_scenejs
    functionSourceFile: /src/gpac/src/jsmods/scene_js.c
    functionUses: 0
    functionsReached:
    - JS_NewCModule
    - JS_AddModuleExport
    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_list_count
    - gf_list_del
    - gf_cfg_del
    - gf_list_del_item
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewString
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_IsInteger
    - gf_cfg_get_key_name
    - strcmp
    - gf_cfg_get_key
    - JS_ToInt32
    - js_throw_err_msg
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - strcmp
    - gf_cfg_set_key
    - js_throw_err_msg
    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:
    - GF_JS_EXCEPTION
    - gf_cfg_save
    - JS_GetOpaque
    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: gf_strcat
      Src: /src/gpac/src/jsmods/storage.c:166,1
    - Dst: gf_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_JS_EXCEPTION
    - gf_list_count
    - gf_sha1_csum
    - JS_IsString
    - gf_cfg_get_filename
    - gf_list_add
    - strstr
    - JS_NewObjectClass
    - JS_ToCString
    - JS_IsException
    - gf_list_get
    - gf_cfg_force_new
    - JS_FreeCString
    - strlen
    - sprintf
    - gf_strcat
    - JS_SetOpaque
    - gf_cfg_set_key
    - gf_opts_get_key
    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_GetRuntime
    - JS_NewObjectClass
    - JS_NewCFunction2
    - countof
    - JS_SetModuleExport
    - gf_assert
    - JS_NewClass
    - JS_NewClassID
    - JS_SetClassProto
    - gf_list_new
    - JS_SetPropertyFunctionList
    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_NewCModule
    - JS_AddModuleExport
    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_new
    - GF_LOG
    - gf_mx_v
    - GF_SAFEALLOC
    - qjs_init_runtime_libc
    - gf_mx_p
    - gf_list_new
    - gf_list_add
    - 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_sys_get_userws
    - gf_free
    - gf_js_call_gc
    - gf_sys_get_rmtws
    - gf_list_del_item
    - JS_FreeValue
    - JS_RunGC
    - gf_rmt_get_on_new_client_task
    - js_reset_logs
    - JS_FreeContext
    - gf_mx_p
    - gf_rmt_set_on_new_client_cbk
    - gf_mx_v
    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
    - gf_list_del
    - JS_FreeRuntime
    - qjs_uninit_runtime_libc
    - gf_opts_get_bool
    - 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:
    - gf_js_lock
    - JS_RunGC
    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:
    - JS_UpdateStackTop
    - gf_mx_get_num_locks
    - gf_mx_p
    - gf_mx_v
    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_mx_try_lock
    - gf_assert
    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:
    - fprintf
    - JS_ToCString
    - GF_JS_EXCEPTION
    - JS_GetGlobalObject
    - JS_IsUndefined
    - GF_LOG
    - JS_IsNumber
    - JS_FreeValue
    - js_dump_error_exc
    - JS_GetPropertyStr
    - gf_sys_format_help
    - JS_IsNull
    - JS_FreeCString
    - JS_IsException
    - strlen
    - JS_ToInt32
    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_print_ex
    - JS_ToCString
    - fprintf
    - JS_IsUndefined
    - GF_LOG
    - JS_IsError
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_FreeCString
    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_bs_del
    - gf_free
    - JS_FreeValueRT
    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_bs_read_u8
    - GF_JS_EXCEPTION
    - JS_NewInt32
    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_bs_read_u8
    - GF_JS_EXCEPTION
    - JS_NewInt32
    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
    - gf_bs_read_u16
    - JS_NewInt32
    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
    - gf_bs_read_u16_le
    - JS_NewInt32
    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
    - gf_bs_read_u16
    - JS_NewInt32
    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
    - gf_bs_read_u24
    - JS_NewInt32
    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_bs_read_u32
    - GF_JS_EXCEPTION
    - JS_NewInt32
    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_bs_read_u32
    - GF_JS_EXCEPTION
    - JS_NewInt32
    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
    - gf_bs_read_u32_le
    - JS_NewInt32
    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:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_bs_read_u64
    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:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_bs_read_u64_le
    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_bs_read_u64
    - GF_JS_EXCEPTION
    - 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
    - JS_NewFloat64
    - gf_bs_read_float
    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
    - JS_NewFloat64
    - gf_bs_read_double
    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:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_bs_read_long_int
    - gf_bs_read_int
    - JS_NewInt32
    - JS_ToInt32
    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_bs_read_utf8
    - GF_JS_EXCEPTION
    - gf_free
    - JS_NewString
    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_JS_EXCEPTION
    - gf_bs_insert_data
    - JS_NewInt32
    - gf_bs_read_data
    - gf_bs_write_data
    - JS_IsObject
    - JS_GetArrayBuffer
    - JS_ToInt64
    - JS_ToInt32
    - js_throw_err
    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_bs_read_u32
    - gf_4cc_to_str
    - 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_bs_flush
    - GF_JS_EXCEPTION
    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
    - gf_bs_enable_emulation_byte_removal
    - JS_ToBool
    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_JS_EXCEPTION
    - gf_bs_peek_bits
    - JS_NewInt32
    - JS_ToInt64
    - JS_ToInt32
    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_JS_EXCEPTION
    - gf_bs_write_u64
    - gf_bs_write_u32_le
    - gf_bs_write_u16
    - gf_bs_write_u16_le
    - gf_bs_write_u24
    - gf_bs_write_u32
    - gf_bs_write_u64_le
    - JS_ToInt64
    - 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_JS_EXCEPTION
    - gf_bs_write_int
    - gf_bs_write_long_int
    - JS_ToInt64
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - GF_4CC
    - JS_IsString
    - JS_FreeCString
    - gf_bs_write_u32
    - strlen
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_bs_write_utf8
    - JS_IsString
    - 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:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_bs_transfer
    - JS_GetOpaque
    - js_throw_err
    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:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_bs_get_position
    - JS_NewBool
    - gf_bs_get_size
    - gf_bs_is_overflow
    - JS_NewInt32
    - gf_bs_get_refreshed_size
    - gf_bs_get_bit_position
    - gf_bs_bits_available
    - gf_bs_available
    - gf_bs_get_bit_offset
    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:
    - JS_ToInt64
    - GF_JS_EXCEPTION
    - 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:
    - JS_NewObjectClass
    - JS_ToBool
    - GF_JS_EXCEPTION
    - gf_free
    - JS_SetOpaque
    - gf_bs_from_file
    - JS_GetOpaque
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - JS_DupValue
    - JS_IsObject
    - JS_GetArrayBuffer
    - JS_IsException
    - js_throw_err
    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_ToBool
    - JS_IsBool
    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:
    - JS_ToBool
    - JS_IsBool
    - gf_sys_enable_userws
    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_rmt_client_set_on_del_cbk
    - gf_free
    - GF_LOG
    - JS_SetOpaque
    - gf_rmt_client_set_on_data_cbk
    - JS_FreeValue
    - JS_GetOpaque
    - gf_rmt_client_get_on_data_task
    - gf_rmt_client_get_on_del_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_IsUndefined
    - js_dump_error
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_IsException
    - gf_js_lock
    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_IsUndefined
    - GF_LOG
    - JS_IsFunction
    - 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_NewStringLen
    - js_sys_rmt_run_task
    - 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:
    - gf_rmt_get_peer_address
    - JS_NewString
    - JS_GetOpaque
    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_JS_EXCEPTION
    - gf_free
    - gf_rmt_client_set_on_del_cbk
    - JS_IsUndefined
    - gf_rmt_client_set_on_data_cbk
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetOpaque
    - gf_rmt_client_get_on_data_task
    - GF_SAFEALLOC
    - JS_IsNull
    - JS_DupValue
    - gf_rmt_client_get_on_del_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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_rmt_client_send_to_ws
    - GF_LOG
    - JS_GetArrayBuffer
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - strlen
    - JS_IsArrayBuffer
    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
    - gf_rmt_client_set_on_del_cbk
    - js_sys_rmt_run_task
    - GF_LOG
    - JS_SetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - JS_IsException
    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_gpac_version
    - gf_get_default_cache_directory
    - gf_sys_old_arch_compat
    - gf_file_handles_count
    - gf_sys_get_rti
    - getenv
    - gf_sys_get_battery_state
    - gf_sys_is_test_mode
    - gf_net_get_timezone
    - JS_NewString
    - gf_get_user_name
    - gf_opts_default_shared_directory
    - gf_sys_is_quiet
    - JS_NewInt32
    - JS_NewBool
    - gf_log_use_color
    - gf_sk_get_host_name
    - gf_gpac_copyright
    - gf_opts_get_key
    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
    - JS_NewString
    - vsprintf
    - gf_log_tool_name
    - gf_fs_get_script_data
    - gf_js_try_lock
    - JS_NewInt32
    - JS_Call
    - vsnprintf
    - JS_IsNull
    - JS_FreeValue
    - va_end
    - gf_mx_p
    - gf_mx_v
    - gf_js_lock
    - va_copy
    - realloc
    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_JS_EXCEPTION
    - gf_sys_get_rmtws
    - JS_IsString
    - gf_rmt_get_on_new_client_task
    - JS_IsNull
    - GF_SAFEALLOC
    - gf_rmt_set_on_new_client_cbk
    - gf_opts_set_key
    - gf_sys_get_userws
    - JS_ToCString
    - gf_log_set_callback
    - JS_FreeValue
    - JS_IsFunction
    - gf_log_set_tools_levels
    - JS_DupValue
    - JS_ToBool
    - JS_FreeCString
    - gf_free
    - JS_IsUndefined
    - GF_LOG
    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
    - JS_ToInt32
    - JS_ToBool
    - gf_sys_mark_arg_used
    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_NewBool
    - JS_NewInt64
    - strchr
    - JS_NewString
    - JS_NewObject
    - JS_SetPropertyUint32
    - strlen
    - JS_SetPropertyStr
    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:
    - JS_ToCString
    - JS_ToBool
    - gf_free
    - JS_IsBool
    - GF_JS_EXCEPTION
    - JS_IsString
    - gf_url_concatenate
    - JS_NewArray
    - scenejs_get_compositor
    - JS_FreeCString
    - strcmp
    - strlen
    - JS_IsException
    - gf_enum_directory
    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_error_to_string
    - GF_JS_EXCEPTION
    - 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_get_char
    - gf_prompt_has_input
    - 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:
    - strlen
    - fgets
    - 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
    - JS_ToBool
    - gf_prompt_set_echo_off
    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:
    - JS_NewObject
    - gf_prompt_get_size
    - JS_NewInt32
    - JS_SetPropertyStr
    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_JS_EXCEPTION
    - gf_dom_get_friendly_name
    - JS_NewString
    - JS_ToInt32
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_FreeCString
    - JS_NewInt32
    - gf_dom_event_type_by_name
    - js_throw_err
    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_GetRuntime
    - JS_RunGC
    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:
    - gf_sys_clock
    - JS_NewInt32
    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:
    - JS_NewInt64
    - gf_sys_clock_high_res
    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:
    - JS_ToInt64
    - GF_JS_EXCEPTION
    - gf_4cc_to_str
    - JS_NewString
    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:
    - JS_ToBool
    - gf_rand_init
    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:
    - JS_NewInt64
    - gf_rand
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewString
    - 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_NewInt64
    - JS_ToCString
    - GF_JS_EXCEPTION
    - gf_net_get_utc_ts
    - gf_net_get_utc
    - JS_FreeCString
    - gf_net_parse_date
    - JS_ToInt32
    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_NewInt64
    - JS_NewObject
    - gf_net_get_ntp
    - JS_IsException
    - JS_SetPropertyStr
    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_NewInt64
    - GF_JS_EXCEPTION
    - JS_NewObject
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsNull
    - JS_IsObject
    - JS_IsException
    - JS_ToInt64
    - JS_SetPropertyStr
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_crc_32
    - JS_GetArrayBuffer
    - JS_IsString
    - JS_NewInt32
    - JS_FreeCString
    - strlen
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetArrayBuffer
    - gf_sha1_csum
    - JS_IsString
    - JS_FreeCString
    - JS_NewArrayBufferCopy
    - JS_IsObject
    - gf_sha1_file
    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_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_free
    - JS_NewArrayBuffer
    - gf_file_load_data
    - JS_NewString
    - JS_IsString
    - JS_FreeCString
    - js_throw_err_msg
    - gf_utf8_is_legal
    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_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_free
    - jsf_get_script_filename
    - gf_file_load_data
    - JS_Eval
    - JS_IsString
    - gf_url_concatenate
    - JS_FreeCString
    - js_throw_err_msg
    - gf_utf8_is_legal
    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:
    - gf_gz_compress_payload_ex
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_NewArrayBuffer
    - gf_gz_decompress_payload_ex
    - JS_IsObject
    - JS_GetArrayBuffer
    - js_throw_err
    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_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_NewString
    - gf_url_concatenate
    - 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_JS_EXCEPTION
    - gf_rect_intersect
    - JS_NewFloat64
    - FIX2FLT
    - JS_NewObject
    - GET_PROP
    - JS_SetPropertyStr
    - gf_rect_union
    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:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - atof
    - gf_xml_dom_parse_string
    - gf_xml_dom_del
    - gf_list_count
    - gf_mpd_resolve_url
    - gf_file_basename
    - JS_NewArray
    - JS_SetPropertyUint32
    - JS_GetArrayBuffer
    - strstr
    - strchr
    - gf_malloc
    - gf_timestamp_rescale
    - gf_mpd_new
    - gf_net_get_utc
    - gf_list_get
    - memcpy
    - atoi
    - JS_NewString
    - JS_NewObject
    - gf_xml_dom_new
    - gf_mpd_del
    - JS_NewInt32
    - JS_SetPropertyStr
    - gf_xml_dom_get_root
    - JS_NewBool
    - gf_free
    - gf_mpd_init_from_dom
    - gf_utf8_is_legal
    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:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_file_ext_start
    - JS_NewInt64
    - JS_NewString
    - gf_file_exists
    - gf_file_basename
    - gf_dir_exists
    - JS_IsString
    - gf_file_modification_time
    - gf_file_move
    - JS_FreeCString
    - gf_file_delete
    - gf_dir_cleanup
    - gf_mkdir
    - gf_rmdir
    - js_throw_err_msg
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewString
    - JS_FreeCString
    - gf_opts_get_key
    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_FreeCString
    - JS_ToCString
    - gf_opts_set_key
    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_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - gf_malloc
    - gf_base16_decode
    - JS_NewArrayBuffer
    - JS_NewString
    - JS_GetArrayBuffer
    - gf_base64_decode
    - JS_FreeCString
    - gf_base64_encode
    - strlen
    - gf_base16_encode
    - js_throw_err
    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:
    - JS_ToInt64
    - GF_JS_EXCEPTION
    - gf_ntohl
    - JS_NewInt32
    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:
    - JS_ToInt64
    - GF_JS_EXCEPTION
    - gf_ntohs
    - JS_NewInt32
    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:
    - JS_ToInt64
    - GF_JS_EXCEPTION
    - 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:
    - JS_ToInt64
    - GF_JS_EXCEPTION
    - gf_htons
    - JS_NewInt32
    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:
    - GF_JS_EXCEPTION
    - jsf_ToProp_ex
    - gf_pixel_get_size_info
    - JS_NewInt32
    - JS_ToInt32
    - js_throw_err_msg
    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
    - gf_pixel_is_wide_depth
    - jsf_ToProp_ex
    - JS_NewInt32
    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:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - 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:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_pixel_fmt_is_yuv
    - jsf_ToProp_ex
    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
    - gf_audio_fmt_bit_depth
    - jsf_ToProp_ex
    - JS_NewInt32
    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_JS_EXCEPTION
    - JS_ToBool
    - JS_ToCString
    - gf_free
    - JS_IsString
    - gf_log_set_tools_levels
    - JS_FreeCString
    - gf_log_get_tools_levels
    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: 2
    functionLinenumber: 2949
    functionLinenumberEnd: 2958
    functionName: js_sys_get_logs
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_ToBool
    - gf_log_get_tools_levels
    - gf_free
    - JS_NewString
    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:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToCString
    - sprintf
    - JS_NewString
    - GF_COL_R
    - GF_COL_A
    - JS_FreeCString
    - GF_COL_G
    - GF_COL_B
    - gf_color_parse
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewFloat64
    - GF_COL_R
    - GF_COL_A
    - JS_FreeCString
    - GF_COL_G
    - GF_COL_B
    - JS_ToInt32
    - gf_color_parse
    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
    - GF_JS_EXCEPTION
    - gf_assert
    - JS_GetArrayBuffer
    - JS_ToInt64
    - JS_GetPropertyUint32
    - AMixCtx*::set_sample
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsException
    - gf_realloc
    - js_throw_err
    - JS_ToFloat64
    - JS_SetPropertyStr
    - JS_NewInt32
    - JS_ToInt32
    - GF_LOG
    - AMixCtx*::get_sample
    - MIN
    - JS_GetOpaque
    - memset
    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:
    - Dst: GF_FLOAT_TO_U32
      Src: /src/gpac/src/jsmods/core.c:3262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - data
    - val
    argTypes:
    - u8*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3265
      start: 3259
    functionDepth: 1
    functionLinenumber: 3259
    functionLinenumberEnd: 3265
    functionName: amix_set_s16
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_FLOAT_TO_U32
    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:
    - Dst: GF_FLOAT_TO_U32
      Src: /src/gpac/src/jsmods/core.c:3281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - data
    - val
    argTypes:
    - u8*
    - Double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3278
    functionDepth: 1
    functionLinenumber: 3278
    functionLinenumberEnd: 3286
    functionName: amix_set_s32
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - GF_FLOAT_TO_U32
    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:
    - gf_free
    - JS_GetOpaque
    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:
    - JS_NewObjectClass
    - JS_ToCString
    - GF_JS_EXCEPTION
    - gf_free
    - gf_malloc
    - JS_SetOpaque
    - JS_FreeCString
    - GF_SAFEALLOC
    - strcmp
    - JS_IsException
    - JS_ToInt32
    - js_throw_err
    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:
    - gf_free
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - gf_sha1_starts
    - JS_GetOpaque
    - JS_GetArrayBuffer
    - gf_sha1_update
    - js_throw_err
    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_JS_EXCEPTION
    - gf_sha1_finish
    - JS_SetOpaque
    - JS_GetOpaque
    - JS_NewArrayBufferCopy
    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:
    - JS_NewObjectClass
    - gf_free
    - JS_SetOpaque
    - gf_sha1_starts
    - JS_IsException
    - js_throw_err
    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:
    - gf_fclose
    - JS_GetOpaque
    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:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - JS_NewBool
    - gf_feof
    - gf_ferror
    - gf_fileio_check
    - JS_GetOpaque
    - gf_ftell
    - gf_fsize
    - JS_NewInt32
    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_ToInt64
    - GF_JS_EXCEPTION
    - gf_fseek
    - JS_GetOpaque
    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:
    - gf_fflush
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - gf_fclose
    - JS_GetOpaque
    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_NewInt64
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - gf_fread
    - JS_GetArrayBuffer
    - JS_ToInt32
    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_JS_EXCEPTION
    - gf_fseek
    - JS_GetOpaque
    - JS_NewInt32
    - JS_ToInt64
    - JS_ToInt32
    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_JS_EXCEPTION
    - gf_free
    - JS_NewString
    - JS_GetOpaque
    - gf_dynstrcat
    - gf_fgets
    - strlen
    - js_throw_err
    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:
    - GF_JS_EXCEPTION
    - gf_fgetc
    - JS_NewString
    - JS_GetOpaque
    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_NewInt64
    - GF_JS_EXCEPTION
    - gf_fwrite
    - JS_GetOpaque
    - JS_GetArrayBuffer
    - JS_ToInt32
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetOpaque
    - JS_FreeCString
    - gf_fputs
    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:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_fputc
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_ToInt32
    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_NewObjectClass
    - JS_ToCString
    - gf_fclose
    - JS_SetOpaque
    - JS_FreeCString
    - gf_file_temp
    - gf_fopen_ex
    - JS_IsException
    - js_throw_err
    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_MarkValue
    - JS_GetOpaque
    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:
    - gf_fclose
    - JS_GetOpaque
    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:
    - GF_JS_EXCEPTION
    - JS_NewString
    - JS_GetOpaque
    - gf_fileio_resource_url
    - JS_DupValue
    - gf_fileio_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_list_count
    - gf_free
    - gf_list_del
    - JS_SetOpaque
    - JS_FreeValue
    - gf_fileio_del
    - gf_list_pop_back
    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_fileio_factory_delete
    - JS_GetOpaque
    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_NewInt64
    - JS_FreeValue
    - JS_Call
    - 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_NewArrayBuffer
    - JS_FreeValue
    - JS_Call
    - JS_ToInt32
    - gf_js_lock
    - 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_NewArrayBuffer
    - JS_FreeValue
    - JS_Call
    - JS_ToInt32
    - gf_js_lock
    - 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_FreeValue
    - JS_Call
    - 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_FreeValue
    - JS_Call
    - 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_list_count
    - gf_url_concatenate
    - JS_Call
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_list_add
    - gf_js_lock
    - JS_NewObjectClass
    - gf_fileio_translate_url
    - JS_FreeValue
    - gf_fileio_resource_url
    - gf_fileio_del
    - JS_IsException
    - gf_list_get
    - JS_ToBool
    - JS_IsBool
    - JS_NewString
    - strnicmp
    - strcmp
    - JS_ToInt32
    - gf_free
    - JS_IsUndefined
    - JS_SetOpaque
    - gf_list_del_item
    - js_fileio_factory_delete
    - gf_fileio_get_udta
    - gf_list_rem
    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:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - jsf_get_script_filename
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_IsString
    - JS_IsFunction
    - gf_url_concatenate
    - gf_fileio_new
    - JS_IsNull
    - GF_SAFEALLOC
    - JS_FreeCString
    - JS_DupValue
    - JS_IsException
    - gf_list_new
    - js_throw_err
    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_GetRuntime
    - gf_sys_get_arg
    - JS_NewCFunction2
    - countof
    - JS_NewString
    - JS_SetModuleExport
    - JS_NewArray
    - JS_NewClass
    - JS_NewClassID
    - gf_sys_get_argc
    - JS_SetPropertyUint32
    - DEF_CONST
    - JS_SetClassProto
    - JS_SetPropertyStr
    - JS_SetPropertyFunctionList
    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_NewCModule
    - JS_AddModuleExport
    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_init_module_std
    - JS_EnableBignumExt
    - JS_AddIntrinsicBigFloat
    - JS_AddIntrinsicBigDecimal
    - JS_AddIntrinsicOperators
    - 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_webgl
    - qjs_module_init_storage
    - qjs_module_init_qjs_libc
    - qjs_module_init_scenejs
    - qjs_module_init_xhr
    - qjs_module_init_gpaccore
    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_strdup
      Src: /src/gpac/src/jsmods/core.c:4539,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/core.c:4540,1
    - Dst: LoadLibrary
      Src: /src/gpac/src/jsmods/core.c:4548,1
    - Dst: dlopen
      Src: /src/gpac/src/jsmods/core.c:4550,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4554,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4557,1
    - Dst: GetProcAddress
      Src: /src/gpac/src/jsmods/core.c:4562,1
    - Dst: dlsym
      Src: /src/gpac/src/jsmods/core.c:4564,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4568,1
    - Dst: init
      Src: /src/gpac/src/jsmods/core.c:4570,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4572,1
    - Dst: FreeLibrary
      Src: /src/gpac/src/jsmods/core.c:4576,1
    - Dst: dlclose
      Src: /src/gpac/src/jsmods/core.c:4578,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 2
    argNames:
    - ctx
    - module_name
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4582
      start: 4529
    functionDepth: 1
    functionLinenumber: 4529
    functionLinenumberEnd: 4582
    functionName: qjs_module_loader_dyn_lib
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - dlopen
    - strchr
    - gf_free
    - FreeLibrary
    - LoadLibrary
    - dlsym
    - GetProcAddress
    - dlclose
    - init
    - gf_dynstrcat
    - gf_strdup
    - JS_ThrowReferenceError
    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:4592,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4594,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4594,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/core.c:4594,1
    - Dst: qjs_module_loader_dyn_lib
      Src: /src/gpac/src/jsmods/core.c:4596,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4598,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/jsmods/core.c:4607,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/core.c:4608,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/jsmods/core.c:4611,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/jsmods/core.c:4612,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/jsmods/core.c:4613,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/jsmods/core.c:4614,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4618,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/jsmods/core.c:4621,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/core.c:4621,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/jsmods/core.c:4625,1
    - Dst: js_module_test_json
      Src: /src/gpac/src/jsmods/core.c:4626,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/core.c:4627,1
    - Dst: JS_ParseJSON2
      Src: /src/gpac/src/jsmods/core.c:4635,1
    - Dst: js_free
      Src: /src/gpac/src/jsmods/core.c:4636,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:4637,1
    - Dst: create_json_module
      Src: /src/gpac/src/jsmods/core.c:4639,1
    - Dst: JS_Eval
      Src: /src/gpac/src/jsmods/core.c:4644,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/core.c:4645,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/core.c:4646,1
    - Dst: js_module_set_import_meta
      Src: /src/gpac/src/jsmods/core.c:4649,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/jsmods/core.c:4651,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4652,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: 4656
      start: 4589
    functionDepth: 4
    functionLinenumber: 4589
    functionLinenumberEnd: 4656
    functionName: qjs_module_loader
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - js_module_set_import_meta
    - gf_url_concatenate
    - JS_Eval
    - JS_FreeValue
    - JS_IsException
    - gf_file_ext_start
    - js_module_test_json
    - JS_VALUE_GET_PTR
    - gf_file_exists
    - qjs_module_loader_dyn_lib
    - strcmp
    - gf_error_to_string
    - gf_free
    - JS_ParseJSON2
    - jsf_get_script_filename
    - gf_file_load_data
    - create_json_module
    - stricmp
    - js_free
    - JS_ThrowReferenceError
    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:4662,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/core.c:4666,1
    - Dst: js_load_constants
      Src: /src/gpac/src/jsmods/core.c:4667,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/core.c:4668,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/jsmods/core.c:4671,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4673
      start: 4660
    functionDepth: 3
    functionLinenumber: 4660
    functionLinenumberEnd: 4673
    functionName: JS_NewWorkerContext
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_FreeValue
    - qjs_init_all_modules
    - JS_NewContext
    - js_load_constants
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_NewWorkerContext(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/core.c:4678,1
    - Dst: js_dump_error_exc
      Src: /src/gpac/src/jsmods/core.c:4679,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: 4681
      start: 4675
    functionDepth: 5
    functionLinenumber: 4675
    functionLinenumberEnd: 4681
    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:4686,1
    - Dst: JS_SetModuleLoaderFunc2
      Src: /src/gpac/src/jsmods/core.c:4690,1
    - Dst: js_std_set_worker_new_context_func
      Src: /src/gpac/src/jsmods/core.c:4694,1
    - Dst: js_std_init_handlers
      Src: /src/gpac/src/jsmods/core.c:4695,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/jsmods/core.c:4698,1
    - Dst: JS_SetHostPromiseRejectionTracker
      Src: /src/gpac/src/jsmods/core.c:4699,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/jsmods/core.c:4702,1
    - Dst: js_promise_rejection_tracker
      Src: /src/gpac/src/jsmods/core.c:4703,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4709
      start: 4684
    functionDepth: 6
    functionLinenumber: 4684
    functionLinenumberEnd: 4709
    functionName: qjs_init_runtime_libc
    functionSourceFile: /src/gpac/src/jsmods/core.c
    functionUses: 1
    functionsReached:
    - js_std_init_handlers
    - JS_SetModuleLoaderFunc2
    - gf_sys_is_cov_mode
    - JS_SetHostPromiseRejectionTracker
    - js_promise_rejection_tracker
    - gf_opts_get_bool
    - js_std_set_worker_new_context_func
    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:4713,1
    - Dst: js_std_free_handlers
      Src: /src/gpac/src/jsmods/core.c:4717,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4720
      start: 4711
    functionDepth: 6
    functionLinenumber: 4711
    functionLinenumberEnd: 4720
    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:
    - sprintf
    - gf_free
    - gf_malloc
    - stricmp
    - strlen
    - gf_strdup
    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:
    - gf_free
    - xml_http_del_data
    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:
    - JS_GetRuntime
    - gf_free
    - gf_xml_sax_del
    - gf_list_del
    - gf_dm_sess_abort
    - xml_http_reset_partial
    - gf_dm_sess_del
    - gf_node_unregister
    - gf_sg_del
    - gf_sg_js_dom_pre_destroy
    - dom_js_unload
    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_list_count
    - gf_free
    - dom_js_unload
    - xml_http_reset
    - JS_GetOpaque
    - JS_FreeValueRT
    - gf_dom_event_target_del
    - gf_sg_del
    - gf_list_get
    - gf_dom_listener_del
    linkageType: ''
    returnType: void
    signature: void xml_http_finalize(JSRuntime *rt, JSValue obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/jsmods/xhr.c:375,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:376,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:377,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:378,1
    - Dst: JS_GetAnyOpaque
      Src: /src/gpac/src/jsmods/xhr.c:379,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:380,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 382
    functionName: GF_SceneGraph *xml_get_scenegraph(JSContext *c)
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_GetGlobalObject
    - JS_IsUndefined
    - JS_FreeValue
    - JS_GetPropertyStr
    - 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:389,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:395,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: 398
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 398
    functionName: xhr_get_event_target
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 1
    functionsReached:
    - xml_get_scenegraph
    - JS_GetOpaque
    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:406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:408,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:409,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/xhr.c:411,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:416,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:419,1
    - Dst: dom_js_load
      Src: /src/gpac/src/jsmods/xhr.c:420,1
    - Dst: gf_dom_event_target_new
      Src: /src/gpac/src/jsmods/xhr.c:424,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/jsmods/xhr.c:436,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: 438
      start: 401
    functionDepth: 3
    functionLinenumber: 401
    functionLinenumberEnd: 438
    functionName: xml_http_constructor
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - gf_dom_event_target_new
    - GF_LOG
    - JS_SetOpaque
    - xml_get_scenegraph
    - GF_SAFEALLOC
    - gf_sg_new
    - dom_js_load
    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:447,1
    - Dst: gf_sg_fire_dom_event
      Src: /src/gpac/src/jsmods/xhr.c:451,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - evtType
    argTypes:
    - XMLHTTPContext*
    - GF_EventType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 440
    functionDepth: 6
    functionLinenumber: 440
    functionLinenumberEnd: 453
    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:458,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/xhr.c:459,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:460,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:461,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:462,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:463,1
    - Dst: js_std_loop
      Src: /src/gpac/src/jsmods/xhr.c:466,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:467,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/xhr.c:476,1
    - Dst: JS_GetContextOpaque
      Src: /src/gpac/src/jsmods/xhr.c:479,1
    - Dst: gf_js_vrml_flush_event_out
      Src: /src/gpac/src/jsmods/xhr.c:480,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 456
    functionDepth: 12
    functionLinenumber: 456
    functionLinenumberEnd: 482
    functionName: xml_http_state_change
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - js_dump_error
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_GetContextOpaque
    - JS_IsNull
    - JS_IsException
    - gf_js_vrml_flush_event_out
    - gf_js_lock
    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:492,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:493,1
    - Dst: xml_http_reset
      Src: /src/gpac/src/jsmods/xhr.c:496,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:498,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:500,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:500,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:502,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:502,1
    - Dst: xml_http_reset
      Src: /src/gpac/src/jsmods/xhr.c:504,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:505,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:506,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:506,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:506,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:507,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:507,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:507,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:508,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:509,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:512,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:513,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:516,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:522,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:526,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:527,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/jsmods/xhr.c:530,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/jsmods/xhr.c:533,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/jsmods/xhr.c:534,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:536,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:538,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/xhr.c:544,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_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:549,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:549,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:550,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:553,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:556,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:560,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:561,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:562,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:563,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 63
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 485
    functionDepth: 13
    functionLinenumber: 485
    functionLinenumberEnd: 566
    functionName: xml_http_open
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - jsf_get_script_filename
    - xml_http_state_change
    - xml_http_reset
    - xml_get_scenegraph
    - gf_url_concatenate
    - JS_GetOpaque
    - GF_SceneGraph*::script_action
    - xml_http_fire_event
    - JS_FreeCString
    - JS_IsFunction
    - JS_Call
    - strcmp
    - gf_strdup
    - strncmp
    - JS_CHECK_STRING
    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:571,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:572,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:574,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:575,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:576,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:576,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:577,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:577,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:579,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:580,1
    - Dst: xml_http_append_send_header
      Src: /src/gpac/src/jsmods/xhr.c:581,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:582,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:583,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 585
    functionName: xml_http_set_header
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetOpaque
    - JS_FreeCString
    - xml_http_append_send_header
    - JS_CHECK_STRING
    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:595,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:597,1
    - Dst: stricmp
      Src: /src/gpac/src/jsmods/xhr.c:601,1
    - Dst: gf_sg_get_max_node_id
      Src: /src/gpac/src/jsmods/xhr.c:602,1
    - Dst: gf_node_set_id
      Src: /src/gpac/src/jsmods/xhr.c:603,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/jsmods/xhr.c:606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:608,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:612,1
    - Dst: gf_svg_create_attribute_value
      Src: /src/gpac/src/jsmods/xhr.c:614,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:615,1
    - Dst: gf_list_last
      Src: /src/gpac/src/jsmods/xhr.c:621,1
    - Dst: gf_node_register
      Src: /src/gpac/src/jsmods/xhr.c:622,1
    - Dst: gf_node_list_add_child
      Src: /src/gpac/src/jsmods/xhr.c:624,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:626,1
    - Dst: gf_list_add
      Src: /src/gpac/src/jsmods/xhr.c:629,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: 630
      start: 589
    functionDepth: 4
    functionLinenumber: 589
    functionLinenumberEnd: 630
    functionName: xml_http_sax_start
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_node_list_add_child
    - gf_node_set_id
    - gf_list_last
    - GF_LOG
    - stricmp
    - gf_assert
    - gf_svg_create_attribute_value
    - gf_node_new
    - GF_SAFEALLOC
    - gf_node_register
    - gf_strdup
    - gf_sg_get_max_node_id
    - gf_list_add
    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:635,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:638,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/jsmods/xhr.c:639,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: 641
      start: 632
    functionDepth: 2
    functionLinenumber: 632
    functionLinenumberEnd: 641
    functionName: xml_http_sax_end
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_list_last
    - strcmp
    - 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:645,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/xhr.c:650,1
    - Dst: strchr
      Src: /src/gpac/src/jsmods/xhr.c:652,1
    - Dst: gf_dom_add_text_node
      Src: /src/gpac/src/jsmods/xhr.c:656,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:656,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - sax_cbck
    - content
    - is_cdata
    argTypes:
    - void*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 642
    functionDepth: 2
    functionLinenumber: 642
    functionLinenumberEnd: 659
    functionName: xml_http_sax_text
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - strchr
    - strlen
    - gf_strdup
    - gf_list_last
    - gf_dom_add_text_node
    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:666,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:672,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:673,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:674,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:675,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:676,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:677,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:677,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:678,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:680,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:681,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:682,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:682,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:683,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:685,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:686,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:687,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:687,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:688,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 2
    argNames:
    - ctx
    - error
    argTypes:
    - XMLHTTPContext*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 662
    functionDepth: 13
    functionLinenumber: 662
    functionLinenumberEnd: 690
    functionName: xml_http_terminate
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - xml_http_state_change
    - js_dump_error
    - gf_dm_sess_del
    - JS_IsFunction
    - JS_Call
    - xml_http_fire_event
    - JS_FreeValue
    - JS_IsException
    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:699,1
    - Dst: gf_sleep
      Src: /src/gpac/src/jsmods/xhr.c:703,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:708,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:713,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:714,1
    - Dst: xml_http_reset_partial
      Src: /src/gpac/src/jsmods/xhr.c:726,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:729,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:730,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:731,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:732,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:732,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:733,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:740,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/jsmods/xhr.c:746,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:747,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:748,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/xhr.c:749,1
    - Dst: strstr
      Src: /src/gpac/src/jsmods/xhr.c:750,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:752,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/jsmods/xhr.c:753,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/xhr.c:754,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:755,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:763,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:764,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:765,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:766,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:767,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:767,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:768,1
    - Dst: xml_http_state_change
      Src: /src/gpac/src/jsmods/xhr.c:791,1
    - Dst: gf_xml_sax_init
      Src: /src/gpac/src/jsmods/xhr.c:796,1
    - Dst: gf_xml_sax_parse
      Src: /src/gpac/src/jsmods/xhr.c:797,1
    - Dst: gf_xml_sax_del
      Src: /src/gpac/src/jsmods/xhr.c:799,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:806,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:807,1
    - Dst: gf_realloc
      Src: /src/gpac/src/jsmods/xhr.c:812,1
    - Dst: memcpy
      Src: /src/gpac/src/jsmods/xhr.c:813,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:818,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/jsmods/xhr.c:819,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/jsmods/xhr.c:823,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:824,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/jsmods/xhr.c:824,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:825,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/xhr.c:825,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:826,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/xhr.c:826,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:827,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/jsmods/xhr.c:827,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:829,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:830,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:833,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:834,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:835,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/jsmods/xhr.c:836,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/xhr.c:838,1
    - Dst: gf_dm_sess_set_max_rate
      Src: /src/gpac/src/jsmods/xhr.c:840,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:842,1
    - Dst: JS_DetachArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:844,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:860,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/xhr.c:860,1
    - Dst: xml_http_terminate
      Src: /src/gpac/src/jsmods/xhr.c:868,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/jsmods/xhr.c:873,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 158
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 692
    functionDepth: 14
    functionLinenumber: 692
    functionLinenumberEnd: 875
    functionName: xml_http_on_data
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - gf_xml_sax_init
    - xml_http_reset_partial
    - gf_assert
    - xml_http_terminate
    - JS_Call
    - gf_sg_new
    - JS_DetachArrayBuffer
    - gf_js_lock
    - strstr
    - gf_dm_sess_get_header
    - xml_http_state_change
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - xml_http_fire_event
    - JS_IsException
    - gf_realloc
    - memcpy
    - gf_xml_sax_parse
    - JS_NewArrayBuffer
    - gf_xml_sax_del
    - JS_NewObject
    - JS_IsNumber
    - gf_xml_sax_new
    - gf_list_new
    - JS_SetPropertyStr
    - JS_ToInt32
    - gf_error_to_string
    - JS_NewBool
    - gf_sleep
    - JS_IsUndefined
    - GF_LOG
    - gf_js_try_lock
    - gf_dm_sess_set_max_rate
    - gf_strdup
    - strncmp
    - gf_dm_sess_get_stats
    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:885,1
    - Dst: gf_fopen
      Src: /src/gpac/src/jsmods/xhr.c:885,1
    - Dst: strnicmp
      Src: /src/gpac/src/jsmods/xhr.c:887,1
    - Dst: gf_fopen
      Src: /src/gpac/src/jsmods/xhr.c:887,1
    - Dst: gf_fopen
      Src: /src/gpac/src/jsmods/xhr.c:889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:893,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:894,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:895,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:896,1
    - Dst: JS_IsException
      Src: /src/gpac/src/jsmods/xhr.c:897,1
    - Dst: js_dump_error
      Src: /src/gpac/src/jsmods/xhr.c:897,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:898,1
    - Dst: xml_http_on_data
      Src: /src/gpac/src/jsmods/xhr.c:905,1
    - Dst: gf_fsize
      Src: /src/gpac/src/jsmods/xhr.c:907,1
    - Dst: gf_malloc
      Src: /src/gpac/src/jsmods/xhr.c:911,1
    - Dst: gf_fread
      Src: /src/gpac/src/jsmods/xhr.c:912,1
    - Dst: gf_fclose
      Src: /src/gpac/src/jsmods/xhr.c:913,1
    - Dst: gf_assert
      Src: /src/gpac/src/jsmods/xhr.c:921,1
    - Dst: gf_xml_sax_new
      Src: /src/gpac/src/jsmods/xhr.c:922,1
    - Dst: gf_list_new
      Src: /src/gpac/src/jsmods/xhr.c:923,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:924,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/xhr.c:931,1
    - Dst: xml_http_on_data
      Src: /src/gpac/src/jsmods/xhr.c:936,1
    - Dst: memset
      Src: /src/gpac/src/jsmods/xhr.c:940,1
    - Dst: xml_http_on_data
      Src: /src/gpac/src/jsmods/xhr.c:942,1
    - Dst: xml_http_terminate
      Src: /src/gpac/src/jsmods/xhr.c:945,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 50
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 877
    functionDepth: 15
    functionLinenumber: 877
    functionLinenumberEnd: 948
    functionName: xml_http_process_local
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - JS_Call
    - gf_sg_new
    - xml_http_on_data
    - gf_malloc
    - gf_fopen
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - xml_http_fire_event
    - gf_fsize
    - JS_IsException
    - strnicmp
    - gf_xml_sax_new
    - gf_list_new
    - gf_fclose
    - GF_LOG
    - gf_fread
    - xml_http_terminate
    - memset
    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:961,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:962,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:964,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:965,1
    - Dst: xml_get_scenegraph
      Src: /src/gpac/src/jsmods/xhr.c:968,1
    - Dst: GF_SceneGraph*::script_action
      Src: /src/gpac/src/jsmods/xhr.c:972,1
    - Dst: jsf_get_download_manager
      Src: /src/gpac/src/jsmods/xhr.c:974,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:977,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/jsmods/xhr.c:981,1
    - Dst: JS_IsArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:982,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:984,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/jsmods/xhr.c:986,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:988,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:990,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:990,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:991,1
    - Dst: strlen
      Src: /src/gpac/src/jsmods/xhr.c:992,1
    - Dst: xml_http_del_data
      Src: /src/gpac/src/jsmods/xhr.c:997,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:998,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1001,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:1003,1
    - Dst: strncmp
      Src: /src/gpac/src/jsmods/xhr.c:1003,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1007,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/jsmods/xhr.c:1023,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/jsmods/xhr.c:1025,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/jsmods/xhr.c:1029,1
    - Dst: assert
      Src: /src/gpac/src/jsmods/xhr.c:1030,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/jsmods/xhr.c:1035,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1036,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/jsmods/xhr.c:1040,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:1042,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/xhr.c:1042,1
    - Dst: xml_http_terminate
      Src: /src/gpac/src/jsmods/xhr.c:1045,1
    - Dst: xml_http_process_local
      Src: /src/gpac/src/jsmods/xhr.c:1048,1
    - Dst: GF_LOG
      Src: /src/gpac/src/jsmods/xhr.c:1050,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/jsmods/xhr.c:1050,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: 1029
        line_start: 1029
        source_file: /src/gpac/src/jsmods/xhr.c
    constantsTouched: []
    func_position:
      end: 1055
      start: 954
    functionDepth: 16
    functionLinenumber: 954
    functionLinenumberEnd: 1055
    functionName: xml_http_send
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - xml_http_terminate
    - GF_SceneGraph*::script_action
    - JS_IsNull
    - JS_IsObject
    - JS_GetArrayBuffer
    - JS_ToCString
    - gf_dm_sess_new
    - xml_http_del_data
    - gf_dm_sess_process
    - JS_IsArrayBuffer
    - xml_get_scenegraph
    - gf_dm_sess_del
    - JS_FreeCString
    - jsf_get_download_manager
    - strlen
    - gf_error_to_string
    - GF_LOG
    - gf_dm_sess_setup_from_url
    - JS_CHECK_STRING
    - xml_http_process_local
    - JS_GetOpaque
    - gf_strdup
    - assert
    - strncmp
    - gf_dm_sess_get_stats
    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:1060,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1061,1
    - Dst: gf_dm_sess_abort
      Src: /src/gpac/src/jsmods/xhr.c:1067,1
    - Dst: xml_http_fire_event
      Src: /src/gpac/src/jsmods/xhr.c:1070,1
    - Dst: xml_http_reset
      Src: /src/gpac/src/jsmods/xhr.c:1071,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/jsmods/xhr.c:1072,1
    - Dst: JS_Call
      Src: /src/gpac/src/jsmods/xhr.c:1073,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1076
      start: 1057
    functionDepth: 7
    functionLinenumber: 1057
    functionLinenumberEnd: 1076
    functionName: xml_http_abort
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - xml_http_reset
    - gf_dm_sess_abort
    - JS_IsFunction
    - xml_http_fire_event
    - JS_GetOpaque
    - JS_Call
    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:1084,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1085,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1088,1
    - Dst: gf_dm_sess_enum_headers
      Src: /src/gpac/src/jsmods/xhr.c:1091,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/xhr.c:1093,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/xhr.c:1094,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/jsmods/xhr.c:1095,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1101,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:1102,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1104
      start: 1078
    functionDepth: 1
    functionLinenumber: 1078
    functionLinenumberEnd: 1104
    functionName: xml_http_get_all_headers
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_free
    - JS_NewString
    - JS_GetOpaque
    - gf_dm_sess_enum_headers
    - 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:1109,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1110,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:1112,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1112,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1114,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1115,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/jsmods/xhr.c:1116,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1117,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1120,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1106
    functionDepth: 1
    functionLinenumber: 1106
    functionLinenumberEnd: 1122
    functionName: xml_http_get_header
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_dm_sess_get_header
    - JS_ToCString
    - JS_NewString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_CHECK_STRING
    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:1128,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/jsmods/xhr.c:1129,1
    - Dst: gf_sg_init_from_xml_node
      Src: /src/gpac/src/jsmods/xhr.c:1131,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/jsmods/xhr.c:1131,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/jsmods/xhr.c:1133,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - XMLHTTPContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1125
    functionDepth: 10
    functionLinenumber: 1125
    functionLinenumberEnd: 1135
    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_del
    - gf_sg_init_from_xml_node
    - gf_xml_dom_new
    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:1142,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1143,1
    - Dst: JS_CHECK_STRING
      Src: /src/gpac/src/jsmods/xhr.c:1145,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1145,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1146,1
    - Dst: gf_free
      Src: /src/gpac/src/jsmods/xhr.c:1147,1
    - Dst: gf_strdup
      Src: /src/gpac/src/jsmods/xhr.c:1148,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 4
    argNames:
    - c
    - obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1151
      start: 1139
    functionDepth: 1
    functionLinenumber: 1139
    functionLinenumberEnd: 1151
    functionName: xml_http_overrideMimeType
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_GetOpaque
    - JS_FreeCString
    - gf_strdup
    - JS_CHECK_STRING
    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:1157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - opaque
    - ptr
    argTypes:
    - JSRuntime*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1153
    functionDepth: 0
    functionLinenumber: 1153
    functionLinenumberEnd: 1158
    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:1162,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1163,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_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1171,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1172,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1173,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1174,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1178,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:1188,1
    - Dst: xml_http_load_dom
      Src: /src/gpac/src/jsmods/xhr.c:1191,1
    - Dst: dom_js_load
      Src: /src/gpac/src/jsmods/xhr.c:1194,1
    - Dst: dom_document_construct_external
      Src: /src/gpac/src/jsmods/xhr.c:1197,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/xhr.c:1202,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1213,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:1216,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/jsmods/xhr.c:1217,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/jsmods/xhr.c:1219,1
    - Dst: gf_sg_new
      Src: /src/gpac/src/jsmods/xhr.c:1225,1
    - Dst: xml_http_load_dom
      Src: /src/gpac/src/jsmods/xhr.c:1228,1
    - Dst: dom_js_load
      Src: /src/gpac/src/jsmods/xhr.c:1231,1
    - Dst: dom_document_construct_external
      Src: /src/gpac/src/jsmods/xhr.c:1234,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/jsmods/xhr.c:1238,1
    - Dst: JS_ParseJSON
      Src: /src/gpac/src/jsmods/xhr.c:1241,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1243,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1252,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1256,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1260,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1265,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_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1273,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1274,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1275,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1279,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1281,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1283,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1285,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1287,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1290,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1291,1
    - Dst: JS_NewString
      Src: /src/gpac/src/jsmods/xhr.c:1292,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 142
    argCount: 3
    argNames:
    - c
    - obj
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1299
      start: 1160
    functionDepth: 11
    functionLinenumber: 1160
    functionLinenumberEnd: 1299
    functionName: xml_http_getProperty
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - xml_http_load_dom
    - GF_JS_EXCEPTION
    - JS_NewArrayBuffer
    - JS_NewString
    - JS_IsUndefined
    - dom_document_construct_external
    - JS_ParseJSON
    - JS_GetOpaque
    - gf_sg_new
    - dom_js_load
    - JS_DupValue
    - JS_NewInt32
    - js_throw_err_msg
    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:1303,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1304,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: SET_CBK
      Src: /src/gpac/src/jsmods/xhr.c:1337,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/jsmods/xhr.c:1340,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1340,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/jsmods/xhr.c:1344,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1348,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1349,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1351,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1353,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1355,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1357,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1359,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1361,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1363,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1366,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/jsmods/xhr.c:1371,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/jsmods/xhr.c:1372,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1373,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1375,1
    - Dst: strcmp
      Src: /src/gpac/src/jsmods/xhr.c:1377,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/jsmods/xhr.c:1380,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 74
    argCount: 4
    argNames:
    - c
    - obj
    - value
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1388
      start: 1301
    functionDepth: 1
    functionLinenumber: 1301
    functionLinenumberEnd: 1388
    functionName: xml_http_setProperty
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_ToCString
    - SET_CBK
    - JS_GetOpaque
    - JS_FreeCString
    - strcmp
    - JS_ToInt32
    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: 1314
      start: 1306
    functionDepth: 0
    functionLinenumber: 1306
    functionLinenumberEnd: 1314
    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:1426,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_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1434,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1435,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1436,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/jsmods/xhr.c:1438,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/jsmods/xhr.c:1439,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1424
    functionDepth: 1
    functionLinenumber: 1424
    functionLinenumberEnd: 1440
    functionName: xml_http_gc_mark
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_IsUndefined
    - JS_GetOpaque
    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:1445,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/jsmods/xhr.c:1449,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/jsmods/xhr.c:1449,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/jsmods/xhr.c:1451,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/jsmods/xhr.c:1452,1
    - Dst: countof
      Src: /src/gpac/src/jsmods/xhr.c:1452,1
    - Dst: JS_SetClassProto
      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_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1456,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1456,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1457,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1457,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1458,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/jsmods/xhr.c:1458,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/jsmods/xhr.c:1460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1461
      start: 1442
    functionDepth: 1
    functionLinenumber: 1442
    functionLinenumberEnd: 1461
    functionName: xhr_load_class
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetRuntime
    - JS_NewCFunction2
    - countof
    - JS_NewInt32
    - JS_NewClass
    - JS_NewClassID
    - JS_SetClassProto
    - JS_SetPropertyStr
    - JS_SetPropertyFunctionList
    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:1466,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/jsmods/xhr.c:1467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - global
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1463
    functionDepth: 2
    functionLinenumber: 1463
    functionLinenumberEnd: 1469
    functionName: qjs_module_init_xhr_global
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 2
    functionsReached:
    - xhr_load_class
    - JS_SetPropertyStr
    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:1473,1
    - Dst: xhr_load_class
      Src: /src/gpac/src/jsmods/xhr.c:1474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/jsmods/xhr.c:1475,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/jsmods/xhr.c:1476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - c
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1478
      start: 1471
    functionDepth: 2
    functionLinenumber: 1471
    functionLinenumberEnd: 1478
    functionName: js_xhr_load_module
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 0
    functionsReached:
    - xhr_load_class
    - JS_SetModuleExport
    - JS_GetGlobalObject
    - JS_FreeValue
    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:1482,1
    - Dst: JS_AddModuleExport
      Src: /src/gpac/src/jsmods/xhr.c:1485,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/jsmods/xhr.c:1488,1
    - Dst: qjs_module_init_xhr_global
      Src: /src/gpac/src/jsmods/xhr.c:1489,1
    - Dst: xhr_get_event_target
      Src: /src/gpac/src/jsmods/xhr.c:1491,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1496
      start: 1479
    functionDepth: 3
    functionLinenumber: 1479
    functionLinenumberEnd: 1496
    functionName: qjs_module_init_xhr
    functionSourceFile: /src/gpac/src/jsmods/xhr.c
    functionUses: 1
    functionsReached:
    - gf_sys_is_cov_mode
    - qjs_module_init_xhr_global
    - JS_NewCModule
    - xhr_get_event_target
    - JS_AddModuleExport
    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: 1502
      start: 1500
    functionDepth: 0
    functionLinenumber: 1500
    functionLinenumberEnd: 1502
    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:
    - glAttachShader
    - js_throw_err
    - WGL_GET_GLID
    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_U32
    - WGL_GET_STRING
    - WGL_GET_GLID
    - JS_FreeCString
    - glBindAttribLocation
    - js_throw_err
    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:
    - WGL_GET_U32
    - js_throw_err
    - glBindBuffer
    - WGL_GET_GLID
    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_U32
    - glBindRenderbuffer
    - js_throw_err
    - WGL_GET_GLID
    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:
    - glBlendColor
    - WGL_GET_FLOAT_CLAMP
    - 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:
    - WGL_GET_U32
    - js_throw_err
    - glBlendEquation
    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:
    - WGL_GET_U32
    - js_throw_err
    - glBlendEquationSeparate
    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:
    - glBlendFunc
    - WGL_GET_U32
    - js_throw_err
    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:
    - WGL_GET_U32
    - js_throw_err
    - glBlendFuncSeparate
    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:
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - glBufferData
    - JS_IsObject
    - js_throw_err
    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:
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - JS_IsObject
    - glBufferSubData
    - js_throw_err
    - 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:
    - WGL_GET_U32
    - glCheckFramebufferStatus
    - js_throw_err
    - JS_NewInt32
    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:
    - WGL_GET_U32
    - js_throw_err
    - 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
    - js_throw_err
    - glClearColor
    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:
    - glClearStencil
    - js_throw_err
    - WGL_GET_S32
    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:
    - WGL_GET_BOOL
    - js_throw_err
    - glColorMask
    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:
    - glCompileShader
    - js_throw_err
    - WGL_GET_GLID
    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:
    - WGL_GET_U32
    - wgl_GetArrayBuffer
    - glCompressedTexImage2D
    - WGL_GET_S32
    - JS_IsArray
    - js_throw_err
    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:
    - WGL_GET_U32
    - glCompressedTexSubImage2D
    - wgl_GetArrayBuffer
    - WGL_GET_S32
    - JS_IsArray
    - js_throw_err
    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_U32
    - js_throw_err
    - glCopyTexImage2D
    - WGL_GET_S32
    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:
    - WGL_GET_U32
    - glCopyTexSubImage2D
    - js_throw_err
    - WGL_GET_S32
    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_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_list_add
    - js_throw_err
    - glGenBuffers
    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_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - glGenFramebuffers
    - JS_DupValue
    - gf_list_add
    - js_throw_err
    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_SetOpaque
    - JS_GetOpaque
    - glCreateProgram
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_list_add
    - js_throw_err
    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_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - glGenRenderbuffers
    - gf_list_add
    - js_throw_err
    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
    - WGL_GET_U32
    - JS_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - glCreateShader
    - gf_list_add
    - js_throw_err
    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:
    - WGL_GET_U32
    - glCullFace
    - js_throw_err
    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
    - glDeleteBuffers
    - JS_SetOpaque
    - WGL_GET_GLID
    - JS_FreeValue
    - gf_list_del_item
    - JS_GetOpaque
    - js_throw_err
    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_SetOpaque
    - WGL_GET_GLID
    - JS_FreeValue
    - gf_list_del_item
    - JS_GetOpaque
    - glDeleteFramebuffers
    - js_throw_err
    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_SetOpaque
    - WGL_GET_GLID
    - JS_FreeValue
    - gf_list_del_item
    - JS_GetOpaque
    - js_throw_err
    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
    - JS_SetOpaque
    - WGL_GET_GLID
    - JS_FreeValue
    - gf_list_del_item
    - JS_GetOpaque
    - glDeleteRenderbuffers
    - js_throw_err
    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
    - JS_SetOpaque
    - WGL_GET_GLID
    - JS_FreeValue
    - glDeleteShader
    - JS_GetOpaque
    - gf_list_del_item
    - js_throw_err
    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_SetOpaque
    - glDeleteTextures
    - WGL_GET_GLID
    - JS_FreeValue
    - gf_list_del_item
    - JS_GetOpaque
    - js_throw_err
    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:
    - WGL_GET_U32
    - js_throw_err
    - glDepthFunc
    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:
    - WGL_GET_BOOL
    - glDepthMask
    - 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
    - js_throw_err
    - WGL_GET_GLID
    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:
    - WGL_GET_U32
    - js_throw_err
    - 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:
    - WGL_GET_U32
    - js_throw_err
    - glDisableVertexAttribArray
    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_U32
    - js_throw_err
    - WGL_GET_S32
    - glDrawArrays
    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:
    - WGL_GET_U32
    - glDrawElements
    - js_throw_err
    - 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:
    - WGL_GET_U32
    - js_throw_err
    - 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:
    - WGL_GET_U32
    - js_throw_err
    - 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:
    - glFramebufferRenderbuffer
    - WGL_GET_U32
    - js_throw_err
    - WGL_GET_GLID
    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:
    - WGL_GET_U32
    - WGL_GET_GLID
    - WGL_GET_S32
    - glFramebufferTexture2D
    - js_throw_err
    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:
    - WGL_GET_U32
    - js_throw_err
    - 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:
    - WGL_GET_U32
    - js_throw_err
    - glGenerateMipmap
    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_U32
    - js_throw_err
    - WGL_GET_GLID
    - webgl_getActiveAttrib
    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_U32
    - js_throw_err
    - webgl_getActiveUniform
    - WGL_GET_GLID
    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_throw_err
    - webgl_getAttachedShaders
    - WGL_GET_GLID
    - JS_GetOpaque
    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
    - glGetAttribLocation
    - WGL_GET_GLID
    - JS_FreeCString
    - JS_NewInt32
    - js_throw_err
    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:
    - glGetError
    - JS_NewInt32
    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:
    - WGL_GET_U32
    - glHint
    - js_throw_err
    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:
    - glIsBuffer
    - JS_NewBool
    - js_throw_err
    - WGL_GET_GLID
    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
    - WGL_GET_U32
    - js_throw_err
    - 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:
    - JS_NewBool
    - glIsFramebuffer
    - js_throw_err
    - WGL_GET_GLID
    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:
    - glIsProgram
    - JS_NewBool
    - js_throw_err
    - WGL_GET_GLID
    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:
    - JS_NewBool
    - glIsRenderbuffer
    - js_throw_err
    - WGL_GET_GLID
    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:
    - JS_NewBool
    - js_throw_err
    - glIsShader
    - WGL_GET_GLID
    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:
    - JS_NewBool
    - glIsTexture
    - js_throw_err
    - WGL_GET_GLID
    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:
    - glLineWidth
    - js_throw_err
    - WGL_GET_FLOAT
    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:
    - glLinkProgram
    - js_throw_err
    - WGL_GET_GLID
    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:
    - js_throw_err
    - WGL_GET_FLOAT
    - glPolygonOffset
    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:
    - glRenderbufferStorage
    - WGL_GET_U32
    - js_throw_err
    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_BOOL
    - WGL_GET_FLOAT_CLAMP
    - js_throw_err
    - glSampleCoverage
    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_U32
    - glScissor
    - js_throw_err
    - WGL_GET_S32
    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_U32
    - glStencilFunc
    - js_throw_err
    - WGL_GET_S32
    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:
    - WGL_GET_U32
    - glStencilFuncSeparate
    - js_throw_err
    - WGL_GET_S32
    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:
    - WGL_GET_U32
    - glStencilMask
    - js_throw_err
    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:
    - WGL_GET_U32
    - glStencilMaskSeparate
    - js_throw_err
    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:
    - WGL_GET_U32
    - glStencilOp
    - js_throw_err
    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:
    - WGL_GET_U32
    - js_throw_err
    - glStencilOpSeparate
    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_U32
    - js_throw_err
    - WGL_GET_FLOAT
    - glTexParameterf
    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:
    - WGL_GET_U32
    - js_throw_err
    - glTexParameteri
    - WGL_GET_S32
    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:
    - js_throw_err
    - WGL_GET_FLOAT
    - WGL_GET_GLID
    - 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_GET_GLID
    - glUniform1fv
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    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:
    - WGL_GET_S32
    - js_throw_err
    - WGL_GET_GLID
    - glUniform1i
    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
    - WGL_GET_GLID
    - WGL_LOAD_INT32_VEC
    - glUniform1iv
    - js_throw_err
    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:
    - glUniform2f
    - js_throw_err
    - WGL_GET_FLOAT
    - WGL_GET_GLID
    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
    - glUniform2fv
    - WGL_GET_GLID
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    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_S32
    - glUniform2i
    - js_throw_err
    - WGL_GET_GLID
    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
    - WGL_GET_GLID
    - WGL_LOAD_INT32_VEC
    - js_throw_err
    - glUniform2iv
    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:
    - js_throw_err
    - WGL_GET_FLOAT
    - WGL_GET_GLID
    - glUniform3f
    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_GET_GLID
    - glUniform3fv
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    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_S32
    - js_throw_err
    - WGL_GET_GLID
    - glUniform3i
    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
    - glUniform3iv
    - WGL_GET_GLID
    - WGL_LOAD_INT32_VEC
    - js_throw_err
    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:
    - glUniform4f
    - js_throw_err
    - WGL_GET_FLOAT
    - WGL_GET_GLID
    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
    - glUniform4fv
    - WGL_GET_GLID
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    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_S32
    - js_throw_err
    - glUniform4i
    - WGL_GET_GLID
    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
    - glUniform4iv
    - WGL_GET_GLID
    - WGL_LOAD_INT32_VEC
    - js_throw_err
    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:
    - WGL_GET_BOOL
    - glUniformMatrix2fv
    - gf_free
    - WGL_GET_GLID
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    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:
    - WGL_GET_BOOL
    - gf_free
    - WGL_GET_GLID
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glUniformMatrix3fv
    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:
    - WGL_GET_BOOL
    - gf_free
    - glUniformMatrix4fv
    - WGL_GET_GLID
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    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:
    - glValidateProgram
    - js_throw_err
    - WGL_GET_GLID
    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:
    - WGL_GET_U32
    - glVertexAttrib1f
    - js_throw_err
    - WGL_GET_FLOAT
    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:
    - WGL_GET_U32
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glVertexAttrib1fv
    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:
    - WGL_GET_U32
    - js_throw_err
    - WGL_GET_FLOAT
    - glVertexAttrib2f
    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:
    - WGL_GET_U32
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glVertexAttrib2fv
    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:
    - WGL_GET_U32
    - glVertexAttrib3f
    - js_throw_err
    - WGL_GET_FLOAT
    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_GET_U32
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - 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_U32
    - glVertexAttrib4f
    - js_throw_err
    - WGL_GET_FLOAT
    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:
    - WGL_GET_U32
    - WGL_LOAD_FLOAT_VEC
    - js_throw_err
    - glVertexAttrib4fv
    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:
    - WGL_GET_BOOL
    - WGL_GET_U32
    - WGL_GET_S32
    - glVertexAttribPointer
    - js_throw_err
    - 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_U32
    - glViewport
    - js_throw_err
    - WGL_GET_S32
    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_count
    - gf_odf_desc_del
    - rtpin_stream_del
    - gf_filter_pid_remove
    - rtpin_rtsp_del
    - gf_list_get
    - 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:
    - strstr
    - strnicmp
    linkageType: ''
    returnType: GF_FilterProbeScore
    signature: GF_FilterProbeScore rtpin_probe_url(const char *url, const char *mime)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_strlcpy
      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: gf_strlcpy
      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:
    - strchr
    - GF_ARRAY_LENGTH
    - GF_LOG
    - stricmp
    - MIN
    - strrchr
    - strlen
    - strstr
    - gf_strlcpy
    linkageType: ''
    returnType: void
    signature: void rtpin_satip_get_server_ip(const char *sURL, char Server[GF_MAX_PATH])
  - 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
    - gf_filter_get_udta
    - rtpin_reset
    - GF_LOG
    - gf_crc_32
    - gf_filter_pid_set_framing_mode
    - strlen
    - gf_filter_pid_check_caps
    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_count
    - rtpin_stream_init
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_rtp_stop
    - gf_sk_group_unregister
    - gf_list_get
    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
    - gf_base64_decode
    - gf_filter_pck_set_sap
    - strlen
    - memcpy
    - strstr
    - 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:
    - rtpin_stream_ack_connect
    - memset
    - rtpin_stream_setup
    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_rtsp_usercom_send
    - gf_list_count
    - rtpin_check_setup
    - gf_rtp_read_flush
    - gf_rtp_switch_quality
    - gf_filter_get_udta
    - rtpin_stream_init
    - GF_LOG
    - rtpin_find_stream
    - gf_rtp_set_info_rtp
    - rtpin_stream_on_rtp_pck
    - gf_list_pop_front
    - rtpin_rtsp_process_commands
    - rtpin_stream_reset_queue
    - gf_sk_group_unregister
    - gf_rtp_depacketizer_reset
    - gf_sk_group_register
    - gf_filter_pck_send
    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
    - gf_rtsp_command_del
    - rtpin_rtsp_process_commands
    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:
    - gf_dm_ssl_init
    - gf_rtsp_session_del
    - gf_list_count
    - gf_filter_pid_set_eos
    - gf_rtsp_get_password
    - gf_rtsp_set_buffer_size
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_rtsp_use_tls
    - gf_rtp_reset_ssrc
    - rtpin_rtsp_flush
    - rtpin_stream_read
    - gf_rtp_flush_rtp
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_filter_post_process_task
    - gf_filter_pck_get_data
    - gf_rtsp_check_connection
    - gf_dynstrcat
    - gf_list_get
    - gf_filter_pck_send
    - rtpin_rtsp_usercom_send
    - gf_sk_group_select
    - rtpin_check_setup
    - gf_rtsp_get_user
    - gf_filter_get_num_events_queued
    - gf_list_enum
    - rtpin_rtsp_teardown
    - gf_sys_clock
    - gf_rtsp_get_server_name
    - gf_list_new
    - gf_rtsp_set_ssl_ctx
    - rtpin_rtsp_describe_send
    - rtpin_load_sdp
    - rtpin_rtsp_process_commands
    - gf_filter_setup_failure
    - gf_list_del
    - rtpin_stream_on_rtp_pck
    - gf_filter_ask_rt_reschedule
    - gf_user_credentials_register
    - gf_rtsp_session_reset
    - gf_rtsp_session_needs_ssl
    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_dm_ssl_init
    - gf_filter_prevent_blocking
    - gf_rtsp_get_session_port
    - gf_filter_disable_inputs
    - strchr
    - gf_malloc
    - gf_filter_get_udta
    - rtpin_stream_new_standalone
    - gf_filter_get_download_manager
    - gf_rtsp_get_user
    - atoi
    - rtpin_satip_get_server_ip
    - strnicmp
    - gf_sk_group_new
    - rtpin_add_stream
    - strrchr
    - gf_list_new
    - gf_rtsp_set_ssl_ctx
    - gf_error_to_string
    - rtpin_rtsp_describe_send
    - gf_free
    - rtpin_stream_init
    - GF_LOG
    - stricmp
    - rtpin_rtsp_new
    - gf_sys_is_cov_mode
    - gf_rtsp_session_needs_ssl
    - gf_strdup
    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
    - gf_filter_get_udta
    - rtpin_reset
    - GF_LOG
    - gf_list_del
    - rtpin_rtsp_teardown
    - rtpin_rtsp_flush
    - gf_sk_group_del
    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_filter_pid_get_property
    - gf_odf_vvc_cfg_read
    - gf_filter_pid_set_eos
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_list_add
    - gf_odf_vvc_cfg_del
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - TILEAGG_CFG_ERR
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property_str
    - gf_filter_pid_set_property_str
    - gf_free
    - gf_list_del_item
    - gf_filter_pid_set_property
    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_discard
    - gf_filter_get_ipid_count
    - gf_filter_pid_set_eos
    - gf_filter_get_ipid
    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_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_list_get
    - memcpy
    - gf_filter_pck_send
    - gf_filter_connections_pending
    - gf_sys_clock
    - gf_filter_pid_get_name
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_filter_pid_is_eos
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - tileagg_set_eos
    - gf_filter_pck_truncate
    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_filter_get_udta
    - gf_bs_new
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    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_filter_pid_get_buffer_occupancy
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_get_ipid_count
    - gf_filter_get_ipid
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_feof
    - gf_fclose
    - gf_fileio_is_main_thread
    - gf_fgetc
    - gf_fseek
    - strnicmp
    - gf_filter_pid_set_property
    - gf_ftell
    - PROP_FRAC64
    - PROP_BOOL
    - gf_fread
    - gf_fopen_ex
    - gf_realloc
    - strncmp
    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
    - PROP_UINT
    - amrdmx_check_dur
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void amrdmx_check_pid(GF_Filter *filter, GF_AMRDmxCtx *ctx, u16 amr_mode_set)
  - BBCount: 13
    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:292,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_amr.c:315,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_amr.c:319,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 275
    functionDepth: 7
    functionLinenumber: 275
    functionLinenumberEnd: 338
    functionName: amrdmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - amrdmx_check_dur
    - 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: 350
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 350
    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: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_amr.c:354,1
    - Dst: amrdmx_check_dur
      Src: /src/gpac/src/filters/reframe_amr.c:362,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_amr.c:367,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_amr.c:369,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_amr.c:371,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_amr.c:372,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_amr.c:378,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_amr.c:380,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_amr.c:383,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_amr.c:398,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_amr.c:400,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_amr.c:402,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_amr.c:403,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_amr.c:404,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_amr.c:406,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_amr.c:408,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_amr.c:412,1
    - Dst: amrdmx_update_cts
      Src: /src/gpac/src/filters/reframe_amr.c:415,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_amr.c:422,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:428,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:432,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:436,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:440,1
    - Dst: MIN
      Src: /src/gpac/src/filters/reframe_amr.c:446,1
    - Dst: MIN
      Src: /src/gpac/src/filters/reframe_amr.c:447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_amr.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_amr.c:496,1
    - Dst: amrdmx_check_pid
      Src: /src/gpac/src/filters/reframe_amr.c:502,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_amr.c:519,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_amr.c:522,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_amr.c:524,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_amr.c:525,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_amr.c:527,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_amr.c:527,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_amr.c:529,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_amr.c:532,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_amr.c:537,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_amr.c:540,1
    - Dst: amrdmx_update_cts
      Src: /src/gpac/src/filters/reframe_amr.c:547,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_amr.c:551,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_amr.c:556,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 159
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 352
    functionDepth: 8
    functionLinenumber: 352
    functionLinenumberEnd: 559
    functionName: amrdmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_amr.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - gf_assert
    - amrdmx_update_cts
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - strnicmp
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - amrdmx_check_pid
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - GF_LOG
    - amrdmx_check_dur
    - MIN
    - gf_filter_pck_set_byte_offset
    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:563,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: 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:570,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_amr.c:571,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 572
    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:576,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:580,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:584,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_amr.c:588,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 593
    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: 609
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 609
    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: 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: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 638
    functionDepth: 0
    functionLinenumber: 638
    functionLinenumberEnd: 641
    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_filter_pid_get_property
    - gf_list_count
    - gf_rtp_streamer_append_sdp_extended
    - gf_free
    - gf_rtp_streamer_get_payload_type
    - gf_gpac_version
    - gf_file_basename
    - gf_list_find
    - gf_net_is_ipv6
    - gf_filter_pid_orig_src_args
    - gf_filter_pid_get_source_filter_name
    - gf_file_temp
    - gf_net_get_ntp_ts
    - gf_list_get
    - gf_fprintf
    - gf_gpac_copyright
    - gf_sys_is_test_mode
    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: gf_strcpy
      Src: /src/gpac/src/filters/out_rtp.c:285,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_rtp.c:286,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_rtp.c:287,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_rtp.c:288,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - string
    - pattern
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 292
    functionName: check_mime_ext
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - strstr
    - strlwr
    - strlen
    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:310,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:313,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:320,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:326,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/out_rtp.c:326,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:331,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:334,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:343,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_rtp.c:349,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:360,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:371,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:373,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:380,1
    - Dst: check_mime_ext
      Src: /src/gpac/src/filters/out_rtp.c:381,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:384,1
    - Dst: check_mime_ext
      Src: /src/gpac/src/filters/out_rtp.c:385,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/out_rtp.c:396,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:399,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:401,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:403,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:405,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:407,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:411,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:413,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:415,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/out_rtp.c:424,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:430,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/out_rtp.c:445,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/out_rtp.c:452,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:461,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:466,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_rtp.c:469,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_rtp.c:474,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_rtp.c:479,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/out_rtp.c:484,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/out_rtp.c:486,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/out_rtp.c:488,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:490,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:491,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:508,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:528,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:531,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:537,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:541,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:543,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:547,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_rtp.c:557,1
    - Dst: gf_rtp_streamer_new_ex
      Src: /src/gpac/src/filters/out_rtp.c:586,1
    - Dst: gf_rtp_streamer_get_codecid
      Src: /src/gpac/src/filters/out_rtp.c:588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:592,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_rtp.c:592,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:596,1
    - Dst: gf_rtp_streamer_get_timescale
      Src: /src/gpac/src/filters/out_rtp.c:599,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:611,1
    - Dst: gf_rtp_streamer_disable_auto_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:614,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtp.c:617,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:619,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: 621
      start: 294
    functionDepth: 3
    functionLinenumber: 294
    functionLinenumberEnd: 621
    functionName: rtpout_init_streamer
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_rtp_streamer_new_ex
    - gf_filter_pid_set_framing_mode
    - gf_odf_vvc_cfg_read
    - GF_FEVT_INIT
    - gf_rtp_streamer_get_codecid
    - gf_filter_pid_send_event
    - gf_odf_vvc_cfg_del
    - gf_odf_hevc_cfg_del
    - gf_crc_32
    - gf_timestamp_rescale
    - gf_odf_hevc_cfg_read
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_list_insert
    - gf_filter_pid_get_name
    - gf_odf_avc_cfg_del
    - check_mime_ext
    - gf_rtp_streamer_disable_auto_rtcp
    - gf_rtp_streamer_get_timescale
    - GF_LOG
    - memset
    - gf_4cc_to_str
    - 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:635,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_rtp.c:638,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/out_rtp.c:639,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_rtp.c:641,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/out_rtp.c:642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:644,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/out_rtp.c:645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:650,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/out_rtp.c:652,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/out_rtp.c:653,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_rtp.c:659,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_RTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 623
    functionDepth: 7
    functionLinenumber: 623
    functionLinenumberEnd: 661
    functionName: rtpout_setup_sdp
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_filter_pck_new_alloc
    - gf_fclose
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_fseek
    - gf_ftell
    - gf_fread
    - rtpout_create_sdp
    - gf_filter_pck_send
    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:665,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:667,1
    - Dst: rtpout_check_next_port
      Src: /src/gpac/src/filters/out_rtp.c:669,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - first_port
    argTypes:
    - GF_RTPOutCtx*
    - u16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 663
    functionDepth: 1
    functionLinenumber: 663
    functionLinenumberEnd: 673
    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:677,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_rtp.c:678,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:680,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:682,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/out_rtp.c:684,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtp.c:685,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - st
    argTypes:
    - GF_RTPOutStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 675
    functionDepth: 3
    functionLinenumber: 675
    functionLinenumberEnd: 686
    functionName: rtpout_del_stream
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_rtp_streamer_del
    - gf_free
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_drop_packet
    - gf_odf_avc_cfg_del
    - gf_odf_vvc_cfg_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:690,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:697,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtp.c:700,1
    - Dst: rtpout_del_stream
      Src: /src/gpac/src/filters/out_rtp.c:701,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:703,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/out_rtp.c:704,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_rtp.c:709,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:711,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_rtp.c:722,1
    - Dst: rtpout_del_stream
      Src: /src/gpac/src/filters/out_rtp.c:723,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:725,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_rtp.c:732,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_rtp.c:734,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/out_rtp.c:738,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_rtp.c:741,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:742,1
    - Dst: rtpout_check_next_port
      Src: /src/gpac/src/filters/out_rtp.c:745,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/out_rtp.c:749,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/out_rtp.c:751,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/out_rtp.c:752,1
    - Dst: PROP_UINT
      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: 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: PROP_STRING
      Src: /src/gpac/src/filters/out_rtp.c:755,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/out_rtp.c:756,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/out_rtp.c:763,1
    - Dst: rtpout_init_streamer
      Src: /src/gpac/src/filters/out_rtp.c:766,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_rtp.c:766,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:774,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:777,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_rtp.c:777,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: 781
      start: 688
    functionDepth: 4
    functionLinenumber: 688
    functionLinenumberEnd: 781
    functionName: rtpout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_get_netcap_id
    - gf_filter_pid_set_eos
    - rtpout_check_next_port
    - gf_filter_pid_set_name
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_list_find
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_name
    - PROP_STRING
    - rtpout_init_streamer
    - gf_filter_pid_init_play_event
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_UINT
    - rtpout_del_stream
    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:785,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_rtp.c:791,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_rtp.c:795,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_rtp.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_rtp.c:799,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_rtp.c:800,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_rtp.c:808,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_rtp.c:813,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_rtp.c:816,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_rtp.c:817,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_rtp.c:819,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_rtp.c:823,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_rtp.c:826,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/out_rtp.c:827,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 783
    functionDepth: 1
    functionLinenumber: 783
    functionLinenumberEnd: 830
    functionName: rtpout_initialize
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - strchr
    - gf_free
    - gf_filter_override_caps
    - atoi
    - gf_filter_get_udta
    - strlwr
    - PROP_NAME
    - PROP_UINT
    - gf_filter_set_max_extra_input_pids
    - gf_list_new
    - gf_strdup
    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:834,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:836,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_rtp.c:837,1
    - Dst: rtpout_del_stream
      Src: /src/gpac/src/filters/out_rtp.c:838,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_rtp.c:840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 832
    functionDepth: 4
    functionLinenumber: 832
    functionLinenumberEnd: 842
    functionName: rtpout_finalize
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - gf_list_del
    - rtpout_del_stream
    - gf_list_pop_back
    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:847,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:849,1
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/filters/out_rtp.c:850,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: 855
      start: 844
    functionDepth: 5
    functionLinenumber: 844
    functionLinenumberEnd: 855
    functionName: rtpout_send_xps
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_rtp_streamer_send_data
    - gf_list_count
    - gf_list_get
    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:861,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:865,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtp.c:866,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/out_rtp.c:869,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_rtp.c:871,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:875,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:880,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtp.c:884,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:886,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/out_rtp.c:888,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:890,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_rtp.c:891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:894,1
    - Dst: rtpout_setup_sdp
      Src: /src/gpac/src/filters/out_rtp.c:898,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:903,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_rtp.c:904,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_RTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 857
    functionDepth: 8
    functionLinenumber: 857
    functionLinenumberEnd: 909
    functionName: rtpout_init_clock
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_discard
    - gf_rand
    - GF_LOG
    - rtpout_setup_sdp
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - gf_filter_pck_get_cts
    - gf_rand_init
    - gf_list_get
    - gf_filter_pid_get_packet
    - 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:915,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:916,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_rtp.c:916,1
    - Dst: gf_filter_pid_set_rt_stats
      Src: /src/gpac/src/filters/out_rtp.c:918,1
    - Dst: GF_RTPOutStream*::on_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:921,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: 923
      start: 911
    functionDepth: 1
    functionLinenumber: 911
    functionLinenumberEnd: 923
    functionName: rtpout_process_rtcp
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_RTPOutStream*::on_rtcp
    - gf_filter_pid_get_name
    - gf_timestamp_rescale
    - gf_filter_pid_set_rt_stats
    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:940,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:944,1
    - Dst: gf_rtp_streamer_read_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:951,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtp.c:956,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_rtp.c:959,1
    - Dst: gf_rtp_streamer_send_au
      Src: /src/gpac/src/filters/out_rtp.c:964,1
    - Dst: gf_rtp_streamer_send_bye
      Src: /src/gpac/src/filters/out_rtp.c:965,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/out_rtp.c:972,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_rtp.c:974,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/out_rtp.c:978,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/out_rtp.c:979,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:994,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1023,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_rtp.c:1026,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1035,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1040,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_rtp.c:1041,1
    - Dst: gf_timestamp_rescale
      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_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtp.c:1049,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:1050,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_rtp.c:1052,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_rtp.c:1053,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtp.c:1061,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1078,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_rtp.c:1082,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_rtp.c:1083,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_rtp.c:1085,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/out_rtp.c:1113,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1116,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/filters/out_rtp.c:1126,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:1127,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1130,1
    - Dst: gf_rtp_streamer_send_rtcp
      Src: /src/gpac/src/filters/out_rtp.c:1134,1
    - Dst: rtpout_send_xps
      Src: /src/gpac/src/filters/out_rtp.c:1150,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:1155,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:1159,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1161,1
    - Dst: rtpout_send_xps
      Src: /src/gpac/src/filters/out_rtp.c:1163,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1178,1
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/filters/out_rtp.c:1184,1
    - Dst: gf_rtp_streamer_send_data
      Src: /src/gpac/src/filters/out_rtp.c:1189,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_rtp.c:1191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_rtp.c:1195,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_rtp.c:1195,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: 1200
      start: 926
    functionDepth: 6
    functionLinenumber: 926
    functionLinenumberEnd: 1200
    functionName: rtpout_process_rtp
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pck_get_duration
    - GF_FEVT_INIT
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - rtpout_send_xps
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_rtp_streamer_send_data
    - gf_filter_pck_get_dts
    - gf_sys_clock_high_res
    - gf_filter_pck_get_cts
    - gf_log_tool_level_on
    - gf_rtp_streamer_send_au
    - gf_filter_pid_is_eos
    - gf_rtp_streamer_send_bye
    - gf_error_to_string
    - GF_LOG
    - gf_net_get_ntp
    - gf_rtp_streamer_send_rtcp
    - gf_rtp_streamer_read_rtcp
    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:1206,1
    - Dst: rtpout_init_clock
      Src: /src/gpac/src/filters/out_rtp.c:1210,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_rtp.c:1214,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_rtp.c:1218,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_rtp.c:1220,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_rtp.c:1221,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/out_rtp.c:1224,1
    - Dst: rtpout_process_rtp
      Src: /src/gpac/src/filters/out_rtp.c:1229,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_rtp.c:1233,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1236
      start: 1202
    functionDepth: 9
    functionLinenumber: 1202
    functionLinenumberEnd: 1236
    functionName: rtpout_process
    functionSourceFile: /src/gpac/src/filters/out_rtp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_discard
    - gf_filter_get_udta
    - gf_filter_ask_rt_reschedule
    - rtpout_init_clock
    - gf_filter_pid_set_eos
    - gf_sys_clock_high_res
    - rtpout_process_rtp
    - gf_list_get
    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:1240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1238
    functionDepth: 0
    functionLinenumber: 1238
    functionLinenumberEnd: 1242
    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: 1273
      start: 1272
    functionDepth: 0
    functionLinenumber: 1272
    functionLinenumberEnd: 1273
    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:1337,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_rtp.c:1338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1335
    functionDepth: 6
    functionLinenumber: 1335
    functionLinenumberEnd: 1341
    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: 1348
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1348
    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:448,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:452,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/mux_isom.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:465,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 444
    functionDepth: 6
    functionLinenumber: 444
    functionLinenumberEnd: 472
    functionName: mp4mx_setup_dash_vod
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_file_temp
    - GF_LOG
    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: 506
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 506
    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:510,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:512,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_isom.c:513,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:514,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: 516
      start: 508
    functionDepth: 6
    functionLinenumber: 508
    functionLinenumberEnd: 516
    functionName: mp4_mux_write_ps_list
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_write_int
    - gf_bs_write_data
    - gf_list_get
    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:520,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:522,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - list
    - type
    argTypes:
    - GF_List*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 518
    functionDepth: 1
    functionLinenumber: 518
    functionLinenumberEnd: 526
    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:532,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:535,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:540,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:550,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:561,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:564,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:569,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:569,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: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:580,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:580,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:582,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:582,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:584,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:584,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: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:594,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:594,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: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:597,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:597,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:601,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:601,1
    - Dst: mp4_mux_write_ps_list
      Src: /src/gpac/src/filters/mux_isom.c:602,1
    - Dst: mp4_mux_get_nalus_ps
      Src: /src/gpac/src/filters/mux_isom.c:602,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:607,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:609,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:611,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: 614
      start: 528
    functionDepth: 9
    functionLinenumber: 528
    functionLinenumberEnd: 614
    functionName: mp4_mux_make_inband_header
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_free
    - mp4_mux_get_nalus_ps
    - mp4_mux_write_ps_list
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    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:621,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/mux_isom.c:622,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/filters/mux_isom.c:625,1
    - Dst: gf_isom_get_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:630,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - width
    - height
    argTypes:
    - GF_MP4MuxCtx*
    - u32*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 616
    functionDepth: 2
    functionLinenumber: 616
    functionLinenumberEnd: 638
    functionName: mp4_mux_get_video_size
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_count
    - gf_isom_get_media_type
    - gf_isom_get_track_layout_info
    - gf_isom_get_visual_info
    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:642,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:643,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:644,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:645,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:646,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:647,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:648,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:649,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:650,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:651,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - tkw
    argTypes:
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 640
    functionDepth: 2
    functionLinenumber: 640
    functionLinenumberEnd: 652
    functionName: mp4_mux_track_writer_del
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_free
    - gf_odf_hevc_cfg_del
    - gf_odf_avc_cfg_del
    - gf_odf_vvc_cfg_del
    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:657,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:660,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:662,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: 665
      start: 654
    functionDepth: 6
    functionLinenumber: 654
    functionLinenumberEnd: 665
    functionName: mp4_mux_write_track_refs
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_track_reference
    - gf_isom_set_track_flags
    - gf_filter_pid_get_property_str
    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: strlen
      Src: /src/gpac/src/filters/mux_isom.c:671,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:676,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:684,1
    - Dst: gf_isom_set_track_group
      Src: /src/gpac/src/filters/mux_isom.c:685,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: 686
      start: 667
    functionDepth: 6
    functionLinenumber: 667
    functionLinenumberEnd: 686
    functionName: mp4mx_set_track_group
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - GF_4CC
    - atoi
    - gf_isom_set_track_group
    - strlen
    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:695,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:695,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:697,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/src/filters/mux_isom.c:698,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_isom.c:713,1
    - Dst: gf_isom_apple_set_tag
      Src: /src/gpac/src/filters/mux_isom.c:717,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:719,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:719,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:725,1
    - Dst: mp4mx_set_track_group
      Src: /src/gpac/src/filters/mux_isom.c:726,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/src/filters/mux_isom.c:730,1
    - Dst: gf_itags_get_itag
      Src: /src/gpac/src/filters/mux_isom.c:732,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_isom.c:733,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:744,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_isom.c:745,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:748,1
    - Dst: gf_isom_set_qt_key
      Src: /src/gpac/src/filters/mux_isom.c:752,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/mux_isom.c:761,1
    - Dst: gf_media_isom_apply_qt_key
      Src: /src/gpac/src/filters/mux_isom.c:762,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:767,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:767,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_isom.c:771,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:775,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:777,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:778,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:779,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:780,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:782,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:783,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/mux_isom.c:785,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:787,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_isom.c:789,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:806,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:807,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:810,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:814,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:817,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:820,1
    - Dst: gf_isom_apple_set_tag_ex
      Src: /src/gpac/src/filters/mux_isom.c:824,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:827,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/mux_isom.c:827,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:834,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:834,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 122
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 690
    functionDepth: 8
    functionLinenumber: 690
    functionLinenumberEnd: 837
    functionName: mp4_mux_set_tags
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_enum_properties
    - gf_itags_find_by_name
    - gf_sys_old_arch_compat
    - gf_props_dump_val
    - gf_isom_apple_set_tag_ex
    - gf_itags_get_itag
    - strchr
    - gf_crc_32
    - gf_isom_set_qt_key
    - gf_sys_is_test_mode
    - gf_media_isom_apply_qt_key
    - strnicmp
    - mp4mx_set_track_group
    - strlen
    - gf_error_to_string
    - gf_isom_apple_set_tag
    - GF_LOG
    - GF_4CC
    - gf_itags_get_name
    - strncmp
    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:846,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:850,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:850,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:856,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:863,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:864,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:871,1
    - Dst: gf_isom_add_user_data
      Src: /src/gpac/src/filters/mux_isom.c:876,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:879,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:879,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:880,1
    - Dst: gf_isom_add_user_data_boxes
      Src: /src/gpac/src/filters/mux_isom.c:882,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:891,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:891,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:895,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/mux_isom.c:900,1
    - Dst: gf_isom_add_track_kind
      Src: /src/gpac/src/filters/mux_isom.c:904,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 54
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 907
      start: 839
    functionDepth: 7
    functionLinenumber: 839
    functionLinenumberEnd: 907
    functionName: mp4_mux_set_udta
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_isom_add_track_kind
    - GF_LOG
    - gf_filter_pid_enum_properties
    - GF_4CC
    - gf_isom_add_user_data_boxes
    - gf_isom_add_user_data
    - strrchr
    - strcmp
    - strlen
    - strncmp
    - gf_error_to_string
    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:911,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:913,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:916,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:919,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 909
    functionDepth: 6
    functionLinenumber: 909
    functionLinenumberEnd: 922
    functionName: update_chap_refs
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_track_reference
    - gf_list_count
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void update_chap_refs(GF_MP4MuxCtx *ctx)
  - BBCount: 822
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:996,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_isom.c:1003,1
    - Dst: gf_filter_get_dst_name
      Src: /src/gpac/src/filters/mux_isom.c:1005,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_isom.c:1007,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1008,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1008,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:1011,1
    - Dst: gf_isom_get_filename
      Src: /src/gpac/src/filters/mux_isom.c:1014,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_isom.c:1015,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1016,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/mux_isom.c:1016,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/mux_isom.c:1022,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1023,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_isom.c:1024,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1026,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1027,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1028,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1029,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1030,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1030,1
    - Dst: mux_assign_mime_file_ext
      Src: /src/gpac/src/filters/mux_isom.c:1032,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1034,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1036,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1036,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1041,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1041,1
    - Dst: gf_filter_pid_allow_direct_dispatch
      Src: /src/gpac/src/filters/mux_isom.c:1045,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1050,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1055,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:1061,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1062,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1063,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:1065,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1066,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/mux_isom.c:1067,1
    - Dst: mp4_mux_setup_pid
      Src: /src/gpac/src/filters/mux_isom.c:1073,1
    - Dst: gf_isom_get_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:1078,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:1081,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_isom.c:1084,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:1087,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_isom.c:1093,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/mux_isom.c:1097,1
    - Dst: gf_filter_pid_get_min_pck_duration
      Src: /src/gpac/src/filters/mux_isom.c:1098,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/mux_isom.c:1105,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:1107,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:1109,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/mux_isom.c:1111,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1121,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1139,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1145,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/mux_isom.c:1149,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/mux_isom.c:1154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1159,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:1161,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1171,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:1173,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1234,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1245,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1249,1
    - Dst: gf_isom_remove_root_od
      Src: /src/gpac/src/filters/mux_isom.c:1262,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1263,1
    - Dst: gf_isom_reset_alt_brands
      Src: /src/gpac/src/filters/mux_isom.c:1264,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1274,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1278,1
    - Dst: mp4mx_setup_dash_vod
      Src: /src/gpac/src/filters/mux_isom.c:1282,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1291,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1294,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1304,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1337,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/mux_isom.c:1345,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1376,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1387,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1389,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1391,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1394,1
    - Dst: gf_isom_make_interleave_ex
      Src: /src/gpac/src/filters/mux_isom.c:1398,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1404,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1408,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1411,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1415,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1423,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1424,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/mux_isom.c:1429,1
    - Dst: gf_isom_stream_type_to_media_type
      Src: /src/gpac/src/filters/mux_isom.c:1431,1
    - Dst: gf_isom_set_timescale
      Src: /src/gpac/src/filters/mux_isom.c:1435,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1438,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1462,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:1466,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:1474,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:1476,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:1478,1
    - Dst: gf_isom_set_creation_time
      Src: /src/gpac/src/filters/mux_isom.c:1482,1
    - Dst: gf_isom_keep_utc_times
      Src: /src/gpac/src/filters/mux_isom.c:1484,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1487,1
    - Dst: gf_isom_new_track_from_template
      Src: /src/gpac/src/filters/mux_isom.c:1492,1
    - Dst: gf_isom_new_track_from_template
      Src: /src/gpac/src/filters/mux_isom.c:1494,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1498,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1499,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1500,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1501,1
    - Dst: gf_isom_remove_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:1502,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:1506,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1509,1
    - Dst: gf_isom_set_track_stsd_templates
      Src: /src/gpac/src/filters/mux_isom.c:1511,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:1512,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:1518,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1519,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/mux_isom.c:1519,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:1519,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/filters/mux_isom.c:1528,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/filters/mux_isom.c:1530,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:1534,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/mux_isom.c:1537,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1537,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1538,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/mux_isom.c:1541,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/mux_isom.c:1543,1
    - Dst: gf_gpac_version
      Src: /src/gpac/src/filters/mux_isom.c:1543,1
    - Dst: gf_isom_set_handler_name
      Src: /src/gpac/src/filters/mux_isom.c:1544,1
    - Dst: gf_isom_last_error
      Src: /src/gpac/src/filters/mux_isom.c:1550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:1551,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:1551,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:1554,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1559,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:1563,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1564,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1568,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1570,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/filters/mux_isom.c:1572,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1575,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/filters/mux_isom.c:1577,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1585,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:1588,1
    - Dst: gf_isom_set_track_enabled
      Src: /src/gpac/src/filters/mux_isom.c:1591,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1597,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:1600,1
    - Dst: update_chap_refs
      Src: /src/gpac/src/filters/mux_isom.c:1604,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1606,1
    - Dst: gf_isom_set_handler_name
      Src: /src/gpac/src/filters/mux_isom.c:1608,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1611,1
    - Dst: gf_isom_set_alternate_group_id
      Src: /src/gpac/src/filters/mux_isom.c:1613,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:1614,1
    - Dst: gf_isom_set_alternate_group_id
      Src: /src/gpac/src/filters/mux_isom.c:1617,1
    - Dst: gf_isom_set_alternate_group_id
      Src: /src/gpac/src/filters/mux_isom.c:1620,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1633,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:1644,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:1646,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1649,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1651,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:1657,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1661,1
    - Dst: gf_isom_set_track_matrix
      Src: /src/gpac/src/filters/mux_isom.c:1663,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1666,1
    - Dst: gf_isom_set_track_magic
      Src: /src/gpac/src/filters/mux_isom.c:1674,1
    - Dst: gf_isom_set_track_index
      Src: /src/gpac/src/filters/mux_isom.c:1677,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:1681,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1683,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:1689,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:1694,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:1699,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1700,1
    - Dst: gf_isom_load_extra_boxes
      Src: /src/gpac/src/filters/mux_isom.c:1702,1
    - Dst: gf_isom_set_sample_group_in_traf
      Src: /src/gpac/src/filters/mux_isom.c:1708,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:1711,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:1714,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1725,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1725,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_isom.c:1728,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:1728,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:1732,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:1733,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1739,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:1743,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1750,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1757,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1758,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1762,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1765,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1769,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:1774,1
    - Dst: gf_isom_reset_alt_brands_ex
      Src: /src/gpac/src/filters/mux_isom.c:1777,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1779,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1783,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1787,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:1792,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1803,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1807,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/mux_isom.c:1808,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1827,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1829,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1831,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1833,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1835,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1838,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1840,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1842,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:1847,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1851,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1854,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1857,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1861,1
    - Dst: gf_filter_pid_get_args
      Src: /src/gpac/src/filters/mux_isom.c:1892,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1894,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1895,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1896,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:1897,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1944,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:1955,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2126,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:2145,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:2146,1
    - Dst: mp4_mux_get_video_size
      Src: /src/gpac/src/filters/mux_isom.c:2148,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:2155,1
    - Dst: mp4_mux_get_video_size
      Src: /src/gpac/src/filters/mux_isom.c:2157,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:2168,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2259,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/mux_isom.c:2350,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:2350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2352,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/mux_isom.c:2356,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2360,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2378,1
    - Dst: gf_pixel_fmt_to_qt_type
      Src: /src/gpac/src/filters/mux_isom.c:2386,1
    - Dst: gf_pixel_fmt_is_yuv
      Src: /src/gpac/src/filters/mux_isom.c:2388,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/src/filters/mux_isom.c:2416,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2425,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2427,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2429,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2431,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2433,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:2435,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:2439,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2440,1
    - Dst: mp4_mux_get_video_size
      Src: /src/gpac/src/filters/mux_isom.c:2446,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/src/filters/mux_isom.c:2458,1
    - Dst: gf_isom_set_media_timescale
      Src: /src/gpac/src/filters/mux_isom.c:2462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2472,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2488,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:2489,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2491,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2501,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2503,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2506,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2507,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2511,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2515,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2517,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2521,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2523,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2527,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2532,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2536,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2538,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2542,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2543,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2547,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2551,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:2553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2556,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2561,1
    - Dst: gf_isom_remove_stream_description
      Src: /src/gpac/src/filters/mux_isom.c:2568,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/mux_isom.c:2573,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/filters/mux_isom.c:2578,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/mux_isom.c:2580,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2582,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:2582,1
    - Dst: gf_isom_new_mpeg4_description
      Src: /src/gpac/src/filters/mux_isom.c:2592,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:2597,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2600,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2600,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2606,1
    - Dst: gf_isom_add_track_to_root_od
      Src: /src/gpac/src/filters/mux_isom.c:2608,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/mux_isom.c:2614,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:2619,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2630,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2631,1
    - Dst: gf_isom_svc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2635,1
    - Dst: gf_isom_mvc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2637,1
    - Dst: gf_isom_avc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2639,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2643,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2644,1
    - Dst: gf_isom_mvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2647,1
    - Dst: gf_isom_svc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2649,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2652,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2662,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2662,1
    - Dst: gf_isom_avc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2669,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2672,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:2676,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:2677,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2680,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2687,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/mux_isom.c:2688,1
    - Dst: gf_isom_hevc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2689,1
    - Dst: gf_isom_hevc_set_tile_config
      Src: /src/gpac/src/filters/mux_isom.c:2691,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2693,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2698,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2700,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2707,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/mux_isom.c:2710,1
    - Dst: gf_isom_hevc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2715,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2718,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2719,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2729,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2731,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2732,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2737,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2738,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2740,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2742,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2747,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2751,1
    - Dst: gf_isom_lhvc_config_update
      Src: /src/gpac/src/filters/mux_isom.c:2753,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2756,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2756,1
    - Dst: gf_isom_hevc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2763,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2765,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2771,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2777,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:2783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:2785,1
    - Dst: gf_isom_vvc_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2790,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2793,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2794,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2804,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2806,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2807,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2812,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2812,1
    - Dst: gf_isom_vvc_set_inband_config
      Src: /src/gpac/src/filters/mux_isom.c:2819,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2821,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2830,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2835,1
    - Dst: gf_isom_av1_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2841,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2841,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_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2849,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2852,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2857,1
    - Dst: gf_odf_avs3v_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2860,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2862,1
    - Dst: gf_isom_avs3v_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2866,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2868,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2868,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2874,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2875,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2876,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2884,1
    - Dst: gf_odf_iamf_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2889,1
    - Dst: gf_isom_iamf_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2893,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2895,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2895,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2900,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2901,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2902,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2904,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2910,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2910,1
    - Dst: gf_odf_vp_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:2913,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2915,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2915,1
    - Dst: gf_isom_vp_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2919,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2921,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:2921,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2921,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:2925,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:2928,1
    - Dst: gf_isom_3gp_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2950,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2950,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:2960,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2963,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:2964,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:2971,1
    - Dst: gf_odf_ac3_cfg_parse
      Src: /src/gpac/src/filters/mux_isom.c:2974,1
    - Dst: gf_isom_ac3_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2978,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2980,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2980,1
    - Dst: gf_odf_ac4_cfg_parse
      Src: /src/gpac/src/filters/mux_isom.c:2988,1
    - Dst: gf_isom_ac4_config_new
      Src: /src/gpac/src/filters/mux_isom.c:2991,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:2993,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:2993,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/mux_isom.c:2999,1
    - Dst: gf_isom_flac_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3003,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3003,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3011,1
    - Dst: gf_odf_opus_cfg_parse
      Src: /src/gpac/src/filters/mux_isom.c:3014,1
    - Dst: gf_isom_opus_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3019,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3019,1
    - Dst: gf_isom_new_xml_metadata_description
      Src: /src/gpac/src/filters/mux_isom.c:3025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3027,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3027,1
    - Dst: gf_isom_new_stxt_description
      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: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:3038,1
    - Dst: gf_isom_new_xml_subtitle_description
      Src: /src/gpac/src/filters/mux_isom.c:3043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3045,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3045,1
    - Dst: gf_isom_subtitle_get_mime
      Src: /src/gpac/src/filters/mux_isom.c:3051,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:3052,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:3052,1
    - Dst: gf_isom_subtitle_set_mime
      Src: /src/gpac/src/filters/mux_isom.c:3053,1
    - Dst: gf_isom_new_stxt_description
      Src: /src/gpac/src/filters/mux_isom.c:3060,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3062,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3062,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3062,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3069,1
    - Dst: gf_odf_tx3g_read
      Src: /src/gpac/src/filters/mux_isom.c:3072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3074,1
    - Dst: gf_isom_new_text_description
      Src: /src/gpac/src/filters/mux_isom.c:3082,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:3084,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3085,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3085,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3085,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:3090,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:3092,1
    - Dst: gf_isom_new_webvtt_description
      Src: /src/gpac/src/filters/mux_isom.c:3097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3099,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3099,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3099,1
    - Dst: gf_isom_new_mj2k_description
      Src: /src/gpac/src/filters/mux_isom.c:3107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3109,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3109,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3109,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3116,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3118,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3123,1
    - Dst: gf_isom_tmcd_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3132,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3132,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3137,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3143,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3145,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3147,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3149,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3151,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3153,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3155,1
    - Dst: gf_isom_new_dims_description
      Src: /src/gpac/src/filters/mux_isom.c:3158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3160,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3160,1
    - Dst: gf_isom_new_mpha_description
      Src: /src/gpac/src/filters/mux_isom.c:3172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3174,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3174,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3177,1
    - Dst: gf_isom_set_mpegh_compatible_profiles
      Src: /src/gpac/src/filters/mux_isom.c:3179,1
    - Dst: gf_isom_truehd_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3197,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3197,1
    - Dst: gf_isom_evte_config_new
      Src: /src/gpac/src/filters/mux_isom.c:3201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3203,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3203,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3210,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:3213,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:3216,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3218,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3240,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3258,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3262,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3280,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filters/mux_isom.c:3283,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3287,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3288,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3292,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3295,1
    - Dst: gf_pixel_fmt_get_uncc
      Src: /src/gpac/src/filters/mux_isom.c:3299,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3308,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3309,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3313,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3315,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3316,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/mux_isom.c:3317,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3317,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3318,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3319,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:3325,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:3327,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3333,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:3333,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3334,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3337,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:3337,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3337,1
    - Dst: gf_isom_new_generic_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:3341,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:3342,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3345,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3345,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/mux_isom.c:3351,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3357,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3359,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3361,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:3365,1
    - Dst: gf_isom_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:3368,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3374,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3380,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3383,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3385,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3386,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/mux_isom.c:3406,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:3410,1
    - Dst: gf_isom_remove_stream_description
      Src: /src/gpac/src/filters/mux_isom.c:3411,1
    - Dst: gf_isom_3gp_config_get
      Src: /src/gpac/src/filters/mux_isom.c:3421,1
    - Dst: gf_isom_3gp_config_update
      Src: /src/gpac/src/filters/mux_isom.c:3424,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:3425,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3445,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3447,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3449,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3451,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3454,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3456,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3458,1
    - Dst: gf_isom_set_ismacryp_protection
      Src: /src/gpac/src/filters/mux_isom.c:3464,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3467,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3469,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3471,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:3473,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3474,1
    - Dst: gf_isom_set_oma_protection
      Src: /src/gpac/src/filters/mux_isom.c:3476,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3481,1
    - Dst: gf_isom_set_adobe_protection
      Src: /src/gpac/src/filters/mux_isom.c:3482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3495,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:3495,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3498,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3501,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3504,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3507,1
    - Dst: gf_isom_set_media_type
      Src: /src/gpac/src/filters/mux_isom.c:3510,1
    - Dst: gf_isom_set_generic_protection
      Src: /src/gpac/src/filters/mux_isom.c:3513,1
    - Dst: gf_isom_remove_cenc_senc_box
      Src: /src/gpac/src/filters/mux_isom.c:3517,1
    - Dst: gf_isom_remove_cenc_seig_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:3518,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3522,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3523,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3524,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3525,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3528,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3530,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3532,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3537,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3542,1
    - Dst: mp4_mux_write_track_refs
      Src: /src/gpac/src/filters/mux_isom.c:3548,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3552,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3555,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3557,1
    - Dst: mp4_mux_setup_pid
      Src: /src/gpac/src/filters/mux_isom.c:3558,1
    - Dst: gf_isom_set_image_sequence_coding_constraints
      Src: /src/gpac/src/filters/mux_isom.c:3565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3567,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3567,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3570,1
    - Dst: gf_isom_set_image_sequence_alpha
      Src: /src/gpac/src/filters/mux_isom.c:3572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3574,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:3574,1
    - Dst: gf_isom_hint_max_chunk_size
      Src: /src/gpac/src/filters/mux_isom.c:3582,1
    - Dst: gf_isom_hint_max_chunk_duration
      Src: /src/gpac/src/filters/mux_isom.c:3585,1
    - Dst: gf_isom_set_audio_info
      Src: /src/gpac/src/filters/mux_isom.c:3599,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3604,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/src/filters/mux_isom.c:3608,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/mux_isom.c:3610,1
    - Dst: gf_isom_set_audio_layout
      Src: /src/gpac/src/filters/mux_isom.c:3611,1
    - Dst: gf_isom_set_visual_info
      Src: /src/gpac/src/filters/mux_isom.c:3621,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3624,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:3628,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3629,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:3633,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3635,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:3637,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3641,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3643,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3645,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3647,1
    - Dst: gf_isom_get_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3653,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3666,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3668,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3672,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3676,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3678,1
    - Dst: gf_media_get_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3680,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3693,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3696,1
    - Dst: gf_isom_hint_max_chunk_size
      Src: /src/gpac/src/filters/mux_isom.c:3703,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3707,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3707,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3711,1
    - Dst: gf_isom_set_visual_color_info
      Src: /src/gpac/src/filters/mux_isom.c:3713,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3717,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3718,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3724,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3725,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3726,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3727,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3730,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3733,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3734,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3736,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3737,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3738,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/mux_isom.c:3739,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3740,1
    - Dst: gf_isom_set_high_dynamic_range_info
      Src: /src/gpac/src/filters/mux_isom.c:3742,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3745,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3747,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filters/mux_isom.c:3748,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3749,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/src/filters/mux_isom.c:3751,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:3754,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:3757,1
    - Dst: gf_isom_set_dolby_vision_profile
      Src: /src/gpac/src/filters/mux_isom.c:3764,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:3768,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:3769,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3775,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:3777,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:3778,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3782,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:3785,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:3786,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:3786,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:3795,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3799,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3801,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3803,1
    - Dst: gf_isom_set_ambient_viewing_environment
      Src: /src/gpac/src/filters/mux_isom.c:3806,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:3809,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3811,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3812,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:3816,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_isom.c:3817,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_isom.c:3818,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3819,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3820,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3821,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3822,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:3823,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:3824,1
    - Dst: gf_isom_add_user_data
      Src: /src/gpac/src/filters/mux_isom.c:3826,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3829,1
    - Dst: gf_isom_set_track_matrix
      Src: /src/gpac/src/filters/mux_isom.c:3834,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3844,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3846,1
    - Dst: gf_filter_pid_get_property
      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_isom_set_clean_aperture
      Src: /src/gpac/src/filters/mux_isom.c:3864,1
    - Dst: gf_isom_set_track_layout_info
      Src: /src/gpac/src/filters/mux_isom.c:3872,1
    - Dst: gf_isom_set_media_language
      Src: /src/gpac/src/filters/mux_isom.c:3875,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3877,1
    - Dst: gf_isom_update_sample_description_from_template
      Src: /src/gpac/src/filters/mux_isom.c:3879,1
    - Dst: gf_isom_set_pixel_aspect_ratio
      Src: /src/gpac/src/filters/mux_isom.c:3884,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:3888,1
    - Dst: gf_isom_remove_chapter
      Src: /src/gpac/src/filters/mux_isom.c:3894,1
    - Dst: gf_isom_new_track
      Src: /src/gpac/src/filters/mux_isom.c:3902,1
    - Dst: gf_isom_set_track_flags
      Src: /src/gpac/src/filters/mux_isom.c:3903,1
    - Dst: gf_isom_set_track_index
      Src: /src/gpac/src/filters/mux_isom.c:3905,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3906,1
    - Dst: gf_isom_new_text_description
      Src: /src/gpac/src/filters/mux_isom.c:3917,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:3923,1
    - Dst: gf_isom_add_chapter
      Src: /src/gpac/src/filters/mux_isom.c:3939,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:3943,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:3945,1
    - Dst: gf_isom_text_to_sample
      Src: /src/gpac/src/filters/mux_isom.c:3946,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:3954,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/mux_isom.c:3955,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:3958,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:3960,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:3962,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:3969,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:3969,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3975,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/filters/mux_isom.c:3976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:3978,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/mux_isom.c:3989,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3994,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3995,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:3996,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:4000,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4011,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4015,1
    - Dst: gf_isom_set_y3d_info
      Src: /src/gpac/src/filters/mux_isom.c:4023,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4049,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4054,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_isom.c:4059,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:4061,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:4063,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/mux_isom.c:4066,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4068,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4071,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4077,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:4080,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/mux_isom.c:4084,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:4088,1
    - Dst: mp4_mux_make_inband_header
      Src: /src/gpac/src/filters/mux_isom.c:4090,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/filters/mux_isom.c:4104,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:4105,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4106,1
    - Dst: gf_isom_get_edit
      Src: /src/gpac/src/filters/mux_isom.c:4112,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4120,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4123,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4131,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4138,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4140,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4147,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/mux_isom.c:4150,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4158,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4161,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4162,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:4172,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4174,1
    - Dst: gf_isom_get_min_negative_cts_offset
      Src: /src/gpac/src/filters/mux_isom.c:4184,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:4190,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4193,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4194,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4195,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4196,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4197,1
    - Dst: gf_isom_get_min_negative_cts_offset
      Src: /src/gpac/src/filters/mux_isom.c:4206,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:4208,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:4211,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:4214,1
    - Dst: mp4_mux_set_tags
      Src: /src/gpac/src/filters/mux_isom.c:4217,1
    - Dst: mp4_mux_set_udta
      Src: /src/gpac/src/filters/mux_isom.c:4218,1
    CyclomaticComplexity: 1002
    EdgeCount: 1002
    ICount: 2854
    argCount: 3
    argNames:
    - filter
    - pid
    - is_true_pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4222
      start: 926
    functionDepth: 11
    functionLinenumber: 926
    functionLinenumberEnd: 4222
    functionName: mp4_mux_setup_pid
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_isom_remove_cenc_senc_box
    - gf_4cc_parse
    - gf_isom_last_error
    - gf_isom_set_handler_name
    - gf_isom_set_composition_offset_mode
    - gf_gpac_version
    - gf_isom_add_track_to_root_od
    - gf_isom_new_mpha_description
    - GF_FEVT_INIT
    - gf_isom_set_media_language
    - gf_isom_new_generic_sample_description
    - gf_filter_pid_get_min_pck_duration
    - gf_bs_new
    - gf_isom_set_visual_info
    - gf_pixel_fmt_is_yuv
    - gf_isom_reset_alt_brands
    - gf_isom_3gp_config_update
    - strstr
    - gf_isom_remove_track_reference
    - gf_crc_32
    - gf_isom_new_dims_description
    - gf_isom_set_audio_layout
    - gf_isom_set_sample_group_in_traf
    - gf_isom_set_track_index
    - gf_fatal_assert
    - gf_sys_is_test_mode
    - gf_isom_iamf_config_new
    - gf_isom_lhvc_config_update
    - gf_isom_dovi_config_get
    - gf_isom_subtitle_set_mime
    - gf_isom_set_media_type
    - gf_isom_subtitle_get_mime
    - gf_isom_hevc_set_inband_config
    - gf_odf_iamf_cfg_read
    - gf_odf_iamf_cfg_del
    - gf_isom_vp_config_new
    - gf_bs_write_data
    - gf_isom_load_extra_boxes
    - gf_isom_make_interleave_ex
    - gf_audio_fmt_get_cicp_layout
    - gf_isom_set_track_enabled
    - gf_filter_pid_init_play_event
    - gf_pixel_fmt_to_qt_type
    - gf_media_get_color_info
    - stricmp
    - gf_sys_is_cov_mode
    - gf_isom_avs3v_config_new
    - gf_filter_pid_set_property
    - gf_codecid_oti
    - gf_isom_flac_config_new
    - gf_bs_write_u32
    - gf_strdup
    - gf_isom_ac4_config_new
    - gf_isom_set_ismacryp_protection
    - gf_4cc_to_str
    - gf_filter_pid_get_property
    - gf_isom_mvc_config_new
    - gf_codecid_name
    - gf_filter_pid_set_framing_mode
    - gf_odf_vvc_cfg_read
    - gf_bs_get_content
    - gf_bs_write_int
    - gf_sys_old_arch_compat
    - snprintf
    - gf_isom_remove_sample_group
    - gf_props_equal
    - gf_isom_get_filename
    - gf_filter_pid_send_event
    - gf_codecid_type
    - gf_isom_new_track_from_template
    - gf_isom_hevc_config_new
    - gf_isom_vvc_set_inband_config
    - gf_odf_av1_cfg_read
    - gf_odf_av1_cfg_del
    - gf_odf_ac4_cfg_parse
    - gf_isom_opus_config_new
    - gf_isom_new_xml_subtitle_description
    - gf_audio_fmt_get_cicp_from_layout
    - gf_odf_tx3g_read
    - gf_isom_remove_root_od
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - gf_isom_avc_set_inband_config
    - gf_isom_get_edit_list_type
    - memcpy
    - gf_filter_pid_copy_properties
    - gf_file_ext_start
    - gf_isom_evte_config_new
    - gf_isom_text_to_sample
    - gf_isom_set_timescale
    - gf_isom_set_ambient_viewing_environment
    - gf_isom_stream_type_to_media_type
    - gf_isom_get_pixel_aspect_ratio
    - gf_filter_pid_get_property_str
    - gf_filter_pid_negotiate_property
    - strlen
    - gf_odf_dovi_cfg_read_bs
    - gf_audio_fmt_bit_depth
    - gf_isom_set_track_stsd_templates
    - gf_bs_write_utf8
    - gf_isom_set_high_dynamic_range_info
    - gf_isom_hint_max_chunk_size
    - gf_isom_set_last_sample_duration
    - gf_isom_set_y3d_info
    - gf_isom_keep_utc_times
    - gf_isom_hint_max_chunk_duration
    - PROP_UINT
    - mp4_mux_write_track_refs
    - gf_isom_vvc_config_new
    - mp4_mux_make_inband_header
    - mp4mx_setup_dash_vod
    - mp4_mux_setup_pid
    - gf_list_count
    - gf_odf_dovi_cfg_del
    - gf_isom_get_edit
    - gf_file_basename
    - gf_cenc_validate_key_info
    - gf_isom_set_audio_info
    - gf_isom_new_mj2k_description
    - GF_SAFEALLOC
    - gf_isom_set_track_layout_info
    - gf_odf_avs3v_cfg_read
    - gf_isom_svc_config_update
    - gf_isom_set_track_flags
    - gf_isom_ac3_config_new
    - gf_isom_set_image_sequence_coding_constraints
    - gf_odf_vvc_cfg_del
    - gf_stream_type_name
    - gf_isom_get_color_info
    - gf_isom_set_pl_indication
    - gf_isom_new_webvtt_description
    - gf_isom_get_pl_indication
    - gf_timestamp_rescale
    - gf_isom_avc_config_new
    - gf_odf_avc_cfg_read
    - gf_filter_pid_new
    - gf_isom_get_sample_description_count
    - gf_isom_set_brand_info
    - gf_m4a_get_config
    - gf_codecid_4cc_type
    - mp4_mux_set_tags
    - gf_isom_set_edit
    - gf_filter_get_dst_name
    - gf_isom_set_dolby_vision_profile
    - gf_isom_set_generic_protection
    - gf_isom_set_media_timescale
    - gf_odf_avc_cfg_del
    - strcmp
    - gf_isom_svc_config_new
    - gf_isom_set_visual_color_info
    - gf_isom_update_bitrate
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_free
    - gf_isom_set_clean_aperture
    - mp4_mux_get_video_size
    - gf_odf_desc_esd_new
    - gf_filter_pid_allow_direct_dispatch
    - update_chap_refs
    - gf_isom_hevc_set_tile_config
    - gf_isom_add_sample
    - gf_pixel_fmt_get_uncc
    - gf_odf_vp_cfg_del
    - gf_filter_pid_set_name
    - gf_odf_vp_cfg_read
    - gf_bs_del
    - gf_timestamp_rescale_signed
    - gf_isom_remove_cenc_seig_sample_group
    - gf_isom_is_same_sample_description
    - gf_isom_remove_chapter
    - gf_isom_remove_edits
    - gf_list_add
    - gf_isom_set_track_magic
    - gf_isom_new_mpeg4_description
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_odf_ac4_cfg_clean_list
    - gf_filter_pid_get_udta
    - gf_isom_av1_config_new
    - gf_isom_set_oma_protection
    - gf_odf_ac3_cfg_parse
    - gf_odf_hevc_cfg_new
    - gf_isom_remove_stream_description
    - gf_isom_new_text_description
    - gf_isom_set_mpegh_compatible_profiles
    - gf_isom_set_adobe_protection
    - gf_isom_truehd_config_new
    - gf_isom_tmcd_config_new
    - gf_isom_set_pixel_aspect_ratio
    - gf_isom_set_creation_time
    - gf_isom_reset_alt_brands_ex
    - gf_bs_read_int
    - gf_isom_add_user_data
    - gf_filter_pid_get_args
    - gf_isom_mvc_config_update
    - gf_isom_new_track
    - gf_isom_set_track_reference
    - gf_odf_opus_cfg_parse
    - gf_isom_3gp_config_get
    - gf_avc_read_sps
    - gf_error_to_string
    - mp4_mux_set_udta
    - gf_isom_get_track_count
    - gf_isom_new_stxt_description
    - gf_isom_update_sample_description_from_template
    - gf_isom_3gp_config_new
    - GF_LOG
    - gf_isom_new_xml_metadata_description
    - gf_isom_modify_alternate_brand
    - GF_4CC
    - gf_isom_set_track_matrix
    - gf_isom_set_image_sequence_alpha
    - gf_isom_add_chapter
    - gf_isom_sample_del
    - gf_isom_get_min_negative_cts_offset
    - gf_odf_avs3v_cfg_del
    - memset
    - mux_assign_mime_file_ext
    - gf_isom_set_alternate_group_id
    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:4232,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:4235,1
    - Dst: mp4_mux_done_track
      Src: /src/gpac/src/filters/mux_isom.c:4237,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:4238,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:4239,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4240,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:4244,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:4248,1
    - Dst: mp4_mux_flush_fragmented
      Src: /src/gpac/src/filters/mux_isom.c:4253,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/mux_isom.c:4259,1
    - Dst: mp4_mux_setup_pid
      Src: /src/gpac/src/filters/mux_isom.c:4264,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: 4265
      start: 4230
    functionDepth: 12
    functionLinenumber: 4230
    functionLinenumberEnd: 4265
    functionName: mp4_mux_configure_pid
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_filter_pid_get_udta
    - gf_list_del_item
    - mp4_mux_flush_fragmented
    - gf_filter_pid_remove
    - gf_list_get
    - mp4_mux_done_track
    - mp4_mux_done
    - mp4_mux_setup_pid
    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:4269,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:4272,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:4276,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:4279,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_isom.c:4282,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:4289,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:4302,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:4304,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/mux_isom.c:4308,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:4312,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 37
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4317
      start: 4267
    functionDepth: 1
    functionLinenumber: 4267
    functionLinenumberEnd: 4317
    functionName: mp4_mux_process_event
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_init_play_event
    - gf_filter_get_udta
    - gf_filter_pid_get_udta
    - gf_filter_release_property
    - gf_filter_pid_get_info
    - gf_list_get
    - gf_filter_pid_send_event
    - mp4_mux_done
    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:4341,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4343,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:4357,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4359,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4363,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:4368,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_isom.c:4369,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4371,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/mux_isom.c:4379,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4380,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4381,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/mux_isom.c:4385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4386,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_isom.c:4390,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/mux_isom.c:4393,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:4395,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/mux_isom.c:4396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4397,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_isom.c:4400,1
    - Dst: gf_isom_cenc_set_pssh
      Src: /src/gpac/src/filters/mux_isom.c:4406,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/mux_isom.c:4407,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/mux_isom.c:4408,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4411,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4415,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:4416,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4418,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: 4422
      start: 4326
    functionDepth: 7
    functionLinenumber: 4326
    functionLinenumberEnd: 4422
    functionName: mp4_mux_cenc_insert_pssh
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_get_position
    - gf_free
    - gf_isom_cenc_set_pssh
    - gf_filter_pck_get_property
    - gf_malloc
    - GF_LOG
    - gf_bs_is_overflow
    - gf_bs_reassign_buffer
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_read_u32
    - gf_filter_pid_get_packet
    - gf_realloc
    - memcpy
    - gf_bs_available
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: void
    signature: void mp4_mux_cenc_insert_pssh(GF_MP4MuxCtx *ctx, TrackWriter *tkw,
      const GF_PropertyValue *pssh, u32 dyn_pssh_mode)
  - BBCount: 65
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4441,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4456,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4458,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4461,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4464,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4469,1
    - Dst: gf_isom_clone_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:4475,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4477,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4477,1
    - Dst: gf_isom_set_cenc_protection
      Src: /src/gpac/src/filters/mux_isom.c:4501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4508,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4508,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/mux_isom.c:4514,1
    - Dst: gf_isom_is_same_sample_description
      Src: /src/gpac/src/filters/mux_isom.c:4519,1
    - Dst: gf_isom_remove_stream_description
      Src: /src/gpac/src/filters/mux_isom.c:4520,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:4528,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:4531,1
    - Dst: gf_isom_piff_allocate_storage
      Src: /src/gpac/src/filters/mux_isom.c:4535,1
    - Dst: gf_isom_cenc_allocate_storage
      Src: /src/gpac/src/filters/mux_isom.c:4537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4540,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4540,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/mux_isom.c:4550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4561,1
    - Dst: gf_isom_fragment_set_cenc_sai
      Src: /src/gpac/src/filters/mux_isom.c:4573,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/filters/mux_isom.c:4578,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:4582,1
    - Dst: gf_isom_set_sample_cenc_group
      Src: /src/gpac/src/filters/mux_isom.c:4583,1
    - Dst: gf_isom_set_sample_cenc_group
      Src: /src/gpac/src/filters/mux_isom.c:4603,1
    - Dst: gf_isom_set_sample_cenc_default_group
      Src: /src/gpac/src/filters/mux_isom.c:4606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4610,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:4610,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4614,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:4617,1
    - Dst: gf_isom_set_sample_group_description
      Src: /src/gpac/src/filters/mux_isom.c:4619,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:4619,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:4630,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4632,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/mux_isom.c:4634,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4644,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4656,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_isom.c:4657,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:4658,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/mux_isom.c:4661,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:4662,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:4673,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/mux_isom.c:4690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4693,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4699,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/mux_isom.c:4707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4711,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:4723,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4725,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:4733,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4736,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:4738,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:4752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4765,1
    - Dst: gf_isom_fragment_set_cenc_sai
      Src: /src/gpac/src/filters/mux_isom.c:4770,1
    - Dst: gf_isom_fragment_set_cenc_sai
      Src: /src/gpac/src/filters/mux_isom.c:4772,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/filters/mux_isom.c:4779,1
    - Dst: gf_isom_track_cenc_add_sample_info
      Src: /src/gpac/src/filters/mux_isom.c:4781,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:4784,1
    CyclomaticComplexity: 78
    EdgeCount: 78
    ICount: 284
    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: 4786
      start: 4424
    functionDepth: 9
    functionLinenumber: 4424
    functionLinenumberEnd: 4786
    functionName: mp4_mux_cenc_update
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_isom_piff_allocate_storage
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - gf_filter_pck_get_crypt_flags
    - gf_bs_del
    - gf_isom_is_same_sample_description
    - gf_malloc
    - mp4_mux_cenc_insert_pssh
    - gf_isom_remove_stream_description
    - memcpy
    - gf_isom_get_sample_description_count
    - gf_isom_set_sample_cenc_default_group
    - gf_isom_cenc_allocate_storage
    - gf_bs_write_long_int
    - gf_isom_set_sample_group_description
    - gf_error_to_string
    - gf_isom_clone_sample_description
    - gf_free
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_isom_modify_alternate_brand
    - gf_isom_track_cenc_add_sample_info
    - GF_4CC
    - gf_cenc_key_info_get_iv_size
    - gf_bs_write_u16
    - gf_isom_fragment_set_cenc_sai
    - gf_bs_write_u32
    - gf_isom_set_sample_cenc_group
    - memset
    - gf_isom_set_cenc_protection
    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:4790,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4794
      start: 4788
    functionDepth: 0
    functionLinenumber: 4788
    functionLinenumberEnd: 4794
    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:4820,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:4820,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/mux_isom.c:4825,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_isom.c:4830,1
    - Dst: gf_filter_pck_dangling_copy
      Src: /src/gpac/src/filters/mux_isom.c:4831,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:4833,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:4835,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:4842,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:4843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4847,1
    - Dst: gf_filter_pid_get_min_pck_duration
      Src: /src/gpac/src/filters/mux_isom.c:4850,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:4855,1
    - Dst: mp4_mux_update_init_edit
      Src: /src/gpac/src/filters/mux_isom.c:4871,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4880,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4888,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:4895,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:4897,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:4911,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:4914,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:4924,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:4932,1
    - Dst: gf_isom_patch_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:4963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:4966,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:4966,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/mux_isom.c:5008,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5017,1
    - Dst: gf_isom_fragment_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5024,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5029,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:5030,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:5036,1
    - Dst: gf_isom_add_sample_reference
      Src: /src/gpac/src/filters/mux_isom.c:5038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5040,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:5040,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5040,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5043,1
    - Dst: gf_isom_fragment_append_data
      Src: /src/gpac/src/filters/mux_isom.c:5048,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/filters/mux_isom.c:5053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5057,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5057,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5062,1
    - Dst: gf_isom_fragment_add_sample_ex
      Src: /src/gpac/src/filters/mux_isom.c:5116,1
    - Dst: gf_isom_fragment_append_data
      Src: /src/gpac/src/filters/mux_isom.c:5118,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/mux_isom.c:5121,1
    - Dst: gf_isom_fragment_append_data
      Src: /src/gpac/src/filters/mux_isom.c:5122,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/mux_isom.c:5124,1
    - Dst: gf_isom_fragment_append_data_ex
      Src: /src/gpac/src/filters/mux_isom.c:5126,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:5128,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:5130,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5138,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/filters/mux_isom.c:5140,1
    - Dst: gf_isom_append_sample_data
      Src: /src/gpac/src/filters/mux_isom.c:5142,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/mux_isom.c:5147,1
    - Dst: gf_isom_fragment_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5148,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/mux_isom.c:5150,1
    - Dst: gf_isom_fragment_add_sample_ex
      Src: /src/gpac/src/filters/mux_isom.c:5152,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:5154,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:5156,1
    - Dst: gf_isom_add_sample
      Src: /src/gpac/src/filters/mux_isom.c:5163,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:5165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5170,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/mux_isom.c:5170,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5170,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5172,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:5176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5178,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5178,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5189,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5191,1
    - Dst: gf_isom_fragment_add_sample_references
      Src: /src/gpac/src/filters/mux_isom.c:5195,1
    - Dst: gf_isom_set_sample_references
      Src: /src/gpac/src/filters/mux_isom.c:5197,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5199,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5199,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5207,1
    - Dst: gf_isom_fragment_set_sample_rap_group
      Src: /src/gpac/src/filters/mux_isom.c:5230,1
    - Dst: gf_isom_set_sample_rap_group
      Src: /src/gpac/src/filters/mux_isom.c:5235,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5238,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5238,1
    - Dst: gf_filter_pck_get_switch_frame
      Src: /src/gpac/src/filters/mux_isom.c:5244,1
    - Dst: gf_isom_fragment_set_sample_av1_switch_frame_group
      Src: /src/gpac/src/filters/mux_isom.c:5247,1
    - Dst: gf_isom_set_sample_av1_switch_frame_group
      Src: /src/gpac/src/filters/mux_isom.c:5252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5255,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5255,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/mux_isom.c:5262,1
    - Dst: gf_isom_fragment_set_sample_roll_group
      Src: /src/gpac/src/filters/mux_isom.c:5271,1
    - Dst: gf_isom_set_sample_roll_group
      Src: /src/gpac/src/filters/mux_isom.c:5276,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5279,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:5279,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5286,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5292,1
    - Dst: gf_isom_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5295,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:5301,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_isom.c:5302,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/mux_isom.c:5304,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:5305,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:5306,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:5307,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/mux_isom.c:5308,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/mux_isom.c:5309,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5313,1
    - Dst: gf_isom_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5316,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5322,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5326,1
    - Dst: gf_isom_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5329,1
    - Dst: gf_isom_fragment_add_subsample
      Src: /src/gpac/src/filters/mux_isom.c:5340,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/mux_isom.c:5345,1
    - Dst: gf_isom_fragment_set_sample_flags
      Src: /src/gpac/src/filters/mux_isom.c:5355,1
    - Dst: gf_isom_set_sample_flags
      Src: /src/gpac/src/filters/mux_isom.c:5358,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_isom.c:5369,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:5375,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:5377,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:5380,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:5387,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5389,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5392,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_isom.c:5399,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:5401,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/mux_isom.c:5403,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:5407,1
    - Dst: gf_isom_set_sample_description_restricted
      Src: /src/gpac/src/filters/mux_isom.c:5415,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5415,1
    - Dst: gf_isom_set_sample_group_description
      Src: /src/gpac/src/filters/mux_isom.c:5420,1
    - Dst: gf_isom_fragment_set_sample_aux_info
      Src: /src/gpac/src/filters/mux_isom.c:5425,1
    - Dst: gf_isom_add_sample_aux_info
      Src: /src/gpac/src/filters/mux_isom.c:5428,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:5435,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:5440,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:5443,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:5460,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_isom.c:5461,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:5464,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:5474,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:5475,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:5484,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: 5504
      start: 4802
    functionDepth: 10
    functionLinenumber: 4802
    functionLinenumberEnd: 5504
    functionName: mp4_mux_process_sample
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_dangling_copy
    - gf_isom_get_media_duration
    - gf_isom_fragment_set_sample_rap_group
    - gf_isom_add_sample
    - mp4_mux_update_init_edit
    - gf_filter_pck_get_duration
    - strncmp
    - GF_FEVT_INIT
    - gf_filter_pid_get_min_pck_duration
    - gf_bs_new
    - gf_sys_old_arch_compat
    - gf_filter_pck_get_crypt_flags
    - gf_isom_set_sample_av1_switch_frame_group
    - gf_filter_pid_send_event
    - gf_bs_reassign_buffer
    - gf_list_add
    - gf_filter_pck_get_frame_interface
    - strstr
    - gf_isom_append_sample_data
    - gf_timestamp_greater
    - mp4_mux_cenc_update
    - gf_isom_set_sample_references
    - gf_isom_set_sample_rap_group
    - gf_timestamp_rescale
    - gf_isom_patch_last_sample_duration
    - gf_isom_set_sample_roll_group
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_isom_fragment_add_sample
    - gf_isom_fragment_add_sample_ex
    - gf_filter_pck_get_dts
    - gf_isom_fragment_add_subsample
    - gf_isom_fragment_append_data
    - gf_isom_fragment_set_sample_roll_group
    - gf_filter_pck_enum_properties
    - gf_filter_pck_unref
    - gf_isom_fragment_set_sample_av1_switch_frame_group
    - atoi
    - gf_timestamp_greater_or_equal
    - gf_filter_pck_ref
    - gf_isom_set_sample_flags
    - gf_filter_pid_get_name
    - gf_filter_pck_get_cts
    - gf_filter_pck_is_blocking_ref
    - gf_isom_set_sample_description_restricted
    - strcmp
    - gf_filter_pck_get_roll_info
    - gf_bs_read_u32
    - strlen
    - gf_isom_set_sample_group_description
    - mp4_mux_get_sap
    - sscanf
    - gf_error_to_string
    - gf_isom_set_last_sample_duration
    - gf_filter_pck_get_property
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_get_switch_frame
    - GF_LOG
    - gf_isom_fragment_set_sample_flags
    - gf_isom_add_sample_aux_info
    - gf_isom_add_subsample
    - GF_4CC
    - gf_isom_fragment_append_data_ex
    - gf_isom_fragment_add_sample_references
    - gf_filter_pck_get_timescale
    - gf_isom_fragment_set_sample_aux_info
    - gf_isom_add_sample_reference
    - memset
    - gf_bs_available
    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:5518,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5523,1
    - Dst: gf_isom_get_meta_type
      Src: /src/gpac/src/filters/mux_isom.c:5528,1
    - Dst: gf_isom_set_meta_type
      Src: /src/gpac/src/filters/mux_isom.c:5530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5532,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:5532,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:5539,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_isom.c:5541,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5542,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5552,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:5556,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5559,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5561,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5562,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5572,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5575,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5579,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5584,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5601,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5604,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5609,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5627,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5628,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5649,1
    - Dst: gf_odf_iamf_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5650,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5662,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:5664,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/mux_isom.c:5665,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:5666,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:5677,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/mux_isom.c:5681,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5696,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5700,1
    - Dst: gf_pixel_fmt_get_uncc
      Src: /src/gpac/src/filters/mux_isom.c:5703,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:5705,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5710,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/mux_isom.c:5710,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5714,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5716,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5718,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5720,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5728,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5731,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5733,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5736,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5738,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5740,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5742,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:5745,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5750,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/mux_isom.c:5758,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5759,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5760,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5762,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5763,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5764,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5770,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5772,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5773,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5774,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5781,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5782,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5783,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5788,1
    - Dst: gf_cenc_validate_key_info
      Src: /src/gpac/src/filters/mux_isom.c:5789,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:5790,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5791,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5792,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5800,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:5808,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/filters/mux_isom.c:5813,1
    - Dst: gf_isom_add_meta_item_memory
      Src: /src/gpac/src/filters/mux_isom.c:5815,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:5817,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5818,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/filters/mux_isom.c:5824,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:5827,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/src/filters/mux_isom.c:5829,1
    - Dst: gf_isom_get_meta_primary_item_id
      Src: /src/gpac/src/filters/mux_isom.c:5833,1
    - Dst: gf_isom_set_meta_primary_item
      Src: /src/gpac/src/filters/mux_isom.c:5834,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:5839,1
    - Dst: gf_isom_reset_alt_brands
      Src: /src/gpac/src/filters/mux_isom.c:5840,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:5844,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:5848,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/filters/mux_isom.c:5850,1
    - Dst: gf_isom_meta_add_item_ref
      Src: /src/gpac/src/filters/mux_isom.c:5856,1
    CyclomaticComplexity: 102
    EdgeCount: 102
    ICount: 339
    argCount: 3
    argNames:
    - ctx
    - tkw
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5860
      start: 5506
    functionDepth: 10
    functionLinenumber: 5506
    functionLinenumberEnd: 5860
    functionName: mp4_mux_process_item
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_isom_get_meta_type
    - gf_codecid_name
    - gf_odf_vvc_cfg_read
    - gf_pixel_fmt_get_uncc
    - gf_cenc_validate_key_info
    - gf_bs_new
    - gf_filter_pck_get_crypt_flags
    - gf_bs_del
    - gf_isom_reset_alt_brands
    - gf_isom_box_del
    - gf_filter_pck_get_frame_interface
    - gf_odf_av1_cfg_read
    - gf_isom_meta_add_item_ref
    - gf_isom_set_meta_type
    - gf_isom_add_meta_item_memory
    - gf_odf_hevc_cfg_read
    - gf_filter_pck_get_data
    - gf_isom_box_new
    - mp4_mux_cenc_insert_pssh
    - gf_isom_get_meta_item_info
    - gf_odf_avc_cfg_read
    - gf_isom_set_brand_info
    - gf_filter_pck_get_property_str
    - gf_isom_set_meta_primary_item
    - gf_odf_iamf_cfg_read
    - gf_isom_get_meta_item_count
    - gf_filter_pid_get_property_str
    - gf_free
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_isom_box_parse
    - GF_4CC
    - gf_isom_modify_alternate_brand
    - gf_isom_get_meta_primary_item_id
    - memset
    - gf_4cc_to_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:5866,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5867,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:5867,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5869,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/mux_isom.c:5869,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5874,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/mux_isom.c:5874,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:5876,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5879
      start: 5862
    functionDepth: 1
    functionLinenumber: 5862
    functionLinenumberEnd: 5879
    functionName: mp4mux_send_output
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_framing
    - PROP_UINT
    - gf_filter_pck_set_property
    - 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:5887,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:5888,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:5896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5902
      start: 5881
    functionDepth: 1
    functionLinenumber: 5881
    functionLinenumberEnd: 5902
    functionName: mp4_mux_flush_frag_llhas
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - gf_list_get
    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:5915,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:5916,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:5919,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:5924,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/mux_isom.c:5924,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/mux_isom.c:5927,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/mux_isom.c:5928,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/mux_isom.c:5935,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:5936,1
    - Dst: mp4_mux_on_data
      Src: /src/gpac/src/filters/mux_isom.c:5942,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:5947,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:5949,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/mux_isom.c:5950,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:5953,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/mux_isom.c:5955,1
    - Dst: mp4_mux_flush_frag_llhas
      Src: /src/gpac/src/filters/mux_isom.c:5958,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:5962,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_isom.c:5963,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_isom.c:5978,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:5986,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: 5993
      start: 5906
    functionDepth: 2
    functionLinenumber: 5906
    functionLinenumberEnd: 5993
    functionName: mp4_mux_flush_seg
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_filter_pck_set_property
    - gf_filter_pid_send_event
    - gf_filter_pck_get_framing
    - gf_filter_pck_expand
    - gf_malloc
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_get_data
    - gf_list_get
    - mp4_mux_on_data
    - gf_filter_pid_send_flush
    - mp4_mux_flush_frag_llhas
    - PROP_BOOL
    - gf_base64_encode
    - gf_filter_pck_set_duration
    - mp4mux_send_output
    - gf_free
    - gf_filter_pck_set_framing
    - memset
    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:5997,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6004
      start: 5995
    functionDepth: 0
    functionLinenumber: 5995
    functionLinenumberEnd: 6004
    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:6010,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6038,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:6042,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:6045,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:6047,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6056,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6060,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6061,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:6068,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6071,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:6072,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:6074,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6077,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/mux_isom.c:6080,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6101,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:6112,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:6118,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:6120,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:6122,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/mux_isom.c:6123,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_isom.c:6125,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_isom.c:6131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6138,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6155,1
    - Dst: mp4_mux_set_hevc_groups
      Src: /src/gpac/src/filters/mux_isom.c:6187,1
    - Dst: gf_isom_setup_track_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6191,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6193,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6193,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6199,1
    - Dst: gf_isom_setup_track_fragment_template
      Src: /src/gpac/src/filters/mux_isom.c:6201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6203,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:6210,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:6214,1
    - Dst: mp4_mux_track_writer_del
      Src: /src/gpac/src/filters/mux_isom.c:6216,1
    - Dst: gf_isom_enable_traf_inherit
      Src: /src/gpac/src/filters/mux_isom.c:6224,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6228,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6232,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6233,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6239,1
    - Dst: gf_isom_purge_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:6244,1
    - Dst: gf_isom_set_movie_duration
      Src: /src/gpac/src/filters/mux_isom.c:6253,1
    - Dst: gf_isom_set_movie_duration
      Src: /src/gpac/src/filters/mux_isom.c:6259,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:6264,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/mux_isom.c:6265,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6267,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6273,1
    - Dst: gf_isom_get_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:6275,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/mux_isom.c:6276,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:6276,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:6277,1
    - Dst: gf_isom_get_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6281,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/mux_isom.c:6282,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_isom.c:6282,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/mux_isom.c:6283,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:6288,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6291,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6292,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6293,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6294,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6295,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6296,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6297,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6298,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6304,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6306,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:6308,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6314,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6314,1
    - Dst: gf_isom_finalize_for_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6321,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6321,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:6327,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:6335,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:6340,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:6342,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:6345,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:6346,1
    - Dst: strchr
      Src: /src/gpac/src/filters/mux_isom.c:6348,1
    - Dst: atoi
      Src: /src/gpac/src/filters/mux_isom.c:6349,1
    - Dst: gf_isom_set_brand_info
      Src: /src/gpac/src/filters/mux_isom.c:6350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6355,1
    - Dst: mp4mx_setup_dash_vod
      Src: /src/gpac/src/filters/mux_isom.c:6357,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:6398,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:6401,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:6403,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:6404,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:6405,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:6407,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:6409,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:6410,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:6411,1
    - Dst: gf_isom_allocate_sidx
      Src: /src/gpac/src/filters/mux_isom.c:6420,1
    CyclomaticComplexity: 109
    EdgeCount: 109
    ICount: 307
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6426
      start: 6006
    functionDepth: 10
    functionLinenumber: 6006
    functionLinenumberEnd: 6426
    functionName: mp4_mux_initialize_movie
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_duration
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pid_get_packet
    - gf_timestamp_greater
    - strchr
    - gf_isom_enable_traf_inherit
    - mp4_mux_cenc_update
    - gf_isom_allocate_sidx
    - gf_isom_finalize_for_fragment
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_isom_get_brand_info
    - gf_isom_setup_track_fragment
    - gf_list_get
    - gf_isom_apply_box_patch
    - gf_list_insert
    - gf_isom_set_fragment_option
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_isom_purge_track_reference
    - gf_strcpy
    - gf_isom_set_brand_info
    - mp4_mux_set_hevc_groups
    - atoi
    - gf_isom_get_alternate_brand
    - mp4_mux_flush_seg
    - gf_filter_pck_get_cts
    - gf_filter_pid_get_property_str
    - gf_bs_write_data
    - gf_isom_set_movie_duration
    - strlen
    - gf_isom_setup_track_fragment_template
    - gf_filter_pid_is_eos
    - gf_timestamp_less
    - gf_filter_pck_discard
    - gf_error_to_string
    - mp4_mux_track_writer_del
    - gf_filter_pck_get_property
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_isom_modify_alternate_brand
    - gf_list_del_item
    - GF_4CC
    - gf_filter_pck_get_timescale
    - gf_bs_write_u32
    - gf_strdup
    - strncmp
    - gf_4cc_to_str
    - mp4mx_setup_dash_vod
    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:6433,1
    - Dst: gf_isom_set_next_moof_number
      Src: /src/gpac/src/filters/mux_isom.c:6438,1
    - Dst: gf_isom_start_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6449,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6449,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6453,1
    - Dst: gf_isom_set_fragment_template
      Src: /src/gpac/src/filters/mux_isom.c:6456,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:6458,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6467,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6470,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6477,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6477,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6484,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6487,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6494,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6497,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:6500,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:6503,1
    - Dst: mp4_mux_cenc_insert_pssh
      Src: /src/gpac/src/filters/mux_isom.c:6506,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 61
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_MP4MuxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6512
      start: 6430
    functionDepth: 8
    functionLinenumber: 6430
    functionLinenumberEnd: 6512
    functionName: mp4_mux_start_fragment
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_list_get
    - gf_isom_start_fragment
    - mp4_mux_cenc_insert_pssh
    - gf_isom_set_fragment_template
    - gf_isom_box_del
    - gf_isom_set_fragment_option
    - gf_isom_set_next_moof_number
    - gf_error_to_string
    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:6523,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/mux_isom.c:6526,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/mux_isom.c:6530,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/mux_isom.c:6531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6532,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/mux_isom.c:6532,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:6536,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:6537,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_isom.c:6538,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:6541,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:6542,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_isom.c:6544,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6546
      start: 6514
    functionDepth: 2
    functionLinenumber: 6514
    functionLinenumberEnd: 6546
    functionName: mp4_mux_flush_fragmented
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_feof
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_ask_rt_reschedule
    - gf_ftell
    - gf_fread
    - gf_filter_pck_send
    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:6551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6554,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6559,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6563,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6564,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:6570,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6572,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6572,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6576
      start: 6548
    functionDepth: 6
    functionLinenumber: 6548
    functionLinenumberEnd: 6576
    functionName: mp4mx_frag_box_patch
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_filter_pid_get_property_str
    - gf_list_get
    - gf_isom_apply_box_patch
    - 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:6585,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:6589,1
    - Dst: mp4_mux_initialize
      Src: /src/gpac/src/filters/mux_isom.c:6594,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6599,1
    - Dst: mp4_mux_configure_pid
      Src: /src/gpac/src/filters/mux_isom.c:6605,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:6616,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:6620,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6622,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 39
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6626
      start: 6582
    functionDepth: 13
    functionLinenumber: 6582
    functionLinenumberEnd: 6626
    functionName: mp4mx_reload_output
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - mp4_mux_initialize
    - mp4_mux_configure_pid
    - gf_assert
    - gf_list_get
    - gf_strdup
    - mp4_mux_done
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4mx_reload_output(GF_MP4MuxCtx *ctx)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:6633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6635,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/mux_isom.c:6640,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:6642,1
    - Dst: gf_id3_from_bitstream
      Src: /src/gpac/src/filters/mux_isom.c:6643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6645,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:6645,1
    - Dst: gf_id3_tag_free
      Src: /src/gpac/src/filters/mux_isom.c:6646,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:6647,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:6651,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6658,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6659,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:6661,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:6662,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6666,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6667,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:6669,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/mux_isom.c:6669,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/mux_isom.c:6670,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:6679,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:6680,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:6682,1
    - Dst: gf_id3_tag_free
      Src: /src/gpac/src/filters/mux_isom.c:6685,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:6688,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    argCount: 3
    argNames:
    - moof
    - emsg_prop
    - id_sequence
    argTypes:
    - GF_MovieFragmentBox*
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6690
      start: 6629
    functionDepth: 4
    functionLinenumber: 6629
    functionLinenumberEnd: 6690
    functionName: mp4_process_id3
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_del
    - gf_list_add
    - gf_malloc
    - gf_isom_box_new
    - gf_list_get
    - memcpy
    - gf_id3_from_bitstream
    - memcmp
    - strcmp
    - gf_list_new
    - gf_bs_read_u32
    - gf_id3_tag_free
    - gf_error_to_string
    - GF_LOG
    - gf_strdup
    - memset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_process_id3(GF_MovieFragmentBox *moof, const GF_PropertyValue
      *emsg_prop, u32 id_sequence)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/mux_isom.c:6695,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6697,1
    - Dst: scte35dec_get_timing
      Src: /src/gpac/src/filters/mux_isom.c:6703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6704,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:6705,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6711,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:6712,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:6713,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/mux_isom.c:6715,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:6716,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6720,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6723,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:6724,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6731,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:6732,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6735,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6736,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/mux_isom.c:6738,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/mux_isom.c:6742,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 4
    argNames:
    - emsg_prop
    - dts
    - timescale
    - scte35_pending_events
    argTypes:
    - GF_PropertyValue*
    - u64
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6745
      start: 6693
    functionDepth: 4
    functionLinenumber: 6693
    functionLinenumberEnd: 6745
    functionName: mp4_process_scte35
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_malloc
    - GF_LOG
    - gf_strdup
    - gf_timestamp_rescale
    - gf_isom_box_new
    - scte35dec_get_timing
    - gf_list_get
    - gf_isom_box_del
    - gf_list_insert
    - gf_list_add
    - memcpy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err mp4_process_scte35(const GF_PropertyValue *emsg_prop, u64 dts,
      u32 timescale, GF_List *scte35_pending_events)
  - BBCount: 133
    BranchProfiles: []
    Callsites:
    - Dst: mp4_mux_flush_fragmented
      Src: /src/gpac/src/filters/mux_isom.c:6754,1
    - Dst: mp4_mux_initialize_movie
      Src: /src/gpac/src/filters/mux_isom.c:6762,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:6768,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:6776,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:6795,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:6802,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:6809,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/mux_isom.c:6812,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:6819,1
    - Dst: gf_isom_start_segment
      Src: /src/gpac/src/filters/mux_isom.c:6838,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:6841,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6844,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:6849,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6854,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:6855,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6859,1
    - Dst: gf_isom_start_segment
      Src: /src/gpac/src/filters/mux_isom.c:6867,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6881,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6888,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6889,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6897,1
    - Dst: mp4_mux_start_fragment
      Src: /src/gpac/src/filters/mux_isom.c:6906,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6912,1
    - Dst: gf_isom_set_emsg
      Src: /src/gpac/src/filters/mux_isom.c:6914,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:6922,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6926,1
    - Dst: mp4_process_id3
      Src: /src/gpac/src/filters/mux_isom.c:6929,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:6939,1
    - Dst: mp4_process_scte35
      Src: /src/gpac/src/filters/mux_isom.c:6941,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/mux_isom.c:6941,1
    - Dst: mp4mux_check_mpd_start_time
      Src: /src/gpac/src/filters/mux_isom.c:6946,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6962,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:6964,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6965,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6967,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:6969,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:6970,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6974,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6977,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6977,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6977,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6979,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6980,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6980,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6980,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:6990,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6992,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6993,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6993,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6993,1
    - Dst: gf_isom_set_fragment_reference_time
      Src: /src/gpac/src/filters/mux_isom.c:6995,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:6996,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/mux_isom.c:6996,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/mux_isom.c:6996,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:7000,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:7012,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:7020,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:7021,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:7022,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:7027,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7036,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7040,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:7045,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7051,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/mux_isom.c:7064,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:7066,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7076,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7083,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7089,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7096,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7098,1
    - Dst: gf_isom_set_traf_base_media_decode_time
      Src: /src/gpac/src/filters/mux_isom.c:7113,1
    - Dst: gf_isom_set_traf_base_media_decode_time
      Src: /src/gpac/src/filters/mux_isom.c:7115,1
    - Dst: mp4_mux_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:7122,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7128,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7129,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:7136,1
    - Dst: mp4_mux_process_sample
      Src: /src/gpac/src/filters/mux_isom.c:7142,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7144,1
    - Dst: gf_isom_set_fragment_original_duration
      Src: /src/gpac/src/filters/mux_isom.c:7146,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7150,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7152,1
    - Dst: gf_isom_start_fragment
      Src: /src/gpac/src/filters/mux_isom.c:7166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7168,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:7168,1
    - Dst: gf_isom_set_next_moof_number
      Src: /src/gpac/src/filters/mux_isom.c:7171,1
    - Dst: gf_isom_set_fragment_option
      Src: /src/gpac/src/filters/mux_isom.c:7174,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7201,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7202,1
    - Dst: mp4mx_frag_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:7210,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:7228,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7231,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7232,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:7234,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:7235,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/mux_isom.c:7236,1
    - Dst: gf_isom_close_segment
      Src: /src/gpac/src/filters/mux_isom.c:7243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7251,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7260,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7262,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_isom.c:7267,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:7269,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7275,1
    - Dst: gf_isom_flush_fragments
      Src: /src/gpac/src/filters/mux_isom.c:7281,1
    - Dst: memset
      Src: /src/gpac/src/filters/mux_isom.c:7286,1
    - Dst: mp4_mux_on_data
      Src: /src/gpac/src/filters/mux_isom.c:7292,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7294,1
    - Dst: mp4_mux_flush_frag_llhas
      Src: /src/gpac/src/filters/mux_isom.c:7303,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7307,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7321,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:7322,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:7323,1
    - Dst: mp4mx_reload_output
      Src: /src/gpac/src/filters/mux_isom.c:7330,1
    - Dst: gf_isom_flush_sidx
      Src: /src/gpac/src/filters/mux_isom.c:7339,1
    - Dst: gf_isom_flush_sidx
      Src: /src/gpac/src/filters/mux_isom.c:7344,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:7346,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7348,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/mux_isom.c:7350,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/mux_isom.c:7351,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/mux_isom.c:7353,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7359,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:7364,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/mux_isom.c:7374,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:7379,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_isom.c:7381,1
    CyclomaticComplexity: 209
    EdgeCount: 209
    ICount: 511
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7389
      start: 6747
    functionDepth: 14
    functionLinenumber: 6747
    functionLinenumberEnd: 7389
    functionName: mp4_mux_process_fragmented
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_close_segment
    - gf_isom_set_emsg
    - gf_filter_pck_get_duration
    - gf_filter_pid_set_eos
    - gf_assert
    - memset
    - gf_filter_pid_drop_packet
    - gf_isom_set_fragment_original_duration
    - gf_isom_box_del
    - gf_filter_pid_get_packet
    - gf_list_add
    - mp4_process_id3
    - gf_timestamp_rescale
    - mp4_mux_process_sample
    - mp4_mux_flush_fragmented
    - gf_fflush
    - gf_net_get_utc
    - mp4_mux_initialize_movie
    - gf_list_get
    - gf_realloc
    - gf_isom_set_fragment_option
    - mp4_mux_on_data
    - gf_filter_pck_get_dts
    - gf_timestamp_greater_or_equal
    - gf_filter_pck_get_property_str
    - gf_isom_flush_fragments
    - gf_isom_start_segment
    - gf_isom_set_fragment_reference_time
    - gf_filter_pck_unref
    - mp4mx_reload_output
    - gf_sys_clock_high_res
    - gf_isom_start_fragment
    - mp4_mux_flush_seg
    - gf_filter_pck_get_cts
    - mp4_mux_flush_frag_llhas
    - gf_ftell
    - mp4mx_frag_box_patch
    - gf_list_new
    - mp4mux_send_output
    - gf_filter_pid_is_eos
    - gf_list_pop_back
    - mp4_mux_start_fragment
    - mp4_mux_get_sap
    - gf_isom_set_next_moof_number
    - gf_error_to_string
    - gf_filter_pck_discard
    - gf_isom_flush_sidx
    - gf_free
    - mp4mux_check_mpd_start_time
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_fseek
    - gf_isom_set_traf_base_media_decode_time
    - gf_isom_close
    - gf_strdup
    - mp4_process_scte35
    - gf_filter_pid_is_flush_eos
    - gf_isom_get_timescale
    - gf_list_rem
    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:7401,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7402,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7406,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_isom.c:7412,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - services
    - tkw
    argTypes:
    - GF_List*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7414
      start: 7398
    functionDepth: 1
    functionLinenumber: 7398
    functionLinenumberEnd: 7414
    functionName: get_service_info
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_list_add
    - gf_list_get
    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:7417,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:7418,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:7419,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:7421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - services
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7422
      start: 7415
    functionDepth: 3
    functionLinenumber: 7415
    functionLinenumberEnd: 7422
    functionName: del_service_info
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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:7427,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:7434,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7437,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:7439,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:7441,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:7442,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: 7445
      start: 7424
    functionDepth: 8
    functionLinenumber: 7424
    functionLinenumberEnd: 7445
    functionName: mp4_mux_update_init_edit
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_isom_remove_edits
    - gf_timestamp_rescale
    - gf_sys_old_arch_compat
    - gf_isom_set_edit
    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:7453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7458,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7464,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7465,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7474,1
    - Dst: get_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7477,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7481,1
    - Dst: gf_filter_pid_get_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:7492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7493,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/mux_isom.c:7502,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_isom.c:7505,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:7506,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7508,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7515,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7522,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7524,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/mux_isom.c:7528,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7529,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:7546,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:7548,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7552,1
    - Dst: gf_isom_setup_track_fragment_template
      Src: /src/gpac/src/filters/mux_isom.c:7554,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/mux_isom.c:7559,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/mux_isom.c:7578,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7582,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7584,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:7588,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_isom.c:7604,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7611,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7612,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7624,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/mux_isom.c:7627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:7628,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/mux_isom.c:7633,1
    - Dst: del_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7634,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/mux_isom.c:7637,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7642,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7643,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7650,1
    - Dst: get_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7651,1
    - Dst: mp4_mux_update_init_edit
      Src: /src/gpac/src/filters/mux_isom.c:7658,1
    - Dst: del_service_info
      Src: /src/gpac/src/filters/mux_isom.c:7662,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 175
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7663
      start: 7447
    functionDepth: 10
    functionLinenumber: 7447
    functionLinenumberEnd: 7663
    functionName: mp4_mux_config_timing
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - mp4_mux_update_init_edit
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - del_service_info
    - mp4_mux_cenc_update
    - gf_timestamp_rescale
    - gf_list_find
    - gf_filter_pck_get_seek_flag
    - gf_list_get
    - gf_filter_pck_get_dts
    - get_service_info
    - gf_sys_clock
    - gf_filter_pck_get_cts
    - gf_filter_pck_is_blocking_ref
    - gf_list_new
    - gf_isom_setup_track_fragment_template
    - gf_filter_pid_is_eos
    - gf_timestamp_less
    - gf_filter_pck_discard
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    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:7670,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7678,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7685,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7693,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7696,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7698,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7705,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7707,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7710,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7712,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7715,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:7720,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7749,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_isom.c:7752,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7754,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/mux_isom.c:7756,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/mux_isom.c:7759,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:7761,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 80
    argCount: 3
    argNames:
    - ctx
    - done
    - total
    argTypes:
    - GF_MP4MuxCtx*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7762
      start: 7665
    functionDepth: 5
    functionLinenumber: 7665
    functionLinenumberEnd: 7762
    functionName: mp4_mux_format_report
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_list_count
    - gf_free
    - gf_isom_get_media_duration
    - gf_dynstrcat
    - gf_list_get
    - gf_filter_reporting_enabled
    - gf_filter_update_status
    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:7768,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:7769,1
    - Dst: mp4_mux_config_timing
      Src: /src/gpac/src/filters/mux_isom.c:7774,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:7776,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/mux_isom.c:7785,1
    - Dst: mp4_mux_flush_seg_events
      Src: /src/gpac/src/filters/mux_isom.c:7790,1
    - Dst: mp4_mux_process_fragmented
      Src: /src/gpac/src/filters/mux_isom.c:7792,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:7794,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7805,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_isom.c:7806,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_isom.c:7817,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/mux_isom.c:7817,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7835,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7842,1
    - Dst: mp4mux_check_mpd_start_time
      Src: /src/gpac/src/filters/mux_isom.c:7844,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7848,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_isom.c:7849,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/mux_isom.c:7857,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_isom.c:7868,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/mux_isom.c:7878,1
    - Dst: mp4_mux_cenc_update
      Src: /src/gpac/src/filters/mux_isom.c:7885,1
    - Dst: mp4_mux_process_item
      Src: /src/gpac/src/filters/mux_isom.c:7888,1
    - Dst: mp4_mux_process_sample
      Src: /src/gpac/src/filters/mux_isom.c:7890,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_isom.c:7893,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:7899,1
    - Dst: mp4mx_reload_output
      Src: /src/gpac/src/filters/mux_isom.c:7902,1
    - Dst: mp4_mux_done
      Src: /src/gpac/src/filters/mux_isom.c:7907,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:7918,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/mux_isom.c:7922,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 131
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7926
      start: 7766
    functionDepth: 15
    functionLinenumber: 7766
    functionLinenumberEnd: 7926
    functionName: mp4_mux_process
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - mp4_mux_flush_seg_events
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - mp4_mux_done
    - gf_timestamp_greater
    - gf_filter_get_udta
    - mp4_mux_cenc_update
    - mp4_mux_config_timing
    - mp4_mux_process_sample
    - gf_list_get
    - mp4_mux_process_fragmented
    - gf_filter_connections_pending
    - mp4mx_reload_output
    - gf_filter_pck_get_cts
    - gf_set_progress
    - gf_filter_pid_is_eos
    - mp4_mux_process_item
    - mp4mux_check_mpd_start_time
    - gf_filter_pck_get_property
    - mp4_mux_format_report
    - gf_strdup
    - gf_filter_pid_is_flush_eos
    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:7933,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:7936,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:7937,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:7938,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/mux_isom.c:7940,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:7941,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:7942,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: 7944
      start: 7928
    functionDepth: 1
    functionLinenumber: 7928
    functionLinenumberEnd: 7944
    functionName: mp4_mux_on_data_patch
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_interlaced
    - memcpy
    - 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:7949,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:7953,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP4MuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7969
      start: 7946
    functionDepth: 3
    functionLinenumber: 7946
    functionLinenumberEnd: 7969
    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:7973,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/mux_isom.c:7976,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: 7977
      start: 7971
    functionDepth: 1
    functionLinenumber: 7971
    functionLinenumberEnd: 7977
    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: 7987
      start: 7979
    functionDepth: 0
    functionLinenumber: 7979
    functionLinenumberEnd: 7987
    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:7998,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:8005,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:8008,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:8009,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:8010,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:8011,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/mux_isom.c:8012,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:8013,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_isom.c:8016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8019,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:8023,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:8026,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/mux_isom.c:8027,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/mux_isom.c:8028,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/mux_isom.c:8029,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:8031,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_isom.c:8032,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/mux_isom.c:8033,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_isom.c:8035,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:8036,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_isom.c:8037,1
    - Dst: mp4_mux_flush_seg
      Src: /src/gpac/src/filters/mux_isom.c:8039,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/mux_isom.c:8044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8046,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/mux_isom.c:8053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8054,1
    - Dst: gf_filter_pck_new_ref_destructor
      Src: /src/gpac/src/filters/mux_isom.c:8060,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/mux_isom.c:8062,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_isom.c:8064,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8065,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_isom.c:8065,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/mux_isom.c:8065,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:8066,1
    - Dst: gf_filter_pck_new_alloc_destructor
      Src: /src/gpac/src/filters/mux_isom.c:8070,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/mux_isom.c:8072,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_isom.c:8077,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_isom.c:8079,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8084,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_isom.c:8084,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8085,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:8085,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8087,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/mux_isom.c:8087,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8090,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_isom.c:8090,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/mux_isom.c:8095,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:8098,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:8102,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/mux_isom.c:8104,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/mux_isom.c:8109,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_isom.c:8109,1
    - Dst: mp4mux_send_output
      Src: /src/gpac/src/filters/mux_isom.c:8118,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: 8121
      start: 7989
    functionDepth: 7
    functionLinenumber: 7989
    functionLinenumberEnd: 8121
    functionName: mp4_mux_on_data
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 2
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_duration
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pck_set_property
    - gf_fwrite
    - PROP_FRAC64
    - gf_bs_skip_bytes
    - gf_filter_pck_set_seek_flag
    - gf_timestamp_rescale
    - gf_list_find
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_new_ref_destructor
    - gf_filter_pck_new_alloc_destructor
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - mp4_mux_flush_seg
    - PROP_STRING
    - gf_bs_write_data
    - gf_filter_pck_set_duration
    - mp4mux_send_output
    - gf_filter_pck_new_ref
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_list_del_item
    - PROP_UINT
    - gf_filter_pck_get_timescale
    - gf_filter_pck_set_byte_offset
    - gf_bs_write_u32
    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:8126,1
    - Dst: mp4_mux_format_report
      Src: /src/gpac/src/filters/mux_isom.c:8128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - udta
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8129
      start: 8123
    functionDepth: 6
    functionLinenumber: 8123
    functionLinenumberEnd: 8129
    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: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/mux_isom.c:8133,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/mux_isom.c:8134,1
    - Dst: time
      Src: /src/gpac/src/filters/mux_isom.c:8136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8149,1
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/filters/mux_isom.c:8152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8154,1
    - Dst: gf_filter_act_as_sink
      Src: /src/gpac/src/filters/mux_isom.c:8158,1
    - Dst: gf_isom_open
      Src: /src/gpac/src/filters/mux_isom.c:8169,1
    - Dst: gf_isom_set_write_callback
      Src: /src/gpac/src/filters/mux_isom.c:8172,1
    - Dst: gf_isom_set_progress_callback
      Src: /src/gpac/src/filters/mux_isom.c:8174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8181,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8186,1
    - Dst: gf_isom_enable_auto_track_reorder
      Src: /src/gpac/src/filters/mux_isom.c:8190,1
    - Dst: gf_isom_enable_mfra
      Src: /src/gpac/src/filters/mux_isom.c:8211,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:8217,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:8220,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_isom.c:8223,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_isom.c:8231,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_isom.c:8232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8234,1
    - Dst: gf_isom_enable_compression
      Src: /src/gpac/src/filters/mux_isom.c:8241,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/mux_isom.c:8273,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/mux_isom.c:8274,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/mux_isom.c:8275,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/mux_isom.c:8276,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 111
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8280
      start: 8131
    functionDepth: 5
    functionLinenumber: 8131
    functionLinenumberEnd: 8280
    functionName: mp4_mux_initialize
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - time
    - gf_isom_enable_auto_track_reorder
    - gf_filter_get_udta
    - gf_isom_enable_mfra
    - GF_LOG
    - gf_isom_open
    - gf_isom_set_storage_mode
    - gf_isom_get_mode
    - GF_4CC
    - gf_isom_enable_compression
    - strlen
    - gf_filter_set_max_extra_input_pids
    - gf_list_new
    - gf_isom_set_progress_callback
    - gf_isom_set_write_callback
    - gf_filter_add_status_metric
    - gf_filter_act_as_sink
    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:8291,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:8293,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/mux_isom.c:8300,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:8301,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8303,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8306,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/mux_isom.c:8310,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8312,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8313,1
    - Dst: ABS
      Src: /src/gpac/src/filters/mux_isom.c:8315,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8319,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - tkw
    - ctts_mode
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8321
      start: 8283
    functionDepth: 8
    functionLinenumber: 8283
    functionLinenumberEnd: 8321
    functionName: mp4_mux_update_edit_list_for_bframes
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_isom_set_edit
    - gf_isom_get_sample_count
    - gf_timestamp_rescale
    - gf_sys_old_arch_compat
    - ABS
    - gf_isom_remove_edits
    - gf_isom_get_edit_list_type
    - gf_isom_get_sample_duration
    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:8334,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:8337,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/filters/mux_isom.c:8338,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8340,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:8343,1
    - Dst: gf_isom_add_sample_group_info
      Src: /src/gpac/src/filters/mux_isom.c:8344,1
    - Dst: gf_isom_set_track_group
      Src: /src/gpac/src/filters/mux_isom.c:8345,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:8345,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8348,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_isom.c:8351,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/mux_isom.c:8357,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/mux_isom.c:8358,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/filters/mux_isom.c:8359,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/mux_isom.c:8360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8390,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:8392,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:8393,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/mux_isom.c:8396,1
    - Dst: gf_isom_set_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:8397,1
    - Dst: gf_isom_remove_sample_group
      Src: /src/gpac/src/filters/mux_isom.c:8398,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8401
      start: 8327
    functionDepth: 6
    functionLinenumber: 8327
    functionLinenumberEnd: 8401
    functionName: mp4_mux_set_hevc_groups
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_isom_get_track_id
    - gf_isom_get_media_subtype
    - gf_isom_get_track_count
    - GF_LOG
    - gf_filter_release_property
    - gf_isom_add_sample_group_info
    - gf_isom_get_original_format_type
    - gf_filter_pid_get_info_str
    - gf_isom_remove_sample_group
    - gf_isom_set_track_reference
    - gf_isom_set_track_group
    - gf_isom_is_media_encrypted
    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:8413,1
    - Dst: gf_isom_set_ctts_v1
      Src: /src/gpac/src/filters/mux_isom.c:8419,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/filters/mux_isom.c:8423,1
    - Dst: gf_isom_shift_cts_offset
      Src: /src/gpac/src/filters/mux_isom.c:8424,1
    - Dst: gf_isom_set_cts_packing
      Src: /src/gpac/src/filters/mux_isom.c:8425,1
    - Dst: gf_isom_set_composition_offset_mode
      Src: /src/gpac/src/filters/mux_isom.c:8426,1
    - Dst: mp4_mux_update_edit_list_for_bframes
      Src: /src/gpac/src/filters/mux_isom.c:8428,1
    - Dst: mp4_mux_update_edit_list_for_bframes
      Src: /src/gpac/src/filters/mux_isom.c:8432,1
    - Dst: gf_isom_update_edit_list_duration
      Src: /src/gpac/src/filters/mux_isom.c:8436,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:8441,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8457,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8458,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8463,1
    - Dst: gf_isom_remove_edits
      Src: /src/gpac/src/filters/mux_isom.c:8465,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8467,1
    - Dst: gf_isom_set_edit
      Src: /src/gpac/src/filters/mux_isom.c:8468,1
    - Dst: gf_isom_force_ctts
      Src: /src/gpac/src/filters/mux_isom.c:8473,1
    - Dst: gf_isom_purge_track_reference
      Src: /src/gpac/src/filters/mux_isom.c:8476,1
    - Dst: gf_isom_get_media_duration
      Src: /src/gpac/src/filters/mux_isom.c:8479,1
    - Dst: gf_isom_get_track_duration
      Src: /src/gpac/src/filters/mux_isom.c:8480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8496,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/src/filters/mux_isom.c:8496,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8501,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/src/filters/mux_isom.c:8501,1
    - Dst: gf_isom_get_esd
      Src: /src/gpac/src/filters/mux_isom.c:8507,1
    - Dst: gf_m4v_rewrite_pl
      Src: /src/gpac/src/filters/mux_isom.c:8509,1
    - Dst: gf_isom_change_mpeg4_description
      Src: /src/gpac/src/filters/mux_isom.c:8510,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/mux_isom.c:8511,1
    - Dst: gf_isom_set_pl_indication
      Src: /src/gpac/src/filters/mux_isom.c:8517,1
    - Dst: gf_isom_refresh_size_info
      Src: /src/gpac/src/filters/mux_isom.c:8523,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8526,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:8527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8532,1
    - Dst: gf_isom_modify_alternate_brand
      Src: /src/gpac/src/filters/mux_isom.c:8534,1
    - Dst: mp4_mux_set_hevc_groups
      Src: /src/gpac/src/filters/mux_isom.c:8537,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8539,1
    - Dst: gf_isom_remove_sample
      Src: /src/gpac/src/filters/mux_isom.c:8541,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/mux_isom.c:8543,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/mux_isom.c:8547,1
    - Dst: gf_isom_set_last_sample_duration
      Src: /src/gpac/src/filters/mux_isom.c:8549,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:8551,1
    - Dst: gf_isom_set_forced_text
      Src: /src/gpac/src/filters/mux_isom.c:8553,1
    - Dst: gf_isom_get_mode
      Src: /src/gpac/src/filters/mux_isom.c:8556,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/mux_isom.c:8559,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_isom.c:8560,1
    - Dst: gf_get_bit_size
      Src: /src/gpac/src/filters/mux_isom.c:8561,1
    - Dst: gf_isom_get_nalu_length_field
      Src: /src/gpac/src/filters/mux_isom.c:8568,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8574,1
    - Dst: gf_media_nal_rewrite_samples
      Src: /src/gpac/src/filters/mux_isom.c:8575,1
    - Dst: gf_isom_set_nalu_length_field
      Src: /src/gpac/src/filters/mux_isom.c:8578,1
    - Dst: gf_media_update_bitrate
      Src: /src/gpac/src/filters/mux_isom.c:8586,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_isom.c:8589,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:8591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8593,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8594,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_isom.c:8600,1
    CyclomaticComplexity: 61
    EdgeCount: 61
    ICount: 146
    argCount: 2
    argNames:
    - ctx
    - tkw
    argTypes:
    - GF_MP4MuxCtx*
    - TrackWriter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8601
      start: 8403
    functionDepth: 10
    functionLinenumber: 8403
    functionLinenumberEnd: 8601
    functionName: mp4_mux_done_track
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_isom_get_media_duration
    - gf_isom_set_composition_offset_mode
    - gf_isom_change_mpeg4_description
    - gf_m4v_rewrite_pl
    - gf_isom_set_nalu_length_field
    - gf_isom_remove_edits
    - gf_isom_get_nalu_length_field
    - gf_isom_update_edit_list_duration
    - mp4_mux_update_edit_list_for_bframes
    - gf_isom_set_ctts_v1
    - gf_isom_remove_sample
    - gf_isom_set_pl_indication
    - gf_isom_get_esd
    - gf_timestamp_rescale
    - gf_isom_apply_box_patch
    - gf_isom_get_sample_description_count
    - gf_isom_refresh_size_info
    - gf_isom_purge_track_reference
    - mp4_mux_set_hevc_groups
    - gf_isom_set_edit
    - gf_isom_get_mode
    - gf_filter_pid_get_info_str
    - gf_get_bit_size
    - gf_filter_pid_get_property_str
    - gf_error_to_string
    - gf_odf_desc_del
    - gf_isom_force_ctts
    - gf_isom_set_forced_text
    - gf_isom_set_last_sample_duration
    - gf_m4v_get_profile_name
    - GF_LOG
    - gf_isom_get_track_duration
    - gf_isom_modify_alternate_brand
    - gf_filter_release_property
    - gf_isom_set_cts_packing
    - gf_filter_pid_get_info
    - gf_media_update_bitrate
    - gf_media_nal_rewrite_samples
    - gf_isom_shift_cts_offset
    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:8609,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_isom.c:8611,1
    - Dst: mp4_mux_done_track
      Src: /src/gpac/src/filters/mux_isom.c:8612,1
    - Dst: gf_isom_apply_box_patch
      Src: /src/gpac/src/filters/mux_isom.c:8616,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8618,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8618,1
    - Dst: gf_isom_set_inplace_padding
      Src: /src/gpac/src/filters/mux_isom.c:8626,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8631,1
    - Dst: gf_isom_make_interleave_ex
      Src: /src/gpac/src/filters/mux_isom.c:8634,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8638,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8641,1
    - Dst: gf_isom_set_storage_mode
      Src: /src/gpac/src/filters/mux_isom.c:8644,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8648,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8648,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/filters/mux_isom.c:8649,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/mux_isom.c:8651,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8653,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_isom.c:8653,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_isom.c:8658,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 2
    argNames:
    - ctx
    - is_final
    argTypes:
    - GF_MP4MuxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8663
      start: 8604
    functionDepth: 11
    functionLinenumber: 8604
    functionLinenumberEnd: 8663
    functionName: mp4_mux_done
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_isom_set_inplace_padding
    - GF_LOG
    - gf_list_get
    - gf_isom_close
    - gf_filter_pid_set_eos
    - gf_isom_delete
    - gf_isom_apply_box_patch
    - mp4_mux_done_track
    - gf_isom_set_storage_mode
    - gf_isom_make_interleave_ex
    - gf_error_to_string
    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:8667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_isom.c:8672,1
    - Dst: gf_isom_delete
      Src: /src/gpac/src/filters/mux_isom.c:8674,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:8677,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:8678,1
    - Dst: mp4_mux_track_writer_del
      Src: /src/gpac/src/filters/mux_isom.c:8679,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:8681,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:8683,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:8684,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/mux_isom.c:8685,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:8687,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_isom.c:8688,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_isom.c:8689,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/mux_isom.c:8690,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_isom.c:8692,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_isom.c:8693,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8694,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8695,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/mux_isom.c:8696,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8697,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_isom.c:8699,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 31
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8700
      start: 8665
    functionDepth: 5
    functionLinenumber: 8665
    functionLinenumberEnd: 8700
    functionName: mp4_mux_finalize
    functionSourceFile: /src/gpac/src/filters/mux_isom.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - mp4_mux_track_writer_del
    - gf_filter_pck_unref
    - gf_free
    - gf_filter_get_udta
    - gf_fclose
    - GF_LOG
    - gf_list_del
    - gf_bs_del
    - gf_isom_box_del
    - gf_isom_delete
    - gf_list_pop_back
    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: 8725
      start: 8724
    functionDepth: 0
    functionLinenumber: 8724
    functionLinenumberEnd: 8725
    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: 8994
      start: 8991
    functionDepth: 0
    functionLinenumber: 8991
    functionLinenumberEnd: 8994
    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: 8999
      start: 8996
    functionDepth: 0
    functionLinenumber: 8996
    functionLinenumberEnd: 8999
    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:237,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/reframer.c:238,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:239,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframer.c:242,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:244,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:246,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframer.c:252,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - st
    - do_free
    argTypes:
    - GF_ReframerCtx*
    - RTStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 234
    functionDepth: 2
    functionLinenumber: 234
    functionLinenumberEnd: 253
    functionName: reframer_reset_stream
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_pck_unref
    - gf_list_pop_front
    - 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:257,1
    - Dst: gf_filter_pid_copy_properties
      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: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:264,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:264,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:268,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:268,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/reframer.c:271,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframer.c:272,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:272,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - GF_ReframerCtx*
    - RTStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 274
    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_sys_old_arch_compat
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_set_property_str
    linkageType: ''
    returnType: void
    signature: void reframer_push_props(GF_ReframerCtx *ctx, RTStream *st)
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframer.c:280,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/reframer.c:281,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/reframer.c:286,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:287,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/reframer.c:289,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:291,1
    - Dst: reframer_reset_stream
      Src: /src/gpac/src/filters/reframer.c:292,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/reframer.c:296,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframer.c:300,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframer.c:303,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframer.c:304,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:305,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/reframer.c:306,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframer.c:308,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:313,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:314,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:317,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:318,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:324,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:333,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:349,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/reframer.c:350,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:351,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:353,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:369,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:381,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:395,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/reframer.c:397,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:397,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:407,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:407,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:411,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:411,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/reframer.c:418,1
    - Dst: reframer_push_props
      Src: /src/gpac/src/filters/reframer.c:438,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/reframer.c:441,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 150
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 276
    functionDepth: 3
    functionLinenumber: 276
    functionLinenumberEnd: 445
    functionName: reframer_configure_pid
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - GF_SAFEALLOC
    - gf_list_add
    - reframer_reset_stream
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_push_properties
    - PROP_BOOL
    - gf_list_new
    - gf_filter_pid_check_caps
    - gf_filter_pid_negotiate_property
    - gf_audio_fmt_bit_depth
    - reframer_push_props
    - gf_list_del_item
    - gf_filter_pid_set_property
    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:459,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframer.c:461,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:463,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframer.c:478,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:487,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:488,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:490,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:492,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:499,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:501,1
    - Dst: atoi
      Src: /src/gpac/src/filters/reframer.c:514,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:517,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:517,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:530,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:533,1
    - Dst: atof
      Src: /src/gpac/src/filters/reframer.c:534,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframer.c:539,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/reframer.c:549,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:555,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/filters/reframer.c:556,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/filters/reframer.c:561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:566,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: 570
      start: 447
    functionDepth: 3
    functionLinenumber: 447
    functionLinenumberEnd: 570
    functionName: reframer_parse_date
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - atof
    - strchr
    - gf_free
    - gf_props_parse_value
    - atoi
    - GF_LOG
    - gf_parse_lfrac
    - GF_SAFEALLOC
    - strcmp
    - strlen
    - gf_net_parse_date
    - sscanf
    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:631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:632,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:668,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:690,1
    - Dst: reframer_parse_date
      Src: /src/gpac/src/filters/reframer.c:702,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:703,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:710,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/reframer.c:714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:715,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:738,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:740,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:747,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:748,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:749,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:752,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:763,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:765,1
    - Dst: reframer_push_props
      Src: /src/gpac/src/filters/reframer.c:767,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/reframer.c:768,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframer.c:769,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframer.c:769,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:778,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:781,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframer.c:782,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:783,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:784,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframer.c:785,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 181
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ReframerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 572
    functionDepth: 4
    functionLinenumber: 572
    functionLinenumberEnd: 787
    functionName: reframer_load_range
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_greater_or_equal
    - gf_list_count
    - gf_filter_pid_set_discard
    - reframer_parse_date
    - GF_LOG
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - reframer_push_props
    - gf_timestamp_rescale
    - PROP_STRING
    - gf_list_get
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property_str
    - 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:792,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:793,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframer.c:795,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: 797
      start: 789
    functionDepth: 1
    functionLinenumber: 789
    functionLinenumberEnd: 797
    functionName: reframer_drop_packet
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_unref
    - gf_filter_pid_drop_packet
    - gf_list_rem
    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:806,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframer.c:809,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: 811
      start: 799
    functionDepth: 0
    functionLinenumber: 799
    functionLinenumberEnd: 811
    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: 104
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:821,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:823,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:831,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:863,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:898,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframer.c:933,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframer.c:937,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:938,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframer.c:939,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:950,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:952,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:955,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:964,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/reframer.c:964,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:965,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:965,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/reframer.c:989,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframer.c:992,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframer.c:993,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframer.c:994,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframer.c:995,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframer.c:996,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/reframer.c:997,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframer.c:998,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:999,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:1009,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframer.c:1013,1
    - Dst: reframer_copy_raw_audio
      Src: /src/gpac/src/filters/reframer.c:1015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1017,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1019,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1023,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:1031,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1034,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframer.c:1037,1
    - Dst: reframer_copy_raw_audio
      Src: /src/gpac/src/filters/reframer.c:1040,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1049,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1052,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1053,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1053,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1057,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframer.c:1060,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1064,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1068,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1086,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1086,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframer.c:1088,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1094,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1096,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1098,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframer.c:1098,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/reframer.c:1101,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/reframer.c:1103,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframer.c:1105,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1115,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/reframer.c:1115,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1118,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1118,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1125,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1127,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1129,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframer.c:1129,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:1132,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:1134,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1134,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframer.c:1139,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1144,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1149,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1151,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1152,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1154,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1155,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1156,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1157,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframer.c:1157,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1158,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1166,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1169,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1174,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1175,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:1175,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframer.c:1178,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframer.c:1180,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1184,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1189,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframer.c:1190,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1196,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1200,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1207,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1209,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1216,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframer.c:1222,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1227,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1230,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1232,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:1232,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframer.c:1238,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1239,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1242,1
    - Dst: assert
      Src: /src/gpac/src/filters/reframer.c:1246,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/reframer.c:1252,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1257,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframer.c:1264,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframer.c:1270,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/reframer.c:1272,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframer.c:1272,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframer.c:1274,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframer.c:1276,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1279,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframer.c:1281,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframer.c:1281,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframer.c:1283,1
    - Dst: reframer_drop_packet
      Src: /src/gpac/src/filters/reframer.c:1287,1
    CyclomaticComplexity: 143
    EdgeCount: 143
    ICount: 380
    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: 1245
        line_start: 1245
        source_file: /src/gpac/src/filters/reframer.c
    constantsTouched: []
    func_position:
      end: 1297
      start: 813
    functionDepth: 7
    functionLinenumber: 813
    functionLinenumberEnd: 1297
    functionName: reframer_send_packet
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_pck_new_copy
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pid_drop_packet
    - gf_filter_pck_set_property
    - gf_bs_seek
    - gf_filter_pid_send_event
    - gf_timestamp_greater
    - strchr
    - gf_filter_pck_set_seek_flag
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - reframer_drop_packet
    - gf_list_get
    - gf_dynstrcat
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_timestamp_greater_or_equal
    - gf_filter_pid_get_name
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pck_set_duration
    - strlen
    - gf_bs_read_u32
    - gf_filter_pck_new_ref
    - PROP_STRING_NO_COPY
    - gf_timestamp_less
    - gf_filter_pck_discard
    - sprintf
    - reframer_copy_raw_audio
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_bs_write_u32
    - assert
    linkageType: ''
    returnType: Bool
    signature: Bool reframer_send_packet(GF_Filter *filter, GF_ReframerCtx *ctx, RTStream
      *st, GF_FilterPacket *pck, Bool pck_is_ref)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/reframer.c:1322,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filters/reframer.c:1324,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/reframer.c:1330,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/reframer.c:1340,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/reframer.c:1347,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/reframer.c:1348,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/reframer.c:1350,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1354,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/reframer.c:1364,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1380,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1382,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframer.c:1384,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframer.c:1385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1387,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframer.c:1392,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframer.c:1393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1395,1
    - Dst: gf_timestamp_less_or_equal
      Src: /src/gpac/src/filters/reframer.c:1413,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1416,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1422,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1424,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1425,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1427,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1434,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1436,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1438,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframer.c:1440,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframer.c:1450,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframer.c:1452,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframer.c:1453,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframer.c:1460,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframer.c:1461,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 132
    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: 1466
      start: 1299
    functionDepth: 1
    functionLinenumber: 1299
    functionLinenumberEnd: 1466
    functionName: reframer_check_pck_range
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_filter_pck_get_property
    - gf_net_ntp_to_utc
    - GF_LOG
    - gf_timestamp_less_or_equal
    - gf_sys_clock
    - gf_timestamp_rescale
    - gf_timestamp_rescale_signed
    - gf_net_get_utc
    - gf_filter_reporting_enabled
    - gf_timestamp_greater
    - gf_filter_update_status
    - gf_timestamp_less
    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:1470,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1472,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1482,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1484,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1486,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1488,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframer.c:1490,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframer.c:1491,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - ts
    - timescale
    argTypes:
    - GF_ReframerCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1495
      start: 1468
    functionDepth: 1
    functionLinenumber: 1468
    functionLinenumberEnd: 1495
    functionName: reframer_purge_queues
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_unref
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_cts
    - gf_list_get
    - gf_list_rem
    - 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:1502,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1510,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1511,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1515,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:1516,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1518,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/reframer.c:1522,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - status
    argTypes:
    - GF_ReframerCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1523
      start: 1500
    functionDepth: 1
    functionLinenumber: 1500
    functionLinenumberEnd: 1523
    functionName: reframer_dump_mem
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_data
    - gf_list_get
    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:1529,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1547,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1548,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1563,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1565,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/reframer.c:1567,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1570,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1572,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1609,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1616,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1621,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1638,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/reframer.c:1642,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframer.c:1644,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1646,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1648,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/reframer.c:1651,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1680,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/reframer.c:1685,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1687,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1689,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/reframer.c:1692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1709,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:1710,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1715,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1717,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1719,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/reframer.c:1723,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframer.c:1729,1
    - Dst: reframer_dump_mem
      Src: /src/gpac/src/filters/reframer.c:1754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1761,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1762,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1767,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1769,1
    - Dst: ABS
      Src: /src/gpac/src/filters/reframer.c:1812,1
    - Dst: ABS
      Src: /src/gpac/src/filters/reframer.c:1812,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:1827,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:1838,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframer.c:1850,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframer.c:1852,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframer.c:1858,1
    CyclomaticComplexity: 100
    EdgeCount: 100
    ICount: 244
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ReframerCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1864
      start: 1527
    functionDepth: 2
    functionLinenumber: 1527
    functionLinenumberEnd: 1864
    functionName: check_gop_split
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_greater_or_equal
    - gf_list_count
    - gf_timestamp_less
    - GF_LOG
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_assert
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - ABS
    - reframer_dump_mem
    - gf_list_get
    - gf_list_last
    - gf_timestamp_greater
    - 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:2967,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframer.c:2969,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:2972,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframer.c:2981,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/reframer.c:2982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:2984,1
    - Dst: reframer_load_range
      Src: /src/gpac/src/filters/reframer.c:2989,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframer.c:2992,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/reframer.c:2999,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframer.c:2999,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/reframer.c:3002,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframer.c:3002,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/reframer.c:3005,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframer.c:3005,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3011
      start: 2964
    functionDepth: 5
    functionLinenumber: 2964
    functionLinenumberEnd: 3011
    functionName: reframer_initialize
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - gf_malloc
    - gf_filter_get_udta
    - GF_ARRAY_LENGTH
    - GF_LOG
    - reframer_load_range
    - gf_list_new
    - gf_strdup
    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:3015,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/reframer.c:3019,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/reframer.c:3060,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/reframer.c:3062,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/reframer.c:3063,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframer.c:3072,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3074
      start: 3013
    functionDepth: 1
    functionLinenumber: 3013
    functionLinenumberEnd: 3074
    functionName: reframer_process_event
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_send_event
    - gf_filter_get_ipid
    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:3078,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:3080,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframer.c:3081,1
    - Dst: reframer_reset_stream
      Src: /src/gpac/src/filters/reframer.c:3082,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframer.c:3084,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframer.c:3086,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframer.c:3088,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3089
      start: 3076
    functionDepth: 3
    functionLinenumber: 3076
    functionLinenumberEnd: 3089
    functionName: reframer_finalize
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    - reframer_reset_stream
    linkageType: ''
    returnType: void
    signature: void reframer_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:3094,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframer.c:3094,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframer.c:3095,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframer.c:3096,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframer.c:3098,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: 3104
      start: 3091
    functionDepth: 1
    functionLinenumber: 3091
    functionLinenumberEnd: 3104
    functionName: reframer_update_arg
    functionSourceFile: /src/gpac/src/filters/reframer.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - strcmp
    - gf_list_get
    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: 3122
      start: 3121
    functionDepth: 0
    functionLinenumber: 3121
    functionLinenumberEnd: 3122
    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: 3313
      start: 3310
    functionDepth: 0
    functionLinenumber: 3310
    functionLinenumberEnd: 3313
    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: 3318
      start: 3315
    functionDepth: 0
    functionLinenumber: 3315
    functionLinenumberEnd: 3318
    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:
    - gf_filter_pid_get_property
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_get_opid
    - gf_filter_get_opid_count
    - PROP_FRAC64
    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_count
    - gf_filter_pid_set_info
    - isalnum
    - PROP_STRING
    - gf_list_get
    - gf_sys_is_test_mode
    - 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_filter_pid_get_property
    - gf_list_count
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_bs_new
    - gf_filter_pid_set_name
    - gf_bs_del
    - gf_filter_get_opid
    - gf_codecid_type
    - gf_filter_get_opid_count
    - PROP_FRAC64
    - gf_bs_skip_bytes
    - gf_stream_type_name
    - gf_m2ts_set_pes_framing
    - gf_malloc
    - gf_list_find
    - gf_list_get
    - gf_filter_pid_new
    - gf_bs_read_utf8
    - memcpy
    - PROP_BOOL
    - PROP_STRING
    - m2tsdmx_update_sdt
    - gf_bs_read_u32
    - PROP_STRING_NO_COPY
    - PROP_4CC
    - PROP_DATA
    - sprintf
    - gf_free
    - GF_LOG
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_strdup
    - gf_4cc_to_str
    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_filter_pid_get_property
    - gf_list_count
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_list_get
    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_count
    - m2tsdmx_declare_pid
    - m2tsdmx_setup_scte35
    - gf_list_get
    - gf_m2ts_set_pes_framing
    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_list_count
    - gf_free
    - gf_list_pop_front
    - PROP_DATA_NO_COPY
    - GF_LOG
    - gf_bs_get_content
    - gf_list_del
    - gf_bs_new
    - gf_filter_pid_set_property
    - gf_id3_tag_free
    - gf_bs_del
    - PROP_BOOL
    - snprintf
    - gf_list_new
    - gf_list_add
    - gf_id3_list_to_bitstream
    - gf_filter_pck_set_property_dyn
    - gf_error_to_string
    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:
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - PROP_DOUBLE
    - gf_timestamp_rescale_signed
    - gf_filter_pck_set_property
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - m2tdmx_merge_props
    - m2tsdmx_translate_ts
    - gf_media_nalu_next_start_code
    - PROP_BOOL
    - gf_filter_pck_set_sap
    - gf_media_vc1_seq_header_to_dsi
    - PROP_FRAC64_INT
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_property
    - gf_filter_pck_set_dts
    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:
    - gf_filter_pck_new_alloc
    - gf_list_count
    - m2tsdmx_get_m4sys_stream
    - m2tsdmx_declare_pid
    - gf_filter_pck_set_property
    - gf_odf_codec_del
    - gf_filter_pck_set_carousel_version
    - gf_list_get
    - memcpy
    - gf_filter_pck_send
    - gf_odf_codec_decode
    - gf_list_enum
    - gf_filter_pck_set_cts
    - m2tdmx_merge_props
    - PROP_BOOL
    - gf_filter_pck_set_sap
    - gf_odf_codec_new
    - PROP_FRAC64_INT
    - gf_filter_pck_set_framing
    - gf_odf_sl_depacketize
    - GF_LOG
    - gf_filter_pck_set_dts
    - gf_odf_codec_set_au
    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
    - PROP_UINT
    - gf_assert
    - gf_filter_pid_set_property
    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: 114
    EdgeCount: 114
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - gf_bs_write_int
    - gf_bs_get_content
    - m2tsdmx_prop_free
    - gf_assert
    - gf_bs_new
    - gf_bs_write_u64
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_filter_pck_new_shared
    - gf_filter_pck_set_property
    - gf_list_add
    - gf_bs_write_u8
    - gf_filter_get_udta
    - gf_id3_tag_new
    - m2tsdmx_send_sl_packet
    - gf_filter_pck_set_clock_type
    - gf_fatal_assert
    - gf_list_get
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - m2tsdmx_translate_ts
    - PROP_BOOL
    - m2tsdmx_update_sdt
    - gf_bs_write_data
    - strlen
    - gf_list_new
    - gf_filter_pck_set_sap
    - gf_list_pop_back
    - gf_net_get_utc_ts
    - gf_free
    - PROP_FRAC64_INT
    - m2tsdmx_setup_program
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_list_del
    - m2tsdmx_estimate_duration
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_write_u32
    - m2tsdmx_send_packet
    - gf_filter_pck_set_property_str
    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_filter_pid_get_property
    - gf_feof
    - gf_m2ts_process_data
    - gf_fclose
    - gf_filter_get_udta
    - gf_file_exists
    - gf_fopen
    - gf_m2ts_demux_del
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_m2ts_demux_new
    - gf_filter_pid_remove
    - gf_filter_get_opid
    - gf_fread
    - gf_filter_pid_get_property_str
    - gf_filter_pid_check_caps
    - gf_filter_get_opid_count
    - strncmp
    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_LOG
    - gf_list_count
    - 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: 27
    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:1653,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_m2ts.c:1655,1
    - Dst: m2tsdmx_switch_quality
      Src: /src/gpac/src/filters/dmx_m2ts.c:1656,1
    - Dst: m2tsdmx_get_stream
      Src: /src/gpac/src/filters/dmx_m2ts.c:1670,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1681,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_m2ts.c:1682,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1734,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_m2ts.c:1739,1
    - Dst: m2tsdmx_get_stream
      Src: /src/gpac/src/filters/dmx_m2ts.c:1743,1
    - Dst: gf_m2ts_set_pes_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1750,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 92
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1641
    functionDepth: 7
    functionLinenumber: 1641
    functionLinenumberEnd: 1769
    functionName: m2tsdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - m2tsdmx_get_stream
    - GF_LOG
    - GF_FEVT_INIT
    - m2tsdmx_switch_quality
    - gf_list_get
    - gf_filter_pid_send_event
    - gf_m2ts_set_pes_framing
    linkageType: ''
    returnType: Bool
    signature: Bool m2tsdmx_process_event(GF_Filter *filter, const GF_FilterEvent
      *com)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_m2ts.c:1775,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/filters/dmx_m2ts.c:1778,1
    - Dst: gf_m2ts_demux_dmscc_init
      Src: /src/gpac/src/filters/dmx_m2ts.c:1786,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1773
    functionDepth: 2
    functionLinenumber: 1773
    functionLinenumberEnd: 1792
    functionName: m2tsdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_demux_dmscc_init
    - gf_m2ts_demux_new
    - 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:1797,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/filters/dmx_m2ts.c:1798,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1800
      start: 1795
    functionDepth: 6
    functionLinenumber: 1795
    functionLinenumberEnd: 1800
    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:1806,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_m2ts.c:1814,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_m2ts.c:1816,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1817,1
    - Dst: gf_m2ts_flush_all
      Src: /src/gpac/src/filters/dmx_m2ts.c:1819,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_m2ts.c:1821,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_m2ts.c:1822,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1830,1
    - Dst: gf_m2ts_mark_seg_start
      Src: /src/gpac/src/filters/dmx_m2ts.c:1832,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/src/filters/dmx_m2ts.c:1838,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_m2ts.c:1842,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_m2ts.c:1844,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/dmx_m2ts.c:1845,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_m2ts.c:1847,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_m2ts.c:1854,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_m2ts.c:1860,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1869,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/filters/dmx_m2ts.c:1871,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_m2ts.c:1873,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_m2ts.c:1877,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_m2ts.c:1878,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/src/filters/dmx_m2ts.c:1880,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 62
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1804
    functionDepth: 6
    functionLinenumber: 1804
    functionLinenumberEnd: 1888
    functionName: m2tsdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_m2ts.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_get_opid
    - gf_filter_pid_is_playing
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_filter_get_opid_count
    - gf_filter_pid_would_block
    - gf_m2ts_process_data
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_m2ts_mark_seg_start
    - gf_filter_pid_set_discard
    - gf_m2ts_flush_all
    - gf_filter_pid_is_eos
    - gf_filter_ask_rt_reschedule
    - gf_m2ts_reset_parsers
    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:1892,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1897
      start: 1890
    functionDepth: 8
    functionLinenumber: 1890
    functionLinenumberEnd: 1897
    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: 1918
      start: 1917
    functionDepth: 0
    functionLinenumber: 1917
    functionLinenumberEnd: 1918
    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: 1971
      start: 1964
    functionDepth: 0
    functionLinenumber: 1964
    functionLinenumberEnd: 1971
    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
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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:
    - fprintf
    - strchr
    - ttmlconv_dump_node
    - gf_list_enum
    - strcmp
    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:
    - gf_xml_dom_parse_string
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_xml_dom_del
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - ttml_get_timestamp_ex
    - gf_filter_pid_get_packet
    - gf_xml_dom_get_error
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_file_temp
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - ttml_get_body
    - ttmlconv_dump_node
    - gf_list_enum
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - ttml_parse_root
    - gf_ftell
    - gf_xml_dom_new
    - gf_filter_pck_set_duration
    - strcmp
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - ttml_get_attr
    - gf_xml_dom_get_root
    - gf_fclose
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_fseek
    - gf_filter_pck_set_byte_offset
    - gf_fread
    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_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_filter_set_name
    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_pck_new_alloc
    - gf_filter_pck_discard
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_dependency_flags
    - gf_img_png_dec
    - gf_filter_pck_get_data
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - gf_filter_pck_send
    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_isom_get_track_count
    - gf_free
    - gf_malloc
    - gf_isom_get_chapter_count
    - gf_isom_get_reference_count
    - gf_isom_get_chapter
    - gf_isom_get_sample_count
    - gf_bs_new
    - gf_filter_pid_set_property
    - gf_bs_del
    - gf_isom_get_reference
    - gf_isom_sample_del
    - gf_isom_get_sample
    - gf_isom_parse_text_sample
    - gf_strdup
    - gf_isom_delete_text_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_isom_get_track_id
    - gf_isom_get_reference_count
    - gf_malloc
    - gf_free
    - gf_isom_get_reference
    - gf_filter_pid_set_property_str
    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_type
    - gf_isom_get_udta_count
    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:573,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/isoffin_load.c:575,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/isoffin_load.c:576,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_load.c:580,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:581,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:581,1
    - Dst: gf_isom_apple_enum_tag
      Src: /src/gpac/src/filters/isoffin_load.c:598,1
    - Dst: gf_isom_apple_enum_tag_ex
      Src: /src/gpac/src/filters/isoffin_load.c:607,1
    - Dst: gf_itags_find_by_itag
      Src: /src/gpac/src/filters/isoffin_load.c:617,1
    - Dst: gf_itags_get_type
      Src: /src/gpac/src/filters/isoffin_load.c:619,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_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:626,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/isoffin_load.c:629,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:634,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:634,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:636,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:636,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:642,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:642,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:644,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:644,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:648,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:648,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:650,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:650,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:655,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:655,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:657,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:657,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:662,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:662,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:664,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:664,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/isoffin_load.c:667,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:669,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:669,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:671,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:671,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:674,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:674,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:676,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:676,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:682,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/isoffin_load.c:685,1
    - Dst: gf_isom_has_time_offset_table
      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:688,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:688,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:691,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:691,1
    - Dst: gf_isom_get_handler_name
      Src: /src/gpac/src/filters/isoffin_load.c:696,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:698,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:698,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:700,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:700,1
    - Dst: gf_isom_get_track_flags
      Src: /src/gpac/src/filters/isoffin_load.c:700,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:702,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:702,1
    - Dst: gf_isom_get_track_flags
      Src: /src/gpac/src/filters/isoffin_load.c:702,1
    - Dst: gf_isom_get_track_switch_group_count
      Src: /src/gpac/src/filters/isoffin_load.c:704,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:706,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:706,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:712,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:713,1
    - Dst: gf_isom_get_track_matrix
      Src: /src/gpac/src/filters/isoffin_load.c:718,1
    - Dst: gf_isom_get_track_matrix
      Src: /src/gpac/src/filters/isoffin_load.c:720,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:721,1
    - Dst: gf_isom_get_udta_count
      Src: /src/gpac/src/filters/isoffin_load.c:725,1
    - Dst: gf_isom_get_udta_type
      Src: /src/gpac/src/filters/isoffin_load.c:730,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/src/filters/isoffin_load.c:732,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/src/filters/isoffin_load.c:740,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/isoffin_load.c:743,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:743,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/isoffin_load.c:745,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:745,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/isoffin_load.c:747,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:749,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:749,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:751,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_load.c:752,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:754,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:754,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:755,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:758,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:758,1
    - Dst: gf_isom_get_user_data_count
      Src: /src/gpac/src/filters/isoffin_load.c:765,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:767,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:768,1
    - Dst: gf_isom_get_track_kind
      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_dynstrcat
      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_free
      Src: /src/gpac/src/filters/isoffin_load.c:775,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:777,1
    - Dst: gf_isom_enum_track_group
      Src: /src/gpac/src/filters/isoffin_load.c:786,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_load.c:791,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:791,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_load.c:792,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/isoffin_load.c:792,1
    - Dst: gf_isom_get_root_sidx_offsets
      Src: /src/gpac/src/filters/isoffin_load.c:800,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:802,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_load.c:802,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:806,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:806,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: 810
      start: 192
    functionDepth: 6
    functionLinenumber: 192
    functionLinenumberEnd: 810
    functionName: isor_setup_channel
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property_dyn
    - gf_isom_get_media_duration
    - gf_isom_get_user_data
    - gf_isom_get_raw_user_data
    - gf_isom_has_time_offset_table
    - gf_isom_get_sample_count
    - gf_isom_get_edits_count
    - PROP_FRAC64
    - gf_malloc
    - gf_sys_is_test_mode
    - gf_isom_apple_enum_tag
    - isor_create_channel
    - PROP_4CC
    - gf_isom_get_constant_sample_duration
    - gf_isom_get_media_subtype
    - PROP_DATA
    - gf_isom_get_track_flags
    - gf_isom_get_track_duration
    - gf_isom_get_max_sample_delta
    - gf_filter_pid_set_property
    - gf_isom_get_root_sidx_offsets
    - gf_isom_get_reference_ID
    - gf_4cc_to_str
    - gf_filter_pid_get_property
    - gf_isom_get_media_type
    - gf_isom_get_track_template
    - gf_sys_old_arch_compat
    - gf_isom_get_constant_sample_size
    - snprintf
    - gf_isom_get_track_kind
    - gf_isom_get_trex_template
    - gf_realloc
    - memcpy
    - gf_filter_pid_copy_properties
    - gf_isom_get_track_duration_orig
    - strlen
    - gf_isom_get_track_switch_group_count
    - gf_isom_get_duration
    - PROP_UINT
    - gf_itags_get_name
    - gf_strlcat
    - gf_isom_get_reference
    - gf_isom_get_hevc_lhvc_type
    - gf_itags_find_by_itag
    - gf_isom_get_user_data_count
    - gf_stream_type_name
    - gf_isom_apple_enum_tag_ex
    - gf_isom_is_track_in_root_od
    - gf_isom_get_media_timescale
    - gf_isom_get_pl_indication
    - gf_isom_get_track_layout_info
    - gf_isom_get_brand_info
    - PROP_FRAC_INT
    - gf_itags_get_type
    - gf_isom_get_media_language
    - gf_filter_pid_new
    - gf_isom_get_sample_description_count
    - gf_isom_get_handler_name
    - PROP_BOOL
    - gf_base64_encode
    - gf_isom_get_media_data_size
    - gf_isom_get_track_id
    - gf_isom_get_reference_count
    - gf_free
    - PROP_SINT
    - gf_isom_enum_track_group
    - gf_isom_get_udta_count
    - gf_utf8_is_legal
    - gf_isom_get_avg_sample_size
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - gf_isom_get_max_sample_size
    - gf_filter_pid_set_name
    - gf_isom_get_udta_type
    - gf_isom_get_sidx_duration
    - gf_isom_get_avg_sample_delta
    - gf_dynstrcat
    - gf_isom_text_get_encoded_tx3g
    - gf_isom_get_max_sample_cts_offset
    - gf_isom_get_brands
    - PROP_STRING
    - PROP_STRING_NO_COPY
    - gf_error_to_string
    - gf_filter_pid_set_property_str
    - sprintf
    - gf_isom_get_track_count
    - PROP_FRAC64_INT
    - GF_LOG
    - memset
    - gf_isom_get_track_matrix
    - gf_isom_get_timescale
    - isor_export_ref
    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: 237
    BranchProfiles: []
    Callsites:
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/filters/isoffin_load.c:838,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/isoffin_load.c:839,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:841,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:845,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/isoffin_load.c:847,1
    - Dst: gf_media_map_esd
      Src: /src/gpac/src/filters/isoffin_load.c:853,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:856,1
    - Dst: gf_codecid_from_oti
      Src: /src/gpac/src/filters/isoffin_load.c:861,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:878,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/isoffin_load.c:883,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:896,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/isoffin_load.c:898,1
    - Dst: gf_isom_get_media_language
      Src: /src/gpac/src/filters/isoffin_load.c:899,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:900,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/isoffin_load.c:902,1
    - Dst: gf_isom_stxt_get_description
      Src: /src/gpac/src/filters/isoffin_load.c:912,1
    - Dst: gf_isom_xml_subtitle_get_description
      Src: /src/gpac/src/filters/isoffin_load.c:916,1
    - Dst: gf_isom_xml_subtitle_get_description
      Src: /src/gpac/src/filters/isoffin_load.c:920,1
    - Dst: gf_isom_get_webvtt_config
      Src: /src/gpac/src/filters/isoffin_load.c:925,1
    - Dst: gf_isom_get_jp2_config
      Src: /src/gpac/src/filters/isoffin_load.c:930,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_load.c:934,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:936,1
    - Dst: gf_isom_get_tile_info
      Src: /src/gpac/src/filters/isoffin_load.c:938,1
    - Dst: gf_isom_get_text_description
      Src: /src/gpac/src/filters/isoffin_load.c:945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:947,1
    - Dst: gf_odf_tx3g_write
      Src: /src/gpac/src/filters/isoffin_load.c:953,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:954,1
    - Dst: gf_isom_flac_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:961,1
    - Dst: gf_isom_opus_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:965,1
    - Dst: gf_isom_iamf_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:970,1
    - Dst: gf_odf_iamf_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:972,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:973,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:985,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:1009,1
    - Dst: gf_isom_get_pcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:1017,1
    - Dst: gf_isom_get_lpcm_config
      Src: /src/gpac/src/filters/isoffin_load.c:1025,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/isoffin_load.c:1031,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/isoffin_load.c:1033,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1059,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1061,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1062,1
    - Dst: gf_isom_get_track_group
      Src: /src/gpac/src/filters/isoffin_load.c:1069,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1069,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:1070,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:1071,1
    - Dst: gf_isom_get_reference_ID
      Src: /src/gpac/src/filters/isoffin_load.c:1074,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1077,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1084,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1085,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1086,1
    - Dst: gf_isom_get_tile_info
      Src: /src/gpac/src/filters/isoffin_load.c:1090,1
    - Dst: gf_isom_avs3v_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1095,1
    - Dst: gf_odf_avs3v_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1097,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1098,1
    - Dst: gf_isom_ac3_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1107,1
    - Dst: gf_odf_ac3_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1110,1
    - Dst: gf_ac3_get_channel_layout
      Src: /src/gpac/src/filters/isoffin_load.c:1111,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1114,1
    - Dst: gf_isom_ac4_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1121,1
    - Dst: gf_odf_ac4_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1124,1
    - Dst: gf_odf_ac4_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1127,1
    - Dst: gf_isom_truehd_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1134,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1135,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1136,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/isoffin_load.c:1137,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/isoffin_load.c:1138,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1139,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1140,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1144,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1158,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/filters/isoffin_load.c:1169,1
    - Dst: gf_pixel_fmt_from_qt_type
      Src: /src/gpac/src/filters/isoffin_load.c:1173,1
    - Dst: gf_pixel_fmt_probe
      Src: /src/gpac/src/filters/isoffin_load.c:1174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1199,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:1199,1
    - Dst: gf_isom_get_generic_sample_description
      Src: /src/gpac/src/filters/isoffin_load.c:1203,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:1206,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_load.c:1207,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1209,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1210,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1211,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1212,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1213,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/isoffin_load.c:1214,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1215,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/isoffin_load.c:1216,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/isoffin_load.c:1217,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1222,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1234,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1235,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1236,1
    - Dst: gf_isom_subtitle_get_mime
      Src: /src/gpac/src/filters/isoffin_load.c:1240,1
    - Dst: isor_setup_channel
      Src: /src/gpac/src/filters/isoffin_load.c:1245,1
    - Dst: gf_isom_get_tmcd_config
      Src: /src/gpac/src/filters/isoffin_load.c:1250,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1251,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1251,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1252,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1252,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1253,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1253,1
    - Dst: gf_isom_dovi_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1257,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1261,1
    - Dst: gf_odf_dovi_cfg_write_bs
      Src: /src/gpac/src/filters/isoffin_load.c:1262,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1263,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1264,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1264,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1265,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1266,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_load.c:1268,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1268,1
    - Dst: gf_isom_get_reference_ID
      Src: /src/gpac/src/filters/isoffin_load.c:1270,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1270,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1271,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1271,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1277,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1277,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/filters/isoffin_load.c:1279,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1281,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1281,1
    - Dst: gf_isom_get_user_data
      Src: /src/gpac/src/filters/isoffin_load.c:1287,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1289,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/isoffin_load.c:1290,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1291,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1292,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1293,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1294,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1296,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1296,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1297,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1297,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1299,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1305,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1307,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1309,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1313,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1320,1
    - Dst: gf_isom_lhvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1321,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1324,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1332,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1335,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1340,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1344,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1349,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1350,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1355,1
    - Dst: gf_isom_svc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1356,1
    - Dst: gf_isom_mvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1358,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1363,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1370,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1372,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1376,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_load.c:1379,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1384,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_load.c:1385,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/isoffin_load.c:1389,1
    - Dst: gf_isom_get_creation_time
      Src: /src/gpac/src/filters/isoffin_load.c:1391,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1392,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1392,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1393,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1393,1
    - Dst: isor_get_chapters
      Src: /src/gpac/src/filters/isoffin_load.c:1396,1
    - Dst: gf_isom_has_cenc_sample_group
      Src: /src/gpac/src/filters/isoffin_load.c:1399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1401,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1401,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_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1409,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1409,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1412,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1412,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1413,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1416,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1416,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_load.c:1419,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1420,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:1420,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1425,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1426,1
    - Dst: gf_crc_32
      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_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:1435,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1436,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1439,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1439,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1443,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1443,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1446,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1446,1
    - Dst: gf_isom_enable_raw_pack
      Src: /src/gpac/src/filters/isoffin_load.c:1448,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1452,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1452,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1456,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1456,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1458,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1458,1
    - Dst: gf_isom_get_visual_info
      Src: /src/gpac/src/filters/isoffin_load.c:1461,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1465,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1465,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1466,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1466,1
    - Dst: gf_isom_get_pixel_aspect_ratio
      Src: /src/gpac/src/filters/isoffin_load.c:1468,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1470,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1470,1
    - Dst: gf_isom_get_color_info
      Src: /src/gpac/src/filters/isoffin_load.c:1478,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1480,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1480,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1481,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1481,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1482,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1482,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1483,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1483,1
    - Dst: gf_isom_get_icc_profile
      Src: /src/gpac/src/filters/isoffin_load.c:1485,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1487,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_load.c:1487,1
    - Dst: gf_isom_get_y3d_info
      Src: /src/gpac/src/filters/isoffin_load.c:1491,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1494,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1494,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1496,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1500,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1500,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1502,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1502,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1506,1
    - Dst: PROP_VEC4I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1506,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1508,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1511,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1514,1
    - Dst: PROP_VEC3I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1514,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1516,1
    - Dst: gf_isom_get_audio_info
      Src: /src/gpac/src/filters/isoffin_load.c:1522,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/filters/isoffin_load.c:1525,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1530,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1530,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1531,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1531,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/isoffin_load.c:1534,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1536,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1536,1
    - Dst: gf_isom_get_audio_layout
      Src: /src/gpac/src/filters/isoffin_load.c:1538,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/isoffin_load.c:1540,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1541,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1541,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1544,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1544,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/filters/isoffin_load.c:1549,1
    - Dst: gf_isom_get_sample_duration
      Src: /src/gpac/src/filters/isoffin_load.c:1550,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1554,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1554,1
    - Dst: gf_isom_get_mpegh_compatible_profiles
      Src: /src/gpac/src/filters/isoffin_load.c:1560,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/isoffin_load.c:1566,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1569,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1570,1
    - Dst: gf_isom_get_bitrate
      Src: /src/gpac/src/filters/isoffin_load.c:1576,1
    - Dst: gf_isom_get_media_data_size
      Src: /src/gpac/src/filters/isoffin_load.c:1582,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1584,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1584,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1587,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1587,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1588,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1588,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1589,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1589,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1592,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1592,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1593,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1593,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1594,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1594,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1595,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1595,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1596,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1596,1
    - Dst: strstr
      Src: /src/gpac/src/filters/isoffin_load.c:1597,1
    - Dst: gf_isom_sample_has_subsamples
      Src: /src/gpac/src/filters/isoffin_load.c:1599,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1601,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1601,1
    - Dst: gf_isom_get_mpeg4_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:1605,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1608,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1608,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/isoffin_load.c:1612,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1613,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1613,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_load.c:1613,1
    - Dst: gf_isom_get_stsd_template
      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_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1622,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/isoffin_load.c:1624,1
    - Dst: gf_isom_get_sample_description_count
      Src: /src/gpac/src/filters/isoffin_load.c:1626,1
    - Dst: gf_isom_get_stsd_template
      Src: /src/gpac/src/filters/isoffin_load.c:1629,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1631,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1631,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1633,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1638,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_load.c:1638,1
    - Dst: memset
      Src: /src/gpac/src/filters/isoffin_load.c:1644,1
    - Dst: gf_isom_get_dims_description
      Src: /src/gpac/src/filters/isoffin_load.c:1646,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1647,1
    - Dst: PROP_UINT
      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:1648,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1648,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1649,1
    - Dst: PROP_UINT
      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:1650,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1650,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1651,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1651,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1652,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:1652,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1654,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1654,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1656,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1656,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1658,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1658,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1660,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1660,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1662,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1662,1
    - Dst: gf_isom_get_sample
      Src: /src/gpac/src/filters/isoffin_load.c:1674,1
    - Dst: gf_mpegh_get_mhas_pl
      Src: /src/gpac/src/filters/isoffin_load.c:1677,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1679,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1679,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1682,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1682,1
    - Dst: gf_isom_sample_del
      Src: /src/gpac/src/filters/isoffin_load.c:1684,1
    - Dst: gf_isom_get_udts_config
      Src: /src/gpac/src/filters/isoffin_load.c:1690,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1692,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_load.c:1692,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_str
      Src: /src/gpac/src/filters/isoffin_load.c:1699,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1699,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1700,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:1700,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1702,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1702,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1705,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1705,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:1708,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1708,1
    - Dst: gf_filter_pid_set_property_str
      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:1711,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1711,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1714,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1714,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1717,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1717,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_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1723,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1723,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1726,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1731,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:1731,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1733,1
    - Dst: gf_isom_avc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1738,1
    - Dst: gf_isom_hevc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1741,1
    - Dst: gf_isom_vvc_config_get
      Src: /src/gpac/src/filters/isoffin_load.c:1744,1
    - Dst: gf_isom_get_clean_aperture
      Src: /src/gpac/src/filters/isoffin_load.c:1751,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1754,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1754,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1755,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1755,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1756,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1756,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1757,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:1757,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1759,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1760,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1761,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1762,1
    - Dst: gf_isom_get_mastering_display_colour_info
      Src: /src/gpac/src/filters/isoffin_load.c:1765,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1769,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1772,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1773,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1775,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1776,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1777,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_load.c:1778,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1779,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1780,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1781,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1781,1
    - Dst: gf_isom_get_content_light_level_info
      Src: /src/gpac/src/filters/isoffin_load.c:1784,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/isoffin_load.c:1788,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1789,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/isoffin_load.c:1790,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_load.c:1791,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_load.c:1792,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:1793,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:1793,1
    CyclomaticComplexity: 273
    EdgeCount: 273
    ICount: 821
    argCount: 6
    argNames:
    - read
    - ch
    - track
    - stsd_idx
    - streamtype
    - use_iod
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    - u32
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 812
    functionDepth: 9
    functionLinenumber: 812
    functionLinenumberEnd: 1796
    functionName: isor_declare_track
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_isom_get_user_data
    - gf_bs_new
    - gf_pixel_fmt_probe
    - gf_isom_mvc_config_get
    - gf_isom_get_udts_config
    - gf_isom_get_track_group
    - strstr
    - gf_malloc
    - gf_crc_32
    - gf_isom_get_y3d_info
    - gf_isom_get_icc_profile
    - gf_bs_read_utf8
    - gf_sys_is_test_mode
    - gf_isom_dovi_config_get
    - gf_odf_dovi_cfg_write_bs
    - gf_odf_hevc_cfg_write
    - gf_isom_subtitle_get_mime
    - gf_odf_iamf_cfg_del
    - gf_isom_get_dims_description
    - gf_isom_xml_subtitle_get_description
    - gf_bs_read_u32
    - PROP_4CC
    - gf_isom_get_media_subtype
    - PROP_DATA
    - gf_isom_get_mpeg4_subtype
    - gf_pixel_fmt_from_qt_type
    - gf_isom_get_creation_time
    - gf_odf_ac4_cfg_write
    - gf_filter_pid_set_property
    - gf_odf_desc_new
    - gf_bs_write_u32
    - gf_ac3_get_channel_layout
    - gf_isom_get_reference_ID
    - PROP_VEC4I_INT
    - gf_strdup
    - gf_isom_avc_config_get
    - gf_4cc_to_str
    - gf_isom_vvc_config_get
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_sys_old_arch_compat
    - gf_isom_lhvc_config_get
    - gf_isom_get_mpegh_compatible_profiles
    - gf_isom_get_mastering_display_colour_info
    - gf_codecid_type
    - gf_isom_get_text_description
    - gf_isom_get_sample_duration
    - gf_isom_get_visual_info
    - gf_isom_ac4_config_get
    - gf_isom_get_bitrate
    - gf_codecid_from_oti
    - gf_isom_hevc_config_get
    - memcpy
    - gf_codec_id_from_isobmf
    - gf_isom_flac_config_get
    - gf_isom_get_pixel_aspect_ratio
    - isor_get_chapters
    - strlen
    - gf_odf_ac3_cfg_write
    - gf_isom_is_media_encrypted
    - gf_isom_ac3_config_get
    - gf_audio_fmt_get_layout_from_cicp
    - gf_isom_truehd_config_get
    - gf_isom_opus_config_get
    - gf_odf_vvc_cfg_write
    - PROP_UINT
    - gf_bs_available
    - gf_odf_dovi_cfg_del
    - gf_isom_get_webvtt_config
    - gf_isom_has_cenc_sample_group
    - PROP_VEC2I_INT
    - gf_isom_get_generic_sample_description
    - gf_isom_get_audio_layout
    - gf_isom_get_reference
    - gf_odf_vvc_cfg_del
    - gf_isom_get_color_info
    - gf_isom_get_media_timescale
    - gf_odf_iamf_cfg_write
    - gf_isom_get_tmcd_config
    - PROP_FRAC_INT
    - gf_isom_get_media_language
    - gf_odf_tx3g_write
    - gf_isom_get_sample_description_count
    - PROP_VEC3I_INT
    - gf_odf_ac4_cfg_del
    - gf_m4a_get_config
    - gf_isom_svc_config_get
    - PROP_BOOL
    - gf_odf_avc_cfg_del
    - gf_isom_get_media_data_size
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_get_clean_aperture
    - gf_isom_get_reference_count
    - gf_free
    - gf_isom_get_jp2_config
    - isor_setup_channel
    - gf_bs_write_u16
    - gf_isom_avs3v_config_get
    - gf_isom_get_content_light_level_info
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - memset
    - gf_bs_del
    - gf_isom_get_sample
    - gf_isom_get_lpcm_config
    - gf_bs_skip_bytes
    - gf_odf_hevc_cfg_del
    - gf_isom_get_original_format_type
    - gf_media_map_esd
    - gf_isom_enable_raw_pack
    - gf_isom_stxt_get_description
    - gf_ceil
    - PROP_STRING
    - gf_isom_get_stsd_template
    - gf_odf_avs3v_cfg_write
    - gf_isom_get_pcm_config
    - gf_filter_pid_set_property_str
    - gf_error_to_string
    - gf_mpegh_get_mhas_pl
    - gf_isom_get_track_count
    - gf_odf_avc_cfg_write
    - GF_LOG
    - GF_4CC
    - gf_isom_iamf_config_get
    - gf_isom_sample_del
    - gf_isom_get_audio_info
    - gf_odf_avs3v_cfg_del
    - gf_isom_sample_has_subsamples
    - gf_isom_get_tile_info
    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:1800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1801
      start: 1798
    functionDepth: 10
    functionLinenumber: 1798
    functionLinenumberEnd: 1801
    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:1814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_load.c:1815,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:1818,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_load.c:1823,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/src/filters/isoffin_load.c:1830,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:1831,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/filters/isoffin_load.c:1836,1
    - Dst: gf_isom_is_external_track
      Src: /src/gpac/src/filters/isoffin_load.c:1842,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1845,1
    - Dst: gf_isom_merge_external_edit
      Src: /src/gpac/src/filters/isoffin_load.c:1853,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/isoffin_load.c:1859,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1860,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/isoffin_load.c:1862,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/isoffin_load.c:1864,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/isoffin_load.c:1866,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_load.c:1868,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:1869,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1872,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1923,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_load.c:1923,1
    - Dst: gf_isom_is_track_referenced
      Src: /src/gpac/src/filters/isoffin_load.c:1931,1
    - Dst: gf_isom_is_track_enabled
      Src: /src/gpac/src/filters/isoffin_load.c:1935,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:1937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1943,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:1946,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_load.c:1957,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:1961,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/isoffin_load.c:1962,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/isoffin_load.c:1963,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_load.c:1964,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:1965,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_load.c:1966,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1966,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/isoffin_load.c:1967,1
    - Dst: gf_filter_add_source
      Src: /src/gpac/src/filters/isoffin_load.c:1969,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_load.c:1972,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_load.c:1980,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_load.c:1993,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/filters/isoffin_load.c:2003,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/filters/isoffin_load.c:2007,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_load.c:2013,1
    - Dst: isor_declare_track
      Src: /src/gpac/src/filters/isoffin_load.c:2016,1
    - Dst: gf_isom_get_meta_item_count
      Src: /src/gpac/src/filters/isoffin_load.c:2024,1
    - Dst: isor_declare_item_properties
      Src: /src/gpac/src/filters/isoffin_load.c:2027,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:2034,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_load.c:2038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:2040,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/isoffin_load.c:2043,1
    - Dst: gf_isom_apple_get_tag
      Src: /src/gpac/src/filters/isoffin_load.c:2047,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/isoffin_load.c:2055,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_load.c:2057,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_load.c:2057,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2062,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2062,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/isoffin_load.c:2063,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/isoffin_load.c:2064,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/isoffin_load.c:2066,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_load.c:2067,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/isoffin_load.c:2068,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_load.c:2070,1
    CyclomaticComplexity: 117
    EdgeCount: 117
    ICount: 227
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 1803
    functionDepth: 10
    functionLinenumber: 1803
    functionLinenumberEnd: 2075
    functionName: isor_declare_objects
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_isom_get_media_type
    - gf_filter_pid_set_eos
    - gf_filter_add_source
    - gf_filter_pid_set_name
    - gf_filter_pid_raw_new
    - gf_isom_is_track_referenced
    - gf_isom_is_track_enabled
    - isor_declare_track
    - isor_declare_item_properties
    - gf_isom_apple_get_tag
    - gf_dynstrcat
    - memcpy
    - gf_filter_pck_send
    - gf_filter_abort
    - gf_isom_get_root_od
    - gf_isom_get_meta_item_count
    - strcmp
    - strlen
    - sscanf
    - gf_error_to_string
    - gf_isom_get_track_id
    - gf_odf_desc_del
    - gf_isom_get_track_count
    - gf_isom_merge_external_edit
    - gf_filter_get_sep
    - sprintf
    - gf_free
    - gf_isom_get_media_subtype
    - GF_LOG
    - gf_filter_pck_set_framing
    - gf_isom_is_external_track
    - gf_isom_get_track_by_id
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_isom_has_track_reference
    - gf_4cc_to_str
    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:2089,1
    - Dst: gf_isom_get_meta_item_info
      Src: /src/gpac/src/filters/isoffin_load.c:2093,1
    - Dst: gf_isom_get_meta_image_props
      Src: /src/gpac/src/filters/isoffin_load.c:2099,1
    - Dst: gf_media_map_item_esd
      Src: /src/gpac/src/filters/isoffin_load.c:2115,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/isoffin_load.c:2132,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/isoffin_load.c:2142,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:2147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2147,1
    - Dst: gf_isom_meta_item_has_ref
      Src: /src/gpac/src/filters/isoffin_load.c:2149,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2150,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2150,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2157,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2157,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:2161,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2161,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2163,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_load.c:2163,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/isoffin_load.c:2168,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2172,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2172,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2173,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2176,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2176,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2177,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2177,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2178,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2178,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2179,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2179,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2182,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2182,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2183,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2183,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2184,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2185,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2185,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2187,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2188,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2189,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2190,1
    - Dst: gf_isom_get_meta_primary_item_id
      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_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2196,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2200,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2200,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:2202,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:2202,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:2203,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:2203,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_load.c:2204,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_load.c:2204,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2207,1
    - Dst: PROP_UINT
      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_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:2209,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2213,1
    - Dst: PROP_VEC2I_INT
      Src: /src/gpac/src/filters/isoffin_load.c:2213,1
    - Dst: gf_isom_meta_get_item_ref_id
      Src: /src/gpac/src/filters/isoffin_load.c:2215,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2216,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2216,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2221,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/isoffin_load.c:2221,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2222,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2222,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2223,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_load.c:2223,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2225,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_load.c:2226,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_load.c:2226,1
    - Dst: isor_create_channel
      Src: /src/gpac/src/filters/isoffin_load.c:2230,1
    - Dst: isor_declare_pssh
      Src: /src/gpac/src/filters/isoffin_load.c:2235,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 120
    argCount: 3
    argNames:
    - read
    - ch
    - item_idx
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2240
      start: 2077
    functionDepth: 5
    functionLinenumber: 2077
    functionLinenumberEnd: 2240
    functionName: isor_declare_item_properties
    functionSourceFile: /src/gpac/src/filters/isoffin_load.c
    functionUses: 1
    functionsReached:
    - PROP_DATA_NO_COPY
    - PROP_VEC2I_INT
    - gf_isom_get_meta_image_props
    - gf_media_map_item_esd
    - PROP_FRAC_INT
    - gf_isom_get_meta_item_info
    - gf_filter_pid_new
    - gf_isom_meta_get_item_ref_id
    - gf_filter_pid_copy_properties
    - isor_create_channel
    - gf_isom_get_meta_item_count
    - PROP_BOOL
    - PROP_STRING
    - PROP_4CC
    - gf_filter_pid_set_property_str
    - gf_odf_desc_del
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_isom_get_meta_primary_item_id
    - isor_declare_pssh
    - gf_isom_meta_item_has_ref
    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:182,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/ff_enc.c:182,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/ff_enc.c:184,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/ff_enc.c:184,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - media_type
    argTypes:
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 186
    functionName: ffenc_override_caps
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - GF_ARRAY_LENGTH
    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:191,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_enc.c:192,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_enc.c:193,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_enc.c:195,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_enc.c:198,1
    - Dst: avcodec_find_encoder_by_name
      Src: /src/gpac/src/filters/ff_enc.c:205,1
    - Dst: ffenc_override_caps
      Src: /src/gpac/src/filters/ff_enc.c:207,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/ff_enc.c:211,1
    - Dst: avcodec_find_encoder
      Src: /src/gpac/src/filters/ff_enc.c:213,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:213,1
    - Dst: ffenc_override_caps
      Src: /src/gpac/src/filters/ff_enc.c:216,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/ff_enc.c:219,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_enc.c:220,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:225,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/ff_enc.c:226,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/ff_enc.c:227,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/ff_enc.c:229,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 231
    functionName: ffenc_initialize
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - ffenc_override_caps
    - sprintf
    - gf_filter_get_udta
    - avcodec_find_encoder
    - ffmpeg_setup_logs
    - gf_bs_new
    - avcodec_find_encoder_by_name
    - gf_filter_meta_set_instances
    - av_packet_alloc
    - ffmpeg_codecid_from_gpac
    - gf_codecid_parse
    - gf_list_new
    - gf_filter_is_temporary
    - gf_filter_add_status_metric
    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:235,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_enc.c:236,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_enc.c:237,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:238,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:241,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_enc.c:242,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:243,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_enc.c:245,1
    - Dst: av_packet_free
      Src: /src/gpac/src/filters/ff_enc.c:248,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:252,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ff_enc.c:253,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:258,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:259,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_enc.c:261,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 233
    functionDepth: 5
    functionLinenumber: 233
    functionLinenumberEnd: 263
    functionName: ffenc_finalize
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - fprintf
    - av_frame_free
    - gf_list_count
    - gf_free
    - gf_filter_pck_unref
    - gf_fclose
    - gf_filter_get_udta
    - avcodec_free_context
    - gf_list_del
    - av_packet_free
    - gf_bs_del
    - av_dict_free
    - gf_list_pop_back
    linkageType: ''
    returnType: void
    signature: void ffenc_finalize(GF_Filter *filter)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties_from_packet
      Src: /src/gpac/src/filters/ff_enc.c:269,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_enc.c:271,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:273,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: avcodec_get_name
      Src: /src/gpac/src/filters/ff_enc.c:279,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:281,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_enc.c:281,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:284,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:284,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:287,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:287,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:289,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:289,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:293,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:302,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_enc.c:302,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:303,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_enc.c:303,1
    - Dst: ffmpeg_extradata_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:331,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:333,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_enc.c:333,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:339,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:339,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:341,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:344,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_enc.c:344,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:346,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:349,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_enc.c:349,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:352,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:353,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:353,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:355,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 74
    argCount: 2
    argNames:
    - ctx
    - src_pck
    argTypes:
    - GF_FFEncodeCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 358
    functionName: ffenc_copy_pid_props
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - ffmpeg_extradata_to_gpac
    - PROP_DATA_NO_COPY
    - PROP_LONGSINT
    - gf_timestamp_rescale
    - PROP_UINT
    - gf_filter_pid_set_property
    - avcodec_get_name
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pid_copy_properties_from_packet
    linkageType: ''
    returnType: void
    signature: void ffenc_copy_pid_props(GF_FFEncodeCtx *ctx, GF_FilterPacket *src_pck)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/ff_enc.c:370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - dst_pck
    - pkt
    argTypes:
    - GF_FilterPacket*
    - AVPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 361
    functionDepth: 1
    functionLinenumber: 361
    functionLinenumberEnd: 371
    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:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:377,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_FFEncodeCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 381
    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: 15
    BranchProfiles: []
    Callsites:
    - Dst: av_packet_get_side_data
      Src: /src/gpac/src/filters/ff_enc.c:405,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/ff_enc.c:407,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/ff_enc.c:408,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_enc.c:409,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_enc.c:410,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_enc.c:411,1
    - Dst: gf_bs_read_u64_le
      Src: /src/gpac/src/filters/ff_enc.c:414,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:434,1
    - Dst: s
      Src: /src/gpac/src/filters/ff_enc.c:434,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:437,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:441,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_enc.c:445,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:450,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/ff_enc.c:451,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 58
    argCount: 4
    argNames:
    - filter
    - ctx
    - pkt
    - do_reporting
    argTypes:
    - GF_Filter*
    - struct _gf_ffenc_ctx*
    - AVPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 384
    functionDepth: 6
    functionLinenumber: 384
    functionLinenumberEnd: 453
    functionName: ffenc_log_video
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - fprintf
    - sprintf
    - s
    - gf_bs_read_u32_le
    - gf_bs_read_u64_le
    - av_packet_get_side_data
    - gf_bs_reassign_buffer
    - gf_bs_read_u16
    - gf_filter_update_status
    linkageType: ''
    returnType: void
    signature: void ffenc_log_video(GF_Filter *filter, struct _gf_ffenc_ctx *ctx,
      AVPacket *pkt, Bool do_reporting)
  - BBCount: 87
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_enc.c:473,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:483,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:484,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/ff_enc.c:486,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/ff_enc.c:487,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_enc.c:488,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_enc.c:494,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_enc.c:501,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/ff_enc.c:502,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:503,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:504,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_enc.c:509,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_enc.c:526,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_enc.c:530,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:552,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:565,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:574,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:583,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_enc.c:607,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/ff_enc.c:608,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:609,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/ff_enc.c:614,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/ff_enc.c:635,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_enc.c:637,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_enc.c:639,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_enc.c:641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:646,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/ff_enc.c:646,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:647,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/ff_enc.c:652,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:672,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_enc.c:673,1
    - Dst: SCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:682,1
    - Dst: SCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:684,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:691,1
    - Dst: avcodec_encode_video2
      Src: /src/gpac/src/filters/ff_enc.c:698,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:701,1
    - Dst: avcodec_encode_video2
      Src: /src/gpac/src/filters/ff_enc.c:702,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:706,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:709,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:711,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:721,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:721,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:721,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:726,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:728,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:738,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:738,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:738,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_enc.c:744,1
    - Dst: gf_filter_pck_set_mark
      Src: /src/gpac/src/filters/ff_enc.c:747,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_enc.c:750,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:754,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:757,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:758,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:760,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:761,1
    - Dst: UNSCALE_DUR
      Src: /src/gpac/src/filters/ff_enc.c:762,1
    - Dst: avcodec_encode_video2
      Src: /src/gpac/src/filters/ff_enc.c:767,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:770,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:772,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:784,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:785,1
    - Dst: ffenc_configure_pid_ex
      Src: /src/gpac/src/filters/ff_enc.c:788,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:793,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:797,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:798,1
    - Dst: UNSCALE_DUR
      Src: /src/gpac/src/filters/ff_enc.c:799,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/ff_enc.c:802,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:806,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:808,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:813,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:819,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_enc.c:821,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:822,1
    - Dst: SCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:824,1
    - Dst: UNSCALE_TS
      Src: /src/gpac/src/filters/ff_enc.c:825,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/ff_enc.c:837,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:850,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_enc.c:850,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:852,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:860,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:861,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:865,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:866,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:869,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_enc.c:883,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:886,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/ff_enc.c:886,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_enc.c:897,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:898,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:899,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/ff_enc.c:899,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:900,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/ff_enc.c:901,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/ff_enc.c:902,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:903,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/ff_enc.c:903,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:904,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:905,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/ff_enc.c:906,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/ff_enc.c:907,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_enc.c:908,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:909,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_enc.c:909,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_enc.c:915,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:917,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_enc.c:932,1
    - Dst: gf_filter_pck_get_mark
      Src: /src/gpac/src/filters/ff_enc.c:935,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:938,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_enc.c:941,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_enc.c:942,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:943,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_enc.c:946,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_enc.c:948,1
    - Dst: ffmpeg_generate_gpac_dsi
      Src: /src/gpac/src/filters/ff_enc.c:952,1
    - Dst: ffenc_log_video
      Src: /src/gpac/src/filters/ff_enc.c:956,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/ff_enc.c:956,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_enc.c:966,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_enc.c:967,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:973,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:974,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:977,1
    - Dst: ffenc_set_deps
      Src: /src/gpac/src/filters/ff_enc.c:979,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_enc.c:981,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:983,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:984,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/ff_enc.c:989,1
    CyclomaticComplexity: 110
    EdgeCount: 110
    ICount: 414
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffenc_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 992
      start: 455
    functionDepth: 9
    functionLinenumber: 455
    functionLinenumberEnd: 992
    functionName: ffenc_process_video
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - avcodec_free_context
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_new_alloc
    - FF_RELEASE_PCK
    - PROP_DATA_NO_COPY
    - gf_filter_pck_merge_properties
    - av_err2str
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_pck_get_duration
    - avcodec_receive_packet
    - UNSCALE_DUR
    - gf_bs_new
    - gf_bs_get_content
    - gf_bs_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - FF_INIT_PCK
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - gf_list_add
    - gf_bs_write_u8
    - gf_malloc
    - gf_filter_pck_set_mark
    - gf_crc_32
    - gf_filter_post_process_task
    - ffenc_log_video
    - gf_list_find
    - gf_filter_pck_get_data
    - avcodec_send_frame
    - gf_list_get
    - ffenc_set_deps
    - gf_filter_reporting_enabled
    - memcpy
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pck_send
    - gf_filter_pid_set_discard
    - gf_filter_pck_unref
    - PROP_LONGSINT
    - SCALE_TS
    - gf_sys_clock_high_res
    - UNSCALE_TS
    - gf_filter_pid_get_name
    - ffenc_configure_pid_ex
    - ffenc_copy_pid_props
    - gf_filter_pck_set_cts
    - AVERROR
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_error_to_string
    - PROP_DATA
    - gf_free
    - gf_filter_pck_get_property
    - gf_filter_pck_get_mark
    - GF_LOG
    - avcodec_encode_video2
    - GF_4CC
    - gf_list_del_item
    - ffenc_get_cts
    - av_packet_free_side_data
    - gf_pixel_get_size_info
    - gf_filter_pid_set_property
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_filter_pck_set_dts
    - memset
    - ffmpeg_generate_gpac_dsi
    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: 678
      start: 677
    functionDepth: 0
    functionLinenumber: 677
    functionLinenumberEnd: 678
    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: 679
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 679
    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: 680
      start: 679
    functionDepth: 0
    functionLinenumber: 679
    functionLinenumberEnd: 680
    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:1008,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:1010,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:1017,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:1018,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:1019,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:1024,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:1031,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/ff_enc.c:1041,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_enc.c:1047,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:1050,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: 1058
      start: 994
    functionDepth: 1
    functionLinenumber: 994
    functionLinenumberEnd: 1058
    functionName: ffenc_audio_append_samples
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_realloc
    - memcpy
    - gf_assert
    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: 64
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_enc.c:1076,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1086,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:1087,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/ff_enc.c:1089,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/ff_enc.c:1090,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_enc.c:1091,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_enc.c:1097,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1115,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1115,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_enc.c:1123,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1125,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1126,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1131,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_enc.c:1135,1
    - Dst: gf_filter_pck_set_mark
      Src: /src/gpac/src/filters/ff_enc.c:1138,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_enc.c:1141,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1146,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1147,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1153,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1156,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1160,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1165,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1165,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1169,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:1170,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1171,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1173,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1180,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1181,1
    - Dst: avcodec_fill_audio_frame
      Src: /src/gpac/src/filters/ff_enc.c:1184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1188,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1188,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1200,1
    - Dst: av_channel_layout_copy
      Src: /src/gpac/src/filters/ff_enc.c:1212,1
    - Dst: avcodec_encode_audio2
      Src: /src/gpac/src/filters/ff_enc.c:1219,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1221,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:1223,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:1225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1232,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:1232,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1232,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:1236,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_enc.c:1238,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:1246,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:1258,1
    - Dst: avcodec_encode_audio2
      Src: /src/gpac/src/filters/ff_enc.c:1265,1
    - Dst: avcodec_send_frame
      Src: /src/gpac/src/filters/ff_enc.c:1268,1
    - Dst: avcodec_receive_packet
      Src: /src/gpac/src/filters/ff_enc.c:1270,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1274,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:1281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1284,1
    - Dst: ffenc_configure_pid_ex
      Src: /src/gpac/src/filters/ff_enc.c:1285,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_enc.c:1290,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:1314,1
    - Dst: memmove
      Src: /src/gpac/src/filters/ff_enc.c:1316,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/ff_enc.c:1326,1
    - Dst: ffenc_audio_append_samples
      Src: /src/gpac/src/filters/ff_enc.c:1333,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_enc.c:1335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1339,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:1339,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:1340,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1341,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:1345,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1346,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_enc.c:1349,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1351,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_enc.c:1354,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_enc.c:1359,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1360,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:1365,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/ff_enc.c:1365,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:1375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_enc.c:1379,1
    - Dst: ffenc_get_cts
      Src: /src/gpac/src/filters/ff_enc.c:1380,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_enc.c:1381,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/ff_enc.c:1388,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:1389,1
    - Dst: gf_filter_pck_get_mark
      Src: /src/gpac/src/filters/ff_enc.c:1396,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:1397,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_enc.c:1399,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_enc.c:1400,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_enc.c:1401,1
    - Dst: ffmpeg_generate_gpac_dsi
      Src: /src/gpac/src/filters/ff_enc.c:1404,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_enc.c:1408,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_enc.c:1409,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:1412,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_enc.c:1414,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/ff_enc.c:1416,1
    - Dst: ffenc_set_deps
      Src: /src/gpac/src/filters/ff_enc.c:1417,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_enc.c:1419,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_enc.c:1421,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_enc.c:1422,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/ff_enc.c:1427,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 289
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffenc_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1060
    functionDepth: 3
    functionLinenumber: 1060
    functionLinenumberEnd: 1430
    functionName: ffenc_process_audio
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - avcodec_free_context
    - gf_list_count
    - gf_filter_pck_merge_properties
    - FF_RELEASE_PCK
    - avcodec_encode_audio2
    - av_err2str
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - avcodec_receive_packet
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - FF_INIT_PCK
    - gf_list_add
    - gf_filter_pid_get_packet
    - av_channel_layout_copy
    - gf_filter_pck_set_mark
    - gf_filter_post_process_task
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - avcodec_send_frame
    - gf_list_get
    - ffenc_set_deps
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pid_set_discard
    - gf_filter_pck_unref
    - PROP_LONGSINT
    - gf_filter_pid_get_name
    - gf_filter_pck_set_cts
    - ffenc_configure_pid_ex
    - ffenc_copy_pid_props
    - AVERROR
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_duration
    - gf_filter_pid_is_eos
    - ffenc_audio_append_samples
    - GF_LOG
    - gf_filter_pck_get_mark
    - gf_list_del_item
    - ffenc_get_cts
    - av_packet_free_side_data
    - gf_filter_pid_set_property
    - gf_filter_pck_set_dts
    - avcodec_fill_audio_frame
    - memmove
    - ffmpeg_generate_gpac_dsi
    - gf_list_rem
    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:1434,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/ff_enc.c:1435,1
    - Dst: GF_FFEncodeCtx*::process
      Src: /src/gpac/src/filters/ff_enc.c:1437,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1438
      start: 1432
    functionDepth: 1
    functionLinenumber: 1432
    functionLinenumberEnd: 1438
    functionName: ffenc_process
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - GF_FFEncodeCtx*::process
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_process(GF_Filter *filter)
  - BBCount: 149
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:1452,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_enc.c:1458,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1464,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1475,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1480,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1484,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/ff_enc.c:1489,1
    - Dst: avcodec_find_encoder_by_name
      Src: /src/gpac/src/filters/ff_enc.c:1491,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1493,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1497,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/ff_enc.c:1502,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_enc.c:1505,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1509,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1530,1
    - Dst: avcodec_find_encoder
      Src: /src/gpac/src/filters/ff_enc.c:1535,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1541,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/ff_enc.c:1541,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1546,1
    - Dst: ffmpeg_stream_type_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1550,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/ff_enc.c:1550,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/ff_enc.c:1550,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_enc.c:1557,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1565,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/ff_enc.c:1569,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1571,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1575,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:1583,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:1584,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_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1605,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:1608,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_enc.c:1612,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1616,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1621,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/ff_enc.c:1626,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1628,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1629,1
    - Dst: GET_PROP
      Src: /src/gpac/src/filters/ff_enc.c:1630,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1632,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1639,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1664,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1672,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1681,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1688,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/ff_enc.c:1688,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1693,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1705,1
    - Dst: av_codec_iterate
      Src: /src/gpac/src/filters/ff_enc.c:1719,1
    - Dst: av_codec_next
      Src: /src/gpac/src/filters/ff_enc.c:1721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1731,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1751,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1758,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1762,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1764,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1765,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1765,1
    - Dst: gf_pixel_get_downsampling
      Src: /src/gpac/src/filters/ff_enc.c:1771,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1771,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1780,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1780,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1786,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1786,1
    - Dst: ffmpeg_audio_fmt_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:1819,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/ff_enc.c:1819,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1821,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/ff_enc.c:1849,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/ff_enc.c:1849,1
    - Dst: ffmpeg_audio_fmt_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1859,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1860,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1860,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1863,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1863,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1868,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_enc.c:1870,1
    - Dst: gf_audio_fmt_get_num_channels_from_layout
      Src: /src/gpac/src/filters/ff_enc.c:1873,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1874,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_enc.c:1874,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_enc.c:1875,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_enc.c:1875,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1890,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_enc.c:1893,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1903,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1911,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1915,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/ff_enc.c:1928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:1956,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:1956,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/ff_enc.c:1961,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1971,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1972,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1973,1
    - Dst: av_opt_find
      Src: /src/gpac/src/filters/ff_enc.c:1975,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1976,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1978,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:1987,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1991,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1994,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:1998,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2001,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2004,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_enc.c:2013,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:2022,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_enc.c:2024,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2031,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2036,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:2038,1
    - Dst: av_channel_layout_uninit
      Src: /src/gpac/src/filters/ff_enc.c:2045,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2048,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_enc.c:2050,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2058,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2078,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_enc.c:2083,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:2086,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/ff_enc.c:2089,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/ff_enc.c:2093,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_enc.c:2094,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_enc.c:2107,1
    - Dst: gf_m4a_get_profile
      Src: /src/gpac/src/filters/ff_enc.c:2112,1
    - Dst: gf_m4a_write_config
      Src: /src/gpac/src/filters/ff_enc.c:2114,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_enc.c:2115,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/ff_enc.c:2115,1
    - Dst: ffmpeg_set_enc_dec_flags
      Src: /src/gpac/src/filters/ff_enc.c:2122,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/ff_enc.c:2133,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2135,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_enc.c:2138,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2140,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2143,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2146,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2147,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/ff_enc.c:2151,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/ff_enc.c:2152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2156,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/ff_enc.c:2156,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:2157,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/ff_enc.c:2162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2164,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_enc.c:2172,1
    - Dst: ffmpeg_check_threads
      Src: /src/gpac/src/filters/ff_enc.c:2173,1
    - Dst: avcodec_open2
      Src: /src/gpac/src/filters/ff_enc.c:2174,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_enc.c:2176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_enc.c:2177,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_enc.c:2177,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_enc.c:2177,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_enc.c:2178,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_enc.c:2188,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_enc.c:2189,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2194,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2196,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_enc.c:2197,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_enc.c:2198,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_enc.c:2206,1
    - Dst: ffenc_copy_pid_props
      Src: /src/gpac/src/filters/ff_enc.c:2209,1
    CyclomaticComplexity: 210
    EdgeCount: 210
    ICount: 602
    argCount: 4
    argNames:
    - filter
    - pid
    - is_remove
    - is_force_reconf
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2211
      start: 1440
    functionDepth: 5
    functionLinenumber: 1440
    functionLinenumberEnd: 2211
    functionName: ffenc_configure_pid_ex
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - avcodec_free_context
    - PROP_LONGUINT
    - gf_codecid_name
    - av_channel_layout_uninit
    - PROP_DATA_NO_COPY
    - av_err2str
    - ffmpeg_codecid_to_gpac
    - gf_filter_pid_set_framing_mode
    - av_frame_alloc
    - gf_audio_fmt_get_num_channels_from_layout
    - ffmpeg_codecid_from_gpac
    - snprintf
    - ffmpeg_pixfmt_from_gpac
    - avcodec_alloc_context3
    - gf_m4a_get_profile
    - ffmpeg_report_options
    - gf_stream_type_name
    - gf_filter_get_udta
    - gf_pixel_get_downsampling
    - gf_fopen
    - GET_PROP
    - av_opt_find
    - avcodec_find_encoder_by_name
    - ffmpeg_set_enc_dec_flags
    - gf_filter_pid_remove
    - gf_codecid_parse
    - gf_filter_pid_new
    - av_dict_set
    - gf_realloc
    - ffmpeg_channel_layout_to_gpac
    - gf_filter_pid_caps_query
    - ffmpeg_pixfmt_to_gpac
    - av_dict_copy
    - gf_filter_set_name
    - gf_filter_pid_get_name
    - ffenc_copy_pid_props
    - gf_media_get_reduced_frame_rate
    - ffmpeg_audio_fmt_from_gpac
    - gf_filter_pid_get_property_str
    - ffmpeg_check_threads
    - strcmp
    - gf_filter_pid_negotiate_property
    - ffmpeg_audio_fmt_to_gpac
    - gf_audio_fmt_get_cicp_layout
    - gf_filter_is_dynamic
    - ffmpeg_channel_layout_from_gpac
    - gf_audio_fmt_is_planar
    - gf_pixel_fmt_name
    - gf_audio_fmt_get_layout_from_cicp
    - gf_audio_fmt_bit_depth
    - sprintf
    - gf_error_to_string
    - gf_m4a_write_config
    - gf_free
    - av_codec_next
    - gf_file_load_data
    - GF_LOG
    - avcodec_find_encoder
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_pixel_get_size_info
    - avcodec_open2
    - av_dict_free
    - gf_strdup
    - memset
    - ffmpeg_stream_type_to_gpac
    - av_codec_iterate
    - gf_utf8_is_legal
    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: 1597
      start: 1590
    functionDepth: 0
    functionLinenumber: 1590
    functionLinenumberEnd: 1597
    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:2215,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: 2217
      start: 2213
    functionDepth: 6
    functionLinenumber: 2213
    functionLinenumberEnd: 2217
    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:2224,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2226,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2228,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2229,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2231,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_enc.c:2232,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2237,1
    - Dst: gf_filter_report_meta_option
      Src: /src/gpac/src/filters/ff_enc.c:2239,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2242,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2242,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2245,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2246,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2247,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2248,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2249,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2251,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2251,1
    - Dst: atoi
      Src: /src/gpac/src/filters/ff_enc.c:2252,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2254,1
    - Dst: atoi
      Src: /src/gpac/src/filters/ff_enc.c:2255,1
    - Dst: strpbrk
      Src: /src/gpac/src/filters/ff_enc.c:2256,1
    - Dst: strpbrk
      Src: /src/gpac/src/filters/ff_enc.c:2258,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2261,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_enc.c:2269,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/ff_enc.c:2276,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_enc.c:2289,1
    - Dst: av_dict_get
      Src: /src/gpac/src/filters/ff_enc.c:2290,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2292,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_enc.c:2294,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_enc.c:2298,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_enc.c:2309,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: 2310
      start: 2220
    functionDepth: 1
    functionLinenumber: 2220
    functionLinenumberEnd: 2310
    functionName: ffenc_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_filter_report_meta_option
    - gf_props_parse_value
    - atoi
    - gf_filter_get_udta
    - ffmpeg_update_arg
    - strpbrk
    - av_dict_get
    - strcmp
    - av_dict_set
    - strstr
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffenc_update_arg(GF_Filter *filter, const char *arg_name, const
      GF_PropertyValue *arg_val)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_enc.c:2314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_enc.c:2330,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_enc.c:2340,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2347
      start: 2312
    functionDepth: 1
    functionLinenumber: 2312
    functionLinenumberEnd: 2347
    functionName: ffenc_process_event
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - gf_list_count
    - 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:2352,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:2355,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/ff_enc.c:2360,1
    - Dst: ffenc_configure_pid_ex
      Src: /src/gpac/src/filters/ff_enc.c:2363,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2364
      start: 2349
    functionDepth: 6
    functionLinenumber: 2349
    functionLinenumberEnd: 2364
    functionName: ffenc_reconfigure_output
    functionSourceFile: /src/gpac/src/filters/ff_enc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_caps_query
    - gf_filter_get_udta
    - ffenc_configure_pid_ex
    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: 2433
      start: 2432
    functionDepth: 0
    functionLinenumber: 2432
    functionLinenumberEnd: 2433
    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:2459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2460
      start: 2457
    functionDepth: 1
    functionLinenumber: 2457
    functionLinenumberEnd: 2460
    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: 2468
      start: 2465
    functionDepth: 0
    functionLinenumber: 2465
    functionLinenumberEnd: 2468
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - memset
    - gf_avc_get_sps_info
    - decodeNAL
    - gf_filter_get_udta
    - gf_crc_32
    - gf_filter_pid_remove
    - gf_odf_avc_cfg_read
    - gf_list_get
    - SVCDecoder_close
    - gf_filter_pid_new
    - PROP_FRAC
    - gf_filter_pid_copy_properties
    - SetCommandLayer
    - gf_filter_pid_get_name
    - gf_odf_avc_cfg_del
    - gf_filter_pid_check_caps
    - gf_avc_get_pps_info
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - memmove
    - SVCDecoder_init
    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_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_opensvc.c:448,1
    - Dst: for
      Src: /src/gpac/src/filters/dec_opensvc.c:457,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dec_opensvc.c:463,1
    - Dst: defined
      Src: /src/gpac/src/filters/dec_opensvc.c:471,1
    - Dst: defined
      Src: /src/gpac/src/filters/dec_opensvc.c:471,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/dec_opensvc.c:472,1
    - Dst: switch
      Src: /src/gpac/src/filters/dec_opensvc.c:473,1
    - Dst: gf_avc_get_sps_info
      Src: /src/gpac/src/filters/dec_opensvc.c:476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:477,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:477,1
    - Dst: gf_avc_get_pps_info
      Src: /src/gpac/src/filters/dec_opensvc.c:480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:481,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:481,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:484,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:487,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_opensvc.c:487,1
    - Dst: GF_OSVCDecCtx*::layers
      Src: /src/gpac/src/filters/dec_opensvc.c:493,1
    - Dst: decodeNAL
      Src: /src/gpac/src/filters/dec_opensvc.c:496,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_opensvc.c:499,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_opensvc.c:507,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 91
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 310
    functionDepth: 7
    functionLinenumber: 310
    functionLinenumberEnd: 510
    functionName: osvcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_eos
    - gf_avc_get_sps_info
    - gf_filter_pid_drop_packet
    - decodeNAL
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_get_udta
    - for
    - gf_filter_pck_get_data
    - defined
    - gf_list_get
    - gf_list_insert
    - gf_filter_pck_get_dts
    - SetCommandLayer
    - gf_filter_pck_unref
    - switch
    - gf_filter_pid_get_name
    - gf_filter_pck_get_cts
    - gf_log_tool_level_on
    - gf_media_nalu_next_start_code
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - gf_avc_get_pps_info
    - GF_LOG
    - GetDqIdMax
    - GF_OSVCDecCtx*::layers
    - if
    - memset
    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:562,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_opensvc.c:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 565
    functionName: osvcdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gf_list_new
    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:569,1
    - Dst: SVCDecoder_close
      Src: /src/gpac/src/filters/dec_opensvc.c:570,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_opensvc.c:571,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_opensvc.c:572,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_opensvc.c:573,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_opensvc.c:575,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 567
    functionDepth: 3
    functionLinenumber: 567
    functionLinenumberEnd: 576
    functionName: osvcdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_opensvc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - SVCDecoder_close
    - gf_list_pop_back
    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: 581
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 581
    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: 585
      start: 582
    functionDepth: 0
    functionLinenumber: 582
    functionLinenumberEnd: 585
    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:621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 616
    functionDepth: 6
    functionLinenumber: 616
    functionLinenumberEnd: 625
    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
    - gf_isom_get_last_producer_time_box
    - gf_gmtime
    - gf_log_tool_level_on
    - gf_net_get_ntp_ts
    - gf_sys_is_test_mode
    - gf_net_get_ntp_diff_ms
    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_sample_info_ex
    - gf_isom_sample_new
    - gf_isom_get_missing_bytes
    - 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:
    - PROP_DATA
    - gf_filter_pid_get_property
    - gf_isom_cenc_get_sample_aux_info
    - GF_LOG
    - gf_crc_32
    - gf_filter_pid_set_property
    - PROP_FRAC_INT
    - gf_isom_extract_meta_item_get_cenc_info
    - memset
    - gf_isom_get_sample_cenc_info
    - gf_error_to_string
    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:
    - isor_declare_item_properties
    - isor_update_cenc_info
    - gf_isom_extract_meta_item_mem
    - gf_isom_sample_new
    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_new_alloc
    - gf_filter_pck_expand
    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:
    - gf_list_count
    - isor_reset_seq_list
    - 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_list_count
    - gf_free
    - gf_malloc
    - gf_list_get
    - memcmp
    - isor_reset_all_ps
    - GF_SAFEALLOC
    - isor_ps_get_id
    - gf_list_new
    - gf_realloc
    - gf_list_add
    - memcpy
    - gf_list_rem
    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_LOG
    - GF_4CC
    - gf_cenc_key_info_get_iv_size
    linkageType: ''
    returnType: void
    signature: void isor_sai_bytes_removed(ISOMChannel *ch, u32 pos, u32 removed)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpegh_get_mhas_pl
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1032,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1034,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1034,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1037,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1037,1
    - Dst: isor_replace_nal
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1115,1
    - Dst: memmove
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1117,1
    - Dst: isor_sai_bytes_removed
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1123,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1135,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1138,1
    - Dst: gf_odf_vvc_cfg_write
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1141,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1144,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1146,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1149,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1149,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 115
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1013
    functionDepth: 3
    functionLinenumber: 1013
    functionLinenumberEnd: 1153
    functionName: isor_reader_check_config
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - gf_mpegh_get_mhas_pl
    - gf_free
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - gf_odf_avc_cfg_write
    - gf_crc_32
    - gf_odf_vvc_cfg_write
    - PROP_UINT
    - gf_filter_pid_set_property
    - isor_replace_nal
    - memmove
    - isor_sai_bytes_removed
    - gf_odf_hevc_cfg_write
    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:1163,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1168,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1168,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1169,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1169,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1172,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1173,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1177,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1178,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1178,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1181,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1181,1
    - Dst: gf_isom_enum_sample_aux_data
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1190,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1196,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1196,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1197,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1197,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1199,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1199,1
    - Dst: gf_isom_pop_emsg
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1206,1
    - Dst: gf_filter_pck_set_property_str
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1209,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read_ch.c:1209,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 39
    argCount: 3
    argNames:
    - read
    - ch
    - pck
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1211
      start: 1155
    functionDepth: 5
    functionLinenumber: 1155
    functionLinenumberEnd: 1211
    functionName: isor_set_sample_groups_and_aux_data
    functionSourceFile: /src/gpac/src/filters/isoffin_read_ch.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_isom_enum_sample_aux_data
    - PROP_DATA_NO_COPY
    - gf_strcat
    - GF_4CC
    - gf_isom_enum_sample_group
    - gf_isom_pop_emsg
    - gf_filter_pck_set_property_dyn
    - gf_filter_pck_set_property
    - gf_filter_pck_set_property_str
    - gf_4cc_to_str
    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: gf_strcpy
      Src: /src/gpac/src/filters/write_nhml.c:100,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/write_nhml.c:102,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/write_nhml.c:104,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/write_nhml.c:105,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_nhml.c:106,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/write_nhml.c:106,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_nhml.c:108,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:110,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_nhml.c:112,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:115,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhml.c:121,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:123,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:126,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhml.c:132,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:136,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:139,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:145,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhml.c:145,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:146,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:146,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:148,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:150,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:150,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/write_nhml.c:151,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhml.c:153,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:153,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:158,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:158,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:161,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_nhml.c:162,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:163,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:163,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhml.c:166,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhml.c:167,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:174,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhml.c:174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:175,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:175,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:177,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:179,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:179,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/write_nhml.c:180,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhml.c:182,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:182,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:187,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:187,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:190,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_nhml.c:191,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:192,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:192,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhml.c:195,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhml.c:196,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/write_nhml.c:201,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/write_nhml.c:203,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 95
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 91
    functionDepth: 4
    functionLinenumber: 91
    functionLinenumberEnd: 207
    functionName: nhmldump_config_side_stream
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - nhmldump_get_resolved_basename
    - gf_filter_pid_get_destination
    - gf_filter_pid_set_name
    - gf_fileio_translate_url
    - gf_filter_pid_remove
    - gf_filter_connect_destination
    - gf_filter_pid_new
    - gf_filter_set_source
    - gf_strcpy
    - gf_file_ext_start
    - gf_fileio_from_url
    - PROP_STRING
    - strcmp
    - gf_fileio_factory
    - gf_free
    - gf_strcat
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_strdup
    - strncmp
    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:214,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:219,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:223,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:227,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_nhml.c:232,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:235,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/write_nhml.c:247,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:250,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhml.c:254,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhml.c:263,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/write_nhml.c:273,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/write_nhml.c:274,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:279,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_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_nhml.c:284,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:285,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:287,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_nhml.c:290,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:293,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_strcpy
      Src: /src/gpac/src/filters/write_nhml.c:308,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhml.c:309,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:312,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:312,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:314,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:314,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/write_nhml.c:315,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:316,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:316,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:320,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhml.c:320,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:321,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:321,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhml.c:322,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhml.c:322,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:330,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/write_nhml.c:334,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_nhml.c:336,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 103
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 209
    functionDepth: 4
    functionLinenumber: 209
    functionLinenumberEnd: 339
    functionName: nhmldump_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_codecid_name
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_set_name
    - gf_filter_pid_send_event
    - gf_filter_get_udta
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_strcpy
    - gf_file_ext_start
    - PROP_STRING
    - strcmp
    - gf_filter_pid_check_caps
    - gf_audio_fmt_bit_depth
    - GF_LOG
    - gf_strcat
    - gf_codecid_oti
    - gf_filter_pid_set_property
    - PROP_UINT
    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: 348
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 348
    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: 356
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 356
    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: 364
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 364
    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:382,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:383,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:383,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:387,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:388,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:388,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:391,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:392,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:394,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:396,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:397,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:397,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:401,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:402,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:402,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:404,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:406,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_nhml.c:406,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:407,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:407,1
    - Dst: NHML_PRINT_4CC
      Src: /src/gpac/src/filters/write_nhml.c:409,1
    - Dst: NHML_PRINT_4CC
      Src: /src/gpac/src/filters/write_nhml.c:411,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:420,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:421,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:421,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:428,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:429,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:429,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhml.c:430,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:432,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_nhml.c:432,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:433,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:433,1
    - Dst: NHML_PRINT_4CC
      Src: /src/gpac/src/filters/write_nhml.c:437,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:438,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:439,1
    - Dst: NHML_PRINT_STRING
      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_UINT
      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_STRING
      Src: /src/gpac/src/filters/write_nhml.c:447,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:448,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:449,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: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:455,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:456,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:457,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:457,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:460,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:461,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:462,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:464,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:466,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:467,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:467,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:469,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:471,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:472,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:472,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_nhml.c:474,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:476,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:477,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:477,1
    - Dst: NHML_PRINT_UINT
      Src: /src/gpac/src/filters/write_nhml.c:479,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:484,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:484,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:485,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:485,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/write_nhml.c:487,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:489,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/write_nhml.c:490,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:491,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:495,1
    - Dst: NHML_PRINT_STRING
      Src: /src/gpac/src/filters/write_nhml.c:496,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_nhml.c:499,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:501,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:506,1
    - Dst: nhmldump_get_resolved_basename
      Src: /src/gpac/src/filters/write_nhml.c:506,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:507,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:507,1
    - Dst: sprintf
      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: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:512,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:515,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:519,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:522,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:523,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:524,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 124
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NHMLDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 367
    functionDepth: 8
    functionLinenumber: 367
    functionLinenumberEnd: 525
    functionName: nhmldump_send_header
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_new_alloc
    - nhmldump_get_resolved_basename
    - NHML_PRINT_UINT
    - gf_filter_pck_set_readonly
    - gf_filter_pck_new_shared
    - gf_fwrite
    - NHML_PRINT_STRING
    - memcpy
    - gf_filter_pck_send
    - NHML_PRINT_4CC
    - gf_filter_pid_get_property_str
    - gf_bs_write_data
    - strcmp
    - strlen
    - gf_bs_get_content_no_truncate
    - gf_audio_fmt_bit_depth
    - sprintf
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_4cc_to_str
    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:533,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhml.c:534,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:541,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:542,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_nhml.c:544,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/write_nhml.c:545,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/write_nhml.c:546,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_nhml.c:547,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:560,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:561,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:561,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:565,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:566,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:566,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:569,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:570,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:570,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:573,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:574,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:574,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:577,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:578,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:578,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:581,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:582,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:582,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:585,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:586,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:586,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: inflateInit
      Src: /src/gpac/src/filters/write_nhml.c:604,1
    - Dst: inflate
      Src: /src/gpac/src/filters/write_nhml.c:607,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:610,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:610,1
    - Dst: inflateEnd
      Src: /src/gpac/src/filters/write_nhml.c:617,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:620,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:621,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:627,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:629,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:630,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:630,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/write_nhml.c:634,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:637,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:640,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:644,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:647,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:648,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:649,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 97
    argCount: 4
    argNames:
    - ctx
    - data
    - data_size
    - pck
    argTypes:
    - GF_NHMLDumpCtx*
    - char*
    - u32
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 527
    functionDepth: 8
    functionLinenumber: 527
    functionLinenumberEnd: 650
    functionName: nhmldump_send_dims
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_filter_pck_new_alloc
    - gf_bs_available
    - gf_bs_new
    - gf_bs_del
    - gf_fwrite
    - gf_bs_reassign_buffer
    - gf_bs_skip_bytes
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - inflateEnd
    - gf_filter_pck_get_cts
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - strlen
    - gf_bs_read_u16
    - sprintf
    - inflateInit
    - gf_filter_pck_set_framing
    - GF_LOG
    - inflate
    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:658,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:660,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_nhml.c:660,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:661,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:661,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:667,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:668,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:668,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:676,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/write_nhml.c:676,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:679,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:679,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:681,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:683,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/write_nhml.c:683,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:684,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:684,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: 685
      start: 653
    functionDepth: 6
    functionLinenumber: 653
    functionLinenumberEnd: 685
    functionName: nhmldump_pck_property
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_bs_write_data
    - gf_props_dump_val
    - strlen
    - gf_props_get_type_name
    - gf_props_4cc_get_name
    - gf_4cc_to_str
    linkageType: ''
    returnType: void
    signature: void nhmldump_pck_property(GF_NHMLDumpCtx *ctx, u32 p4cc, const char
      *pname, const GF_PropertyValue *att)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_nhml.c:694,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_nhml.c:695,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhml.c:696,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:704,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:705,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:705,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:711,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:712,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:712,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:715,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:716,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:716,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: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/write_nhml.c:724,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:725,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:726,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:726,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:734,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:735,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:735,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/write_nhml.c:737,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:739,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:740,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:740,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_nhml.c:743,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:745,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:746,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:746,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/write_nhml.c:748,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:750,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:751,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:751,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/write_nhml.c:753,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:755,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:756,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:756,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/write_nhml.c:758,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:760,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:761,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:761,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/write_nhml.c:763,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:765,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:766,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:766,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/write_nhml.c:768,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:770,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:771,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:771,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/write_nhml.c:773,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:775,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:776,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:776,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/write_nhml.c:778,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:780,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:781,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:781,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/write_nhml.c:787,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:788,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:789,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:789,1
    - Dst: gf_sha1_csum
      Src: /src/gpac/src/filters/write_nhml.c:793,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:794,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:795,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:795,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:805,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:806,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:806,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/write_nhml.c:809,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:811,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:812,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:812,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/write_nhml.c:816,1
    - Dst: nhmldump_pck_property
      Src: /src/gpac/src/filters/write_nhml.c:819,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:821,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:822,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:822,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_nhml.c:826,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:830,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:831,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_nhml.c:834,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/write_nhml.c:835,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/write_nhml.c:836,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/write_nhml.c:837,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_nhml.c:838,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_nhml.c:839,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:843,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:849,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:850,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:850,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:852,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:854,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:855,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:855,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/write_nhml.c:860,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/write_nhml.c:862,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:864,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:865,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:865,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:866,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: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:871,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:872,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:872,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:877,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:878,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:878,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:880,1
    - Dst: sprintf
      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: strlen
      Src: /src/gpac/src/filters/write_nhml.c:882,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:887,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:888,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/write_nhml.c:893,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:895,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_nhml.c:897,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/write_nhml.c:899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhml.c:901,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/filters/write_nhml.c:904,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/write_nhml.c:906,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:909,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_nhml.c:912,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/write_nhml.c:913,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/write_nhml.c:915,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:916,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/write_nhml.c:919,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:926,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:927,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:927,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:929,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/write_nhml.c:931,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:935,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:937,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:938,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:939,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_nhml.c:946,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_nhml.c:949,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:953,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:954,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 214
    argCount: 4
    argNames:
    - ctx
    - data
    - data_size
    - pck
    argTypes:
    - GF_NHMLDumpCtx*
    - char*
    - u32
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 687
    functionDepth: 8
    functionLinenumber: 687
    functionLinenumberEnd: 957
    functionName: nhmldump_send_frame
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_filter_pck_get_dependency_flags
    - fprintf
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pck_get_duration
    - gf_sha1_csum
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_filter_pck_get_crypt_flags
    - gf_bs_del
    - gf_fwrite
    - gf_isom_box_del
    - gf_bs_reassign_buffer
    - gf_isom_box_dump
    - gf_crc_32
    - gf_filter_pck_get_seek_flag
    - gf_file_temp
    - nhmldump_pck_property
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_filter_pck_enum_properties
    - gf_filter_pck_get_cts
    - gf_ftell
    - gf_filter_pck_get_carousel_version
    - gf_bs_write_data
    - gf_base64_encode
    - gf_filter_pck_get_roll_info
    - strlen
    - gf_filter_pck_has_properties
    - gf_bs_read_u32
    - gf_bs_get_content_no_truncate
    - gf_filter_pck_new_ref
    - sprintf
    - gf_fclose
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_get_property
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_isom_box_parse
    - gf_fseek
    - gf_fread
    - gf_bs_available
    - gf_filter_pck_get_corrupted
    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:962,1
    - Dst: nhmldump_config_side_stream
      Src: /src/gpac/src/filters/write_nhml.c:969,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_nhml.c:972,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_nhml.c:974,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:979,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_nhml.c:980,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhml.c:981,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_nhml.c:981,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_nhml.c:983,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/write_nhml.c:986,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhml.c:991,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_nhml.c:993,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhml.c:994,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhml.c:995,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhml.c:1002,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhml.c:1003,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_nhml.c:1004,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhml.c:1010,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:1011,1
    - Dst: nhmldump_send_header
      Src: /src/gpac/src/filters/write_nhml.c:1014,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhml.c:1016,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_nhml.c:1020,1
    - Dst: nhmldump_send_dims
      Src: /src/gpac/src/filters/write_nhml.c:1024,1
    - Dst: nhmldump_send_frame
      Src: /src/gpac/src/filters/write_nhml.c:1026,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_nhml.c:1033,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhml.c:1034,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_nhml.c:1035,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_nhml.c:1038,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 61
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1041
      start: 960
    functionDepth: 9
    functionLinenumber: 960
    functionLinenumberEnd: 1041
    functionName: nhmldump_process
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_fwrite
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - nhmldump_config_side_stream
    - nhmldump_send_dims
    - gf_filter_pck_get_cts
    - gf_set_progress
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - strlen
    - nhmldump_send_header
    - gf_filter_pid_is_eos
    - sprintf
    - gf_filter_pck_set_framing
    - nhmldump_send_frame
    - gf_filter_pck_get_timescale
    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: 1046
      start: 1043
    functionDepth: 0
    functionLinenumber: 1043
    functionLinenumberEnd: 1046
    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:1050,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:1051,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhml.c:1052,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhml.c:1053,1
    - Dst: gf_free
      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
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1048
    functionDepth: 3
    functionLinenumber: 1048
    functionLinenumberEnd: 1057
    functionName: nhmldump_finalize
    functionSourceFile: /src/gpac/src/filters/write_nhml.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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: 1070
      start: 1069
    functionDepth: 0
    functionLinenumber: 1069
    functionLinenumberEnd: 1070
    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: 1106
      start: 1103
    functionDepth: 0
    functionLinenumber: 1103
    functionLinenumberEnd: 1106
    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: 1111
      start: 1108
    functionDepth: 0
    functionLinenumber: 1108
    functionLinenumberEnd: 1111
    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_init_str
    - av_get_sample_fmt_name
    - GF_LOG
    - av_err2str
    - gf_filter_pid_get_name
    - avfilter_free
    - avfilter_get_by_name
    - snprintf
    - avfilter_graph_alloc_filter
    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_count
    - sprintf
    - avfilter_init_str
    - GF_LOG
    - av_err2str
    - gf_filter_pid_set_property
    - PROP_UINT
    - GF_SAFEALLOC
    - avfilter_inout_alloc
    - avfilter_get_by_name
    - avfilter_graph_alloc_filter
    - ffmpeg_pixfmt_from_gpac
    - gf_list_get
    - gf_filter_pid_new
    - ffmpeg_audio_fmt_from_gpac
    - gf_list_add
    - av_strdup
    - av_opt_set_bin
    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:
    - gf_list_count
    - ffavf_setup_outputs
    - gf_list_get
    - ffavf_setup_input
    - avfilter_graph_alloc
    - ffavf_reset_graph
    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:413,1
    - Dst: ffavf_setup_outputs
      Src: /src/gpac/src/filters/ff_avf.c:414,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 103
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 294
    functionDepth: 2
    functionLinenumber: 294
    functionLinenumberEnd: 417
    functionName: ffavf_initialize
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - av_err2str
    - av_frame_alloc
    - avfilter_graph_alloc
    - strstr
    - avfilter_graph_free
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - ffavf_setup_outputs
    - gf_dynstrcat
    - avfilter_graph_parse2
    - ffmpeg_setup_logs
    - gf_filter_meta_set_instances
    - gf_filter_set_max_extra_input_pids
    - avfilter_inout_free
    - gf_list_new
    - strlen
    - avfilter_pad_get_type
    - gf_free
    - gf_filter_override_caps
    - GF_LOG
    - PROP_UINT
    - memset
    - ffmpeg_stream_type_to_gpac
    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:421,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/ff_avf.c:425,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:426,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/ff_avf.c:429,1
    - Dst: av_free
      Src: /src/gpac/src/filters/ff_avf.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:433,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - opt
    argTypes:
    - GF_FFAVFilterCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 436
    functionName: ffavf_dump_graph
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - fprintf
    - GF_LOG
    - av_free
    - avfilter_graph_dump
    - gf_log_tool_level_on
    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:441,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:445,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_avf.c:446,1
    - Dst: avfilter_inout_alloc
      Src: /src/gpac/src/filters/ff_avf.c:452,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:456,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_avf.c:459,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/ff_avf.c:461,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_avf.c:463,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_avf.c:466,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_avf.c:468,1
    - Dst: av_strdup
      Src: /src/gpac/src/filters/ff_avf.c:469,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:470,1
    - Dst: avfilter_inout_alloc
      Src: /src/gpac/src/filters/ff_avf.c:476,1
    - Dst: avfilter_graph_parse_ptr
      Src: /src/gpac/src/filters/ff_avf.c:483,1
    - Dst: avfilter_inout_free
      Src: /src/gpac/src/filters/ff_avf.c:484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:486,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:486,1
    - Dst: avfilter_graph_config
      Src: /src/gpac/src/filters/ff_avf.c:489,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:491,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:491,1
    - Dst: ffavf_dump_graph
      Src: /src/gpac/src/filters/ff_avf.c:496,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_FFAVFilterCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 437
    functionDepth: 3
    functionLinenumber: 437
    functionLinenumberEnd: 498
    functionName: ffavf_setup_filter
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - sprintf
    - GF_LOG
    - av_err2str
    - avfilter_graph_parse_ptr
    - av_strdup
    - avfilter_inout_alloc
    - gf_filter_pid_get_property_str
    - avfilter_inout_free
    - gf_list_get
    - gf_filter_pid_get_packet
    - avfilter_graph_config
    - ffavf_dump_graph
    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:505,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:506,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:506,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/ff_avf.c:515,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:517,1
    - Dst: ffavf_setup_filter
      Src: /src/gpac/src/filters/ff_avf.c:519,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:526,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:534,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_avf.c:536,1
    - Dst: av_buffersrc_add_frame_flags
      Src: /src/gpac/src/filters/ff_avf.c:540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:542,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:542,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_avf.c:548,1
    - Dst: av_buffersrc_add_frame_flags
      Src: /src/gpac/src/filters/ff_avf.c:549,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:551,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:551,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_avf.c:558,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/ff_avf.c:577,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/ff_avf.c:581,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_avf.c:592,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_avf.c:593,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_avf.c:597,1
    - Dst: av_buffersrc_add_frame_flags
      Src: /src/gpac/src/filters/ff_avf.c:625,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:627,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:632,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_avf.c:636,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:646,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_avf.c:648,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/ff_avf.c:649,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_avf.c:653,1
    - Dst: av_buffersink_get_frame
      Src: /src/gpac/src/filters/ff_avf.c:655,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_avf.c:661,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_avf.c:663,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_avf.c:666,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:667,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:667,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_avf.c:670,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_avf.c:687,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/ff_avf.c:694,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_avf.c:695,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_avf.c:710,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:714,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/ff_avf.c:715,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_avf.c:717,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_avf.c:718,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: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:725,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:725,1
    - Dst: ffmpeg_pixfmt_is_fullrange
      Src: /src/gpac/src/filters/ff_avf.c:726,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:727,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_avf.c:727,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:729,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:732,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:732,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:734,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:734,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:736,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:738,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:738,1
    - Dst: av_buffersink_get_frame_rate
      Src: /src/gpac/src/filters/ff_avf.c:739,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:741,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_avf.c:741,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:743,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/ff_avf.c:743,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/ff_avf.c:747,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_avf.c:747,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:752,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:757,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:763,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:769,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_avf.c:774,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_avf.c:777,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_avf.c:779,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_avf.c:780,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_avf.c:781,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_avf.c:806,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:810,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/ff_avf.c:811,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_avf.c:813,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_avf.c:814,1
    - Dst: ffmpeg_channel_layout_to_gpac
      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_UINT
      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_LONGUINT
      Src: /src/gpac/src/filters/ff_avf.c:828,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:829,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:829,1
    - Dst: ffmpeg_audio_fmt_to_gpac
      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_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_avf.c:832,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_avf.c:832,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_avf.c:839,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/ff_avf.c:841,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/ff_avf.c:841,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:847,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_avf.c:850,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_avf.c:851,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_avf.c:852,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_avf.c:854,1
    CyclomaticComplexity: 88
    EdgeCount: 88
    ICount: 280
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 855
      start: 500
    functionDepth: 5
    functionLinenumber: 500
    functionLinenumberEnd: 855
    functionName: ffavf_process
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - PROP_LONGUINT
    - av_err2str
    - gf_filter_pid_set_eos
    - av_frame_alloc
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_pck_get_frame_interface
    - av_buffersrc_add_frame_flags
    - gf_filter_pid_would_block
    - av_buffersink_get_frame
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_filter_pck_get_data
    - PROP_FRAC_INT
    - gf_filter_pck_set_interlaced
    - gf_list_get
    - memcpy
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pck_send
    - ffmpeg_channel_layout_to_gpac
    - av_frame_free
    - gf_filter_connections_pending
    - ffmpeg_pixfmt_to_gpac
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - ffavf_setup_filter
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - AVERROR
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pck_ref_props
    - PROP_STRING
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - ffmpeg_audio_fmt_to_gpac
    - gf_audio_fmt_bit_depth
    - gf_filter_pid_set_property_str
    - av_buffersink_get_frame_rate
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - ffmpeg_pixfmt_is_fullrange
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ffavf_process(GF_Filter *filter)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:879,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/ff_avf.c:881,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:882,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_avf.c:886,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/ff_avf.c:890,1
    - Dst: ffavf_reset_graph
      Src: /src/gpac/src/filters/ff_avf.c:893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:894,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:895,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_avf.c:897,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:898,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/ff_avf.c:905,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/ff_avf.c:909,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_avf.c:910,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:916,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:925,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:931,1
    - Dst: ffavf_setup_outputs
      Src: /src/gpac/src/filters/ff_avf.c:937,1
    - Dst: ffmpeg_pixfmt_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:940,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:942,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:945,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:949,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:951,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_avf.c:953,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:975,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:976,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:978,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:981,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_avf.c:984,1
    - Dst: ffavf_setup_outputs
      Src: /src/gpac/src/filters/ff_avf.c:991,1
    - Dst: av_get_default_channel_layout
      Src: /src/gpac/src/filters/ff_avf.c:996,1
    - Dst: av_channel_layout_default
      Src: /src/gpac/src/filters/ff_avf.c:999,1
    - Dst: ffmpeg_audio_fmt_from_gpac
      Src: /src/gpac/src/filters/ff_avf.c:1004,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_avf.c:1005,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/ff_avf.c:1006,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_avf.c:1026,1
    - Dst: ffavf_setup_input
      Src: /src/gpac/src/filters/ff_avf.c:1042,1
    - Dst: ffavf_setup_outputs
      Src: /src/gpac/src/filters/ff_avf.c:1048,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 149
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1050
      start: 872
    functionDepth: 5
    functionLinenumber: 872
    functionLinenumberEnd: 1050
    functionName: ffavf_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - GF_SAFEALLOC
    - ffmpeg_pixfmt_from_gpac
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - ffavf_setup_outputs
    - av_get_default_channel_layout
    - gf_filter_pid_remove
    - ffavf_reset_graph
    - ffmpeg_audio_fmt_from_gpac
    - gf_filter_pid_check_caps
    - ffavf_setup_input
    - gf_audio_fmt_bit_depth
    - ffmpeg_channel_layout_from_gpac
    - gf_list_pop_back
    - gf_audio_fmt_is_planar
    - gf_free
    - gf_pixel_get_size_info
    - av_channel_layout_default
    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:1055,1
    - Dst: ffavf_reset_graph
      Src: /src/gpac/src/filters/ff_avf.c:1057,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:1058,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:1059,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1061,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_avf.c:1063,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:1064,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:1065,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1067,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_avf.c:1069,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_avf.c:1070,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_avf.c:1071,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_avf.c:1072,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_avf.c:1074,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1075,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_avf.c:1076,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1053
    functionDepth: 3
    functionLinenumber: 1053
    functionLinenumberEnd: 1077
    functionName: ffavf_finalize
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - av_frame_free
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    - ffavf_reset_graph
    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:1084,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_avf.c:1086,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:1088,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_avf.c:1091,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_avf.c:1092,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_avf.c:1101,1
    - Dst: ffavf_dump_graph
      Src: /src/gpac/src/filters/ff_avf.c:1102,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_avf.c:1102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:1108,1
    - Dst: strchr
      Src: /src/gpac/src/filters/ff_avf.c:1116,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/ff_avf.c:1116,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_avf.c:1120,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/ff_avf.c:1124,1
    - Dst: avfilter_graph_send_command
      Src: /src/gpac/src/filters/ff_avf.c:1126,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_avf.c:1128,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_avf.c:1128,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: 1135
      start: 1079
    functionDepth: 3
    functionLinenumber: 1079
    functionLinenumberEnd: 1135
    functionName: ffavf_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_avf.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_sep
    - gf_strcpy
    - strchr
    - gf_free
    - gf_filter_get_udta
    - GF_LOG
    - av_err2str
    - avfilter_graph_send_command
    - strcmp
    - strlen
    - gf_strdup
    - memcpy
    - ffavf_dump_graph
    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:1139,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1154
      start: 1137
    functionDepth: 1
    functionLinenumber: 1137
    functionLinenumberEnd: 1154
    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: 1227
      start: 1226
    functionDepth: 0
    functionLinenumber: 1226
    functionLinenumberEnd: 1227
    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:1244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1242
    functionDepth: 1
    functionLinenumber: 1242
    functionLinenumberEnd: 1245
    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: 1252
      start: 1249
    functionDepth: 0
    functionLinenumber: 1249
    functionLinenumberEnd: 1252
    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: 111
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:115,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_generic.c:120,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_generic.c:125,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:126,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:128,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:135,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_generic.c:142,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/write_generic.c:151,1
    - Dst: gf_filter_pid_set_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:154,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:164,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:170,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:173,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:179,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:180,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:189,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:199,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:199,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:205,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:208,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/write_generic.c:208,1
    - Dst: strchr
      Src: /src/gpac/src/filters/write_generic.c:209,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/write_generic.c:215,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:218,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:220,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:224,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:224,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/src/filters/write_generic.c:226,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:234,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:236,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:236,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:265,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:265,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:272,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:272,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:279,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:279,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:285,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:286,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:286,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/write_generic.c:290,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:291,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:298,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:299,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:299,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:323,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:324,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:324,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:330,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:331,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:331,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:351,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: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:357,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:357,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:358,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:358,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:360,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:360,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:361,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:361,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:368,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:368,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/write_generic.c:369,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:371,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:372,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:377,1
    - Dst: gf_pixel_fmt_parse
      Src: /src/gpac/src/filters/write_generic.c:381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:383,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:386,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:386,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:391,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:391,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:399,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:399,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:400,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:400,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:406,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/write_generic.c:410,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:414,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:414,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/write_generic.c:415,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:417,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:418,1
    - Dst: gf_audio_fmt_parse
      Src: /src/gpac/src/filters/write_generic.c:436,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:437,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:437,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:442,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:442,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/write_generic.c:450,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:450,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:451,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/write_generic.c:451,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/write_generic.c:455,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:460,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_generic.c:460,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:462,1
    - Dst: gf_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_UINT
      Src: /src/gpac/src/filters/write_generic.c:465,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:466,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:467,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:467,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:469,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:469,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:470,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:470,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:475,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:476,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_generic.c:476,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:477,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_generic.c:477,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_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:480,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:480,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:482,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_generic.c:482,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_generic.c:489,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/write_generic.c:492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:493,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:496,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/write_generic.c:496,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:496,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:499,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:504,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:510,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:515,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:519,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/write_generic.c:519,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:520,1
    - Dst: PROP_UINT
      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: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:521,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:524,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_generic.c:525,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/write_generic.c:529,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_generic.c:534,1
    CyclomaticComplexity: 120
    EdgeCount: 120
    ICount: 378
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 109
    functionDepth: 6
    functionLinenumber: 109
    functionLinenumberEnd: 536
    functionName: writegen_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_codecid_name
    - gf_pixel_fmt_sname
    - gf_filter_pid_set_framing_mode
    - gf_codecid_mime
    - gf_audio_fmt_name
    - strchr
    - gf_filter_get_udta
    - gf_audio_fmt_parse
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_strcpy
    - gf_filter_pid_caps_query
    - gf_pixel_fmt_parse
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_check_caps
    - strlen
    - gf_audio_fmt_bit_depth
    - gf_audio_fmt_is_planar
    - gf_pixel_fmt_name
    - GF_LOG
    - stricmp
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_audio_fmt_sname
    - gf_opts_get_bool
    - gf_4cc_to_str
    - gf_codecid_file_ext
    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:550,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_generic.c:551,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:556,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:560,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_generic.c:561,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:567,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:568,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:569,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:574,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_generic.c:575,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:576,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:578,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: 581
      start: 538
    functionDepth: 6
    functionLinenumber: 538
    functionLinenumberEnd: 581
    functionName: writegen_write_j2k
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_new_ref
    - memcmp
    - gf_bs_new
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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:623,1
    - Dst: memset
      Src: /src/gpac/src/filters/write_generic.c:626,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:630,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_generic.c:631,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:633,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:634,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:635,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:636,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:637,1
    - Dst: memset
      Src: /src/gpac/src/filters/write_generic.c:639,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:648,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:653,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - data
    - data_size
    argTypes:
    - GF_GenDumpCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 613
    functionDepth: 6
    functionLinenumber: 613
    functionLinenumberEnd: 657
    functionName: writegen_write_bmp
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - memset
    - gf_bs_new
    - gf_bs_write_data
    - gf_bs_reassign_buffer
    - memcpy
    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:674,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:677,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:680,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:684,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:687,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:690,1
    - Dst: gf_bs_reassign_buffer
      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_data
      Src: /src/gpac/src/filters/write_generic.c:695,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:697,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:698,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:701,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_u32_le
      Src: /src/gpac/src/filters/write_generic.c:705,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:706,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:707,1
    - Dst: gf_bs_write_u16_le
      Src: /src/gpac/src/filters/write_generic.c:708,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:710,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/write_generic.c:711,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:713,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:714,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/write_generic.c:715,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:716,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_GenDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 659
    functionDepth: 6
    functionLinenumber: 659
    functionLinenumberEnd: 717
    functionName: writegen_write_wav_header
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_bs_new
    - gf_bs_write_u32_le
    - gf_filter_pck_set_byte_offset
    - gf_bs_write_u16_le
    - gf_bs_write_data
    - 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:724,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:725,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - node
    - name
    argTypes:
    - GF_XMLNode*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 720
    functionDepth: 2
    functionLinenumber: 720
    functionLinenumberEnd: 728
    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:734,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:736,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:742,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:743,1
    - Dst: ttml_locate_div
      Src: /src/gpac/src/filters/write_generic.c:748,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: 751
      start: 730
    functionDepth: 3
    functionLinenumber: 730
    functionLinenumberEnd: 751
    functionName: ttml_locate_div
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - ttml_get_attr
    - ttml_locate_div
    - gf_list_enum
    - strcmp
    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:757,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:759,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 753
    functionDepth: 2
    functionLinenumber: 753
    functionLinenumberEnd: 762
    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:768,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:770,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 1
    argNames:
    - root
    argTypes:
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 764
    functionDepth: 2
    functionLinenumber: 764
    functionLinenumberEnd: 773
    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:779,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:783,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:784,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:785,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - n1
    - n2
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 775
    functionDepth: 2
    functionLinenumber: 775
    functionLinenumberEnd: 794
    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:800,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:804,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:805,1
    - Dst: ttml_same_attr
      Src: /src/gpac/src/filters/write_generic.c:805,1
    - Dst: ttml_merge_head
      Src: /src/gpac/src/filters/write_generic.c:811,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:815,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:816,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:817,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 2
    argNames:
    - node_src
    - node_dst
    argTypes:
    - GF_XMLNode*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 796
    functionDepth: 3
    functionLinenumber: 796
    functionLinenumberEnd: 820
    functionName: ttml_merge_head
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - ttml_merge_head
    - strcmp
    - gf_list_new
    - gf_list_add
    - ttml_same_attr
    - 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:832,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:836,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:838,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/write_generic.c:840,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/write_generic.c:841,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_generic.c:844,1
    - Dst: atoi
      Src: /src/gpac/src/filters/write_generic.c:846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:879,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:885,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:886,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:887,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:888,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/write_generic.c:893,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:895,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:896,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_generic.c:897,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:898,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:899,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:902,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:904,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:905,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/write_generic.c:911,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:913,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:914,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_generic.c:915,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:916,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:917,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:920,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:922,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:923,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/write_generic.c:926,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_generic.c:930,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:932,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/write_generic.c:935,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:937,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:943,1
    - Dst: ttml_embed_data
      Src: /src/gpac/src/filters/write_generic.c:945,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: 948
      start: 822
    functionDepth: 4
    functionLinenumber: 822
    functionLinenumberEnd: 948
    functionName: ttml_embed_data
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 1
    functionsReached:
    - gf_file_ext_start
    - gf_free
    - gf_malloc
    - atoi
    - GF_LOG
    - ttml_embed_data
    - gf_list_enum
    - gf_list_del_item
    - ttml_get_attr
    - GF_SAFEALLOC
    - strrchr
    - gf_base64_encode
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - strncmp
    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:957,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 954
    functionDepth: 1
    functionLinenumber: 954
    functionLinenumberEnd: 958
    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:966,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/write_generic.c:977,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:979,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/write_generic.c:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - ts_offset
    - att
    - value
    argTypes:
    - s64
    - GF_XMLAttribute*
    - s64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 961
    functionDepth: 0
    functionLinenumber: 961
    functionLinenumberEnd: 982
    functionName: writegen_rewrite_timestamp_ttml
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - ttml_get_timestamp
    - gf_free
    - 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:989,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
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:994,1
    - Dst: writegen_rewrite_timestamp_ttml
      Src: /src/gpac/src/filters/write_generic.c:996,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - offset
    - p_attributes
    argTypes:
    - u64
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 999
      start: 984
    functionDepth: 2
    functionLinenumber: 984
    functionLinenumberEnd: 999
    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:1004,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_generic.c:1029,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1032,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/write_generic.c:1036,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/write_generic.c:1038,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_generic.c:1040,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/write_generic.c:1040,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/write_generic.c:1043,1
    - Dst: ttml_embed_data
      Src: /src/gpac/src/filters/write_generic.c:1047,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1052,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:1053,1
    - Dst: gf_xml_dom_detach_root
      Src: /src/gpac/src/filters/write_generic.c:1057,1
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/write_generic.c:1060,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1063,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1066,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:1069,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1071,1
    - Dst: ttml_rewrite_timestamp
      Src: /src/gpac/src/filters/write_generic.c:1073,1
    - Dst: ttml_get_head
      Src: /src/gpac/src/filters/write_generic.c:1082,1
    - Dst: ttml_get_head
      Src: /src/gpac/src/filters/write_generic.c:1083,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:1086,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1087,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:1088,1
    - Dst: ttml_merge_head
      Src: /src/gpac/src/filters/write_generic.c:1090,1
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/write_generic.c:1094,1
    - Dst: ttml_get_body
      Src: /src/gpac/src/filters/write_generic.c:1095,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/write_generic.c:1097,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1098,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_generic.c:1099,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1104,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1108,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1110,1
    - Dst: ttml_get_attr
      Src: /src/gpac/src/filters/write_generic.c:1113,1
    - Dst: ttml_locate_div
      Src: /src/gpac/src/filters/write_generic.c:1116,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1119,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1120,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/write_generic.c:1121,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:1128,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1134,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/write_generic.c:1135,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1137,1
    - Dst: ttml_same_attr
      Src: /src/gpac/src/filters/write_generic.c:1139,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/write_generic.c:1147,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1149,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1151,1
    - Dst: ttml_rewrite_timestamp
      Src: /src/gpac/src/filters/write_generic.c:1155,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1158,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/write_generic.c:1159,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1161,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1164,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/write_generic.c:1165,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/write_generic.c:1169,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1174,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/write_generic.c:1175,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: 1177
      start: 1002
    functionDepth: 10
    functionLinenumber: 1002
    functionLinenumberEnd: 1177
    functionName: writegen_push_ttml
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_parse_string
    - gf_list_count
    - ttml_locate_div
    - gf_xml_dom_del
    - ttml_merge_head
    - gf_xml_dom_node_del
    - ttml_rewrite_timestamp
    - gf_list_add
    - gf_xml_dom_get_error
    - gf_malloc
    - gf_list_get
    - gf_list_insert
    - gf_list_last
    - memcpy
    - ttml_same_attr
    - ttml_get_body
    - gf_list_enum
    - ttml_get_head
    - gf_xml_dom_new
    - strcmp
    - gf_list_new
    - gf_xml_dom_detach_root
    - ttml_get_attr
    - gf_xml_dom_get_root
    - gf_free
    - gf_filter_pck_get_property
    - GF_LOG
    - ttml_embed_data
    - gf_list_del_item
    - 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:1189,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1190,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1193,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/write_generic.c:1195,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_generic.c:1196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_generic.c:1198,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/write_generic.c:1201,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:1204,1
    - Dst: gf_xml_dom_serialize_root
      Src: /src/gpac/src/filters/write_generic.c:1208,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1210,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1211,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1214,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1215,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1218,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1219,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/write_generic.c:1220,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:1221,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:1224,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1228,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/write_generic.c:1229,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/write_generic.c:1230,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/write_generic.c:1231,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1232,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1233,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/write_generic.c:1234,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:1236,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1240,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1241,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 52
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_GenDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1179
    functionDepth: 4
    functionLinenumber: 1179
    functionLinenumberEnd: 1242
    functionName: writegen_flush_ttml
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pck_get_duration
    - gf_xml_dom_node_del
    - gf_filter_pck_set_dependency_flags
    - gf_list_get
    - memcpy
    - gf_filter_pck_send
    - ttml_get_body
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - strcmp
    - strlen
    - gf_filter_pck_set_sap
    - gf_xml_dom_serialize_root
    - gf_free
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_dts
    - gf_list_rem
    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:1248,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1250,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1251,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1252,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1253,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_GenDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1244
    functionDepth: 1
    functionLinenumber: 1244
    functionLinenumberEnd: 1256
    functionName: writegen_flush_ttxt
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_byte_offset
    - strlen
    - memcpy
    - 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:1266,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_generic.c:1266,1
    - Dst: gf_webvtt_timestamp_set
      Src: /src/gpac/src/filters/write_generic.c:1267,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_generic.c:1267,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/write_generic.c:1270,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1275,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1276,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1276,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1278,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1279,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1279,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:1285,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1286,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1286,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1288,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1289,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1289,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1292,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: 1295
      start: 1260
    functionDepth: 6
    functionLinenumber: 1260
    functionLinenumberEnd: 1295
    functionName: webvtt_timestamps_dump
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_timestamp_rescale
    - gf_bs_write_data
    - strlen
    - gf_opts_get_bool
    - gf_webvtt_timestamp_set
    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: 103
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_generic.c:1299,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_generic.c:1308,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_generic.c:1310,1
    - Dst: writegen_write_wav_header
      Src: /src/gpac/src/filters/write_generic.c:1311,1
    - Dst: writegen_flush_ttml
      Src: /src/gpac/src/filters/write_generic.c:1312,1
    - Dst: writegen_flush_ttxt
      Src: /src/gpac/src/filters/write_generic.c:1314,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_generic.c:1316,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1326,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1330,1
    - Dst: writegen_flush_ttml
      Src: /src/gpac/src/filters/write_generic.c:1332,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:1334,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/write_generic.c:1341,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/write_generic.c:1346,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1348,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1351,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1357,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_generic.c:1364,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1366,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/write_generic.c:1371,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1371,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1378,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/write_generic.c:1379,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/write_generic.c:1380,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1385,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_generic.c:1392,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1395,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1401,1
    - Dst: gf_odf_iamf_cfg_read
      Src: /src/gpac/src/filters/write_generic.c:1403,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:1405,1
    - Dst: gf_odf_iamf_cfg_write_obus
      Src: /src/gpac/src/filters/write_generic.c:1406,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/write_generic.c:1409,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_generic.c:1410,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filters/write_generic.c:1411,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1414,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1416,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1419,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1420,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/write_generic.c:1424,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/write_generic.c:1426,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/write_generic.c:1429,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/write_generic.c:1431,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1433,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1435,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/write_generic.c:1438,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:1438,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1443,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_generic.c:1454,1
    - Dst: writegen_write_j2k
      Src: /src/gpac/src/filters/write_generic.c:1457,1
    - Dst: writegen_write_bmp
      Src: /src/gpac/src/filters/write_generic.c:1459,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1465,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1466,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1467,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1468,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1469,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1470,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1472,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1473,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1475,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1477,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1478,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/write_generic.c:1480,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1481,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1482,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1485,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1486,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1487,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1488,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1489,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1491,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1493,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1495,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/write_generic.c:1499,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1502,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1503,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1505,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1506,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:1511,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1515,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1518,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1519,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1520,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/write_generic.c:1521,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1523,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1530,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/write_generic.c:1532,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1538,1
    - Dst: writegen_push_ttml
      Src: /src/gpac/src/filters/write_generic.c:1541,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1543,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_generic.c:1548,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1550,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1555,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1556,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/write_generic.c:1557,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_generic.c:1564,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1565,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_generic.c:1569,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/write_generic.c:1574,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1577,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1579,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_generic.c:1584,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1593,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/write_generic.c:1594,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1606,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1607,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1608,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1613,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_generic.c:1616,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_generic.c:1617,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1623,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1625,1
    - Dst: gf_bs_write_data
      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_filter_pck_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1630,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1632,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1633,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1635,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1636,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1638,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1640,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1641,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1643,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_generic.c:1646,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/write_generic.c:1655,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1656,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1656,1
    - Dst: webvtt_timestamps_dump
      Src: /src/gpac/src/filters/write_generic.c:1658,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/write_generic.c:1660,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1662,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1663,1
    - Dst: strlen
      Src: /src/gpac/src/filters/write_generic.c:1663,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1666,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1668,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1670,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_generic.c:1672,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/write_generic.c:1677,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1680,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_generic.c:1681,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_generic.c:1683,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_generic.c:1687,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_generic.c:1689,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/write_generic.c:1693,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_generic.c:1693,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1694,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1698,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/write_generic.c:1702,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1703,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_generic.c:1707,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_generic.c:1709,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_generic.c:1710,1
    - Dst: writegen_flush_ttxt
      Src: /src/gpac/src/filters/write_generic.c:1714,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_generic.c:1719,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_generic.c:1720,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_generic.c:1722,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_generic.c:1724,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_generic.c:1725,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_generic.c:1726,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_generic.c:1730,1
    CyclomaticComplexity: 142
    EdgeCount: 142
    ICount: 381
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1297
    functionDepth: 11
    functionLinenumber: 1297
    functionLinenumberEnd: 1733
    functionName: writegen_process
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_merge_properties
    - writegen_flush_ttxt
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_bs_get_content
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_filter_pck_set_readonly
    - gf_assert
    - gf_bs_del
    - gf_filter_pck_new_shared
    - gf_filter_pid_drop_packet
    - gf_filter_pck_set_property
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_bs_reassign_buffer
    - gf_timestamp_greater
    - writegen_write_bmp
    - gf_odf_iamf_cfg_write_obus
    - gf_filter_get_udta
    - gf_filter_pck_set_seek_flag
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - webvtt_timestamps_dump
    - gf_dynstrcat
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - writegen_push_ttml
    - gf_filter_pck_get_property_str
    - gf_filter_pck_unref
    - gf_odf_iamf_cfg_read
    - gf_odf_iamf_cfg_del
    - gf_filter_pck_get_cts
    - writegen_write_j2k
    - gf_set_progress
    - gf_filter_pid_get_property_str
    - gf_filter_pck_ref_props
    - gf_bs_write_data
    - strlen
    - writegen_flush_ttml
    - gf_filter_pck_new_ref
    - gf_filter_pid_is_eos
    - gf_audio_fmt_bit_depth
    - gf_bs_get_content_no_truncate
    - sprintf
    - gf_filter_pck_forward
    - gf_free
    - gf_filter_pck_get_property
    - gf_filter_pck_set_framing
    - PROP_UINT
    - gf_filter_pck_get_timescale
    - gf_filter_pck_set_byte_offset
    - writegen_write_wav_header
    - gf_filter_pck_set_corrupted
    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: 2145
      start: 2144
    functionDepth: 0
    functionLinenumber: 2144
    functionLinenumberEnd: 2145
    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:2174,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_generic.c:2175,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_generic.c:2176,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/write_generic.c:2178,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_generic.c:2181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2184
      start: 2172
    functionDepth: 4
    functionLinenumber: 2172
    functionLinenumberEnd: 2184
    functionName: writegen_finalize
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_bs_del
    - gf_xml_dom_node_del
    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:2213,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/write_generic.c:2215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2218
      start: 2211
    functionDepth: 1
    functionLinenumber: 2211
    functionLinenumberEnd: 2218
    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:2225,1
    - Dst: gf_pixel_fmt_all_shortnames
      Src: /src/gpac/src/filters/write_generic.c:2226,1
    - Dst: gf_audio_fmt_all_shortnames
      Src: /src/gpac/src/filters/write_generic.c:2227,1
    - Dst: gf_pixel_fmt_all_names
      Src: /src/gpac/src/filters/write_generic.c:2228,1
    - Dst: gf_audio_fmt_all_names
      Src: /src/gpac/src/filters/write_generic.c:2229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2233
      start: 2221
    functionDepth: 2
    functionLinenumber: 2221
    functionLinenumberEnd: 2233
    functionName: writegen_register
    functionSourceFile: /src/gpac/src/filters/write_generic.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_all_shortnames
    - gf_pixel_fmt_all_shortnames
    - gf_audio_fmt_all_names
    - strcmp
    - gf_pixel_fmt_all_names
    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:2238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2241
      start: 2236
    functionDepth: 1
    functionLinenumber: 2236
    functionLinenumberEnd: 2241
    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: 2270
      start: 2267
    functionDepth: 0
    functionLinenumber: 2267
    functionLinenumberEnd: 2270
    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:2276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2281
      start: 2274
    functionDepth: 1
    functionLinenumber: 2274
    functionLinenumberEnd: 2281
    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: 2308
      start: 2305
    functionDepth: 0
    functionLinenumber: 2305
    functionLinenumberEnd: 2308
    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: 2315
      start: 2312
    functionDepth: 0
    functionLinenumber: 2312
    functionLinenumberEnd: 2315
    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: 2319
      start: 2316
    functionDepth: 0
    functionLinenumber: 2316
    functionLinenumberEnd: 2319
    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: 2323
      start: 2320
    functionDepth: 0
    functionLinenumber: 2320
    functionLinenumberEnd: 2323
    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_get_scene_size_info
    - gf_filter_pid_get_property
    - gf_scene_force_size
    - gf_list_enum
    - INT2FIX
    - gf_node_changed
    - gf_filter_is_dynamic
    - gf_sg_set_scene_size_info
    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_new
    - gf_node_set_id
    - gf_sg_get_next_available_node_id
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_get_timescale
    - gf_assert
    - GF_SAFEALLOC
    - ttd_toggle_display
    - gf_list_add
    - gf_filter_get_udta
    - gf_odf_tx3g_read
    - gf_crc_32
    - gf_filter_pid_remove
    - gf_list_get
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_odf_get_text_config
    - gf_filter_pid_check_caps
    - gf_odf_desc_del
    - ttd_setup_scene
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_odf_desc_new
    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_add_child
    - gf_sg_set_root_node
    - gf_sg_route_new
    - ttd_create_node
    - gf_node_set_private
    - gf_node_register
    - gf_list_new
    - gf_sg_new_subscene
    - 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_list_del
    - gf_node_unregister
    - gf_sg_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_node_get_private
    - gf_node_changed
    - gf_list_enum
    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_get_private
    - gf_node_changed
    - 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_changed
    - gf_node_unregister_children
    - 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_sg_vrml_mf_append
    - gf_node_list_get_count
    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: gf_strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:675,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:677,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:678,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:679,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dec_ttxt.c:680,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dec_ttxt.c:680,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:682,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:683,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_ttxt.c:688,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:689,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:691,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dec_ttxt.c:697,1
    - Dst: gf_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:
    - ttd_create_node
    - INT2FIX
    - gf_list_add
    - gf_node_unregister
    - gf_malloc
    - ttd_find_font
    - gf_node_list_add_child
    - gf_node_clone
    - memcpy
    - gf_strcpy
    - strlen
    - sprintf
    - gf_free
    - gf_strcat
    - ttd_add_item
    - stricmp
    - gf_sg_vrml_mf_append
    - gf_utf8_wcstombs
    - gf_node_register
    - gf_strdup
    - gf_sg_vrml_mf_reset
    - ttd_add_line
    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_list_count
    - ttd_create_node
    - INT2FIX
    - GF_SAFEALLOC
    - gf_list_add
    - gf_malloc
    - ttd_split_chunks
    - gf_utf8_mbstowcs
    - gf_list_get
    - gf_node_list_add_child
    - memcpy
    - gf_list_rem
    - ttd_new_text_chunk
    - gf_node_get_scene_time
    - gf_divfix
    - gf_list_enum
    - gf_list_new
    - gf_node_dirty_set
    - gf_node_list_get_count
    - ttd_reset_display
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_sg_vrml_mf_append
    - gf_node_register
    - gf_strdup
    - gf_node_changed
    - ttd_add_line
    - gf_sg_activate_routes
    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_toggle_display
    - ttd_reset_scene
    - ttd_setup_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
    - gf_realloc
    - memcpy
    - ttd_apply_sample
    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_bs_read_u8
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_assert
    - gf_timestamp_rescale_signed
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - ttd_render_simple_text
    - gf_sc_check_sys_frame
    - gf_filter_get_udta
    - gf_timestamp_to_clocktime
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_node_get_scene_time
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_isom_delete_text_sample
    - gf_filter_pid_is_eos
    - gf_bs_read_u16
    - GF_LOG
    - gf_isom_parse_text_sample
    - gf_node_changed
    - ttd_apply_sample
    - gf_bs_available
    - gf_bs_read_u24
    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_filter_get_udta
    - gf_bs_new
    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:
    - ttd_reset_scene
    - gf_odf_desc_del
    - gf_free
    - gf_filter_get_udta
    - gf_bs_del
    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_av1_init_state
    - GF_SAFEALLOC
    - gf_free
    - gf_av1_reset_state
    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_list_count
    - gf_hevc_parse_nalu_bs
    - gf_avc_parse_nalu
    - gf_list_get
    - gf_bs_reassign_buffer
    - gf_vvc_parse_nalu_bs
    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_filter_pid_get_property
    - gf_list_count
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_read
    - parse_param_list
    - gf_list_get
    - gf_odf_hevc_cfg_read
    - seiloader_set_type
    - gf_odf_avc_cfg_del
    - gf_odf_avc_cfg_read
    - gf_odf_av1_cfg_del
    - gf_odf_av1_cfg_read
    - gf_odf_vvc_cfg_del
    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:
    - PROP_DATA
    - gf_filter_pck_get_property
    - PROP_BOOL
    - get_sei_info
    - gf_filter_pck_set_property
    - gf_av1_format_mdcv_to_mpeg
    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_avc_reformat_sei
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_hevc_parse_sei
    - gf_hevc_parse_nalu_bs
    - gf_avc_parse_nalu
    - gf_bs_peek_bits
    - gf_filter_pck_get_data
    - gf_bs_read_int
    - gf_vvc_parse_sei
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_vvc_parse_nalu_bs
    - gf_bs_available
    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_bs_reassign_buffer
    - gf_av1_parse_obu
    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_packet_av1
    - gf_sei_load_from_packet_nalu
    - gf_sei_load_from_state_internal
    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_SAFEALLOC
    - gf_free
    - gf_bs_new
    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:
    - seiloader_set_type
    - gf_free
    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:
    - gf_filter_pid_copy_properties
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_sei_loader_new
    - gf_filter_pid_get_udta
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_sei_init_from_pid
    - gf_list_add
    - gf_sei_loader_del
    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_forward
    - gf_filter_pck_new_ref
    - gf_filter_pck_get_property
    - gf_filter_pck_merge_properties
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_eos
    - gf_sei_load_from_packet
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - 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_filter_get_udta
    - gf_list_new
    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_count
    - gf_filter_get_udta
    - gf_list_del
    - gf_sei_loader_del
    - gf_list_pop_back
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - strstr
    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_filter_pid_get_property
    - gf_bs_get_position
    - gf_fclose
    - gf_fileio_is_main_thread
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_del
    - GF_AC3DmxCtx*::ac3_parser_bs
    - PROP_FRAC64
    - gf_fopen_ex
    - gf_realloc
    - strncmp
    - gf_bs_skip_bytes
    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_get_property
    - gf_filter_pid_copy_properties
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - ac3dmx_check_dur
    - gf_timestamp_rescale
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_ac3_get_channel_layout
    - gf_filter_pid_new
    - gf_odf_ac3_cfg_write
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void ac3dmx_check_pid(GF_Filter *filter, GF_AC3DmxCtx *ctx)
  - BBCount: 12
    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:304,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_ac3.c:306,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 45
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 325
    functionName: ac3dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - 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: 337
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 337
    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:341,1
    - Dst: ac3dmx_check_dur
      Src: /src/gpac/src/filters/reframe_ac3.c:353,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_ac3.c:358,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_ac3.c:360,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_ac3.c:363,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac3.c:364,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_ac3.c:375,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac3.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_ac3.c:383,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_ac3.c:388,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_ac3.c:401,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac3.c:403,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_ac3.c:409,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac3.c:430,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac3.c:432,1
    - Dst: GF_AC3DmxCtx*::ac3_parser_bs
      Src: /src/gpac/src/filters/reframe_ac3.c:439,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac3.c:441,1
    - Dst: ac3dmx_check_pid
      Src: /src/gpac/src/filters/reframe_ac3.c:453,1
    - Dst: ac3dmx_check_pid
      Src: /src/gpac/src/filters/reframe_ac3.c:457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_ac3.c:465,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_ac3.c:486,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_ac3.c:489,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac3.c:490,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_ac3.c:491,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_ac3.c:492,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_ac3.c:494,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_ac3.c:494,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_ac3.c:496,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_ac3.c:497,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_ac3.c:498,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_ac3.c:501,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_ac3.c:504,1
    - Dst: ac3dmx_update_cts
      Src: /src/gpac/src/filters/reframe_ac3.c:506,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/reframe_ac3.c:510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_ac3.c:511,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac3.c:521,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac3.c:527,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac3.c:530,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_ac3.c:543,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac3.c:547,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac3.c:550,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 167
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 339
    functionDepth: 9
    functionLinenumber: 339
    functionLinenumberEnd: 553
    functionName: ac3dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - ac3dmx_check_dur
    - ac3dmx_check_pid
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pid_has_seen_eos
    - ac3dmx_update_cts
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - GF_AC3DmxCtx*::ac3_parser_bs
    - memmove
    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:557,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_ac3.c:560,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac3.c:561,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 555
    functionDepth: 3
    functionLinenumber: 555
    functionLinenumberEnd: 562
    functionName: ac3dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:577,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac3.c:606,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac3.c:607,1
    - Dst: gf_eac3_parser_bs
      Src: /src/gpac/src/filters/reframe_ac3.c:609,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac3.c:614,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_ac3.c:619,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac3.c:620,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac3.c:624,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 64
    argCount: 3
    argNames:
    - _data
    - _size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 564
    functionDepth: 7
    functionLinenumber: 564
    functionLinenumberEnd: 640
    functionName: ac3dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_ac3.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_eac3_parser_bs
    - gf_bs_new
    - gf_ac3_parser
    - gf_bs_del
    - gf_bs_available
    - 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: 665
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 665
    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: 691
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 691
    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: 696
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 696
    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: gf_strcpy
      Src: /src/gpac/src/filters/in_pipe.c:146,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/in_pipe.c:149,1
    - Dst: gf_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:
    - ConnectNamedPipe
    - open
    - CloseHandle
    - gf_filter_set_blocking
    - _setmode
    - strstr
    - strchr
    - CreateEvent
    - gf_malloc
    - gf_filter_get_udta
    - WaitNamedPipeA
    - gf_filter_post_process_task
    - gf_strcpy
    - gf_file_exists
    - pipein_process_event
    - strnicmp
    - strcmp
    - _fileno
    - strlen
    - mkfifo
    - CreateFile
    - CreateNamedPipe
    - gf_errno_str
    - gf_filter_setup_failure
    - gf_strcat
    - GF_LOG
    - mknod
    - MIN
    - gf_sys_is_cov_mode
    - GetLastError
    - strncmp
    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
    - gf_filter_get_udta
    - CloseHandle
    - gf_file_delete
    - close
    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:
    - strcmp
    - strnicmp
    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:
    - pipein_initialize
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_post_process_task
    - gf_fatal_assert
    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: 67
    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:392,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_pipe.c:394,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:398,1
    - Dst: fread
      Src: /src/gpac/src/filters/in_pipe.c:402,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:405,1
    - Dst: WaitForMultipleObjects
      Src: /src/gpac/src/filters/in_pipe.c:415,1
    - Dst: ResetEvent
      Src: /src/gpac/src/filters/in_pipe.c:416,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:418,1
    - Dst: GetOverlappedResult
      Src: /src/gpac/src/filters/in_pipe.c:421,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:422,1
    - Dst: CloseHandle
      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_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:433,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:435,1
    - Dst: pipein_initialize
      Src: /src/gpac/src/filters/in_pipe.c:438,1
    - Dst: ReadFile
      Src: /src/gpac/src/filters/in_pipe.c:442,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/in_pipe.c:446,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:456,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:457,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/in_pipe.c:458,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:472,1
    - Dst: CloseHandle
      Src: /src/gpac/src/filters/in_pipe.c:473,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:476,1
    - Dst: pipein_initialize
      Src: /src/gpac/src/filters/in_pipe.c:479,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:481,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:486,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:488,1
    - Dst: read
      Src: /src/gpac/src/filters/in_pipe.c:493,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:504,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filters/in_pipe.c:504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:512,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:517,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:518,1
    - Dst: close
      Src: /src/gpac/src/filters/in_pipe.c:519,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_pipe.c:529,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_pipe.c:531,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_pipe.c:532,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:534,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:539,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:540,1
    - Dst: memchr
      Src: /src/gpac/src/filters/in_pipe.c:567,1
    - Dst: MIN
      Src: /src/gpac/src/filters/in_pipe.c:572,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:573,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:588,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:596,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/in_pipe.c:599,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:605,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:615,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:618,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_pipe.c:620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:627,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_pipe.c:629,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:631,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_pipe.c:631,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_pipe.c:634,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_pipe.c:634,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_pipe.c:635,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_pipe.c:635,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_pipe.c:637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_pipe.c:640,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_pipe.c:641,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_pipe.c:642,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_pipe.c:646,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/in_pipe.c:650,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/in_pipe.c:653,1
    CyclomaticComplexity: 90
    EdgeCount: 90
    ICount: 281
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 335
    functionDepth: 5
    functionLinenumber: 335
    functionLinenumberEnd: 657
    functionName: pipein_process
    functionSourceFile: /src/gpac/src/filters/in_pipe.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - pipein_initialize
    - gf_filter_pid_set_eos
    - GetOverlappedResult
    - gf_assert
    - CloseHandle
    - gf_filter_pid_raw_new
    - gf_filter_pck_new_shared
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - fread
    - gf_filter_pck_send
    - memchr
    - read
    - gf_filter_pid_send_flush
    - ResetEvent
    - memcmp
    - gf_sys_clock
    - WaitForMultipleObjects
    - ReadFile
    - PROP_BOOL
    - gf_filter_pck_set_sap
    - feof
    - gf_error_to_string
    - gf_errno_str
    - GF_LOG
    - gf_filter_setup_failure
    - gf_filter_ask_rt_reschedule
    - gf_filter_pck_set_framing
    - MIN
    - gf_filter_pid_set_property
    - PROP_UINT
    - GetLastError
    - memmove
    - close
    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: 662
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 662
    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:747,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_pipe.c:748,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 745
    functionDepth: 6
    functionLinenumber: 745
    functionLinenumberEnd: 751
    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: 756
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 756
    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_filter_pid_get_property
    - gf_filter_release_property
    - gf_filter_pid_enum_properties
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property_str
    - gf_itags_get_name
    - gf_props_dump_val
    - av_dict_set
    - strstr
    - strncmp
    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_filter_pid_set_property_dyn
    - gf_filter_pid_set_info
    - gf_free
    - stricmp
    - av_dict_get
    - gf_filter_pid_set_property
    - gf_itags_get_name
    - PROP_STRING
    - strcmp
    - gf_dynstrcat
    - strncmp
    - gf_filter_pid_set_property_str
    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:
    - av_pix_fmt_desc_get
    - GF_LOG
    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:
    - gf_codecid_name
    - GF_LOG
    - avcodec_find_decoder_by_name
    - avcodec_find_decoder
    - gf_codecid_type
    - gf_4cc_to_str
    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:
    - gf_log
    - gf_log_lt
    - ffmpeg_to_gpac_log_level
    - vsnprintf
    - gf_log_tool_level_on
    - AVClass*::item_name
    - gf_log_va_list
    - gpac_to_ffmpeg_log_tool
    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:
    - gf_log_get_tool_level
    - av_log_set_level
    - av_log_get_level
    - gpac_to_ffmpeg_log_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:
    - av_register_all
    - avformat_network_init
    - gf_opts_get_bool
    - 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_list_count
    - gf_free
    - gf_list_del
    - gf_fs_remove_filter_register
    - gf_list_pop_back
    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: gf_strlcat
      Src: /src/gpac/src/filters/ff_common.c:939,1
    - Dst: gf_strlcat
      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:
    - sprintf
    - gf_malloc
    - GF_LOG
    - av_get_pix_fmt_name
    - AV_VERSION_INT
    - strlen
    - gf_strdup
    - memset
    - gf_realloc
    - gf_strlcat
    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:
    - ffmpeg_codecid_to_gpac
    - av_demuxer_iterate
    - av_bsf_iterate
    - av_codec_is_decoder
    - GF_SAFEALLOC
    - av_filter_iterate
    - gf_list_add
    - avdevice_register_all
    - gf_opts_set_key
    - av_input_audio_device_next
    - gf_malloc
    - avio_enum_protocols
    - gf_strdup
    - gf_dynstrcat
    - gf_fs_add_filter_register
    - memcpy
    - ff_streamtype
    - gf_opts_get_bool
    - av_oformat_next
    - av_codec_is_encoder
    - avfilter_next
    - avcodec_get_type
    - av_input_video_device_next
    - strcmp
    - gf_list_new
    - av_muxer_iterate
    - avio_protocol_get_class
    - sprintf
    - gf_free
    - av_codec_next
    - stricmp
    - av_iformat_next
    - memset
    - ffmpeg_arg_translate
    - av_codec_iterate
    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:
    - av_bsf_get_class
    - avformat_alloc_context
    - avcodec_configuration
    - GF_SAFEALLOC
    - avfilter_get_class
    - ffmpeg_initialize
    - avcodec_alloc_context3
    - memcpy
    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:
    - stricmp
    - strcmp
    - av_dict_get
    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:
    - gf_filter_report_meta_option
    - av_dict_free
    - av_dict_get
    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_bs_read_u8
    - gf_bs_get_position
    - gf_free
    - gf_bs_read_u16
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_transfer
    - gf_bs_del
    - gf_bs_read_int
    - memset
    - av_malloc
    - memcpy
    - gf_bs_write_u8
    - gf_bs_available
    - 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:
    - gf_malloc
    - gf_bs_get_content
    - memcmp
    - GF_4CC
    - gf_bs_new
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_data
    - gf_media_vc1_seq_header_to_dsi
    - memcpy
    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_bs_get_position
    - PROP_DATA_NO_COPY
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_odf_vp_cfg_del
    - gf_bs_new
    - gf_m4v_get_object_start
    - gf_bs_del
    - gf_bs_seek
    - gf_m4v_parser_new
    - gf_m4v_parse_config
    - gf_malloc
    - gf_odf_vp_cfg_new
    - gf_eac3_parser_bs
    - memcpy
    - gf_m4v_parser_del
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_odf_ac3_cfg_write
    - gf_odf_vp_cfg_write
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_vp9_parse_superframe
    - gf_bs_write_u32
    - gf_ac3_parser_bs
    - gf_vp9_parse_sample
    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:
    - gf_filter_pid_get_property
    - avcodec_pix_fmt_to_codec_tag
    - ffmpeg_audio_fmt_from_gpac
    - ffmpeg_pixfmt_from_gpac
    - ffmpeg_channel_layout_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:
    - ffmpeg_pixfmt_to_gpac
    - PROP_LONGUINT
    - PROP_UINT
    - gf_filter_pid_set_property
    - PROP_FRAC_INT
    - PROP_BOOL
    - gf_sys_is_test_mode
    - ffmpeg_audio_fmt_to_gpac
    - ffmpeg_channel_layout_to_gpac
    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_opt_set
    - av_err2str
    - GF_LOG
    - gf_props_dump_val
    - av_dict_set
    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:
    - atoi
    - GF_LOG
    - av_dict_get
    - strcmp
    - gf_filter_on_main_thread
    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_rem
    - gf_list_get
    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_filter_pid_get_property
    - gf_odf_desc_del
    - gf_free
    - gf_m4v_get_config
    - gf_bs_get_content
    - gf_bs_new
    - gf_odf_desc_esd_new
    - gf_bs_del
    - gf_bs_write_u32
    - gf_odf_desc_write_bs
    - gf_list_get
    - AMediaFormat_setBuffer
    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:
    - AMediaCodec_createCodecByName
    - gf_free
    - mcdec_init_hevc_dec
    - GF_LOG
    - mcdec_init_avc_dec
    - mcdec_create_surface
    - gf_filter_pid_set_property
    - PROP_UINT
    - mcdec_init_m4vp2_dec
    - mcdec_init_media_format
    - AMediaFormat_new
    - AMediaCodec_configure
    - AMediaCodec_start
    - PROP_FRAC
    - gf_filter_set_name
    - mcdec_find_decoder
    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_avc_read_pps
    - gf_list_count
    - gf_free
    - gf_malloc
    - memcmp
    - gf_list_add
    - GF_SAFEALLOC
    - gf_list_get
    - gf_avc_read_sps
    - memcpy
    - 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_list_count
    - gf_hevc_read_pps
    - gf_free
    - gf_malloc
    - memcmp
    - GF_SAFEALLOC
    - gf_hevc_read_vps
    - gf_list_get
    - gf_hevc_read_sps
    - gf_list_add
    - memcpy
    - gf_list_rem
    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:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - AMediaCodec_stop
    - AMediaCodec_delete
    - gf_m4v_get_config
    - mcdec_reset_ps_list
    - gf_filter_get_udta
    - gf_odf_hevc_cfg_del
    - gf_crc_32
    - gf_list_find
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_remove
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_filter_pid_new
    - gf_list_insert
    - mcdec_init_decoder
    - gf_filter_pid_copy_properties
    - gf_filter_set_max_extra_input_pids
    - mcdec_register_avc_param_set
    - gf_odf_avc_cfg_del
    - gf_filter_pid_check_caps
    - mcdec_register_hevc_param_set
    - GF_LOG
    - AMediaFormat_delete
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_UINT
    - 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_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    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:
    - mcdec_write_ps
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    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_get_position
    - gf_bs_enable_emulation_byte_removal
    - GF_LOG
    - gf_hevc_parse_nalu_bs
    - gf_bs_new
    - gf_avc_parse_nalu
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_seek
    - 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_list_count
    - gf_filter_pid_set_eos
    - gf_assert
    - mcdec_send_frame
    - AMediaCodec_stop
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - AMediaCodec_getOutputBuffer
    - gf_register_before_exit_function
    - AMediaFormat_getInt32
    - gf_filter_get_udta
    - mcdec_rewrite_annex_b
    - gf_timestamp_rescale
    - AMediaCodec_dequeueOutputBuffer
    - gf_filter_pck_get_data
    - mcdec_init_decoder
    - gf_list_get
    - AMediaCodec_getInputBuffer
    - AMediaCodec_queueInputBuffer
    - gf_th_current
    - memcpy
    - gf_filter_pck_get_dts
    - AMediaCodec_flush
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - mcdec_check_ps_state
    - gf_error_to_string
    - gf_free
    - AMediaCodec_getOutputFormat
    - GF_LOG
    - gf_filter_pck_get_timescale
    - AMediaCodec_dequeueInputBuffer
    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_LOG
    - gf_list_add
    - gf_filter_pck_get_frame_interface
    - 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:
    - GF_LOG
    - mcdec_get_transform_matrix
    - 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_list_pop_front
    - gf_filter_pck_set_cts
    - GF_SAFEALLOC
    - 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_filter_get_udta
    - gf_list_new
    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_list_count
    - gf_free
    - mcdec_reset_ps_list
    - gf_filter_get_udta
    - GF_LOG
    - gf_list_del
    - AMediaFormat_delete
    - glDeleteTextures
    - AMediaCodec_delete
    - mcdec_delete_surface
    - gf_list_pop_back
    - ANativeWindow_release
    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:
    - gf_opts_get_bool
    - mcdec_process
    - 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: gf_strcpy
      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: gf_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: gf_strcat
      Src: /src/gpac/src/filters/enc_webcodec.c:329,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:333,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:336,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:339,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/enc_webcodec.c:342,1
    - Dst: gf_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:
    - gf_filter_pid_get_property
    - strlwr
    - _on_wcenc_config
    - gf_filter_pid_set_framing_mode
    - cwrap
    - gf_pixel_fmt_is_yuv
    - strchr
    - gf_filter_get_udta
    - for
    - isConfigSupported
    - gf_filter_pid_remove
    - _to_webenc
    - gf_codecid_parse
    - _on_wcenc_error
    - log
    - gf_filter_pid_new
    - BigInt
    - gf_filter_pid_copy_properties
    - gf_strcpy
    - gf_codecid_4cc_type
    - startsWith
    - PROP_BOOL
    - _web_encs::push
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_check_caps
    - gf_audio_fmt_bit_depth
    - UTF8ToString
    - _on_wcenc_frame
    - GF_LOG
    - gf_strcat
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - enc_class::enc_class
    - gf_pixel_fmt_is_transparent
    - if
    - gf_4cc_to_str
    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:
    - Uint8Array::Uint8Array
    - layout::push
    - Number
    - _to_webenc
    - UTF8ToString
    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_list_count
    - gf_filter_pck_get_property
    - gf_filter_get_udta
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_filter_post_process_task
    - gf_timestamp_rescale
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - gf_list_add
    - gf_filter_pck_ref_props
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    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_malloc
    - PROP_DATA_NO_COPY
    - gf_crc_32
    - gf_filter_pid_set_property
    - memset
    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_filter_pck_new_alloc
    - gf_list_count
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_byte_offset
    - ABS
    - gf_filter_pck_set_sap
    - gf_list_get
    - gf_list_pop_back
    - gf_filter_pck_send
    - gf_list_rem
    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_filter_get_udta
    - gf_list_new
    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_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    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:
    - EM_ASM_INT
    - gf_opts_get_bool
    - GF_LOG
    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:589,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:591,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 586
    functionDepth: 1
    functionLinenumber: 586
    functionLinenumberEnd: 593
    functionName: dasher_new_period
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_list_new
    linkageType: ''
    returnType: GF_DasherPeriod
    signature: GF_DasherPeriod *dasher_new_period()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:605,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/dasher.c:609,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:611,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:611,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: 619
      start: 596
    functionDepth: 4
    functionLinenumber: 596
    functionLinenumberEnd: 619
    functionName: dasher_get_audio_info_with_m4a_sbr_ps
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_m4a_get_config
    - 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:626,1
    - Dst: gf_filter_pid_enum_destinations
      Src: /src/gpac/src/filters/dasher.c:629,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:630,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:636,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:638,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:640,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:648,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:648,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:650,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:650,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 623
    functionDepth: 3
    functionLinenumber: 623
    functionLinenumberEnd: 651
    functionName: dasher_ensure_outpath
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_destination
    - gf_url_concatenate
    - gf_filter_pid_set_property
    - gf_filter_pid_enum_destinations
    - PROP_STRING
    - gf_strdup
    - strstr
    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:665,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:673,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/dasher.c:678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:680,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/dasher.c:684,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:691,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:693,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:695,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 54
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 654
    functionDepth: 3
    functionLinenumber: 654
    functionLinenumberEnd: 717
    functionName: dasher_hls_setup_crypto
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - GF_LOG
    - gf_crypt_info_load
    - gf_list_get
    - 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:723,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:725,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:728,1
    - Dst: dasher_get_dep_bitrate
      Src: /src/gpac/src/filters/dasher.c:729,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 719
    functionDepth: 2
    functionLinenumber: 719
    functionLinenumberEnd: 734
    functionName: dasher_get_dep_bitrate
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - dasher_get_dep_bitrate
    - gf_list_find
    - gf_list_get
    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:745,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:745,1
    - Dst: dasher_get_dep_bitrate
      Src: /src/gpac/src/filters/dasher.c:772,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:774,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:776,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:780,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 45
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 790
      start: 736
    functionDepth: 3
    functionLinenumber: 736
    functionLinenumberEnd: 790
    functionName: dasher_update_bitrate
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_LOG
    - dasher_update_bitrate
    - gf_filter_pid_get_name
    - gf_list_get
    - dasher_get_dep_bitrate
    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:797,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:802,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:802,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:804,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:810,1
    - Dst: dasher_inject_eods
      Src: /src/gpac/src/filters/dasher.c:817,1
    - Dst: dasher_flush_segment
      Src: /src/gpac/src/filters/dasher.c:819,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dasher.c:824,1
    - Dst: dasher_update_period_duration
      Src: /src/gpac/src/filters/dasher.c:829,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dasher.c:835,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:841,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:848,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:860,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:862,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:870,1
    - Dst: dasher_setup_period
      Src: /src/gpac/src/filters/dasher.c:872,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:879,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:885,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:887,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 81
    argCount: 4
    argNames:
    - filter
    - ctx
    - ds
    - is_new_period_request
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 897
      start: 793
    functionDepth: 2
    functionLinenumber: 793
    functionLinenumberEnd: 897
    functionName: dasher_stream_period_changed
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - dasher_setup_period
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_pid_get_name
    - gf_list_find
    - gf_list_add
    - dasher_update_period_duration
    - dasher_inject_eods
    - gf_filter_pid_get_property_str
    - strcmp
    - dasher_flush_segment
    - gf_list_rem
    - gf_timestamp_less
    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:902,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 916
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 916
    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:923,1
    - Dst: dasher_get_dash_dur
      Src: /src/gpac/src/filters/dasher.c:925,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:942,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 918
    functionDepth: 1
    functionLinenumber: 918
    functionLinenumberEnd: 944
    functionName: dasher_send_transport_hints
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - dasher_get_dash_dur
    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:949,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:950,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:951,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:952,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:953,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 955
    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: 995
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 995
    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:1010,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dasher.c:1013,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:1015,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:1016,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:1017,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:1020,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1022,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:1032,1
    - Dst: dasher_reset_stream
      Src: /src/gpac/src/filters/dasher.c:1033,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1034,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:1047,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1048,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:1054,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/dasher.c:1055,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:1058,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/dasher.c:1058,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1062,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:1064,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:1067,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:1072,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/dasher.c:1076,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1077,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1078,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/dasher.c:1082,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1084,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:1084,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1085,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1088,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:1092,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:1093,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:1093,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:1094,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:1096,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1097,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:1099,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1100,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1100,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:1102,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1103,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1106,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dasher.c:1113,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1114,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1115,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1116,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1117,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1118,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:1118,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1120,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:1120,1
    - Dst: dasher_ensure_outpath
      Src: /src/gpac/src/filters/dasher.c:1122,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/dasher.c:1124,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1126,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:1131,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:1133,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1143,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1143,1
    - Dst: gf_filter_pid_disable_clone
      Src: /src/gpac/src/filters/dasher.c:1151,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1155,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1155,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1156,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1156,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1159,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1160,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1160,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1161,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1162,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1162,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1163,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1164,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1164,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1166,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1166,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1171,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1173,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1175,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1175,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1176,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1183,1
    - Dst: ctx
      Src: /src/gpac/src/filters/dasher.c:1186,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1188,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dasher.c:1192,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1198,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:1198,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dasher.c:1206,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:1208,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:1211,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:1212,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dasher.c:1214,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:1219,1
    - Dst: dasher_send_transport_hints
      Src: /src/gpac/src/filters/dasher.c:1227,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:1229,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:1231,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:1236,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dasher.c:1237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:1238,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:1238,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dasher.c:1244,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1296,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:1299,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1302,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1313,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1320,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1323,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1327,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1327,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1332,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1333,1
    - Dst: CHECK_PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:1335,1
    - Dst: CHECK_PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:1337,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1340,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1347,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1355,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1373,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1374,1
    - Dst: CHECK_PROPL
      Src: /src/gpac/src/filters/dasher.c:1375,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1390,1
    - Dst: CHECK_PROP_FRAC64
      Src: /src/gpac/src/filters/dasher.c:1391,1
    - Dst: CHECK_PROP_STR
      Src: /src/gpac/src/filters/dasher.c:1392,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1397,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1397,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1398,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1400,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/dasher.c:1412,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1414,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:1414,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1420,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1422,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1436,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1438,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1441,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dasher.c:1442,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/dasher.c:1486,1
    - Dst: CHECK_PROP_STR
      Src: /src/gpac/src/filters/dasher.c:1494,1
    - Dst: CHECK_PROP_STR
      Src: /src/gpac/src/filters/dasher.c:1495,1
    - Dst: CHECK_PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:1496,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1497,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1498,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1499,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1500,1
    - Dst: CHECK_PROP_PROP
      Src: /src/gpac/src/filters/dasher.c:1501,1
    - Dst: CHECK_PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:1502,1
    - Dst: dasher_setup_profile
      Src: /src/gpac/src/filters/dasher.c:1509,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:1515,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:1519,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1520,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1520,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1524,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:1524,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1534,1
    - Dst: CHECK_PROP
      Src: /src/gpac/src/filters/dasher.c:1536,1
    - Dst: dasher_get_dash_dur
      Src: /src/gpac/src/filters/dasher.c:1539,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1559,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1564,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1565,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/dasher.c:1568,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:1571,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1575,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1578,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:1578,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1579,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1585,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1587,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1593,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1597,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1601,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1605,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dasher.c:1614,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dasher.c:1621,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dasher.c:1625,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1627,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:1631,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/dasher.c:1633,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1639,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dasher.c:1642,1
    - Dst: dasher_get_audio_info_with_m4a_sbr_ps
      Src: /src/gpac/src/filters/dasher.c:1662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:1665,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:1665,1
    - Dst: dasher_get_audio_info_with_m4a_sbr_ps
      Src: /src/gpac/src/filters/dasher.c:1668,1
    - Dst: gf_odf_ac3_cfg_parse
      Src: /src/gpac/src/filters/dasher.c:1675,1
    - Dst: gf_ac3_get_surround_channels
      Src: /src/gpac/src/filters/dasher.c:1678,1
    - Dst: gf_ac3_get_total_channels
      Src: /src/gpac/src/filters/dasher.c:1680,1
    - Dst: gf_eac3_get_chan_loc_count
      Src: /src/gpac/src/filters/dasher.c:1682,1
    - Dst: gf_ac3_get_channel_layout
      Src: /src/gpac/src/filters/dasher.c:1685,1
    - Dst: gf_odf_ac4_cfg_parse
      Src: /src/gpac/src/filters/dasher.c:1691,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1692,1
    - Dst: gf_ac4_dolby_channel_count_from_channel_mask_v1
      Src: /src/gpac/src/filters/dasher.c:1695,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1712,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:1714,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/dasher.c:1724,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/dasher.c:1732,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1743,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1751,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1752,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1756,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1761,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:1765,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1769,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1772,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1775,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1778,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1781,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:1784,1
    - Dst: gf_mpd_load_cues
      Src: /src/gpac/src/filters/dasher.c:1785,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:1793,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:1795,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:1796,1
    CyclomaticComplexity: 208
    EdgeCount: 208
    ICount: 618
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1802
      start: 997
    functionDepth: 7
    functionLinenumber: 997
    functionLinenumberEnd: 1802
    functionName: dasher_configure_pid
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - dasher_get_audio_info_with_m4a_sbr_ps
    - strstr
    - gf_crc_32
    - dasher_send_transport_hints
    - gf_filter_pid_get_name
    - gf_mpd_load_cues
    - gf_filter_get_sep
    - gf_filter_pid_set_property
    - gf_ac3_get_channel_layout
    - gf_strdup
    - gf_filter_pid_get_property
    - gf_media_mpd_format_segment_name
    - gf_filter_pid_set_framing_mode
    - dasher_get_dash_dur
    - snprintf
    - gf_filter_pid_send_event
    - gf_filter_pid_disable_clone
    - gf_odf_ac4_cfg_parse
    - gf_odf_hevc_cfg_read
    - gf_eac3_get_chan_loc_count
    - gf_fileio_resource_url
    - gf_list_get
    - gf_filter_pid_copy_properties
    - dasher_setup_profile
    - gf_file_ext_start
    - gf_fileio_from_url
    - gf_filter_pid_get_property_str
    - strlen
    - gf_fileio_factory
    - gf_audio_fmt_get_layout_from_cicp
    - dasher_reset_stream
    - gf_ac4_dolby_channel_count_from_channel_mask_v1
    - CHECK_PROP_STR
    - gf_list_del_item
    - PROP_UINT
    - gf_ac3_get_surround_channels
    - dasher_ensure_outpath
    - strncmp
    - gf_list_count
    - gf_file_basename
    - CHECK_PROP_FRAC64
    - GF_SAFEALLOC
    - gf_ac3_get_total_channels
    - gf_filter_reset_source
    - gf_filter_pid_resolve_file_template
    - CHECK_PROP
    - gf_odf_avc_cfg_read
    - gf_filter_pid_new
    - ctx
    - strcmp
    - gf_list_new
    - gf_odf_avc_cfg_del
    - gf_free
    - CHECK_PROP_BOOL
    - CHECK_PROP_PROP
    - gf_filter_pid_set_name
    - gf_list_add
    - CHECK_PROPL
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_odf_ac4_cfg_clean_list
    - gf_filter_pid_get_udta
    - gf_filter_pid_orig_src_args
    - gf_odf_ac3_cfg_parse
    - gf_filter_connect_destination
    - gf_dynstrcat
    - gf_filter_set_source
    - CHECK_PROP_FRAC
    - gf_filter_pid_caps_query
    - gf_sys_clock
    - PROP_STRING
    - gf_avc_read_sps
    - gf_error_to_string
    - GF_LOG
    - dasher_update_bitrate
    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: 1252
      start: 1246
    functionDepth: 0
    functionLinenumber: 1246
    functionLinenumberEnd: 1252
    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: 1258
      start: 1252
    functionDepth: 0
    functionLinenumber: 1252
    functionLinenumberEnd: 1258
    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: 1264
      start: 1258
    functionDepth: 0
    functionLinenumber: 1258
    functionLinenumberEnd: 1264
    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: 1270
      start: 1264
    functionDepth: 0
    functionLinenumber: 1264
    functionLinenumberEnd: 1270
    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: 1276
      start: 1270
    functionDepth: 0
    functionLinenumber: 1270
    functionLinenumberEnd: 1276
    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: 1286
      start: 1277
    functionDepth: 0
    functionLinenumber: 1277
    functionLinenumberEnd: 1286
    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: 1295
      start: 1287
    functionDepth: 0
    functionLinenumber: 1287
    functionLinenumberEnd: 1295
    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:2015,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:2018,1
    - Dst: gf_mpd_descriptor_free
      Src: /src/gpac/src/filters/dasher.c:2019,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2023,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2024,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2027,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2029,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2031,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - scheme_id
    - url
    argTypes:
    - GF_DasherCtx*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2032
      start: 2013
    functionDepth: 3
    functionLinenumber: 2013
    functionLinenumberEnd: 2032
    functionName: dasher_check_chaining
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_mpd_descriptor_new
    - gf_list_del_item
    - gf_list_new
    - gf_mpd_descriptor_free
    - gf_mpd_get_descriptor
    - gf_strdup
    - gf_list_add
    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:2042,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2044,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2045,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2046,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2047,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2059,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2061,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2065,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2067,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2070,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2072,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2074,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2076,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2078,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:2080,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:2084,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2089,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2090,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2091,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2094,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2095,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2096,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2099,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2100,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2104,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2105,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2108,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2109,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2112,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2113,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:2135,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:2136,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:2142,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:2145,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:2150,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 117
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2159
      start: 2035
    functionDepth: 4
    functionLinenumber: 2035
    functionLinenumberEnd: 2159
    functionName: dasher_update_mpd
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_list_count
    - sprintf
    - gf_free
    - gf_strcat
    - gf_list_enum
    - gf_list_add
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_xml_dom_create_attribute
    - dasher_check_chaining
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_update_mpd(GF_DasherCtx *ctx)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_mpd_new
      Src: /src/gpac/src/filters/dasher.c:2164,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:2169,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2171,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2172,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2173,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2174,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2177,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2182,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2190,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2192,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2194,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:2200,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dasher.c:2201,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:2204,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:2205,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2209,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2211,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2214,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/dasher.c:2215,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2215,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2215,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2216,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2217,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2223,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2223,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2229,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2231,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2232,1
    - Dst: dasher_update_mpd
      Src: /src/gpac/src/filters/dasher.c:2235,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 66
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2236
      start: 2160
    functionDepth: 5
    functionLinenumber: 2160
    functionLinenumberEnd: 2236
    functionName: dasher_setup_mpd
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_fileio_translate_url
    - gf_timestamp_rescale
    - gf_mpd_new
    - gf_list_new
    - gf_sys_old_arch_compat
    - GF_SAFEALLOC
    - dasher_update_mpd
    - strrchr
    - snprintf
    - gf_list_get
    - gf_strdup
    - gf_list_add
    - strncmp
    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:2243,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:2245,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2247,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2249,1
    - Dst: gf_filter_pid_get_rfc_6381_codec_string
      Src: /src/gpac/src/filters/dasher.c:2258,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: 2259
      start: 2239
    functionDepth: 1
    functionLinenumber: 2239
    functionLinenumberEnd: 2259
    functionName: dasher_get_rfc_6381_codec_name
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_get_rfc_6381_codec_string
    - gf_list_get
    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:2264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2265,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2266,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2268,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2269,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2273,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2274,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - list
    - name
    - value
    argTypes:
    - GF_List*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2277
      start: 2261
    functionDepth: 1
    functionLinenumber: 2261
    functionLinenumberEnd: 2277
    functionName: dasher_add_x_attribute
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_add
    - strcmp
    - gf_list_get
    - gf_strdup
    - 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:2288,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2296,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:2301,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filters/dasher.c:2302,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:2303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2305,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2310,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2311,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2317,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2317,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2320,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2320,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2323,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2323,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/dasher.c:2326,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2331,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2334,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:2336,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2340,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2341,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2342,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2344,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2345,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2350,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2352,1
    - Dst: dasher_add_x_attribute
      Src: /src/gpac/src/filters/dasher.c:2357,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/dasher.c:2360,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: 2363
      start: 2279
    functionDepth: 3
    functionLinenumber: 2279
    functionLinenumberEnd: 2363
    functionName: dasher_add_dolby_vision_attribute
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_odf_dovi_cfg_del
    - sprintf
    - GF_LOG
    - dasher_add_x_attribute
    - gf_bs_new
    - gf_list_new
    - gf_bs_del
    - snprintf
    - gf_odf_dovi_cfg_read_bs
    - gf_4cc_to_str
    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:2369,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2371,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - for_ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2376
      start: 2365
    functionDepth: 1
    functionLinenumber: 2365
    functionLinenumberEnd: 2376
    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: gf_strlcpy
      Src: /src/gpac/src/filters/dasher.c:2383,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2384,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2384,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2385,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2386,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2386,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2387,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2388,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2388,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2389,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2390,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2390,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2391,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2392,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dasher.c:2392,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 2
    argNames:
    - URN
    - res
    argTypes:
    - bin128
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2393
      start: 2378
    functionDepth: 1
    functionLinenumber: 2378
    functionLinenumberEnd: 2393
    functionName: get_canon_urn
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_strlcat
    - gf_strlcpy
    linkageType: ''
    returnType: void
    signature: void get_canon_urn(bin128 URN, char res[40])
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:2397,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:2398,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2399,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2400,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2401,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2402,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2403,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2404,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2405,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2406,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2407,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2408,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2409,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2410,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2411,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2412,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2413,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2414,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2415,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2416,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2417,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2418,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2419,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 48
    argCount: 1
    argNames:
    - canURN
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2421
      start: 2395
    functionDepth: 0
    functionLinenumber: 2395
    functionLinenumberEnd: 2421
    functionName: get_drm_kms_name
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - stricmp
    - strcmp
    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:2431,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:2432,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:2436,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2447,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2463,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2468,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2469,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2469,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2470,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2475,1
    - Dst: get_canon_urn
      Src: /src/gpac/src/filters/dasher.c:2480,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2481,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2482,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2483,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2487,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2490,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2491,1
    - Dst: gf_xml_dom_node_new
      Src: /src/gpac/src/filters/dasher.c:2492,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2494,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2495,1
    - Dst: gf_xml_dom_node_new
      Src: /src/gpac/src/filters/dasher.c:2497,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2499,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2500,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2501,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2510,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dasher.c:2513,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2514,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:2524,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2527,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2528,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dasher.c:2530,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2531,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2533,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:2534,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/filters/dasher.c:2535,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:2536,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2538,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dasher.c:2541,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:2542,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dasher.c:2545,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2546,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:2548,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dasher.c:2548,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:2550,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:2551,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:2552,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:2553,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dasher.c:2554,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:2555,1
    - Dst: get_canon_urn
      Src: /src/gpac/src/filters/dasher.c:2557,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2558,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2559,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2560,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2561,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2562,1
    - Dst: get_drm_kms_name
      Src: /src/gpac/src/filters/dasher.c:2562,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2563,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2565,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2569,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2570,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2571,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2573,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2576,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:2579,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/dasher.c:2581,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2586,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2592,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2592,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2594,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2595,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dasher.c:2595,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2596,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:2599,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: 2601
      start: 2423
    functionDepth: 9
    functionLinenumber: 2423
    functionLinenumberEnd: 2601
    functionName: dasher_get_content_protection_desc
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_bs_read_u8
    - gf_bs_get_position
    - get_drm_kms_name
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_xml_dom_create_attribute
    - gf_list_add
    - gf_bs_write_u8
    - gf_malloc
    - gf_mpd_descriptor_new
    - gf_list_get
    - gf_xml_dom_node_new
    - get_canon_urn
    - gf_bs_write_u24
    - gf_bs_write_data
    - gf_base64_encode
    - gf_list_new
    - gf_bs_read_u32
    - sprintf
    - gf_free
    - GF_LOG
    - gf_bs_write_u32
    - gf_strdup
    - gf_4cc_to_str
    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:2617,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:2619,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/dasher.c:2624,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2631,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2631,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2634,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2634,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2634,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2634,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2637,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2637,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2640,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2640,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2640,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2640,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2640,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2640,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2644,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:2654,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: 2657
      start: 2603
    functionDepth: 6
    functionLinenumber: 2603
    functionLinenumberEnd: 2657
    functionName: dasher_get_mime_and_ext
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - strcmp
    - strchr
    - gf_codecid_mime
    - gf_codecid_file_ext
    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:2667,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2670,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2672,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2674,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2676,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2685,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:2693,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/dasher.c:2698,1
    - Dst: gf_audio_fmt_get_dolby_chanmap_from_layout
      Src: /src/gpac/src/filters/dasher.c:2736,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/dasher.c:2738,1
    - Dst: gf_audio_fmt_get_dolby_chanmap
      Src: /src/gpac/src/filters/dasher.c:2739,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2741,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2742,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2746,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2747,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2750,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2751,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2754,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2755,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2757,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2758,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2760,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2761,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/src/filters/dasher.c:2763,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/dasher.c:2764,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2768,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2770,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2771,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:2774,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2776,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2778,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2779,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2781,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:2782,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2783,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2787,1
    - Dst: dasher_get_rfc_6381_codec_name
      Src: /src/gpac/src/filters/dasher.c:2792,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2793,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2794,1
    - Dst: dasher_add_dolby_vision_attribute
      Src: /src/gpac/src/filters/dasher.c:2796,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:2810,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:2811,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 125
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2813
      start: 2660
    functionDepth: 10
    functionLinenumber: 2660
    functionLinenumberEnd: 2813
    functionName: dasher_update_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - dasher_get_mime_and_ext
    - GF_SAFEALLOC
    - gf_list_add
    - dasher_get_content_protection_desc
    - gf_audio_fmt_get_cicp_from_layout
    - gf_mpd_descriptor_new
    - gf_audio_fmt_get_dolby_chanmap_from_layout
    - gf_dynstrcat
    - gf_mpd_del_list
    - gf_audio_fmt_get_dolby_chanmap
    - gf_media_get_reduced_frame_rate
    - dasher_add_dolby_vision_attribute
    - gf_audio_fmt_get_cicp_layout
    - sprintf
    - gf_free
    - GF_LOG
    - gf_strdup
    - dasher_get_rfc_6381_codec_name
    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:2819,1
    - Dst: gf_mpd_representation_new
      Src: /src/gpac/src/filters/dasher.c:2820,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2828,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dasher.c:2830,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2833,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dasher.c:2837,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:2839,1
    - Dst: dasher_update_rep
      Src: /src/gpac/src/filters/dasher.c:2846,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2849,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2853,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2859,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2861,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:2864,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:2864,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2865,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2869,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:2874,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:2874,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2875,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2877,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2879,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2884,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2890,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/dasher.c:2892,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:2895,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2896,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2897,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:2900,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/dasher.c:2901,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/dasher.c:2901,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2903,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2904,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:2908,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2909,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2910,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/filters/dasher.c:2912,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2913,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2914,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:2916,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:2918,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:2919,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2924,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/dasher.c:2931,1
    - Dst: gf_xml_dom_node_new
      Src: /src/gpac/src/filters/dasher.c:2962,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:2963,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2964,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2968,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/dasher.c:2968,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2969,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2971,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2972,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2973,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/dasher.c:2973,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2974,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dasher.c:2986,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/dasher.c:2989,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:2991,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:2992,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:2996,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:2998,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dasher.c:3001,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/dasher.c:3004,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:3006,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3007,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3008,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:3011,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/dasher.c:3011,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3012,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3016,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 180
    argCount: 3
    argNames:
    - ctx
    - ds
    - srd_rep_idx
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3019
      start: 2815
    functionDepth: 11
    functionLinenumber: 2815
    functionLinenumberEnd: 3019
    functionName: dasher_setup_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_enum_properties
    - gf_assert
    - gf_filter_pid_get_destination
    - gf_list_add
    - gf_xml_dom_create_attribute
    - gf_url_concatenate_parent
    - gf_url_is_relative
    - gf_malloc
    - gf_list_find
    - gf_fileio_resource_url
    - gf_dynstrcat
    - gf_realloc
    - gf_mpd_representation_new
    - gf_xml_dom_node_new
    - gf_fileio_from_url
    - dasher_update_rep
    - gf_base64_encode
    - gf_props_dump
    - strlen
    - gf_list_new
    - sprintf
    - gf_free
    - GF_LOG
    - GF_4CC
    - gf_props_get_type_name
    - gf_strdup
    - gf_props_4cc_get_name
    - strncmp
    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:3025,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3033,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - ds1
    - ds2
    argTypes:
    - GF_DashStream*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3036
      start: 3021
    functionDepth: 1
    functionLinenumber: 3021
    functionLinenumberEnd: 3036
    functionName: dasher_same_roles
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - strcmp
    - gf_props_equal
    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:3041,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3043,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3051
      start: 3038
    functionDepth: 1
    functionLinenumber: 3038
    functionLinenumberEnd: 3051
    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:3067,1
    - Dst: dasher_same_roles
      Src: /src/gpac/src/filters/dasher.c:3075,1
    - Dst: dasher_get_next_as_id
      Src: /src/gpac/src/filters/dasher.c:3086,1
    - Dst: dasher_get_next_as_id
      Src: /src/gpac/src/filters/dasher.c:3090,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:3102,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:3116,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:3117,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:3118,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3123,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3128,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3147,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3171,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3178,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: 3184
      start: 3053
    functionDepth: 2
    functionLinenumber: 3053
    functionLinenumberEnd: 3184
    functionName: dasher_same_adaptation_set
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_find
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_props_equal
    - dasher_same_roles
    - dasher_get_next_as_id
    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:3194,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:3200,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3203,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3207,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: 3210
      start: 3186
    functionDepth: 1
    functionLinenumber: 3186
    functionLinenumberEnd: 3210
    functionName: dasher_add_descriptors
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void dasher_add_descriptors(GF_List **p_dst_list, const GF_PropertyValue
      *desc_val)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:3216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3218,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:3221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3223,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3230,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3231,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3232,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3233,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3235,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:3241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3243,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3246,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3247,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3248,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3249,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 35
    argCount: 2
    argNames:
    - ds
    - event_list
    argTypes:
    - GF_DashStream*
    - GF_PropStringList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3252
      start: 3212
    functionDepth: 1
    functionLinenumber: 3212
    functionLinenumberEnd: 3252
    functionName: dasher_add_inband_event
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - strchr
    - GF_LOG
    - GF_SAFEALLOC
    - strcmp
    - gf_strdup
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void dasher_add_inband_event(GF_DashStream *ds, GF_PropStringList *event_list)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3265,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3267,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3280,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3281,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3282,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3294,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3294,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3294,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3295,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3295,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3295,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3296,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3296,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3296,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3297,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3297,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3298,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3298,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3299,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3299,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3302,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:3303,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:3305,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3311,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3316,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3318,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3322,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3323,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3330,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3333,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3335,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3337,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3339,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3343,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3344,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3347,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3348,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3357,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3358,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3359,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3362,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3363,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3364,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3367,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3368,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3369,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3373,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3374,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3375,1
    - Dst: dasher_add_inband_event
      Src: /src/gpac/src/filters/dasher.c:3379,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:3383,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3384,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 89
    argCount: 2
    argNames:
    - ctx
    - set
    argTypes:
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3386
      start: 3254
    functionDepth: 2
    functionLinenumber: 3254
    functionLinenumberEnd: 3386
    functionName: dasher_setup_set_defaults
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - sprintf
    - GF_LOG
    - gf_mpd_descriptor_new
    - dasher_add_inband_event
    - strrchr
    - strcmp
    - gf_list_get
    - gf_list_add
    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:3390,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3392,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3398,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:3399,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - base_ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3401
      start: 3388
    functionDepth: 1
    functionLinenumber: 3388
    functionLinenumberEnd: 3401
    functionName: rewrite_dep_ids
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_list_count
    - gf_free
    - gf_list_get
    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:3408,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3426,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3438,1
    - Dst: get_base_ds
      Src: /src/gpac/src/filters/dasher.c:3448,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3467,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:3472,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/filters/dasher.c:3475,1
    - Dst: rewrite_dep_ids
      Src: /src/gpac/src/filters/dasher.c:3478,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3485,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 69
    argCount: 2
    argNames:
    - ctx
    - set
    argTypes:
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3492
      start: 3403
    functionDepth: 5
    functionLinenumber: 3403
    functionLinenumberEnd: 3492
    functionName: dasher_check_bitstream_switching
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_mpd_representation_free
    - gf_list_get
    - 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:3516,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:3517,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:3539,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3546,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3552,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3554,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3555,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3559,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3565,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3571,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3572,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3573,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:3575,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3577,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3578,1
    - Dst: gf_filter_get_dst_args
      Src: /src/gpac/src/filters/dasher.c:3580,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3583,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3584,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3586,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3587,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3588,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3591,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:3594,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3601,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3602,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3604,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3605,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3608,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3609,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3611,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3612,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3614,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3615,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3617,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3618,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3620,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3621,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3628,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3630,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3631,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3634,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3635,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3639,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3640,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3643,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3644,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3647,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3648,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3661,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3663,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3666,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3667,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3673,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3677,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3681,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3683,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:3687,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3691,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3693,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3697,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/dasher.c:3702,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3703,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:3704,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3705,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3710,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3711,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3715,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3716,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3719,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3720,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3723,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3724,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3728,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3729,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3732,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3733,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3737,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/dasher.c:3739,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3742,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:3742,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3747,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:3748,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3749,1
    - Dst: gf_filter_pid_get_destination_ex
      Src: /src/gpac/src/filters/dasher.c:3755,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:3757,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:3759,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3760,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/dasher.c:3763,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3764,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:3767,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:3767,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:3771,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3772,1
    - Dst: gf_filter_skip_seg_size_events
      Src: /src/gpac/src/filters/dasher.c:3773,1
    - Dst: gf_cryptfout_push_key
      Src: /src/gpac/src/filters/dasher.c:3778,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:3780,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: 3781
      start: 3506
    functionDepth: 3
    functionLinenumber: 3506
    functionLinenumberEnd: 3781
    functionName: dasher_open_destination
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_cryptfout_push_key
    - gf_url_concatenate
    - gf_sys_old_arch_compat
    - strstr
    - gf_filter_reset_source
    - gf_filter_connect_destination
    - gf_dynstrcat
    - gf_filter_set_source
    - gf_filter_skip_seg_size_events
    - gf_filter_pid_get_property_str
    - strlen
    - gf_error_to_string
    - gf_filter_get_sep
    - sprintf
    - gf_free
    - gf_filter_pid_get_destination_ex
    - GF_LOG
    - 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: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3787,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3791,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dasher.c:3794,1
    - Dst: dasher_gather_deps
      Src: /src/gpac/src/filters/dasher.c:3795,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - dependency_id
    - multi_tracks
    argTypes:
    - GF_DasherCtx*
    - u32
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3798
      start: 3783
    functionDepth: 2
    functionLinenumber: 3783
    functionLinenumberEnd: 3798
    functionName: dasher_gather_deps
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - dasher_gather_deps
    - gf_list_find
    - gf_list_get
    - gf_list_insert
    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:3803,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3809,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: 3816
      start: 3800
    functionDepth: 1
    functionLinenumber: 3800
    functionLinenumberEnd: 3816
    functionName: dasher_update_dep_list
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_get_property_str
    - gf_list_get
    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:3820,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3821,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3823,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:3823,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:3824,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:3825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - filter
    - name
    - ds
    - szSRC
    argTypes:
    - GF_Filter*
    - char*
    - GF_DashStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3826
      start: 3818
    functionDepth: 1
    functionLinenumber: 3818
    functionLinenumberEnd: 3826
    functionName: dasher_inject_interposer
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_sep
    - sprintf
    - gf_filter_reset_source
    - gf_filter_load_filter
    - gf_filter_set_source
    linkageType: ''
    returnType: void
    signature: void dasher_inject_interposer(GF_Filter *filter, const char *name,
      GF_DashStream *ds, char *szSRC)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:3846,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:3847,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3850,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3852,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:3855,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:3858,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3863,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3865,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3868,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3869,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:3871,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3872,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:3878,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dasher.c:3879,1
    - Dst: gf_filter_pid_force_single_link
      Src: /src/gpac/src/filters/dasher.c:3882,1
    - Dst: gf_filter_pid_copy_properties
      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_STRING
      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:3900,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3900,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3904,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:3904,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3905,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3905,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3906,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:3906,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3909,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3909,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3912,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3915,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3915,1
    - Dst: gf_filter_pid_require_source_id
      Src: /src/gpac/src/filters/dasher.c:3919,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3922,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3926,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3930,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3930,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3932,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3932,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3935,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3935,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3937,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3937,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3938,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3938,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3939,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dasher.c:3939,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3946,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3946,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3952,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3952,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3955,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:3955,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3957,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3957,1
    - Dst: dasher_update_dep_list
      Src: /src/gpac/src/filters/dasher.c:3960,1
    - Dst: dasher_update_dep_list
      Src: /src/gpac/src/filters/dasher.c:3961,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3966,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3966,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3969,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3969,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3971,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3971,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3973,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3973,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3974,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3974,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3977,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:3977,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:3981,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dasher.c:3982,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3983,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/dasher.c:3983,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3984,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:3984,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:3989,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:3990,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dasher.c:3991,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:3995,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:3996,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:3997,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:3999,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/dasher.c:3999,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4002,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dasher.c:4003,1
    - Dst: dasher_gather_deps
      Src: /src/gpac/src/filters/dasher.c:4004,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4005,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:4006,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/dasher.c:4006,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:4008,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:4014,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:4014,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:4016,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:4020,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:4020,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:4026,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:4026,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dasher.c:4028,1
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/dasher.c:4034,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:4035,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4037,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dasher.c:4037,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/dasher.c:4038,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dasher.c:4039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4046,1
    - Dst: dasher_inject_interposer
      Src: /src/gpac/src/filters/dasher.c:4048,1
    - Dst: dasher_inject_interposer
      Src: /src/gpac/src/filters/dasher.c:4053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4055,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 171
    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: 4057
      start: 3828
    functionDepth: 3
    functionLinenumber: 3828
    functionLinenumberEnd: 4057
    functionName: dasher_open_pid
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - PROP_LONGUINT
    - PROP_POINTER
    - gf_assert
    - gf_list_add
    - gf_filter_reset_source
    - gf_list_find
    - gf_fatal_assert
    - PROP_FRAC
    - gf_list_get
    - gf_filter_pid_new
    - gf_filter_set_source
    - gf_filter_pid_copy_properties
    - gf_filter_pid_require_source_id
    - dasher_inject_interposer
    - PROP_BOOL
    - PROP_STRING
    - gf_list_new
    - gf_filter_load_filter
    - gf_filter_get_sep
    - sprintf
    - dasher_gather_deps
    - gf_list_del
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_UINT
    - dasher_update_dep_list
    - gf_filter_pid_force_single_link
    - gf_list_reset
    - 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:4064,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4068,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4074,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4077,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4080,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4085,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4089,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4090,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4092,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 1
    argNames:
    - ds
    argTypes:
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4093
      start: 4059
    functionDepth: 2
    functionLinenumber: 4059
    functionLinenumberEnd: 4093
    functionName: dasher_set_content_components
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - GF_SAFEALLOC
    - strcmp
    - gf_strdup
    - gf_list_add
    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:4100,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - ds
    - url
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4104
      start: 4095
    functionDepth: 3
    functionLinenumber: 4095
    functionLinenumberEnd: 4104
    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:4115,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4117,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4118,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4123,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4124,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4125,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - ds
    - tpl
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4127
      start: 4112
    functionDepth: 4
    functionLinenumber: 4112
    functionLinenumberEnd: 4127
    functionName: dasher_check_template_reuse
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_add
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - dasher_cat_mpd_url
    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:4131,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4133,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4134,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4135,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4136,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4137,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: 4142
      start: 4129
    functionDepth: 3
    functionLinenumber: 4129
    functionLinenumberEnd: 4142
    functionName: dasher_check_hls_variant_path
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_url_concatenate
    - strcmp
    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:4166,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4168,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4173,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4176,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4181,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4184,1
    - Dst: dasher_template_use_source_url
      Src: /src/gpac/src/filters/dasher.c:4188,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/dasher.c:4200,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4204,1
    - Dst: gf_media_reduce_aspect_ratio
      Src: /src/gpac/src/filters/dasher.c:4209,1
    - Dst: if
      Src: /src/gpac/src/filters/dasher.c:4215,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4215,1
    - Dst: dasher_template_use_source_url
      Src: /src/gpac/src/filters/dasher.c:4230,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4234,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4235,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4236,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4240,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4241,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4245,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4249,1
    - Dst: dasher_check_hls_variant_path
      Src: /src/gpac/src/filters/dasher.c:4257,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:4260,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:4262,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:4263,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:4265,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:4267,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4277,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4281,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4295,1
    - Dst: dasher_template_use_source_url
      Src: /src/gpac/src/filters/dasher.c:4298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4307,1
    - Dst: dasher_check_hls_variant_path
      Src: /src/gpac/src/filters/dasher.c:4314,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4317,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4318,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:4319,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4321,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4322,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dasher.c:4323,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:4336,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4338,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4346,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4366,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4380,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4386,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4398,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4400,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4403,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:4408,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:4409,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4426,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:4432,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4435,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4437,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4438,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4439,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4440,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4441,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4442,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4444,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4445,1
    - Dst: gf_list_transfer
      Src: /src/gpac/src/filters/dasher.c:4447,1
    - Dst: gf_mpd_representation_free
      Src: /src/gpac/src/filters/dasher.c:4449,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4452,1
    - Dst: dasher_set_content_components
      Src: /src/gpac/src/filters/dasher.c:4453,1
    - Dst: dasher_set_content_components
      Src: /src/gpac/src/filters/dasher.c:4455,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4456,1
    - Dst: dasher_open_pid
      Src: /src/gpac/src/filters/dasher.c:4458,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4462,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4464,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4469,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4483,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4484,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dasher.c:4492,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4494,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4495,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dasher.c:4496,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4499,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4500,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:4501,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4505,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dasher.c:4507,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dasher.c:4512,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dasher.c:4517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4520,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:4520,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4526,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4528,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4532,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4537,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4537,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4537,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:4538,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/dasher.c:4542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4544,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:4545,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4553,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:4553,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:4554,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4558,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:4558,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:4559,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/dasher.c:4579,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4583,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/dasher.c:4584,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4587,1
    - Dst: gf_audio_fmt_sname
      Src: /src/gpac/src/filters/dasher.c:4588,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4591,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:4592,1
    - Dst: gf_codecid_file_ext
      Src: /src/gpac/src/filters/dasher.c:4598,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4600,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4602,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4605,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:4606,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4612,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/src/filters/dasher.c:4613,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4615,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4618,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:4624,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dasher.c:4630,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4647,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4651,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4655,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4659,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4682,1
    - Dst: dasher_check_template_reuse
      Src: /src/gpac/src/filters/dasher.c:4684,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:4687,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:4688,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4690,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4696,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4697,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4698,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4701,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4706,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4707,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4709,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4713,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:4716,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4721,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4722,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4722,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4727,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:4733,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:4735,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:4735,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4737,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4738,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4739,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4740,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/filters/dasher.c:4742,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4744,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4747,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:4750,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4753,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:4754,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4757,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4759,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4763,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4764,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4765,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4768,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4769,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4770,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4771,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4774,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4775,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4779,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4780,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4781,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:4783,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4785,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4786,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4788,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4789,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4793,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4793,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4794,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:4794,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:4799,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4800,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4807,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4809,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4810,1
    - Dst: get_base_ds
      Src: /src/gpac/src/filters/dasher.c:4819,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:4836,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4838,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4841,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:4848,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4852,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4854,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:4859,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4862,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4863,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:4866,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:4868,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:4872,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4876,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4877,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4902,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4905,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:4909,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4910,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4912,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4919,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4922,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4924,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4925,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4926,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4941,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4946,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4951,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4954,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4957,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4959,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4962,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4964,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:4965,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:4966,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:4980,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:4981,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4983,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:4986,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:4987,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:4991,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4993,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:4996,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:4999,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:5001,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:5004,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:5006,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:5009,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:5011,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:5013,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:5019,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:5023,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:5026,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:5028,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:5030,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:5034,1
    - Dst: dasher_open_destination
      Src: /src/gpac/src/filters/dasher.c:5036,1
    - Dst: dasher_open_pid
      Src: /src/gpac/src/filters/dasher.c:5040,1
    CyclomaticComplexity: 293
    EdgeCount: 293
    ICount: 713
    argCount: 3
    argNames:
    - filter
    - ctx
    - set
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5042
      start: 4144
    functionDepth: 10
    functionLinenumber: 4144
    functionLinenumberEnd: 5042
    functionName: dasher_setup_sources
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - dasher_open_pid
    - gf_media_mpd_format_segment_name
    - gf_floor
    - gf_pixel_fmt_sname
    - gf_file_basename
    - gf_assert
    - gf_codecid_mime
    - gf_url_concatenate
    - dasher_open_destination
    - GF_SAFEALLOC
    - gf_props_equal
    - gf_filter_pid_get_packet
    - gf_list_add
    - strstr
    - gf_url_concatenate_parent
    - dasher_get_content_protection_desc
    - gf_url_is_relative
    - strchr
    - dasher_set_content_components
    - gf_mpd_representation_free
    - dasher_check_hls_variant_path
    - gf_list_find
    - gf_timestamp_rescale
    - gf_filter_pid_resolve_file_template
    - gf_media_reduce_aspect_ratio
    - gf_list_get
    - gf_dynstrcat
    - gf_strcpy
    - gf_mpd_del_list
    - gf_filter_pid_set_discard
    - gf_filter_pid_get_name
    - gf_filter_pck_get_cts
    - gf_media_get_reduced_frame_rate
    - strrchr
    - gf_filter_pid_get_property_str
    - strcmp
    - strlen
    - gf_list_new
    - dasher_cat_mpd_url
    - sprintf
    - dasher_template_use_source_url
    - gf_free
    - GF_LOG
    - gf_strcat
    - stricmp
    - gf_audio_fmt_sname
    - dasher_check_template_reuse
    - if
    - gf_strdup
    - get_base_ds
    - gf_list_transfer
    - strncmp
    - gf_codecid_file_ext
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_setup_sources(GF_Filter *filter, GF_DasherCtx *ctx, GF_MPD_AdaptationSet
      *set)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5046,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:5054,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5055,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5060,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5067,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - stl
    - sctx
    - is_active
    argTypes:
    - GF_MPD_SegmentTimeline*
    - GF_DASH_SegmentContext*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5070
      start: 5044
    functionDepth: 1
    functionLinenumber: 5044
    functionLinenumberEnd: 5070
    functionName: dasher_purge_segment_timeline
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_rem
    - gf_free
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void dasher_purge_segment_timeline(GF_MPD_SegmentTimeline *stl, GF_DASH_SegmentContext
      *sctx, Bool is_active)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:5076,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:5081,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dasher.c:5082,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:5086,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5088,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5090,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5091,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5094,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5096,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5101,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:5103,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:5106,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: 5107
      start: 5072
    functionDepth: 3
    functionLinenumber: 5072
    functionLinenumberEnd: 5107
    functionName: send_file_delete
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_free
    - GF_FEVT_INIT
    - gf_url_concatenate
    - strrchr
    - gf_filter_pid_send_event
    - strncmp
    linkageType: ''
    returnType: void
    signature: void send_file_delete(GF_DasherCtx *ctx, GF_DashStream *ds, const char
      *filename, const char *filepath, s32 part_idx)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5114,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5122,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:5125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5151,1
    - Dst: send_file_delete
      Src: /src/gpac/src/filters/dasher.c:5153,1
    - Dst: send_file_delete
      Src: /src/gpac/src/filters/dasher.c:5159,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5162,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dasher.c:5166,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/filters/dasher.c:5170,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dasher.c:5176,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/filters/dasher.c:5180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5186,1
    - Dst: dasher_purge_segment_timeline
      Src: /src/gpac/src/filters/dasher.c:5192,1
    - Dst: dasher_purge_segment_timeline
      Src: /src/gpac/src/filters/dasher.c:5198,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5207,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5208,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5209,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5210,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5211,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:5212,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 86
    argCount: 6
    argNames:
    - ctx
    - rep
    - owned_set
    - mpd_timescale
    - max_ptime
    - active_ds
    argTypes:
    - GF_DasherCtx*
    - GF_MPD_Representation*
    - GF_MPD_AdaptationSet*
    - u32
    - Double
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5214
      start: 5109
    functionDepth: 4
    functionLinenumber: 5109
    functionLinenumberEnd: 5214
    functionName: dasher_purge_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_list_pop_front
    - GF_LOG
    - gf_list_find
    - gf_list_get
    - send_file_delete
    - dasher_purge_segment_timeline
    - gf_mpd_segment_url_free
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_purge_rep(GF_DasherCtx *ctx, GF_MPD_Representation *rep,
      GF_MPD_AdaptationSet *owned_set, u32 mpd_timescale, Double max_ptime, GF_DashStream
      *active_ds)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5235,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5246,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5251,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:5252,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:5270,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:5273,1
    - Dst: dasher_purge_rep
      Src: /src/gpac/src/filters/dasher.c:5283,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5285,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:5293,1
    - Dst: gf_mpd_period_free
      Src: /src/gpac/src/filters/dasher.c:5294,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5303,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5305,1
    - Dst: dasher_purge_rep
      Src: /src/gpac/src/filters/dasher.c:5316,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 96
    argCount: 2
    argNames:
    - ctx
    - period_dur
    argTypes:
    - GF_DasherCtx*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5334
      start: 5216
    functionDepth: 5
    functionLinenumber: 5216
    functionLinenumberEnd: 5334
    functionName: dasher_purge_segments
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_enum
    - gf_assert
    - gf_mpd_period_free
    - dasher_purge_rep
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void dasher_purge_segments(GF_DasherCtx *ctx, u64 *period_dur)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5345,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5347,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:5355,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5380,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:5393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5394,1
    - Dst: dasher_purge_segments
      Src: /src/gpac/src/filters/dasher.c:5400,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5409,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5412,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:5431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5455,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5457,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 101
    argCount: 2
    argNames:
    - ctx
    - is_period_switch
    argTypes:
    - GF_DasherCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5469
      start: 5336
    functionDepth: 6
    functionLinenumber: 5336
    functionLinenumberEnd: 5469
    functionName: dasher_update_period_duration
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_LOG
    - dasher_purge_segments
    - gf_timestamp_rescale
    - gf_assert
    - ABS
    - gf_list_get
    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:5477,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:5479,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dasher.c:5482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5484,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dasher.c:5487,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dasher.c:5488,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5490,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:5490,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5493,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:5493,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5496,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:5496,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:5497,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: 5498
      start: 5471
    functionDepth: 2
    functionLinenumber: 5471
    functionLinenumberEnd: 5498
    functionName: dasher_transfer_file
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - GF_LOG
    - PROP_BOOL
    - PROP_STRING
    - gf_fsize
    - gf_fread
    - gf_filter_pck_set_property
    - 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:5503,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5504
      start: 5501
    functionDepth: 1
    functionLinenumber: 5501
    functionLinenumberEnd: 5504
    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:5508,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5511,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5512,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5514,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5515,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: 5522
      start: 5506
    functionDepth: 1
    functionLinenumber: 5506
    functionLinenumberEnd: 5522
    functionName: dasher_get_set_and_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:5552,1
    - Dst: CHECK_STR
      Src: /src/gpac/src/filters/dasher.c:5553,1
    - Dst: CHECK_STR
      Src: /src/gpac/src/filters/dasher.c:5554,1
    - Dst: CHECK_STR
      Src: /src/gpac/src/filters/dasher.c:5555,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5556,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5557,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5558,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5559,1
    - Dst: CHECK_VAL
      Src: /src/gpac/src/filters/dasher.c:5560,1
    - Dst: CHECK_FRAC
      Src: /src/gpac/src/filters/dasher.c:5561,1
    - Dst: CHECK_FRAC
      Src: /src/gpac/src/filters/dasher.c:5562,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5566,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - ds
    - rep
    argTypes:
    - GF_DashStream*
    - GF_MPD_Representation*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5573
      start: 5524
    functionDepth: 1
    functionLinenumber: 5524
    functionLinenumberEnd: 5573
    functionName: dasher_merge_rep
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - CHECK_STR
    - CHECK_VAL
    - CHECK_FRAC
    - GF_LOG
    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: 5533
      start: 5532
    functionDepth: 0
    functionLinenumber: 5532
    functionLinenumberEnd: 5533
    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: 5541
      start: 5534
    functionDepth: 0
    functionLinenumber: 5534
    functionLinenumberEnd: 5541
    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: 5551
      start: 5543
    functionDepth: 0
    functionLinenumber: 5543
    functionLinenumberEnd: 5551
    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:5580,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:5582,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:5585,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dasher.c:5587,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dasher.c:5588,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:5591,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5592,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/dasher.c:5592,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5594,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:5594,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:5597,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:5597,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:5599,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: 5600
      start: 5574
    functionDepth: 3
    functionLinenumber: 5574
    functionLinenumberEnd: 5600
    functionName: dasher_forward_manifest_raw
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_url_concatenate
    - PROP_STRING
    - gf_filter_pck_set_property
    - strlen
    - PROP_STRING_NO_COPY
    - memcpy
    - 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:5610,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dasher.c:5612,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/dasher.c:5613,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/filters/dasher.c:5616,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dasher.c:5616,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5619,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5620,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5625,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5628,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:5630,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:5631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5633,1
    - Dst: dasher_get_set_and_rep
      Src: /src/gpac/src/filters/dasher.c:5637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5639,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:5644,1
    - Dst: gf_mpd_del_list
      Src: /src/gpac/src/filters/dasher.c:5647,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5649,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:5650,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:5651,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5653,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:5654,1
    - Dst: dasher_get_content_protection_desc
      Src: /src/gpac/src/filters/dasher.c:5655,1
    - Dst: dasher_merge_rep
      Src: /src/gpac/src/filters/dasher.c:5657,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:5660,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:5661,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5662,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5669,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5671,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5672,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5673,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:5674,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:5678,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5679,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:5682,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5683,1
    - Dst: gf_xml_dom_create_attribute
      Src: /src/gpac/src/filters/dasher.c:5686,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:5687,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:5691,1
    - Dst: dasher_check_chaining
      Src: /src/gpac/src/filters/dasher.c:5692,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/dasher.c:5696,1
    - Dst: dasher_get_utc
      Src: /src/gpac/src/filters/dasher.c:5698,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/filters/dasher.c:5699,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:5701,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:5701,1
    - Dst: dasher_transfer_file
      Src: /src/gpac/src/filters/dasher.c:5705,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:5708,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dasher.c:5709,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dasher.c:5710,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:5711,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 93
    argCount: 2
    argNames:
    - ctx
    - manifest
    argTypes:
    - GF_DasherCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5714
      start: 5603
    functionDepth: 11
    functionLinenumber: 5603
    functionLinenumberEnd: 5714
    functionName: dasher_forward_mpd
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_xml_dom_parse_string
    - gf_list_count
    - gf_xml_dom_del
    - dasher_get_utc
    - gf_xml_dom_create_attribute
    - gf_list_add
    - dasher_check_chaining
    - dasher_get_content_protection_desc
    - dasher_transfer_file
    - dasher_get_set_and_rep
    - gf_mpd_new
    - gf_list_find
    - gf_file_temp
    - gf_list_get
    - dasher_merge_rep
    - gf_mpd_del_list
    - gf_xml_dom_new
    - gf_mpd_del
    - strcmp
    - gf_list_new
    - gf_error_to_string
    - gf_xml_dom_get_root
    - gf_fclose
    - GF_LOG
    - gf_list_del
    - gf_mpd_init_from_dom
    - gf_mpd_write
    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:5719,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dasher.c:5721,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5723,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dasher.c:5723,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:5725,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5726,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5727,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5728,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5729,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5731,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5732,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5739,1
    - Dst: gf_bs_get_position
      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_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5746,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5747,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5748,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5749,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5750,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5751,1
    - Dst: gf_bs_write_u32
      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_u32
      Src: /src/gpac/src/filters/dasher.c:5754,1
    - Dst: gf_bs_write_u32
      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:5757,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5757,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:5759,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:5760,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:5782,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dasher.c:5783,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5785,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5786,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/dasher.c:5793,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5819,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5821,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5822,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5823,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5830,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5834,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dasher.c:5837,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5840,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5841,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5844,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5845,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/filters/dasher.c:5848,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/dasher.c:5848,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/dasher.c:5851,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5854,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5855,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/dasher.c:5858,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/dasher.c:5859,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5862,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5863,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5864,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5867,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5868,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5869,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5870,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:5876,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5877,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:5878,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5880,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5887,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dasher.c:5888,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5893,1
    - Dst: gf_bs_write_utf8
      Src: /src/gpac/src/filters/dasher.c:5896,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5903,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5905,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5909,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5911,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5912,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5920,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5922,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5924,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5925,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5926,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:5929,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:5931,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5933,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5934,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5936,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5937,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5939,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5942,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5943,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/dasher.c:5946,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5947,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5950,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5951,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5955,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5957,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5958,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5959,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dasher.c:5962,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5963,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dasher.c:5964,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dasher.c:5965,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:5967,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:5968,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dasher.c:5970,1
    - Dst: gf_filter_pck_check_realloc
      Src: /src/gpac/src/filters/dasher.c:5971,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dasher.c:5972,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:5973,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dasher.c:5974,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 222
    argCount: 2
    argNames:
    - ctx
    - opid
    argTypes:
    - GF_DasherCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5977
      start: 5716
    functionDepth: 9
    functionLinenumber: 5716
    functionLinenumberEnd: 5977
    functionName: dasher_write_index
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_bs_get_content
    - gf_filter_pid_enum_properties
    - gf_bs_write_u64
    - gf_bs_new
    - gf_bs_write_double
    - gf_bs_del
    - gf_bs_seek
    - gf_bs_write_u8
    - FIX2FLT
    - gf_list_get
    - gf_list_last
    - gf_filter_pck_check_realloc
    - gf_filter_pck_send
    - gf_bs_write_data
    - strlen
    - gf_bs_write_utf8
    - gf_free
    - gf_filter_pck_set_framing
    - GF_4CC
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_float
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_write_index(GF_DasherCtx *ctx, GF_FilterPid *opid)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: dasher_write_index
      Src: /src/gpac/src/filters/dasher.c:5989,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/dasher.c:5994,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:6016,1
    - Dst: gf_mpd_write_m3u8_master_playlist
      Src: /src/gpac/src/filters/dasher.c:6017,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/filters/dasher.c:6019,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6025,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:6025,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:6029,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dasher.c:6036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6037,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dasher.c:6037,1
    - Dst: gf_sha1_file_ptr
      Src: /src/gpac/src/filters/dasher.c:6040,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dasher.c:6047,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:6048,1
    - Dst: dasher_transfer_file
      Src: /src/gpac/src/filters/dasher.c:6051,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:6053,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 59
    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: 6055
      start: 5980
    functionDepth: 10
    functionLinenumber: 5980
    functionLinenumberEnd: 6055
    functionName: dasher_write_and_send_manifest
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - dasher_transfer_file
    - GF_LOG
    - gf_mpd_write_m3u8_master_playlist
    - gf_file_basename
    - gf_error_to_string
    - memcmp
    - gf_ftell
    - gf_sha1_file_ptr
    - gf_file_temp
    - gf_mpd_write
    - memcpy
    - dasher_write_index
    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:6059,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6061,1
    - Dst: dasher_update_bitrate
      Src: /src/gpac/src/filters/dasher.c:6062,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6064
      start: 6057
    functionDepth: 4
    functionLinenumber: 6057
    functionLinenumberEnd: 6064
    functionName: dasher_update_dyn_bitrates
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - dasher_update_bitrate
    - gf_list_get
    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:6086,1
    - Dst: dasher_get_utc
      Src: /src/gpac/src/filters/dasher.c:6088,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6090,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:6097,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/filters/dasher.c:6103,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:6108,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:6109,1
    - Dst: dasher_update_mpd
      Src: /src/gpac/src/filters/dasher.c:6113,1
    - Dst: dasher_write_and_send_manifest
      Src: /src/gpac/src/filters/dasher.c:6165,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:6188,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:6192,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:6198,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:6200,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:6209,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:6215,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6217,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:6219,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6220,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:6222,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:6224,1
    - Dst: dasher_transfer_file
      Src: /src/gpac/src/filters/dasher.c:6229,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:6230,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:6232,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:6240,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6241,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:6243,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dasher.c:6244,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:6245,1
    - Dst: dasher_write_and_send_manifest
      Src: /src/gpac/src/filters/dasher.c:6248,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dasher.c:6259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6261,1
    - Dst: gf_mpd_write
      Src: /src/gpac/src/filters/dasher.c:6265,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dasher.c:6266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6269,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:6269,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: 6276
      start: 6066
    functionDepth: 11
    functionLinenumber: 6066
    functionLinenumberEnd: 6276
    functionName: dasher_send_manifest
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - gf_url_concatenate
    - dasher_get_utc
    - snprintf
    - dasher_update_mpd
    - dasher_transfer_file
    - gf_fopen
    - gf_gmtime
    - gf_dynstrcat
    - gf_list_get
    - gf_list_last
    - gf_strcpy
    - gf_file_ext_start
    - gf_list_enum
    - gf_error_to_string
    - gf_free
    - gf_fclose
    - gf_strcat
    - GF_LOG
    - dasher_update_dyn_bitrates
    - dasher_write_and_send_manifest
    - gf_strdup
    - gf_mpd_write
    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: 6306
      start: 6304
    functionDepth: 0
    functionLinenumber: 6304
    functionLinenumberEnd: 6306
    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:6881,1
    - Dst: dasher_context_update_period_end
      Src: /src/gpac/src/filters/dasher.c:6884,1
    - Dst: dasher_send_manifest
      Src: /src/gpac/src/filters/dasher.c:6888,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6889
      start: 6874
    functionDepth: 12
    functionLinenumber: 6874
    functionLinenumberEnd: 6889
    functionName: dasher_udpate_periods_and_manifest
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - dasher_update_period_duration
    - dasher_context_update_period_end
    - dasher_send_manifest
    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:6901,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6905,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6907,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:6909,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:6914,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:6921,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:6925,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:6929,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dasher.c:6931,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:6933,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:6935,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 1
    argNames:
    - streams_in
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6938
      start: 6897
    functionDepth: 3
    functionLinenumber: 6897
    functionLinenumberEnd: 6938
    functionName: dasher_period_count
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_list_add
    - gf_list_pop_back
    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:6959,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:6964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6969,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/dasher.c:6975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6977,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/dasher.c:6980,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:6982,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:6982,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/dasher.c:6985,1
    - Dst: gf_dm_sess_get_stats
      Src: /src/gpac/src/filters/dasher.c:6993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7007,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dasher.c:7007,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/dasher.c:7008,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/dasher.c:7012,1
    - Dst: gf_blob_get
      Src: /src/gpac/src/filters/dasher.c:7013,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dasher.c:7017,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/filters/dasher.c:7018,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dasher.c:7023,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filters/dasher.c:7028,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filters/dasher.c:7034,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/filters/dasher.c:7038,1
    - Dst: gf_net_parse_date
      Src: /src/gpac/src/filters/dasher.c:7041,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7048,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/dasher.c:7050,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:7051,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7052,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7055,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/dasher.c:7058,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 93
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7060
      start: 6940
    functionDepth: 4
    functionLinenumber: 6940
    functionLinenumberEnd: 7060
    functionName: dasher_init_utc
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_dm_sess_get_cache_name
    - gf_net_ntp_to_utc
    - gf_blob_get
    - gf_blob_release
    - strchr
    - gf_dm_sess_get_header
    - gf_dm_sess_new
    - gf_net_get_utc
    - gf_dm_sess_process
    - gf_filter_get_download_manager
    - gf_dm_sess_del
    - ABS
    - strcmp
    - gf_net_parse_date
    - sscanf
    - gf_error_to_string
    - GF_LOG
    - strncmp
    - gf_dm_sess_get_stats
    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:7077,1
    - Dst: dasher_update_dyn_bitrates
      Src: /src/gpac/src/filters/dasher.c:7081,1
    - Dst: dasher_udpate_periods_and_manifest
      Src: /src/gpac/src/filters/dasher.c:7083,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7092,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7098,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7100,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dasher.c:7101,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7113,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7115,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dasher.c:7117,1
    - Dst: dasher_reset_stream
      Src: /src/gpac/src/filters/dasher.c:7120,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7133,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:7142,1
    - Dst: dasher_reload_context
      Src: /src/gpac/src/filters/dasher.c:7151,1
    - Dst: dasher_udpate_periods_and_manifest
      Src: /src/gpac/src/filters/dasher.c:7159,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7160,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7162,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:7163,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7174,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:7181,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:7196,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7200,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:7216,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:7217,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:7219,1
    - Dst: dasher_send_transport_hints
      Src: /src/gpac/src/filters/dasher.c:7221,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:7223,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:7225,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7231,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7233,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7240,1
    - Dst: gf_mpd_period_new
      Src: /src/gpac/src/filters/dasher.c:7248,1
    - Dst: dasher_setup_mpd
      Src: /src/gpac/src/filters/dasher.c:7249,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7250,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7254,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7258,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:7262,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7269,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7271,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7279,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7282,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:7306,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:7307,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7308,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:7313,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:7314,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:7315,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7320,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7322,1
    - Dst: dasher_setup_period
      Src: /src/gpac/src/filters/dasher.c:7341,1
    - Dst: dasher_update_period_duration
      Src: /src/gpac/src/filters/dasher.c:7344,1
    CyclomaticComplexity: 82
    EdgeCount: 82
    ICount: 220
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7346
      start: 7063
    functionDepth: 13
    functionLinenumber: 7063
    functionLinenumberEnd: 7346
    functionName: dasher_switch_period
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_FEVT_INIT
    - gf_assert
    - dasher_update_period_duration
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_list_add
    - dasher_reload_context
    - dasher_send_transport_hints
    - gf_filter_pid_remove
    - gf_list_get
    - dasher_setup_mpd
    - gf_filter_pid_set_discard
    - gf_mpd_period_new
    - strcmp
    - dasher_reset_stream
    - sprintf
    - gf_free
    - dasher_setup_period
    - GF_LOG
    - dasher_update_dyn_bitrates
    - dasher_udpate_periods_and_manifest
    - gf_strdup
    - dasher_ensure_outpath
    - 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:7358,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7361,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7363,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:7365,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:7367,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7374,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7382,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7390,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:7391,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:7398,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7401,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:7404,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7409,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7411,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:7414,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7415,1
    - Dst: gf_mpd_descriptor_new
      Src: /src/gpac/src/filters/dasher.c:7417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:7419,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7423,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:7424,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:7431,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dasher.c:7432,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:7433,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dasher.c:7435,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 71
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7437
      start: 7349
    functionDepth: 3
    functionLinenumber: 7349
    functionLinenumberEnd: 7437
    functionName: dasher_setup_ssr
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - sprintf
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_list_del
    - gf_mpd_descriptor_new
    - gf_list_new
    - gf_list_get
    - gf_list_add
    - gf_list_pop_back
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_setup_ssr(GF_DasherCtx *ctx)
  - BBCount: 43
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:8110,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:8118,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8126,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8135,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8143,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8145,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:8148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8164,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:8176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8184,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8187,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8191,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8204,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:8217,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8223,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8235,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8241,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8247,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8249,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:8251,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8252,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:8259,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8261,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8262,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8266,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8271,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8275,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8282,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dasher.c:8285,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8286,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:8293,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8306,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8310,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 171
    argCount: 3
    argNames:
    - ctx
    - ds
    - is_ll_anouncement
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8315
      start: 8096
    functionDepth: 3
    functionLinenumber: 8096
    functionLinenumberEnd: 8315
    functionName: dasher_insert_timeline_entry
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_timestamp_rescale
    - gf_list_find
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_last
    - gf_list_add
    - gf_list_pop_back
    - gf_mpd_segmentimeline_new
    - gf_list_rem
    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:8333,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8335,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8338,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8341,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:8349,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8354,1
    - Dst: gf_mpd_segmentimeline_new
      Src: /src/gpac/src/filters/dasher.c:8363,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8370,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8371,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8378,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 2
    argNames:
    - ctx
    - set
    argTypes:
    - GF_DasherCtx*
    - GF_MPD_AdaptationSet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8381
      start: 8317
    functionDepth: 2
    functionLinenumber: 8317
    functionLinenumberEnd: 8381
    functionName: dasher_copy_segment_timelines
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    - gf_mpd_segmentimeline_new
    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:8392,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8394,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8416,1
    - Dst: dasher_copy_segment_timelines
      Src: /src/gpac/src/filters/dasher.c:8419,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8421,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8423,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8425,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8436,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:8441,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: 8442
      start: 8383
    functionDepth: 3
    functionLinenumber: 8383
    functionLinenumberEnd: 8442
    functionName: dasher_set_timeline_parts
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - dasher_copy_segment_timelines
    - gf_assert
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_add
    linkageType: ''
    returnType: void
    signature: void dasher_set_timeline_parts(GF_DasherCtx *ctx, GF_DashStream *ds,
      GF_DASH_SegmentContext *sctx)
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8466,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dasher.c:8466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8517,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8519,1
    - Dst: dasher_insert_timeline_entry
      Src: /src/gpac/src/filters/dasher.c:8522,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dasher.c:8529,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8530,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8531,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8534,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/dasher.c:8535,1
    - Dst: gf_ceil
      Src: /src/gpac/src/filters/dasher.c:8536,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:8551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8559,1
    - Dst: dasher_copy_segment_timelines
      Src: /src/gpac/src/filters/dasher.c:8562,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:8590,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8596,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8618,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8658,1
    - Dst: dasher_get_utc
      Src: /src/gpac/src/filters/dasher.c:8661,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:8666,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8669,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8671,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:8671,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8693,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8700,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:8717,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8723,1
    CyclomaticComplexity: 96
    EdgeCount: 96
    ICount: 215
    argCount: 3
    argNames:
    - ctx
    - ds
    - is_last_in_period
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8727
      start: 8444
    functionDepth: 4
    functionLinenumber: 8444
    functionLinenumberEnd: 8727
    functionName: dasher_flush_segment
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_LOG
    - dasher_copy_segment_timelines
    - gf_timestamp_rescale
    - gf_list_find
    - dasher_get_utc
    - gf_ceil
    - dasher_insert_timeline_entry
    - ABS
    - gf_list_get
    - gf_filter_pid_is_eos
    - gf_timestamp_less
    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:8732,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:8734,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8735,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dasher.c:8739,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dasher.c:8743,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:8745,1
    - Dst: gf_url_is_relative
      Src: /src/gpac/src/filters/dasher.c:8745,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8747,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8748,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8749,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:8750,1
    - Dst: gf_url_concatenate_parent
      Src: /src/gpac/src/filters/dasher.c:8752,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8754,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8755,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8757,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:8760,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: 8762
      start: 8730
    functionDepth: 3
    functionLinenumber: 8730
    functionLinenumberEnd: 8762
    functionName: dasher_strip_base
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_url_is_relative
    - gf_free
    - gf_file_basename
    - gf_url_concatenate
    - gf_filter_pid_get_property_str
    - gf_dynstrcat
    - gf_strdup
    - gf_url_concatenate_parent
    - strncmp
    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: 8786
      start: 8764
    functionDepth: 0
    functionLinenumber: 8764
    functionLinenumberEnd: 8786
    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: 133
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8798,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8801,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:8805,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8808,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8811,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:8814,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8816,1
    - Dst: dasher_forward_mpd
      Src: /src/gpac/src/filters/dasher.c:8820,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:8824,1
    - Dst: dasher_forward_manifest_raw
      Src: /src/gpac/src/filters/dasher.c:8828,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8833,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8837,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8838,1
    - Dst: dasher_forward_manifest_raw
      Src: /src/gpac/src/filters/dasher.c:8842,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8846,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8848,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dasher.c:8858,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8859,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dasher.c:8859,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8861,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:8863,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8865,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8868,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8869,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8870,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8873,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dasher.c:8873,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8875,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/dasher.c:8875,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8878,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:8878,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:8881,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:8881,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:8891,1
    - Dst: dasher_insert_timeline_entry
      Src: /src/gpac/src/filters/dasher.c:8901,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:8906,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:8908,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8914,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8917,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8923,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8941,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8943,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8952,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8960,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8964,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8968,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:8972,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:8980,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:8981,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:8987,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:8996,1
    - Dst: gf_cryptfout_push_key
      Src: /src/gpac/src/filters/dasher.c:9009,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:9025,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:9026,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:9032,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:9035,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dasher.c:9036,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:9038,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9039,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9040,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9041,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9047,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9049,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9051,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:9056,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9057,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9058,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9059,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9061,1
    - Dst: gf_filter_pck_get_mark
      Src: /src/gpac/src/filters/dasher.c:9066,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:9067,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9071,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9073,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9074,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9075,1
    - Dst: dasher_strip_base
      Src: /src/gpac/src/filters/dasher.c:9078,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9085,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9087,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9097,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dasher.c:9106,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9108,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9112,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:9120,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:9122,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:9124,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:9126,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9127,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:9131,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:9131,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:9139,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9141,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9147,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9155,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9166,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dasher.c:9175,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9179,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9182,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:9184,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9187,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9188,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dasher.c:9189,1
    - Dst: dasher_strip_base
      Src: /src/gpac/src/filters/dasher.c:9191,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:9194,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:9195,1
    - Dst: dasher_strip_base
      Src: /src/gpac/src/filters/dasher.c:9198,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:9200,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9202,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:9203,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dasher.c:9204,1
    - Dst: gf_mpd_base_url_free
      Src: /src/gpac/src/filters/dasher.c:9205,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9213,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9219,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9227,1
    - Dst: ABS
      Src: /src/gpac/src/filters/dasher.c:9238,1
    - Dst: dasher_translate_cts
      Src: /src/gpac/src/filters/dasher.c:9241,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dasher.c:9241,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dasher.c:9243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9245,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9255,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:9258,1
    - Dst: gf_media_mpd_format_segment_name
      Src: /src/gpac/src/filters/dasher.c:9262,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dasher.c:9265,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dasher.c:9275,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:9277,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:9278,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:9283,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:9291,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:9293,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9294,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dasher.c:9298,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dasher.c:9301,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9302,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9307,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9308,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9310,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9315,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9317,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:9319,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9321,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dasher.c:9325,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dasher.c:9333,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:9335,1
    - Dst: dasher_cat_mpd_url
      Src: /src/gpac/src/filters/dasher.c:9346,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:9350,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:9350,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:9352,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dasher.c:9352,1
    CyclomaticComplexity: 180
    EdgeCount: 180
    ICount: 466
    argCount: 4
    argNames:
    - ctx
    - ds
    - pck
    - in_pck
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - GF_FilterPacket*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9354
      start: 8788
    functionDepth: 12
    functionLinenumber: 8788
    functionLinenumberEnd: 9354
    functionName: dasher_mark_segment_start
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_media_mpd_format_segment_name
    - gf_list_count
    - dasher_forward_manifest_raw
    - PROP_LONGUINT
    - gf_filter_pck_get_duration
    - gf_cryptfout_push_key
    - gf_assert
    - gf_url_concatenate
    - GF_SAFEALLOC
    - gf_filter_pck_set_property
    - dasher_insert_timeline_entry
    - gf_list_add
    - strstr
    - dasher_translate_cts
    - dasher_forward_mpd
    - gf_timestamp_rescale
    - gf_net_get_ntp_ts
    - gf_dynstrcat
    - gf_list_get
    - gf_filter_pck_get_dts
    - gf_strcpy
    - dasher_strip_base
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_list_new
    - ABS
    - gf_mpd_base_url_free
    - dasher_cat_mpd_url
    - sprintf
    - gf_free
    - gf_filter_pck_get_property
    - PROP_FRAC64_INT
    - gf_filter_pck_get_mark
    - GF_LOG
    - gf_strcat
    - gf_list_del_item
    - PROP_UINT
    - gf_strdup
    - 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:9367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9370,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dasher.c:9372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9375,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9387,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dasher.c:9406,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9414,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9423,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:9423,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:9438,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:9439,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:9441,1
    - Dst: dasher_send_transport_hints
      Src: /src/gpac/src/filters/dasher.c:9443,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dasher.c:9445,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dasher.c:9447,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 61
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9452
      start: 9356
    functionDepth: 2
    functionLinenumber: 9356
    functionLinenumberEnd: 9452
    functionName: dasher_check_loop
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_discard
    - GF_LOG
    - GF_FEVT_INIT
    - dasher_send_transport_hints
    - gf_timestamp_rescale
    - gf_filter_pid_get_name
    - gf_list_get
    - gf_filter_pid_send_event
    - gf_timestamp_less
    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:9460,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:9463,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dasher.c:9469,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/dasher.c:9471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9473,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dasher.c:9473,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - is_session_end
    argTypes:
    - GF_DasherCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9484
      start: 9455
    functionDepth: 2
    functionLinenumber: 9455
    functionLinenumberEnd: 9484
    functionName: dasher_check_period_ready
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - GF_LOG
    - gf_sys_clock
    - gf_list_enum
    - gf_filter_pid_get_name
    - gf_filter_pid_get_packet
    linkageType: ''
    returnType: Bool
    signature: Bool dasher_check_period_ready(GF_DasherCtx *ctx, Bool is_session_end)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/dasher.c:9494,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dasher.c:9504,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dasher.c:9511,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:9514,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dasher.c:9515,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:9522,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:9531,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9537,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dasher.c:9543,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9563,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9565,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9566,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9570,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:9575,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9576,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dasher.c:9578,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dasher.c:9579,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/dasher.c:9581,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9582,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 73
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_DasherCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9583
      start: 9486
    functionDepth: 2
    functionLinenumber: 9486
    functionLinenumberEnd: 9583
    functionName: dasher_format_report
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - sprintf
    - gf_free
    - gf_timestamp_rescale
    - gf_list_find
    - gf_dynstrcat
    - snprintf
    - gf_list_get
    - gf_filter_reporting_enabled
    - gf_filter_update_status
    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:9588,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dasher.c:9589,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dasher.c:9590,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dasher.c:9594,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dasher.c:9598,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dasher.c:9601,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: 9603
      start: 9585
    functionDepth: 2
    functionLinenumber: 9585
    functionLinenumberEnd: 9603
    functionName: dasher_drop_input
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_discard
    - gf_filter_pck_unref
    - gf_list_pop_front
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    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:9614,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dasher.c:9616,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dasher.c:9616,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:9617,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - ds
    - forced
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9620
      start: 9605
    functionDepth: 1
    functionLinenumber: 9605
    functionLinenumberEnd: 9620
    functionName: dasher_inject_eods
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_new_alloc
    - PROP_BOOL
    - gf_filter_pck_set_property
    - gf_filter_pck_send
    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:9631,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9634,1
    - Dst: dasher_inject_eods
      Src: /src/gpac/src/filters/dasher.c:9640,1
    - Dst: dasher_flush_segment
      Src: /src/gpac/src/filters/dasher.c:9644,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dasher.c:9654,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9655,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:9656,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9660,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9665,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dasher.c:9668,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dasher.c:9671,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dasher.c:9672,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dasher.c:9673,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9676,1
    - Dst: dasher_mark_segment_start
      Src: /src/gpac/src/filters/dasher.c:9679,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dasher.c:9682,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dasher.c:9687,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dasher.c:9691,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 53
    argCount: 2
    argNames:
    - ctx
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9693
      start: 9624
    functionDepth: 13
    functionLinenumber: 9624
    functionLinenumberEnd: 9693
    functionName: dasher_send_empty_segment
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - GF_LOG
    - gf_timestamp_rescale
    - gf_assert
    - gf_filter_pck_set_cts
    - dasher_mark_segment_start
    - gf_filter_pck_set_dts
    - dasher_inject_eods
    - gf_filter_pck_set_sap
    - strlen
    - gf_list_last
    - dasher_flush_segment
    - memcpy
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void dasher_send_empty_segment(GF_DasherCtx *ctx, GF_DashStream *ds)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ds
    - pto_adj
    argTypes:
    - GF_DashStream*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9709
      start: 9695
    functionDepth: 0
    functionLinenumber: 9695
    functionLinenumberEnd: 9709
    functionName: dasher_set_pto
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void dasher_set_pto(GF_DashStream *ds, u64 pto_adj)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dasher.c:9721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9723,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/dasher.c:9727,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:9738,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:9739,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9746,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9748,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9749,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:9759,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dasher.c:9760,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9767,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9768,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dasher.c:9770,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9772,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dasher.c:9775,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dasher.c:9777,1
    - Dst: scte35dec_get_timing
      Src: /src/gpac/src/filters/dasher.c:9782,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dasher.c:9786,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dasher.c:9796,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dasher.c:9797,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dasher.c:9799,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dasher.c:9801,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dasher.c:9810,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9812,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9813,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9814,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9818,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9819,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dasher.c:9820,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 97
    argCount: 3
    argNames:
    - ctx
    - pck
    - ds
    argTypes:
    - GF_DasherCtx*
    - GF_FilterPacket*
    - GF_DashStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9825
      start: 9711
    functionDepth: 2
    functionLinenumber: 9711
    functionLinenumberEnd: 9825
    functionName: dasher_handle_scte35
    functionSourceFile: /src/gpac/src/filters/dasher.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property_str
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_list_enum
    - gf_filter_pck_get_data
    - gf_filter_pck_get_timescale
    - GF_SAFEALLOC
    - scte35dec_get_timing
    - strcmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    - memcpy
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err dasher_handle_scte35(GF_DasherCtx *ctx, GF_FilterPacket *pck,
      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:121,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/ff_dec.c:122,1
    - Dst: av_packet_alloc
      Src: /src/gpac/src/filters/ff_dec.c:126,1
    - Dst: ffmpeg_setup_logs
      Src: /src/gpac/src/filters/ff_dec.c:129,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/ff_dec.c:131,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:132,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/ff_dec.c:134,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:136,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:136,1
    - Dst: gf_filter_meta_set_instances
      Src: /src/gpac/src/filters/ff_dec.c:140,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 119
    functionDepth: 4
    functionLinenumber: 119
    functionLinenumberEnd: 144
    functionName: ffdec_initialize
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - ffmpeg_setup_logs
    - avcodec_find_decoder_by_name
    - avcodec_find_decoder
    - gf_filter_meta_set_instances
    - av_packet_alloc
    - ffmpeg_codecid_from_gpac
    - gf_codecid_parse
    - gf_list_new
    - gf_filter_is_temporary
    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:148,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dec.c:150,1
    - Dst: av_frame_free
      Src: /src/gpac/src/filters/ff_dec.c:151,1
    - Dst: sws_freeContext
      Src: /src/gpac/src/filters/ff_dec.c:152,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:154,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_dec.c:155,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:156,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_dec.c:158,1
    - Dst: av_packet_free
      Src: /src/gpac/src/filters/ff_dec.c:161,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:165,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 146
    functionDepth: 3
    functionLinenumber: 146
    functionLinenumberEnd: 168
    functionName: ffdec_finalize
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - av_frame_free
    - gf_list_count
    - avcodec_free_context
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - av_packet_free
    - av_dict_free
    - gf_list_pop_back
    - sws_freeContext
    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:173,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:173,1
    - Dst: ffmpeg_pixfmt_is_fullrange
      Src: /src/gpac/src/filters/ff_dec.c:178,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:184,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:186,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:189,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:189,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:191,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:194,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:194,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:196,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:199,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:199,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:201,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - pix_fmt
    argTypes:
    - struct _gf_ffdec_ctx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 203
    functionName: ffdec_check_pix_fmt_change
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - PROP_BOOL
    - PROP_UINT
    - ffmpeg_pixfmt_is_fullrange
    - gf_filter_pid_set_property
    linkageType: ''
    returnType: void
    signature: void ffdec_check_pix_fmt_change(struct _gf_ffdec_ctx *ctx, u32 pix_fmt)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties_from_packet
      Src: /src/gpac/src/filters/ff_dec.c:208,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_dec.c:210,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:212,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:212,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:213,1
    - Dst: ffdec_check_pix_fmt_change
      Src: /src/gpac/src/filters/ff_dec.c:218,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:221,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:222,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:224,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:225,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:225,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:228,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/ff_dec.c:228,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:230,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:230,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:234,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:234,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:237,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/ff_dec.c:237,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:240,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:240,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:244,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:244,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:246,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:249,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:249,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:250,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:250,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:251,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:251,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:253,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:253,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:254,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:254,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:255,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:255,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:256,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:256,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:257,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:257,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 45
    argCount: 2
    argNames:
    - ctx
    - from_packet
    argTypes:
    - GF_FFDecodeCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 261
    functionName: ffdec_copy_props
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - FF_CHECK_PROP
    - PROP_LONGUINT
    - PROP_SINT
    - PROP_UINT
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_copy_properties_from_packet
    - PROP_FRAC
    - ffdec_check_pix_fmt_change
    linkageType: ''
    returnType: void
    signature: void ffdec_copy_props(GF_FFDecodeCtx *ctx, GF_FilterPacket *from_packet)
  - BBCount: 62
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_dec.c:283,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_dec.c:286,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:290,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_dec.c:297,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_dec.c:301,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:302,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dec.c:307,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_dec.c:315,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_dec.c:320,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:323,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:324,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/ff_dec.c:329,1
    - Dst: gf_filter_pck_set_mark
      Src: /src/gpac/src/filters/ff_dec.c:332,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_dec.c:335,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:343,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dec.c:345,1
    - Dst: avcodec_open2
      Src: /src/gpac/src/filters/ff_dec.c:346,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dec.c:347,1
    - Dst: avcodec_flush_buffers
      Src: /src/gpac/src/filters/ff_dec.c:349,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/ff_dec.c:354,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:355,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_dec.c:356,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_dec.c:357,1
    - Dst: avcodec_decode_video2
      Src: /src/gpac/src/filters/ff_dec.c:368,1
    - Dst: avcodec_send_packet
      Src: /src/gpac/src/filters/ff_dec.c:370,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_dec.c:372,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_dec.c:374,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:375,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:377,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:385,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:385,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:385,1
    - Dst: avcodec_receive_frame
      Src: /src/gpac/src/filters/ff_dec.c:389,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_dec.c:391,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:404,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:408,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dec.c:411,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:416,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:427,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_dec.c:428,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:431,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:431,1
    - Dst: ffdec_configure_pid
      Src: /src/gpac/src/filters/ff_dec.c:432,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:440,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:440,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:440,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:441,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:444,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:448,1
    - Dst: ffdec_check_pix_fmt_change
      Src: /src/gpac/src/filters/ff_dec.c:453,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:456,1
    - Dst: FF_CHECK_PROP
      Src: /src/gpac/src/filters/ff_dec.c:457,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/ff_dec.c:460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:461,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:461,1
    - Dst: FF_CHECK_PROP_VAL
      Src: /src/gpac/src/filters/ff_dec.c:465,1
    - Dst: FF_CHECK_PROP_VAL
      Src: /src/gpac/src/filters/ff_dec.c:466,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:471,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/ff_dec.c:471,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/ff_dec.c:478,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:479,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/ff_dec.c:491,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:492,1
    - Dst: gf_filter_pck_get_mark
      Src: /src/gpac/src/filters/ff_dec.c:493,1
    - Dst: ffdec_copy_props
      Src: /src/gpac/src/filters/ff_dec.c:494,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_dec.c:506,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:507,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dec.c:512,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_dec.c:516,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/ff_dec.c:517,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/ff_dec.c:518,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:519,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/ff_dec.c:521,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_dec.c:525,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/ff_dec.c:526,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:533,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:533,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:537,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:596,1
    - Dst: av_get_pix_fmt_name
      Src: /src/gpac/src/filters/ff_dec.c:596,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/ff_dec.c:598,1
    - Dst: sws_getCachedContext
      Src: /src/gpac/src/filters/ff_dec.c:603,1
    - Dst: sws_scale
      Src: /src/gpac/src/filters/ff_dec.c:607,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/ff_dec.c:611,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_dec.c:615,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/ff_dec.c:618,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dec.c:621,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 272
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffdec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 265
    functionDepth: 5
    functionLinenumber: 265
    functionLinenumberEnd: 626
    functionName: ffdec_process_video
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - avcodec_decode_video2
    - avcodec_free_context
    - gf_list_count
    - gf_filter_pck_new_alloc
    - FF_RELEASE_PCK
    - gf_filter_pck_merge_properties
    - avcodec_send_packet
    - av_err2str
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - FF_INIT_PCK
    - gf_list_add
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_mark
    - gf_filter_pck_set_seek_flag
    - FF_CHECK_PROP_VAL
    - ffdec_copy_props
    - gf_filter_pck_set_dependency_flags
    - ffdec_configure_pid
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_set_interlaced
    - PROP_FRAC
    - gf_list_get
    - sws_getCachedContext
    - ffdec_check_pix_fmt_change
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - FF_CHECK_PROP
    - gf_filter_pck_unref
    - ffmpeg_pixfmt_to_gpac
    - av_dict_copy
    - gf_filter_pid_get_name
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - AVERROR
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_list_pop_back
    - sws_scale
    - gf_filter_pck_discard
    - gf_filter_pck_get_mark
    - GF_LOG
    - gf_list_del_item
    - av_get_pix_fmt_name
    - avcodec_receive_frame
    - gf_filter_pid_set_property
    - gf_pixel_get_size_info
    - gf_filter_pck_set_dts
    - avcodec_open2
    - av_dict_free
    - avcodec_flush_buffers
    - memset
    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: 932
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 932
    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:942,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_dec.c:945,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_dec.c:948,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_dec.c:950,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:953,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_dec.c:955,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:961,1
    - Dst: avcodec_decode_subtitle2
      Src: /src/gpac/src/filters/ff_dec.c:962,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:966,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/ff_dec.c:970,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: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:977,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:980,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:980,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:980,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/ff_dec.c:985,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:999,1
    - Dst: gf_irect_union
      Src: /src/gpac/src/filters/ff_dec.c:1010,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/ff_dec.c:1017,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1020,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1020,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1021,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1021,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1022,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:1022,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1023,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/ff_dec.c:1023,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1024,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1024,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_dec.c:1026,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/ff_dec.c:1042,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/ff_dec.c:1043,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/ff_dec.c:1044,1
    - Dst: GF_COL_A
      Src: /src/gpac/src/filters/ff_dec.c:1045,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/ff_dec.c:1052,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/ff_dec.c:1053,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_dec.c:1053,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/ff_dec.c:1054,1
    - Dst: avsubtitle_free
      Src: /src/gpac/src/filters/ff_dec.c:1059,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:1061,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_dec.c:1063,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 108
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - struct _gf_ffdec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 934
    functionDepth: 1
    functionLinenumber: 934
    functionLinenumberEnd: 1065
    functionName: ffdec_process_subtitle
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - FF_RELEASE_PCK
    - av_err2str
    - gf_filter_pck_get_duration
    - gf_filter_pid_set_eos
    - gf_irect_union
    - GF_COL_R
    - avcodec_decode_subtitle2
    - GF_COL_G
    - gf_filter_pid_drop_packet
    - FF_INIT_PCK
    - gf_filter_pck_new_frame_interface
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_data
    - avsubtitle_free
    - gf_filter_pck_send
    - gf_filter_pid_get_name
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - GF_LOG
    - PROP_SINT
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - GF_COL_A
    - memset
    - GF_COL_B
    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:1070,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_dec.c:1072,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_dec.c:1073,1
    - Dst: GF_FFDecodeCtx*::process
      Src: /src/gpac/src/filters/ff_dec.c:1077,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1078
      start: 1068
    functionDepth: 1
    functionLinenumber: 1068
    functionLinenumberEnd: 1078
    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: 74
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/ff_dec.c:1098,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/ff_dec.c:1104,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1111,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1123,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1141,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1143,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1145,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1147,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1151,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1152,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_dec.c:1154,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/ff_dec.c:1154,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1159,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/ff_dec.c:1161,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/ff_dec.c:1161,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_dec.c:1162,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/ff_dec.c:1162,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1173,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1173,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1176,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_dec.c:1179,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1181,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1186,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1186,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1190,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:1192,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_dec.c:1194,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_dec.c:1202,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1214,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1218,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_dec.c:1220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1232,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1232,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1236,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_dec.c:1245,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1250,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_dec.c:1251,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1252,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/ff_dec.c:1252,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_dec.c:1253,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dec.c:1257,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/ff_dec.c:1258,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:1265,1
    - Dst: avcodec_find_decoder_by_name
      Src: /src/gpac/src/filters/ff_dec.c:1272,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/ff_dec.c:1272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1275,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/ff_dec.c:1275,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_dec.c:1276,1
    - Dst: avcodec_alloc_context3
      Src: /src/gpac/src/filters/ff_dec.c:1280,1
    - Dst: ffmpeg_set_enc_dec_flags
      Src: /src/gpac/src/filters/ff_dec.c:1289,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1307,1
    - Dst: ffmpeg_extradata_from_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1325,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_dec.c:1329,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1337,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/ff_dec.c:1343,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_dec.c:1344,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_dec.c:1348,1
    - Dst: ffmpeg_check_threads
      Src: /src/gpac/src/filters/ff_dec.c:1349,1
    - Dst: avcodec_open2
      Src: /src/gpac/src/filters/ff_dec.c:1351,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_dec.c:1353,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/ff_dec.c:1356,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1357,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_dec.c:1357,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/ff_dec.c:1358,1
    - Dst: avcodec_free_context
      Src: /src/gpac/src/filters/ff_dec.c:1359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1364,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/ff_dec.c:1364,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_dec.c:1364,1
    - Dst: ffmpeg_report_options
      Src: /src/gpac/src/filters/ff_dec.c:1368,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_dec.c:1369,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/ff_dec.c:1370,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1375,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/ff_dec.c:1377,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/ff_dec.c:1378,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:1384,1
    - Dst: ffmpeg_pixfmt_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1398,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_dec.c:1400,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_dec.c:1413,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1416,1
    - Dst: ffmpeg_audio_fmt_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1428,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/ff_dec.c:1429,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1434,1
    - Dst: ffmpeg_channel_layout_to_gpac
      Src: /src/gpac/src/filters/ff_dec.c:1437,1
    - Dst: av_frame_alloc
      Src: /src/gpac/src/filters/ff_dec.c:1442,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1444,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_dec.c:1448,1
    - Dst: ffdec_copy_props
      Src: /src/gpac/src/filters/ff_dec.c:1462,1
    CyclomaticComplexity: 101
    EdgeCount: 101
    ICount: 295
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1090
    functionDepth: 11
    functionLinenumber: 1090
    functionLinenumberEnd: 1464
    functionName: ffdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - avcodec_free_context
    - gf_codecid_name
    - GF_ARRAY_LENGTH
    - gf_filter_pid_set_framing_mode
    - av_err2str
    - av_frame_alloc
    - ffmpeg_codecid_from_gpac
    - avcodec_alloc_context3
    - strstr
    - ffmpeg_report_options
    - gf_filter_get_udta
    - gf_crc_32
    - ffdec_copy_props
    - avcodec_find_decoder_by_name
    - gf_strdup
    - ffmpeg_set_enc_dec_flags
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - ffmpeg_channel_layout_to_gpac
    - gf_filter_pid_copy_properties
    - ffmpeg_extradata_from_gpac
    - ffmpeg_pixfmt_to_gpac
    - av_dict_copy
    - gf_filter_pid_get_name
    - PROP_BOOL
    - ffmpeg_check_threads
    - gf_filter_pid_negotiate_property
    - strlen
    - ffmpeg_audio_fmt_to_gpac
    - gf_audio_fmt_bit_depth
    - gf_filter_set_name
    - sprintf
    - gf_filter_override_caps
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - avcodec_find_decoder
    - PROP_UINT
    - avcodec_open2
    - av_dict_free
    - gf_opts_get_bool
    - strncmp
    - gf_4cc_to_str
    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:1469,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_dec.c:1471,1
    - Dst: gf_filter_report_meta_option
      Src: /src/gpac/src/filters/ff_dec.c:1472,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_dec.c:1475,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: 1476
      start: 1467
    functionDepth: 2
    functionLinenumber: 1467
    functionLinenumberEnd: 1476
    functionName: ffdec_update_arg
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - strcmp
    - gf_filter_report_meta_option
    - 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:1480,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_dec.c:1487,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_dec.c:1488,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/ff_dec.c:1489,1
    - Dst: avcodec_flush_buffers
      Src: /src/gpac/src/filters/ff_dec.c:1495,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1478
    functionDepth: 3
    functionLinenumber: 1478
    functionLinenumberEnd: 1499
    functionName: ffdec_process_event
    functionSourceFile: /src/gpac/src/filters/ff_dec.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - avcodec_flush_buffers
    - gf_list_pop_back
    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: 1577
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1577
    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:1589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1587
    functionDepth: 8
    functionLinenumber: 1587
    functionLinenumberEnd: 1590
    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: 1597
      start: 1594
    functionDepth: 0
    functionLinenumber: 1594
    functionLinenumberEnd: 1597
    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:
    - dlopen
    - GF_LOG
    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:
    - dlopen
    - GF_LOG
    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:
    - _cuInit
    - GET_PROC
    - cuUninit
    - GET_PROC_EX
    - LOAD_LIBRARY_CUVID
    - CHECKED_CALL
    - LOAD_LIBRARY_CUDA
    - GET_PROC_OPTIONAL
    - cuDriverGetVersion
    - GET_PROC_V2
    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:
    - update_first_frag
    - GF_LOG
    - gf_route_dmx_patch_frag_info
    - GF_4CC
    - gf_assert
    - MIN
    - next_top_level_box
    - gf_route_dmx_patch_blob_size
    - MAX
    - memset
    - gf_4cc_to_str
    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_SAFEALLOC
    - memset
    - gf_list_add
    - gf_list_pop_back
    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_list_count
    - gf_free
    - gf_filter_pid_get_statistics
    - GF_LOG
    - gf_assert
    - queue_repair_range
    - gf_list_get
    - memset
    - gf_list_pop_back
    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:
    - gf_list_count
    - gf_list_find
    - gf_list_get
    - gf_list_add
    - get_dependent_samples
    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:
    - gf_list_del
    - get_dependent_samples
    - gf_list_new
    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_list_count
    - gf_isom_get_sample_count
    - gf_isom_open_segment
    - GF_SAFEALLOC
    - gf_list_add
    - gf_list_get
    - update_num_dependent_samples
    - gf_list_insert
    - gf_realloc
    - memcpy
    - gf_isom_open_progressive_ex
    - gf_isom_get_sample_info_ex
    - gf_list_new
    - gf_list_pop_back
    - sprintf
    - gf_list_del
    - gf_isom_get_sample_references
    - GF_LOG
    - memset
    - gf_isom_delete
    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:
    - drop_sample_ref
    - gf_list_count
    - gf_list_get
    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_list_count
    - GF_LOG
    - drop_sample_ref
    - routein_repair_get_isobmf_deps
    - gf_route_dmx_patch_frag_info
    - GF_4CC
    - gf_assert
    - gf_mx_v
    - next_top_level_box
    - gf_mx_p
    - route_repair_build_ranges_full
    - queue_repair_range
    - gf_list_get
    - memset
    - gf_route_dmx_add_frag_hole
    - gf_4cc_to_str
    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:
    - next_top_level_box
    - gf_file_ext_start
    - stricmp
    - gf_m2ts_probe_data
    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:
    - gf_route_dmx_set_object_hint
    - guess_file_type
    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_LOG
    - GF_4CC
    - gf_4cc_to_str
    - gf_assert
    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:
    - routein_repair_segment_ts_local
    - routein_check_type
    - GF_LOG
    - routein_repair_segment_isobmf_local
    - gf_mx_p
    - gf_mx_v
    - routein_check_isobmf
    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_route_dmx_get_object_info
    - gf_mx_p
    - gf_mx_v
    - assert
    - routein_get_max_dispatch_len
    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:
    - gf_list_count
    - gf_assert
    - GF_SAFEALLOC
    - routein_on_event_file
    - gf_list_add
    - repair_session_dequeue
    - routein_get_max_dispatch_len
    - route_repair_build_ranges_isobmf
    - gf_mx_v
    - gf_list_get
    - gf_list_insert
    - routein_get_tsio
    - routein_repair_local
    - gf_mx_p
    - gf_list_new
    - gf_list_pop_back
    - GF_LOG
    - gf_route_dmx_force_keep_object
    - route_repair_build_ranges_full
    - gf_strdup
    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_list_count
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_list_get
    - gf_route_dmx_force_keep_object
    - gf_list_del_item
    - gf_assert
    - gf_list_find
    - routein_repair_local
    - gf_list_new
    - routein_on_event_file
    - memset
    - gf_list_add
    - gf_list_pop_back
    - routein_check_isobmf
    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:
    - gf_list_count
    - GF_LOG
    - gf_route_dmx_patch_frag_info
    - gf_dm_sess_get_resource_size
    - gf_assert
    - gf_list_find
    - route_repair_build_ranges_isobmf
    - gf_route_dmx_patch_blob_size
    - gf_mx_p
    - queue_repair_range
    - gf_mx_v
    - routein_on_event_file
    - gf_list_add
    - gf_list_transfer
    - repair_session_dequeue
    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_list_count
    - gf_assert
    - gf_url_concatenate
    - gf_list_add
    - strstr
    - strchr
    - gf_dm_sess_get_resource_size
    - gf_dm_sess_new
    - gf_list_get
    - gf_mx_v
    - memcpy
    - gf_filter_get_download_manager
    - gf_dm_sess_abort
    - gf_sys_clock
    - gf_dm_sess_del
    - gf_dm_sess_set_timeout
    - gf_dm_sess_fetch_data
    - gf_dm_sess_set_netcap_id
    - gf_route_dmx_patch_blob_size
    - strcmp
    - strlen
    - gf_mx_p
    - gf_dm_sess_set_range
    - gf_error_to_string
    - gf_free
    - gf_route_dmx_get_repair_info
    - repair_session_done
    - GF_LOG
    - gf_dm_sess_setup_from_url
    - gf_list_del_item
    - routein_push_repair_server
    - strncmp
    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_LOG
    - gf_list_count
    - strcmp
    - gf_list_get
    linkageType: ''
    returnType: void
    signature: void routein_repair_mark_file(ROUTEInCtx *ctx, u32 service_id, const
      char *filename, Bool is_delete)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:68,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: 70
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 70
    functionName: vobsubdmx_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_filter_setup_failure
    linkageType: ''
    returnType: Bool
    signature: Bool vobsubdmx_on_filter_setup_error(GF_Filter *failed_filter, void
      *udta, GF_Err err)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:77,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:79,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:81,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:89,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_vobsub.c:91,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_vobsub.c:91,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_vobsub.c:95,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_vobsub.c:104,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dmx_vobsub.c:110,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_vobsub.c:110,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/dmx_vobsub.c:115,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_vobsub.c:118,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:120,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dmx_vobsub.c:120,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filters/dmx_vobsub.c:122,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/dmx_vobsub.c:123,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:126,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dmx_vobsub.c:128,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dmx_vobsub.c:130,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/dmx_vobsub.c:132,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_vobsub.c:133,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/dmx_vobsub.c:134,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:136,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/dmx_vobsub.c:140,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:142,1
    - Dst: gf_filter_disable_probe
      Src: /src/gpac/src/filters/dmx_vobsub.c:144,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/dmx_vobsub.c:145,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 62
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 73
    functionDepth: 5
    functionLinenumber: 73
    functionLinenumberEnd: 151
    functionName: vobsubdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_disable_probe
    - gf_filter_pid_set_framing_mode
    - gf_file_basename
    - gf_filter_get_opid
    - gf_filter_get_opid_count
    - gf_filter_get_udta
    - gf_crc_32
    - gf_filter_remove_src
    - gf_fileio_translate_url
    - gf_filter_pid_remove
    - gf_filter_connect_source
    - gf_filter_force_main_thread
    - gf_strcpy
    - gf_file_ext_start
    - gf_fileio_from_url
    - gf_fileio_is_main_thread
    - strlen
    - gf_filter_pid_check_caps
    - gf_fileio_factory
    - gf_filter_set_setup_failure_callback
    - gf_fclose
    - gf_filter_setup_failure
    - gf_strcat
    - strncmp
    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:155,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 153
    functionDepth: 1
    functionLinenumber: 153
    functionLinenumberEnd: 187
    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:198,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:201,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_vobsub.c:205,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:207,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_vobsub.c:211,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:213,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:214,1
    - Dst: vobsub_read_idx
      Src: /src/gpac/src/filters/dmx_vobsub.c:218,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:219,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:221,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:224,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dmx_vobsub.c:229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:237,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_vobsub.c:239,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_vobsub.c:242,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_UINT
      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_UINT
      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_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:248,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_vobsub.c:248,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:251,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:251,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:252,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:252,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:253,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_vobsub.c:253,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:254,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_vobsub.c:254,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:255,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_vobsub.c:255,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_vobsub.c:257,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VOBSubDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 189
    functionDepth: 5
    functionLinenumber: 189
    functionLinenumberEnd: 261
    functionName: vobsubdmx_parse_idx
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - vobsub_read_idx
    - gf_list_count
    - gf_fclose
    - gf_filter_pid_copy_properties
    - PROP_DATA
    - gf_filter_pid_set_udta
    - gf_filter_setup_failure
    - gf_fopen
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - GF_SAFEALLOC
    - PROP_STRING
    - gf_filter_pid_new
    - gf_list_last
    - gf_filter_get_opid_count
    - PROP_FRAC64
    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:273,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:276,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_vobsub.c:283,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_vobsub.c:292,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/dmx_vobsub.c:293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:294,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_vobsub.c:298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:309,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_vobsub.c:317,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:320,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_vobsub.c:321,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_vobsub.c:322,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_vobsub.c:323,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_vobsub.c:324,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_vobsub.c:327,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dmx_vobsub.c:332,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_vobsub.c:333,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_vobsub.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:345,1
    - Dst: vobsub_get_subpic_duration
      Src: /src/gpac/src/filters/dmx_vobsub.c:349,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:350,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_vobsub.c:354,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_vobsub.c:355,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_vobsub.c:356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:359,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_vobsub.c:361,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_vobsub.c:365,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 73
    argCount: 2
    argNames:
    - ctx
    - pid
    argTypes:
    - GF_VOBSubDmxCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 263
    functionDepth: 2
    functionLinenumber: 263
    functionLinenumberEnd: 368
    functionName: vobsubdmx_send_stream
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pid_would_block
    - GF_LOG
    - gf_filter_pid_get_udta
    - vobsub_get_subpic_duration
    - MIN
    - gf_filter_pck_set_cts
    - gf_fseek
    - gf_ftell
    - gf_filter_pck_set_duration
    - gf_fread
    - gf_list_get
    - gf_filter_pck_set_sap
    - memcpy
    - gf_filter_pck_send
    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:372,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:379,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_vobsub.c:381,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_vobsub.c:383,1
    - Dst: vobsubdmx_parse_idx
      Src: /src/gpac/src/filters/dmx_vobsub.c:385,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:387,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:389,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_vobsub.c:399,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_vobsub.c:401,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_vobsub.c:402,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_vobsub.c:405,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:408,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_vobsub.c:410,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_vobsub.c:414,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_vobsub.c:415,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_vobsub.c:417,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_vobsub.c:420,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_vobsub.c:422,1
    - Dst: vobsubdmx_send_stream
      Src: /src/gpac/src/filters/dmx_vobsub.c:423,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_vobsub.c:426,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_vobsub.c:432,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 370
    functionDepth: 6
    functionLinenumber: 370
    functionLinenumberEnd: 436
    functionName: vobsubdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - vobsubdmx_parse_idx
    - gf_filter_get_udta
    - gf_filter_setup_failure
    - GF_LOG
    - gf_fopen
    - gf_filter_pid_set_eos
    - gf_assert
    - vobsubdmx_send_stream
    - gf_filter_pck_get_data
    - gf_filter_pid_is_eos
    - gf_filter_pid_drop_packet
    - gf_filter_get_opid
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_filter_get_opid_count
    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:440,1
    - Dst: vobsub_free
      Src: /src/gpac/src/filters/dmx_vobsub.c:441,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_vobsub.c:442,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 438
    functionDepth: 5
    functionLinenumber: 438
    functionLinenumberEnd: 443
    functionName: vobsubdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_vobsub.c
    functionUses: 0
    functionsReached:
    - vobsub_free
    - gf_fclose
    - 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:447,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 452
    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: 455
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 455
    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: 500
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 500
    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_count
    - gf_filter_get_udta
    - gsfdmx_stream_del
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_list_pop_back
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err gsfdmx_configure_pid(GF_Filter *filter, GF_FilterPid *pid, Bool
      is_remove)
  - BBCount: 15
    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:206,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:208,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_gsf.c:219,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 233
    functionName: gsfdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - gf_filter_post_process_task
    - 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:244,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:249,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:258,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - data
    - size
    argTypes:
    - GSF_DemuxCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 235
    functionDepth: 1
    functionLinenumber: 235
    functionLinenumberEnd: 261
    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: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_int
      Src: /src/gpac/src/filters/dmx_gsf.c:272,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dmx_gsf.c:274,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 263
    functionDepth: 6
    functionLinenumber: 263
    functionLinenumberEnd: 275
    functionName: gsfdmx_read_vlen
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_long_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:284,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:288,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:291,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:294,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:297,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:298,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:301,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:302,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/dmx_gsf.c:305,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/filters/dmx_gsf.c:305,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_gsf.c:308,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:311,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:312,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_gsf.c:315,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dmx_gsf.c:316,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:321,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:327,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:336,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:339,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:340,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:348,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:352,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:355,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:356,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:364,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:367,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:369,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:372,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:376,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:377,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:380,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:381,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:389,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:392,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:395,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:397,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:401,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:404,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:407,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:409,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:413,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:416,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:419,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:421,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:426,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/dmx_gsf.c:429,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:433,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 154
    argCount: 2
    argNames:
    - bs
    - p
    argTypes:
    - GF_BitStream*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 277
    functionDepth: 7
    functionLinenumber: 277
    functionLinenumberEnd: 437
    functionName: gsfdmx_read_prop
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - FLT2FIX
    - gf_malloc
    - gf_free
    - gf_bs_read_u64
    - GF_LOG
    - gf_props_type_is_enum
    - gsfdmx_read_vlen
    - gf_bs_read_double
    - gf_bs_read_data
    - gf_bs_read_float
    - gf_bs_read_u32
    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:444,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_gsf.c:446,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_gsf.c:451,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_gsf.c:453,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:455,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_gsf.c:456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:461,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: 463
      start: 439
    functionDepth: 1
    functionLinenumber: 439
    functionLinenumberEnd: 463
    functionName: gsfdmx_get_stream
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - GF_SAFEALLOC
    - gf_list_new
    - gf_filter_pid_new
    - gf_list_add
    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:475,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_gsf.c:477,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:481,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:486,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:487,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:491,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:493,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/dmx_gsf.c:494,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:496,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_gsf.c:496,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:500,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/dmx_gsf.c:504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:506,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/dmx_gsf.c:506,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/dmx_gsf.c:506,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_gsf.c:510,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:511,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_gsf.c:521,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_gsf.c:523,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_gsf.c:524,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_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:529,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_gsf.c:535,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:536,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:544,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:548,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:549,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:552,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:553,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:555,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:557,1
    - Dst: gf_filter_pid_set_info_dyn
      Src: /src/gpac/src/filters/dmx_gsf.c:560,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_gsf.c:561,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:562,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_gsf.c:570,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: 575
      start: 464
    functionDepth: 8
    functionLinenumber: 464
    functionLinenumberEnd: 575
    functionName: gsfdmx_parse_pid_info
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_filter_pid_get_property
    - gf_filter_pid_set_property_dyn
    - GF_FEVT_INIT
    - gf_file_basename
    - gf_filter_pid_set_name
    - gf_bs_read_data
    - gf_filter_pid_send_event
    - gsfdmx_read_prop
    - gf_bs_reassign_buffer
    - gf_filter_pid_set_info
    - gf_malloc
    - gsfdmx_read_vlen
    - gsfdmx_decrypt
    - gf_props_reset_single
    - gf_log_tool_level_on
    - gf_props_dump
    - gf_bs_read_u32
    - gf_filter_pid_set_info_dyn
    - gf_props_4cc_get_type
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_props_4cc_get_name
    - memset
    - gf_4cc_to_str
    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:581,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:585,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_gsf.c:586,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:587,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_gsf.c:587,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:591,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:593,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:602,1
    - Dst: gf_bs_read_data
      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_bs_read_u16
      Src: /src/gpac/src/filters/dmx_gsf.c:608,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:611,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/dmx_gsf.c:615,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:617,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/dmx_gsf.c:621,1
    - Dst: gsfdmx_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:623,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:626,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:627,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:634,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:638,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:639,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dmx_gsf.c:642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:644,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:649,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:650,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:652,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 65
    argCount: 5
    argNames:
    - filter
    - ctx
    - pck_data
    - pck_size
    - is_crypted
    argTypes:
    - GF_Filter*
    - GSF_DemuxCtx*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 577
    functionDepth: 7
    functionLinenumber: 577
    functionLinenumberEnd: 657
    functionName: gsfdmx_tune
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_free
    - gf_malloc
    - GF_LOG
    - memcmp
    - GF_4CC
    - gsfdmx_read_vlen
    - gf_bs_read_data
    - gf_bs_read_int
    - gsfdmx_decrypt
    - gf_crypt_init
    - gf_bs_read_u32
    - gf_bs_reassign_buffer
    - gf_crypt_open
    - gf_bs_read_u16
    - gf_4cc_to_str
    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:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GSF_Packet*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 660
    functionDepth: 0
    functionLinenumber: 660
    functionLinenumberEnd: 667
    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:675,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:680,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:683,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dmx_gsf.c:684,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:685,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:686,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:687,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_gsf.c:696,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_gsf.c:698,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:701,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_gsf.c:706,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:708,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:709,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:710,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:713,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:715,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_gsf.c:717,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dmx_gsf.c:723,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:726,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: 729
      start: 669
    functionDepth: 3
    functionLinenumber: 669
    functionLinenumberEnd: 729
    functionName: gsfdmx_get_packet
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_filter_pck_new_alloc
    - gf_list_count
    - gf_malloc
    - gf_list_insert
    - GF_LOG
    - gf_list_enum
    - gf_list_find
    - gsfdmx_pck_reset
    - GF_SAFEALLOC
    - gf_list_get
    - memset
    - gf_list_add
    - gf_list_pop_back
    - 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:738,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_gsf.c:749,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_gsf.c:751,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_gsf.c:771,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 3
    argNames:
    - pck
    - size
    - offset
    argTypes:
    - GSF_Packet*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 731
    functionDepth: 1
    functionLinenumber: 731
    functionLinenumberEnd: 782
    functionName: gsfdmx_packet_append_frag
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - memmove
    - gf_realloc
    - gf_assert
    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:797,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:820,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: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:826,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:827,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:837,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:840,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:841,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:842,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:843,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dmx_gsf.c:857,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:858,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:862,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dmx_gsf.c:869,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:870,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:875,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_gsf.c:879,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:882,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:885,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_gsf.c:888,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:892,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:896,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_gsf.c:897,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/dmx_gsf.c:898,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:900,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_gsf.c:900,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:901,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:907,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:909,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_gsf.c:913,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:917,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_gsf.c:922,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:923,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_gsf.c:926,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:932,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:933,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_gsf.c:938,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:940,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:941,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:942,1
    - Dst: gsfdmx_read_prop
      Src: /src/gpac/src/filters/dmx_gsf.c:948,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:950,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:951,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dmx_gsf.c:955,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:956,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:959,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:964,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/dmx_gsf.c:970,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_gsf.c:975,1
    - Dst: gsfdmx_packet_append_frag
      Src: /src/gpac/src/filters/dmx_gsf.c:976,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_gsf.c:978,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_gsf.c:979,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_gsf.c:980,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_gsf.c:981,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_gsf.c:982,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/dmx_gsf.c:983,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/dmx_gsf.c:984,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dmx_gsf.c:985,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dmx_gsf.c:986,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filters/dmx_gsf.c:987,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_gsf.c:988,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/dmx_gsf.c:989,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_gsf.c:990,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/dmx_gsf.c:992,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: 994
      start: 784
    functionDepth: 8
    functionLinenumber: 784
    functionLinenumberEnd: 994
    functionName: gsfdmx_read_data_pck
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_read_u64
    - gf_bs_read_data
    - gf_filter_pck_set_property
    - gsfdmx_read_prop
    - gf_filter_pck_set_roll_info
    - gf_malloc
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_dependency_flags
    - gsfdmx_packet_append_frag
    - gsfdmx_read_vlen
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_set_clock_type
    - gf_filter_pck_set_interlaced
    - gf_filter_pck_set_property_dyn
    - gf_filter_pck_set_cts
    - gf_bs_read_int
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_filter_pck_discard
    - gf_props_4cc_get_type
    - gf_free
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pck_set_crypt_flags
    - gf_bs_read_long_int
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_corrupted
    - memset
    - gf_4cc_to_str
    - gf_filter_pck_truncate
    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: 1008
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1008
    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:1014,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dmx_gsf.c:1015,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/dmx_gsf.c:1019,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_gsf.c:1020,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1022,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:1025,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:1026,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:1027,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_gsf.c:1031,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1033,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dmx_gsf.c:1034,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1035,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: 1036
      start: 1012
    functionDepth: 3
    functionLinenumber: 1012
    functionLinenumberEnd: 1036
    functionName: gsfdmx_stream_del
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_discard
    - gf_list_count
    - gf_free
    - gf_list_pop_front
    - gf_list_del
    - gf_list_del_item
    - gf_list_find
    - gsfdmx_pck_reset
    - gf_filter_pid_remove
    - gf_filter_pck_set_corrupted
    - gf_list_add
    - 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:1047,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1055,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_gsf.c:1061,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1072,1
    - Dst: gsfdmx_parse_pid_info
      Src: /src/gpac/src/filters/dmx_gsf.c:1084,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1088,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1094,1
    - Dst: gsfdmx_stream_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1097,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1102,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_gsf.c:1105,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/dmx_gsf.c:1109,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_gsf.c:1110,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1118,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dmx_gsf.c:1123,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:1124,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:1125,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:1126,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: 1131
      start: 1038
    functionDepth: 9
    functionLinenumber: 1038
    functionLinenumberEnd: 1131
    functionName: gsfdmx_process_packets
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_list_count
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_assert
    - gf_list_find
    - gsfdmx_stream_del
    - gsfdmx_pck_reset
    - gf_filter_pck_set_corrupted
    - gf_list_get
    - gf_list_add
    - gsfdmx_parse_pid_info
    - gf_filter_pck_send
    - gf_list_rem
    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:1143,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_gsf.c:1147,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_gsf.c:1151,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_gsf.c:1152,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1156,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: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:1160,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dmx_gsf.c:1161,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1176,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_gsf.c:1178,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1183,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1184,1
    - Dst: gsfdmx_read_vlen
      Src: /src/gpac/src/filters/dmx_gsf.c:1187,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_gsf.c:1188,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1205,1
    - Dst: gsfdmx_pck_name
      Src: /src/gpac/src/filters/dmx_gsf.c:1208,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1209,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1220,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1223,1
    - Dst: gsfdmx_tune
      Src: /src/gpac/src/filters/dmx_gsf.c:1224,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1229,1
    - Dst: gsfdmx_get_stream
      Src: /src/gpac/src/filters/dmx_gsf.c:1231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1234,1
    - Dst: gsfdmx_get_packet
      Src: /src/gpac/src/filters/dmx_gsf.c:1236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1241,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1244,1
    - Dst: gsfdmx_decrypt
      Src: /src/gpac/src/filters/dmx_gsf.c:1251,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dmx_gsf.c:1254,1
    - Dst: gsfdmx_read_data_pck
      Src: /src/gpac/src/filters/dmx_gsf.c:1255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1265,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_gsf.c:1269,1
    - Dst: gsfdmx_packet_append_frag
      Src: /src/gpac/src/filters/dmx_gsf.c:1271,1
    - Dst: gsfdmx_process_packets
      Src: /src/gpac/src/filters/dmx_gsf.c:1275,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dmx_gsf.c:1277,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1278,1
    - Dst: gsfdmx_pck_reset
      Src: /src/gpac/src/filters/dmx_gsf.c:1279,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dmx_gsf.c:1280,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_gsf.c:1281,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_gsf.c:1288,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_gsf.c:1288,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_gsf.c:1292,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_gsf.c:1293,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dmx_gsf.c:1297,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_gsf.c:1298,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_gsf.c:1304,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:1305,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: 1308
      start: 1133
    functionDepth: 10
    functionLinenumber: 1133
    functionLinenumberEnd: 1308
    functionName: gsfdmx_demux
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - GF_FEVT_INIT
    - gsfdmx_pck_name
    - gf_filter_pid_send_event
    - gf_bs_reassign_buffer
    - gf_list_add
    - gf_bs_skip_bytes
    - gsfdmx_packet_append_frag
    - gsfdmx_read_vlen
    - gf_list_find
    - gsfdmx_decrypt
    - gf_fatal_assert
    - gf_realloc
    - memcpy
    - gsfdmx_pck_reset
    - gf_bs_read_int
    - gsfdmx_tune
    - gsfdmx_read_data_pck
    - gf_bs_read_u16
    - gf_error_to_string
    - gf_filter_pck_discard
    - gsfdmx_get_packet
    - GF_LOG
    - gsfdmx_process_packets
    - gf_list_del_item
    - memmove
    - gf_bs_available
    - gsfdmx_get_stream
    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:1313,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_gsf.c:1324,1
    - Dst: gsfdmx_demux
      Src: /src/gpac/src/filters/dmx_gsf.c:1327,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_gsf.c:1330,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_gsf.c:1339,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_gsf.c:1342,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_gsf.c:1343,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_gsf.c:1352,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_gsf.c:1353,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_gsf.c:1361,1
    - Dst: gsfdmx_demux
      Src: /src/gpac/src/filters/dmx_gsf.c:1362,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_gsf.c:1363,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_gsf.c:1365,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1368
      start: 1310
    functionDepth: 11
    functionLinenumber: 1310
    functionLinenumberEnd: 1368
    functionName: gsfdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_list_enum
    - gsfdmx_demux
    - gf_filter_pck_get_data
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    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:1376,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_gsf.c:1382,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - data
    - data_size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1370
    functionDepth: 0
    functionLinenumber: 1370
    functionLinenumberEnd: 1390
    functionName: gsfdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - memchr
    - strncmp
    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: 1397
      start: 1392
    functionDepth: 0
    functionLinenumber: 1392
    functionLinenumberEnd: 1397
    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:1401,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1402,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1404,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/filters/dmx_gsf.c:1405,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_gsf.c:1408,1
    - Dst: gsfdmx_not_enough_bytes
      Src: /src/gpac/src/filters/dmx_gsf.c:1409,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1412,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_gsf.c:1413,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1415
      start: 1399
    functionDepth: 1
    functionLinenumber: 1399
    functionLinenumberEnd: 1415
    functionName: gsfdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gsfdmx_not_enough_bytes
    - gf_sys_is_cov_mode
    - gf_bs_new
    - gf_bs_set_eos_callback
    - gf_list_new
    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:1419,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1420,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_gsf.c:1421,1
    - Dst: gsfdmx_stream_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1422,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1424,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_gsf.c:1426,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_gsf.c:1427,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dmx_gsf.c:1428,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1429,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1430,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1432,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/dmx_gsf.c:1435,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_gsf.c:1437,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1438,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_gsf.c:1439,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1417
    functionDepth: 4
    functionLinenumber: 1417
    functionLinenumberEnd: 1440
    functionName: gsfdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_del_item
    - gsfdmx_stream_del
    - gf_bs_del
    - gf_list_pop_back
    - gf_crypt_close
    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: 1458
      start: 1457
    functionDepth: 0
    functionLinenumber: 1457
    functionLinenumberEnd: 1458
    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: 1501
      start: 1498
    functionDepth: 0
    functionLinenumber: 1498
    functionLinenumberEnd: 1501
    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: 1506
      start: 1503
    functionDepth: 0
    functionLinenumber: 1503
    functionLinenumberEnd: 1506
    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_filter_pid_set_eos
    - gf_rand_init
    - gf_fd_fsize
    - gf_filter_pid_raw_new
    - gf_fd_open
    - gf_filter_pck_new_shared
    - strstr
    - strchr
    - gf_malloc
    - gf_filter_get_udta
    - gf_strdup
    - gf_fsize
    - gf_fileio_url
    - gf_filter_pid_new
    - gf_filter_pck_send
    - gf_file_ext_start
    - gf_fileio_check
    - gf_filter_pck_set_cts
    - strnicmp
    - PROP_STRING
    - gf_filter_pck_set_sap
    - strcmp
    - gf_filter_notification_failure
    - gf_fclose
    - gf_free
    - gf_filter_setup_failure
    - GF_LOG
    - lseek_64
    - gf_sys_is_cov_mode
    - gf_fseek
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pid_raw_gmem
    - gf_fopen_ex
    - gf_opts_get_bool
    - close
    - strncmp
    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_file_ext_start
    - strchr
    - gf_fileio_from_url
    - gf_fileio_read_mode
    - gf_file_exists
    - strnicmp
    - strcmp
    - strstr
    - strncmp
    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_filter_get_udta
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_fileio_check
    - GF_FALSE
    - lseek_64
    - gf_fseek
    - gf_file_delete
    - gf_fatal_assert
    - strcmp
    - gf_strdup
    - gf_realloc
    - close
    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: 59
    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: sprintf
      Src: /src/gpac/src/filters/in_file.c:461,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/in_file.c:470,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/in_file.c:508,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_file.c:514,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_file.c:517,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_file.c:520,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_file.c:521,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_file.c:525,1
    - Dst: read
      Src: /src/gpac/src/filters/in_file.c:547,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_file.c:551,1
    - Dst: read
      Src: /src/gpac/src/filters/in_file.c:556,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_file.c:560,1
    - Dst: GPAC_HAS_FD
      Src: /src/gpac/src/filters/in_file.c:570,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_file.c:573,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_file.c:575,1
    - Dst: gf_fileio_get_stats
      Src: /src/gpac/src/filters/in_file.c:580,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/in_file.c:590,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/in_file.c:606,1
    - Dst: read
      Src: /src/gpac/src/filters/in_file.c:609,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/in_file.c:612,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_file.c:617,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/filters/in_file.c:620,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:622,1
    - Dst: PROP_BOOL
      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_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:624,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:630,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/in_file.c:630,1
    - Dst: gf_fileio_get_stats
      Src: /src/gpac/src/filters/in_file.c:638,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_file.c:640,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_file.c:640,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:643,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:643,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:644,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:644,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:645,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_file.c:645,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_file.c:656,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_file.c:670,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:673,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:673,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:677,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:677,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:681,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:684,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:684,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_file.c:686,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/in_file.c:689,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/in_file.c:689,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/in_file.c:694,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/in_file.c:697,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_file.c:698,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/in_file.c:699,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_file.c:703,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/in_file.c:706,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: 83
    EdgeCount: 83
    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_rand
    - PROP_LONGUINT
    - gf_filter_pid_set_eos
    - gf_filter_pid_raw_new
    - gf_filter_pck_new_shared
    - snprintf
    - GPAC_HAS_FD
    - PROP_FRAC64
    - gf_feof
    - gf_filter_pid_would_block
    - gf_filter_pid_set_info
    - gf_filter_get_udta
    - gf_realloc
    - gf_filter_reporting_enabled
    - gf_filter_pck_send
    - read
    - gf_fileio_check
    - PROP_BOOL
    - gf_filter_pck_set_sap
    - sprintf
    - gf_filter_pck_set_framing
    - gf_filter_setup_failure
    - gf_fileio_get_stats
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_byte_offset
    - gf_fread
    - gf_filter_update_status
    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_list_count
    - gf_sc_set_scene_size
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_sg_get_scene_size_info
    - gf_sc_disconnect
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_odm_on_eos
    - gf_filter_post_process_task
    - gf_list_get
    - gf_filter_get_ipid
    - gf_filter_pid_set_discard
    - gf_filter_connections_pending
    - gf_sc_draw_frame
    - gf_filter_abort
    - gf_sys_clock
    - gf_sc_check_end_of_scene
    - gf_sc_connect_from_time
    - gf_filter_pid_is_eos
    - gf_filter_end_of_session
    - gf_free
    - GF_LOG
    - gf_sc_reload_config
    - gf_filter_ask_rt_reschedule
    - assert
    - 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_get_property
    - gf_filter_pid_set_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:
    - gf_filter_pid_set_loose_connect
    - PROP_UINT
    - gf_filter_pid_set_name
    - gf_filter_pid_set_property
    - PROP_FRAC
    - gf_filter_pid_new
    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_get_property
    - gf_list_count
    - gf_odm_disconnect
    - GF_FEVT_INIT
    - gf_mo_update_caps_ex
    - gf_pixel_fmt_is_yuv
    - gf_odm_new
    - gf_sc_set_scene
    - gf_filter_pid_send_event
    - gf_scene_regenerate
    - gf_stream_type_name
    - gf_filter_pid_is_sparse
    - gf_filter_forward_gf_event
    - gf_scene_force_size_to_video
    - gf_filter_get_udta
    - gf_filter_pid_get_udta
    - compositor_setup_vout
    - gf_filter_post_process_task
    - gf_fatal_assert
    - gf_evg_surface_attach_to_buffer
    - gf_list_get
    - gf_odm_update_duration
    - gf_evg_surface_new
    - gf_evg_surface_delete
    - gf_sg_reset
    - gf_scene_insert_pid
    - gf_pixel_is_wide_depth
    - strnicmp
    - merge_properties
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_is_filter_in_parents
    - gf_filter_pid_set_property_str
    - GF_LOG
    - PROP_UINT
    - gf_odm_check_clock_mediatime
    - gf_pixel_fmt_is_transparent
    - gf_filter_pid_exec_event
    - gf_strdup
    - memset
    - gf_scene_ns_new
    - gf_scene_new
    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_filter_pid_caps_query
    - gf_filter_get_udta
    - gf_mixer_set_config
    - GF_LOG
    - gf_audio_fmt_name
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_pixel_get_size_info
    - gf_mixer_get_config
    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_stop
    - gf_list_count
    - gf_filter_get_udta
    - gf_filter_pid_get_udta
    - gf_filter_release_property
    - gf_sc_send_event
    - gf_filter_pid_get_info
    - gf_sc_get_time_in_ms
    - gf_odm_service_media_event_with_download
    - abs
    - gf_list_get
    - memset
    - gf_sc_play_from_time
    - gf_sc_user_event
    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:
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_max_buffer
    - gf_filter_pid_set_loose_connect
    - PROP_UINT
    - gf_filter_pid_set_name
    - gf_filter_pid_set_property
    - gf_filter_pid_new
    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_filter_prevent_blocking
    - gf_filter_make_sticky
    - gf_filter_set_session_caps
    - gf_filter_set_event_target
    - gf_opts_set_key
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - compositor_setup_vout
    - gf_filter_get_session_caps
    - compose_update_arg
    - gf_filter_is_dynamic
    - gf_filter_load_filter
    - gf_error_to_string
    - GF_LOG
    - gf_sys_is_cov_mode
    - GF_COL_A
    - compositor_setup_aout
    - gf_opts_get_key
    - gf_sc_load
    - gf_sc_connect_from_time
    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
    - gf_audio_fmt_all_names
    - strcmp
    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_list_count
    - gf_route_dmx_del
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_route_dmx_purge_objects
    - gf_sys_is_cov_mode
    - gf_dm_sess_del
    - gf_list_new
    - gf_list_pop_back
    - gf_list_transfer
    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_list_count
    - gf_free
    - gf_list_pop_front
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - GF_SAFEALLOC
    - gf_strdup
    - gf_list_add
    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_get_object_count
    - gf_route_dmx_remove_first_object
    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_count
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - 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:
    - gf_filter_pck_new_alloc
    - gf_assert
    - push_seg_info
    - gf_filter_pck_set_property
    - routein_cleanup_objects
    - strchr
    - gf_filter_pid_new
    - memcpy
    - gf_filter_pck_send
    - gf_file_ext_start
    - routein_get_tsio
    - PROP_BOOL
    - PROP_STRING
    - strlen
    - gf_route_dmx_get_repair_info
    - gf_filter_pck_set_framing
    - GF_LOG
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_filter_pck_set_corrupted
    - strncmp
    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:
    - sprintf
    - gf_list_count
    - gf_fclose
    - gf_free
    - gf_list_pop_front
    - gf_fopen
    - GF_LOG
    - gf_file_delete
    - gf_fwrite
    - gf_strdup
    - routein_cleanup_objects
    - gf_list_add
    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: gf_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_assert
    - gf_dm_add_cache_entry
    - push_seg_info
    - routein_check_type
    - gf_route_dmx_purge_objects
    - gf_route_dmx_get_service_udta
    - gf_mx_v
    - gf_filter_pid_new
    - gf_route_dmx_set_service_udta
    - gf_filter_lock
    - gf_file_ext_start
    - routein_write_to_disk
    - gf_route_dmx_get_object_count
    - gf_sys_clock
    - gf_route_dmx_remove_first_object
    - routein_send_file
    - gf_mx_p
    - PROP_STRING
    - strcmp
    - sprintf
    - gf_free
    - gf_strcat
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_dm_force_headers
    - gf_strdup
    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:
    - routein_repair_mark_file
    - routein_queue_repair
    - GF_LOG
    - gf_sys_clock
    - gf_route_atsc3_tune_in
    - routein_send_file
    - gf_route_dmx_find_atsc3_service
    - routein_on_event_file
    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_filter_lock
    - strchr
    - gf_free
    - routein_repair_mark_file
    - atoi
    - GF_LOG
    - gf_filter_post_process_task
    - gf_route_atsc3_tune_in
    - gf_route_dmx_force_keep_object_by_name
    - strncmp
    - gf_route_dmx_remove_object_by_name
    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_route_dmx_reset_all
    - gf_filter_pid_set_eos
    - gf_filter_pid_set_info_str
    - PROP_STRING
    - gf_filter_get_opid
    - gf_filter_get_opid_count
    linkageType: ''
    returnType: void
    signature: void routein_set_eos(GF_Filter *filter, ROUTEInCtx *ctx, Bool no_reset)
  - BBCount: 22
    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: ABS
      Src: /src/gpac/src/filters/in_route.c:754,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: gf_route_dmx_reset_stats
      Src: /src/gpac/src/filters/in_route.c:766,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_route.c:773,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/in_route.c:774,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 73
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 681
    functionDepth: 15
    functionLinenumber: 681
    functionLinenumberEnd: 779
    functionName: routein_process
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_route_dmx_has_active_multicast
    - gf_route_dmx_check_timeouts
    - gf_route_dmx_get_recv_bytes
    - gf_filter_get_udta
    - gf_route_dmx_get_last_packet_time
    - gf_filter_reporting_enabled
    - gf_route_dmx_get_first_packet_time
    - gf_route_dmx_get_nb_packets
    - gf_sys_clock
    - ABS
    - sprintf
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_filter_setup_failure
    - gf_route_dmx_process
    - routein_do_repair
    - gf_route_dmx_reset_stats
    - routein_set_eos
    - gf_filter_update_status
    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:786,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_route.c:787,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route.c:789,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_route.c:790,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_route.c:792,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_route.c:797,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_route.c:801,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:802,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_route.c:803,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - url
    - service_id
    argTypes:
    - ROUTEInCtx*
    - char*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 781
    functionDepth: 1
    functionLinenumber: 781
    functionLinenumberEnd: 805
    functionName: routein_push_repair_server
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - 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:812,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route.c:818,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_route.c:822,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_route.c:827,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/in_route.c:835,1
    - Dst: gf_dm_set_localcache_provider
      Src: /src/gpac/src/filters/in_route.c:837,1
    - Dst: gf_route_atsc_dmx_new_ex
      Src: /src/gpac/src/filters/in_route.c:845,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_route.c:845,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/in_route.c:849,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:851,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_route.c:855,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_route.c:857,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/in_route.c:860,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:861,1
    - Dst: gf_dvb_mabr_dmx_new
      Src: /src/gpac/src/filters/in_route.c:865,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_route.c:865,1
    - Dst: gf_route_dmx_new_ex
      Src: /src/gpac/src/filters/in_route.c:867,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_route.c:867,1
    - Dst: gf_route_set_dispatch_mode
      Src: /src/gpac/src/filters/in_route.c:883,1
    - Dst: gf_route_set_dispatch_mode
      Src: /src/gpac/src/filters/in_route.c:885,1
    - Dst: gf_route_dmx_set_reorder
      Src: /src/gpac/src/filters/in_route.c:887,1
    - Dst: gf_route_dmx_debug_tsi
      Src: /src/gpac/src/filters/in_route.c:890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_route.c:896,1
    - Dst: gf_route_atsc3_tune_in
      Src: /src/gpac/src/filters/in_route.c:898,1
    - Dst: gf_route_atsc3_tune_in
      Src: /src/gpac/src/filters/in_route.c:900,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_route.c:903,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:906,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:908,1
    - Dst: routein_push_repair_server
      Src: /src/gpac/src/filters/in_route.c:916,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_route.c:925,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_route.c:926,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:928,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:929,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:930,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:934,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:935,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_route.c:936,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 113
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 807
    functionDepth: 7
    functionLinenumber: 807
    functionLinenumberEnd: 940
    functionName: routein_initialize
    functionSourceFile: /src/gpac/src/filters/in_route.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_netcap_id
    - memset
    - gf_route_atsc3_tune_in
    - gf_route_dmx_new_ex
    - strchr
    - gf_malloc
    - gf_filter_get_udta
    - gf_dm_set_localcache_provider
    - gf_dvb_mabr_dmx_new
    - gf_filter_get_download_manager
    - gf_sk_is_multicast_address
    - atoi
    - gf_route_set_dispatch_mode
    - gf_sys_clock
    - strrchr
    - strcmp
    - gf_list_new
    - GF_LOG
    - gf_route_atsc_dmx_new_ex
    - routein_push_repair_server
    - gf_route_dmx_debug_tsi
    - gf_route_dmx_set_reorder
    - strncmp
    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:944,1
    - Dst: gf_route_dmx_mark_active_quality
      Src: /src/gpac/src/filters/in_route.c:954,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 942
    functionDepth: 2
    functionLinenumber: 942
    functionLinenumberEnd: 957
    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: 960
      start: 959
    functionDepth: 0
    functionLinenumber: 959
    functionLinenumberEnd: 960
    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:1093,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_route.c:1094,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1091
    functionDepth: 6
    functionLinenumber: 1091
    functionLinenumberEnd: 1097
    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: 1104
      start: 1101
    functionDepth: 0
    functionLinenumber: 1101
    functionLinenumberEnd: 1104
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_webvtt_parser_del
    - gf_webvtt_parser_new
    - gf_codecid_name
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - gf_webvtt_parser_cue_callback
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_property_str
    - PROP_STRING
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - strlen
    - memcpy
    - 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_webvtt_parser_new
    - gf_webvtt_parser_del
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_webvtt_parser_cue_callback
    - gf_filter_pck_set_byte_offset
    - gf_webvtt_parser_finalize
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_property_str
    - gf_filter_pck_send
    linkageType: ''
    returnType: void
    signature: void vttmx_flush_segment(GF_WebVTTMxCtx *ctx)
  - BBCount: 18
    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: vttmx_flush_segment
      Src: /src/gpac/src/filters/write_vtt.c:248,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_vtt.c:250,1
    - Dst: vttmx_parser_flush
      Src: /src/gpac/src/filters/write_vtt.c:252,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_vtt.c:255,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_vtt.c:262,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_vtt.c:264,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_vtt.c:265,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_vtt.c:272,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_vtt.c:273,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_vtt.c:277,1
    - Dst: vttmx_flush_segment
      Src: /src/gpac/src/filters/write_vtt.c:278,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_vtt.c:287,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/write_vtt.c:289,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/filters/write_vtt.c:292,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_vtt.c:293,1
    - Dst: gf_webvtt_merge_cues
      Src: /src/gpac/src/filters/write_vtt.c:295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/write_vtt.c:297,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_vtt.c:298,1
    - Dst: vttmx_write_cue
      Src: /src/gpac/src/filters/write_vtt.c:299,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/filters/write_vtt.c:300,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/write_vtt.c:303,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_vtt.c:306,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_vtt.c:307,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_vtt.c:310,1
    - Dst: vttmx_flush_segment
      Src: /src/gpac/src/filters/write_vtt.c:312,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/write_vtt.c:313,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_vtt.c:317,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 73
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 225
    functionDepth: 5
    functionLinenumber: 225
    functionLinenumberEnd: 320
    functionName: vttmx_process
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_list_count
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_webvtt_cue_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_webvtt_merge_cues
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_webvtt_parse_cues_from_data
    - gf_filter_pck_get_cts
    - gf_set_progress
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_sap
    - vttmx_flush_segment
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - gf_filter_pck_get_property
    - gf_list_del
    - vttmx_write_cue
    - gf_filter_pck_set_byte_offset
    - vttmx_parser_flush
    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:324,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_vtt.c:325,1
    - Dst: gf_webvtt_parser_del
      Src: /src/gpac/src/filters/write_vtt.c:327,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/write_vtt.c:330,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 322
    functionDepth: 4
    functionLinenumber: 322
    functionLinenumberEnd: 334
    functionName: vttmx_finalize
    functionSourceFile: /src/gpac/src/filters/write_vtt.c
    functionUses: 0
    functionsReached:
    - gf_webvtt_parser_del
    - gf_free
    - 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: 346
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 346
    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: 372
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 372
    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: 377
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 377
    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: gf_strcpy
      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: gf_strcpy
      Src: /src/gpac/src/filters/write_nhnt.c:74,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_nhnt.c:76,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/write_nhnt.c:78,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/write_nhnt.c:81,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhnt.c:86,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:88,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhnt.c:94,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:97,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:101,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhnt.c:101,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:102,1
    - Dst: PROP_STRING
      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_file_ext_start
      Src: /src/gpac/src/filters/write_nhnt.c:106,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/write_nhnt.c:108,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhnt.c:110,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/write_nhnt.c:110,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:114,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:114,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhnt.c:116,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhnt.c:117,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:122,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhnt.c:122,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:123,1
    - Dst: PROP_STRING
      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_file_ext_start
      Src: /src/gpac/src/filters/write_nhnt.c:127,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/write_nhnt.c:129,1
    - Dst: gf_fileio_factory
      Src: /src/gpac/src/filters/write_nhnt.c:131,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/write_nhnt.c:131,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:135,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_nhnt.c:135,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/write_nhnt.c:137,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/write_nhnt.c:138,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 68
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHNTDumpCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 60
    functionDepth: 4
    functionLinenumber: 60
    functionLinenumberEnd: 144
    functionName: nhntdump_config_side_streams
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_filter_pid_get_property
    - gf_file_ext_start
    - gf_free
    - gf_fileio_from_url
    - gf_strcat
    - gf_file_basename
    - gf_fileio_translate_url
    - gf_filter_pid_get_destination
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_set_source
    - gf_filter_pid_remove
    - PROP_STRING
    - gf_filter_connect_destination
    - gf_filter_pid_new
    - strncmp
    - gf_fileio_factory
    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:151,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:156,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:160,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_nhnt.c:164,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_nhnt.c:169,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:172,1
    - Dst: gf_codecid_oti
      Src: /src/gpac/src/filters/write_nhnt.c:184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:187,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/write_nhnt.c:187,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:191,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_nhnt.c:195,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:200,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:202,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:204,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/write_nhnt.c:205,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:208,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_nhnt.c:212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:215,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_nhnt.c:219,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:223,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_nhnt.c:223,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_nhnt.c:224,1
    - Dst: PROP_STRING
      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_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:230,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_nhnt.c:233,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: 235
      start: 146
    functionDepth: 3
    functionLinenumber: 146
    functionLinenumberEnd: 235
    functionName: nhntdump_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_codecid_name
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - gf_codecid_oti
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - PROP_STRING
    - gf_filter_pid_check_caps
    - gf_audio_fmt_bit_depth
    - gf_4cc_to_str
    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:239,1
    - Dst: nhntdump_config_side_streams
      Src: /src/gpac/src/filters/write_nhnt.c:246,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_nhnt.c:249,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_nhnt.c:251,1
    - Dst: gf_filter_pid_set_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_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhnt.c:264,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_nhnt.c:267,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhnt.c:268,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/write_nhnt.c:272,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_nhnt.c:274,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_nhnt.c:276,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/write_nhnt.c:278,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/write_nhnt.c:280,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/filters/write_nhnt.c:283,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:285,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:286,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:289,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_nhnt.c:291,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/write_nhnt.c:292,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:294,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:295,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/write_nhnt.c:298,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:300,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/write_nhnt.c:301,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:302,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_nhnt.c:308,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_nhnt.c:312,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_nhnt.c:316,1
    - Dst: gf_bs_write_u24
      Src: /src/gpac/src/filters/write_nhnt.c:319,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:320,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_nhnt.c:320,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:322,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:325,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/write_nhnt.c:326,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/write_nhnt.c:326,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/write_nhnt.c:328,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhnt.c:329,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/write_nhnt.c:331,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_u32
      Src: /src/gpac/src/filters/write_nhnt.c:335,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_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:340,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:341,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/write_nhnt.c:344,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_nhnt.c:347,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_nhnt.c:351,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_nhnt.c:352,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_nhnt.c:357,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_nhnt.c:358,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_nhnt.c:359,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_nhnt.c:362,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 82
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 237
    functionDepth: 6
    functionLinenumber: 237
    functionLinenumberEnd: 365
    functionName: nhntdump_process
    functionSourceFile: /src/gpac/src/filters/write_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_bs_write_int
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_filter_pck_set_readonly
    - gf_bs_write_u64
    - gf_filter_pck_new_shared
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_write_u8
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_filter_pck_get_cts
    - gf_set_progress
    - gf_bs_write_u24
    - gf_bs_write_data
    - gf_filter_pck_new_ref
    - gf_filter_pid_is_eos
    - gf_filter_pck_set_framing
    - nhntdump_config_side_streams
    - gf_filter_pck_get_timescale
    - gf_bs_write_u16
    - gf_bs_write_u32
    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:369,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_nhnt.c:370,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 367
    functionDepth: 3
    functionLinenumber: 367
    functionLinenumberEnd: 371
    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: 384
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 384
    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: 409
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 409
    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: 414
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 414
    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_count
    - gf_crypt_info_del
    - gf_crypt_info_load
    - gf_list_get
    - memcpy
    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_filter_pid_get_property
    - gf_fclose
    - gf_dm_sess_get_cache_name
    - gf_fopen
    - GF_LOG
    - gf_ismacryp_gpac_get_info
    - gf_dm_sess_del
    - strnicmp
    - gf_dm_sess_new
    - gf_dm_sess_process
    - strstr
    - gf_dm_sess_get_stats
    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: gf_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: gf_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:
    - gf_strcpy
    - gf_feof
    - gf_fclose
    - gf_fopen
    - gf_strcat
    - getenv
    - stricmp
    - strlen
    - gf_fgets
    - memcpy
    - sscanf
    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_filter_pid_get_property
    - gf_crc_32
    - stricmp
    - strnicmp
    - gf_base64_decode
    - gf_ismacryp_mpeg4ip_get_info
    - strlen
    - cenc_dec_get_gpac_kms
    - memcpy
    - sscanf
    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
    - gf_crypt_init
    - memset
    - gf_crypt_open
    - memcpy
    - gf_crypt_close
    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_merge_properties
    - gf_crypt_decrypt
    - gf_filter_pck_set_crypt_flags
    - gf_bs_reassign_buffer
    - gf_bs_read_long_int
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_data
    - gf_bs_read_int
    - gf_bs_new
    - gf_bs_write_u64
    - gf_bs_write_data
    - gf_bs_del
    - gf_crypt_set_IV
    - gf_filter_pck_new_ref
    - memcpy
    - gf_bs_write_u8
    - 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: gf_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: gf_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:
    - sprintf
    - gf_strcat
    - GF_LOG
    - memcmp
    - stricmp
    - strlen
    - memset
    - memcpy
    - sscanf
    - strncmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err cenc_dec_load_keys(GF_CENCDecCtx *ctx, GF_CENCDecStream *cstr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:670,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:670,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:673,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:674,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:675,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:675,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:678,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:679,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:680,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:680,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:685,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 3
    argNames:
    - data
    - output
    - osize
    argTypes:
    - u8*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 658
    functionDepth: 2
    functionLinenumber: 658
    functionLinenumberEnd: 688
    functionName: rfmt_dec_b64
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_base64_decode
    - gf_dynstrcat
    - gf_strdup
    - 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:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:712,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:715,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:720,1
    - Dst: strstr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:731,1
    - Dst: strstr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:732,1
    - Dst: strchr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:745,1
    - Dst: strchr
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:746,1
    - Dst: rfmt_dec_b64
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:755,1
    - Dst: rfmt_dec_b64
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:757,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:760,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:761,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:762,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:763,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:772,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:773,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:775,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:780,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:782,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:789,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:792,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 101
    argCount: 2
    argNames:
    - usr_cbk
    - par
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 691
    functionDepth: 3
    functionLinenumber: 691
    functionLinenumberEnd: 799
    functionName: ck_http_io
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_free
    - gf_malloc
    - gf_dm_sess_del
    - strlen
    - memset
    - gf_realloc
    - memcpy
    - strstr
    - rfmt_dec_b64
    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:807,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:818,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:820,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:821,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:822,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:824,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:825,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:829,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:831,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:834,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: 838
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 838
    functionName: cenc_dec_set_clearkey
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_download_manager
    - gf_free
    - gf_crc_32
    - gf_dm_sess_new
    - gf_dynstrcat
    - gf_base64_encode
    - gf_dm_sess_process
    - 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:849,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:856,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:861,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:867,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:871,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:872,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:874,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:877,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:880,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:882,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:887,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:890,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 51
    argCount: 2
    argNames:
    - usr_cbk
    - par
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 841
    functionDepth: 1
    functionLinenumber: 841
    functionLinenumberEnd: 894
    functionName: hls_kms_io
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_dm_sess_del
    - memset
    - gf_realloc
    - memcpy
    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:903,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:905,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:907,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:911,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:921,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:927,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:930,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:934,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:935,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:937,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:946,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:951,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:952,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:958,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:962,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:964,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:967,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:974,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:978,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:978,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:982,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:989,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:990,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:992,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: 996
      start: 897
    functionDepth: 5
    functionLinenumber: 897
    functionLinenumberEnd: 996
    functionName: cenc_dec_set_hls_key
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_malloc
    - gf_fopen
    - gf_dm_sess_new
    - gf_dm_sess_process
    - gf_realloc
    - memcpy
    - gf_filter_get_download_manager
    - gf_url_is_local
    - strcmp
    - strlen
    - sscanf
    - gf_error_to_string
    - gf_free
    - gf_fclose
    - GF_LOG
    - gf_crypt_set_IV
    - gf_fread
    - gf_strdup
    - memset
    - strncmp
    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:1005,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1006,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1023,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1024,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1026,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1028,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1030,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1034,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1043,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1049,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1052,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1053,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1054,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1059,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1062,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1066,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1067,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1068,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1070,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1071,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1074,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1081,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1082,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1084,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1085,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1089,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1096,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1099,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1102,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1118,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1121,1
    - Dst: gf_bin128_parse
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1131,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1135,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1140,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1145,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1148,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1149,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1151,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1152,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1153,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1155,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1156,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1157,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1162,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1166,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1172,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1174,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1175,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1176,1
    - Dst: cenc_dec_load_keys
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1179,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: 1183
      start: 1000
    functionDepth: 7
    functionLinenumber: 1000
    functionLinenumberEnd: 1183
    functionName: cenc_dec_load_pssh
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - cenc_dec_load_keys
    - gf_bs_available
    - gf_bs_read_data
    - gf_bs_reassign_buffer
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_realloc
    - memcpy
    - gf_crypt_decrypt
    - memcmp
    - memmove
    - strcmp
    - gf_bs_read_u32
    - gf_bin128_parse
    - sprintf
    - gf_free
    - GF_LOG
    - gf_crypt_init
    - memset
    - gf_crypt_open
    - gf_crypt_close
    - strncmp
    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:1207,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1207,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1210,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1212,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1215,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1221,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1223,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1232,1
    - Dst: cenc_dec_load_keys
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1236,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1246,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1249,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1249,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1254,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1257,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1257,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1262,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1281,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1282,1
    - Dst: cenc_dec_load_pssh
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1285,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1294,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1296,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1305,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1306,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1308,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1323,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1324,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1326,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1327,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1328,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1333,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1334,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1335,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1335,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1341,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1342,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1343,1
    - Dst: strlen
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1343,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1349,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1357,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1358,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1362,1
    - Dst: cenc_dec_load_keys
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1364,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1367,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1374,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1375,1
    - Dst: cenc_dec_set_hls_key
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1378,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1382,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1383,1
    - Dst: cenc_dec_set_clearkey
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1386,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1388,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1396,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: 1398
      start: 1185
    functionDepth: 8
    functionLinenumber: 1185
    functionLinenumberEnd: 1398
    functionName: cenc_dec_setup_cenc
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - cenc_dec_load_pssh
    - gf_list_count
    - gf_crypt_info_del
    - cenc_dec_load_keys
    - GF_LOG
    - gf_crc_32
    - gf_list_get
    - cenc_dec_set_hls_key
    - cenc_dec_set_clearkey
    - gf_crypt_info_load
    - strcmp
    - strlen
    - memset
    - gf_realloc
    - memcpy
    - gf_4cc_to_str
    - gf_error_to_string
    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:1409,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1416,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1420,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1421,1
    - Dst: cenc_dec_set_hls_key
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1424,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1427,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1428,1
    - Dst: cenc_dec_setup_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1430,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1433,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1437,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1444,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1447,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: 1449
      start: 1400
    functionDepth: 9
    functionLinenumber: 1400
    functionLinenumberEnd: 1449
    functionName: cenc_dec_hls_saes
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - cenc_dec_set_hls_key
    - GF_LOG
    - cenc_dec_push_iv
    - cenc_dec_setup_cenc
    - memcpy
    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:1471,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1472,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1478,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1487,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1488,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1490,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1502,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1503,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1505,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1506,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1509,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1515,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: 1517
      start: 1452
    functionDepth: 3
    functionLinenumber: 1452
    functionLinenumberEnd: 1517
    functionName: cenc_dec_setup_adobe
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_crypt_info_del
    - GF_LOG
    - gf_crypt_info_load
    - gf_list_get
    - gf_realloc
    - memcpy
    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:1531,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1533,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1535,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1544,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: 1551
      start: 1519
    functionDepth: 2
    functionLinenumber: 1519
    functionLinenumberEnd: 1551
    functionName: cenc_dec_access_cenc
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_crypt_open
    - gf_crypt_close
    - gf_assert
    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:1558,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1560,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1568,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: 1574
      start: 1553
    functionDepth: 2
    functionLinenumber: 1553
    functionLinenumberEnd: 1574
    functionName: cenc_dec_access_adobe
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_crypt_open
    - gf_crypt_close
    - gf_assert
    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:1582,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1586,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1586,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1595,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1597,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1601,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1603,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1609,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1609,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: 1614
      start: 1576
    functionDepth: 2
    functionLinenumber: 1576
    functionLinenumberEnd: 1614
    functionName: cenc_dec_push_iv
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_crypt_set_IV
    - gf_crypt_init
    - memmove
    - memcpy
    - 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:1620,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1623,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1626,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1632,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: 1634
      start: 1616
    functionDepth: 1
    functionLinenumber: 1616
    functionLinenumberEnd: 1634
    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:1652,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1656,1
    - Dst: cenc_dec_load_pssh
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1658,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1660,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1662,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1663,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1665,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1666,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1667,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1668,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1673,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1677,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1681,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1694,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1698,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1702,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1705,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1709,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1711,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1716,1
    - Dst: gf_bs_read_data
      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:1719,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1727,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1729,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1750,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1754,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1755,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1761,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1764,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1770,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1781,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1784,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1785,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1790,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1805,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1809,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1810,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1815,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1818,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1822,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1823,1
    - Dst: gf_cenc_key_info_get_iv_size
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1826,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1831,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1838,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1839,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1847,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1849,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1852,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1854,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1857,1
    - Dst: cenc_decrypt_block
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1883,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1887,1
    - Dst: cenc_decrypt_block
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1905,1
    - Dst: cenc_decrypt_block
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1923,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1928,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1929,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1931,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1935,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: 1938
      start: 1635
    functionDepth: 8
    functionLinenumber: 1635
    functionLinenumberEnd: 1938
    functionName: cenc_dec_process_cenc
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - cenc_dec_load_pssh
    - gf_filter_pck_merge_properties
    - gf_assert
    - gf_filter_pck_get_crypt_flags
    - gf_bs_read_data
    - gf_filter_pck_set_property
    - cenc_decrypt_block
    - gf_bs_reassign_buffer
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_new_clone
    - gf_bs_read_u32
    - gf_filter_pck_new_ref
    - gf_bs_read_u16
    - gf_filter_pck_discard
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_filter_pck_set_crypt_flags
    - gf_cenc_key_info_get_iv_size
    - gf_crypt_set_IV
    - cenc_dec_push_iv
    - memset
    - gf_bs_available
    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:1947,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1950,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1952,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1953,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1954,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1955,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1960,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1971,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1976,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1979,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1981,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1986,1
    - Dst: cenc_dec_push_iv
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:1989,1
    - Dst: gf_media_nalu_emulation_bytes_remove_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2034,1
    - Dst: gf_media_nalu_remove_emulation_bytes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2036,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2045,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2053,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2069,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2081,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2092,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2098,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2108,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2109,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2111,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2115,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: 2118
      start: 1940
    functionDepth: 3
    functionLinenumber: 1940
    functionLinenumberEnd: 2118
    functionName: cenc_dec_process_hls_saes
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_filter_pck_merge_properties
    - gf_crypt_decrypt
    - GF_LOG
    - gf_filter_pck_set_crypt_flags
    - gf_media_nalu_emulation_bytes_remove_count
    - gf_media_nalu_remove_emulation_bytes
    - gf_filter_pck_get_data
    - gf_filter_pck_new_clone
    - gf_crypt_set_IV
    - gf_filter_pck_set_property
    - cenc_dec_push_iv
    - memmove
    - gf_filter_pck_new_ref
    - gf_filter_pck_truncate
    - memcpy
    - 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:2133,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2134,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2146,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2149,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2151,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2153,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2153,1
    - Dst: gf_crypt_set_IV
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2160,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2160,1
    - Dst: gf_crypt_decrypt
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2167,1
    - Dst: memmove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2174,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2175,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2176,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2178,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: 2180
      start: 2120
    functionDepth: 2
    functionLinenumber: 2120
    functionLinenumberEnd: 2180
    functionName: cenc_dec_process_adobe
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_crypt_decrypt
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_crypt_set_IV
    - gf_crypt_init
    - gf_filter_pck_send
    - memmove
    - memcpy
    - gf_filter_pck_truncate
    - gf_error_to_string
    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:2187,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2189,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2191,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2192,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2193,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2195,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2197,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2199,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - cstr
    argTypes:
    - GF_CENCDecStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2200
      start: 2182
    functionDepth: 1
    functionLinenumber: 2182
    functionLinenumberEnd: 2200
    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:2212,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2215,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2219,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2222,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2224,1
    - Dst: cenc_dec_stream_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2225,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2229,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2232,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2234,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2236,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2239,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2240,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2241,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2243,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2247,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2249,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2251,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2256,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2257,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2258,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2262,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2271,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2278,1
    - Dst: memset
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2279,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2284,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2286,1
    - Dst: cenc_dec_setup_isma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2303,1
    - Dst: cenc_dec_setup_oma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2307,1
    - Dst: cenc_dec_setup_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2317,1
    - Dst: cenc_dec_setup_adobe
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2320,1
    - Dst: cenc_dec_hls_saes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2326,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2330,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2330,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2335,1
    - Dst: gf_filter_pid_get_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:2339,1
    - Dst: PROP_UINT
      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:2343,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2344,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2345,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2346,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2347,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2348,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2349,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2350,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2351,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2352,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2354,1
    - Dst: PROP_4CC
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2354,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2358,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: 2374
      start: 2202
    functionDepth: 10
    functionLinenumber: 2202
    functionLinenumberEnd: 2374
    functionName: cenc_dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - cenc_dec_stream_del
    - gf_filter_pid_set_framing_mode
    - GF_SAFEALLOC
    - cenc_dec_setup_adobe
    - cenc_dec_setup_cenc
    - gf_list_add
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_remove
    - gf_list_get
    - gf_filter_pid_new
    - gf_realloc
    - gf_filter_pid_copy_properties
    - cenc_dec_hls_saes
    - gf_filter_pid_check_caps
    - PROP_4CC
    - cenc_dec_setup_oma
    - GF_LOG
    - gf_list_del_item
    - cenc_dec_setup_isma
    - gf_filter_pid_set_property
    - PROP_UINT
    - memset
    - gf_crypt_open
    - gf_4cc_to_str
    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:2382,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2386,1
    - Dst: cenc_dec_access_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2394,1
    - Dst: cenc_dec_access_adobe
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2398,1
    - Dst: cenc_dec_access_isma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2401,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2410
      start: 2377
    functionDepth: 3
    functionLinenumber: 2377
    functionLinenumberEnd: 2410
    functionName: cenc_dec_process_event
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - cenc_dec_access_isma
    - gf_filter_get_udta
    - cenc_dec_access_adobe
    - GF_LOG
    - gf_filter_pid_get_udta
    - cenc_dec_access_cenc
    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:2413,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2414,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2422,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2423,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2425,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2427,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2433,1
    - Dst: cenc_dec_process_hls_saes
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2438,1
    - Dst: cenc_dec_process_cenc
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2440,1
    - Dst: cenc_dec_process_adobe
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2444,1
    - Dst: cenc_dec_process_isma
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2446,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2448,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2453
      start: 2411
    functionDepth: 9
    functionLinenumber: 2411
    functionLinenumberEnd: 2453
    functionName: cenc_dec_process
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - cenc_dec_process_cenc
    - gf_filter_pid_set_eos
    - cenc_dec_process_hls_saes
    - cenc_dec_process_adobe
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - cenc_dec_process_isma
    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:2457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2462,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2466,1
    - Dst: gf_crypt_info_load
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2473,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2477,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2479
      start: 2455
    functionDepth: 3
    functionLinenumber: 2455
    functionLinenumberEnd: 2479
    functionName: cenc_dec_initialize
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - GF_LOG
    - gf_bs_new
    - gf_crypt_info_load
    - gf_list_new
    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:2483,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2485,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2486,1
    - Dst: cenc_dec_stream_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2487,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2489,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2491,1
    - Dst: gf_crypt_info_del
      Src: /src/gpac/src/filters/decrypt_cenc_isma.c:2492,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2493
      start: 2481
    functionDepth: 3
    functionLinenumber: 2481
    functionLinenumberEnd: 2493
    functionName: cenc_dec_finalize
    functionSourceFile: /src/gpac/src/filters/decrypt_cenc_isma.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - cenc_dec_stream_del
    - gf_crypt_info_del
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    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: 2517
      start: 2516
    functionDepth: 0
    functionLinenumber: 2516
    functionLinenumberEnd: 2517
    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: 2570
      start: 2563
    functionDepth: 0
    functionLinenumber: 2563
    functionLinenumberEnd: 2570
    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_setup_process
    - rtpin_rtsp_describe_process
    - rtpin_rtsp_usercom_process
    - rtpin_rtsp_teardown_process
    - strcmp
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rtpin_rtsp_process_response(GF_RTPInRTSP *sess, GF_RTSPCommand
      *com, GF_Err e)
  - BBCount: 28
    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: stricmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:131,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:131,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:132,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:149,1
    - Dst: rtpin_rtsp_describe_preprocess
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:151,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: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:160,1
    - Dst: rtpin_rtsp_usercom_preprocess
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:162,1
    - Dst: gf_rtsp_send_command
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:178,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:178,1
    - Dst: rtpin_rtsp_process_response
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:179,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:182,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:195,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:196,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 124
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTPInRTSP*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 43
    functionDepth: 6
    functionLinenumber: 43
    functionLinenumberEnd: 200
    functionName: rtpin_rtsp_process_commands
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 3
    functionsReached:
    - gf_dm_ssl_init
    - gf_rtsp_session_read
    - rtpin_rtsp_usercom_preprocess
    - gf_opts_get_int
    - gf_rtsp_get_session_state
    - rtpin_rtsp_describe_preprocess
    - gf_list_get
    - gf_rtsp_reset_aggregation
    - gf_sys_clock
    - rtpin_rtsp_process_response
    - strcmp
    - gf_rtsp_set_ssl_ctx
    - gf_error_to_string
    - gf_rtsp_send_command
    - gf_free
    - gf_filter_setup_failure
    - GF_LOG
    - stricmp
    - gf_rtsp_command_del
    - gf_rtsp_session_reset
    - gf_rtsp_session_needs_ssl
    - gf_rtsp_get_response
    - 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:209,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:213,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:214,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:220,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: 222
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 222
    functionName: rtpin_find_stream
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_list_enum
    - strstr
    - strcmp
    - gf_list_rem
    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:229,1
    - Dst: gf_rtsp_is_my_session
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:232,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 2
    argNames:
    - rtp
    - control
    argTypes:
    - GF_RTPIn*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 234
    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:245,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:250,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:251,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:253,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:255,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:255,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:255,1
    - Dst: gf_rtsp_session_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:259,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:260,1
    - Dst: gf_rtsp_session_set_netcap_id
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:263,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:263,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:265,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:271,1
    - Dst: gf_rtsp_set_buffer_size
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:273,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:275,1
    - Dst: gf_rtsp_response_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:276,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 35
    argCount: 2
    argNames:
    - rtp
    - session_control
    argTypes:
    - GF_RTPIn*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 236
    functionDepth: 4
    functionLinenumber: 236
    functionLinenumberEnd: 280
    functionName: rtpin_rtsp_new
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_filter_get_netcap_id
    - gf_file_ext_start
    - strchr
    - gf_free
    - GF_LOG
    - strnicmp
    - gf_rtsp_session_set_netcap_id
    - gf_rtsp_set_buffer_size
    - GF_SAFEALLOC
    - gf_rtsp_session_new
    - gf_list_new
    - gf_strdup
    - gf_rtsp_response_new
    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:286,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:298,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: strnicmp
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:309,1
    - Dst: rtpin_rtsp_check
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:313,1
    - Dst: rtpin_rtsp_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:315,1
    - Dst: rtpin_rtsp_check
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:322,1
    - Dst: rtpin_rtsp_check
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:323,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:325,1
    - Dst: rtpin_rtsp_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:326,1
    - Dst: rtpin_rtsp_new
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:328,1
    - Dst: strstr
      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: strlen
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:334,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:335,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:336,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:351,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:352,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:358,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: 360
      start: 282
    functionDepth: 5
    functionLinenumber: 282
    functionLinenumberEnd: 360
    functionName: rtpin_add_stream
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_free
    - GF_LOG
    - rtpin_rtsp_new
    - strnicmp
    - rtpin_rtsp_check
    - strlen
    - gf_strdup
    - gf_list_add
    - strstr
    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:367,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:369,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - rtp
    - stream
    argTypes:
    - GF_RTPIn*
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 363
    functionDepth: 2
    functionLinenumber: 363
    functionLinenumberEnd: 373
    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:380,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:381,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:382,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:389,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:394,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - sess
    - e
    argTypes:
    - GF_RTPInRTSP*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 375
    functionDepth: 3
    functionLinenumber: 375
    functionLinenumberEnd: 396
    functionName: rtpin_rtsp_reset
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_rtsp_session_reset
    - gf_rtsp_command_del
    - gf_list_get
    - 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:402,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:403,1
    - Dst: gf_rtsp_response_del
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:404,1
    - Dst: gf_rtsp_session_del
      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
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_rtsp.c:409,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_RTPInRTSP*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 399
    functionDepth: 4
    functionLinenumber: 399
    functionLinenumberEnd: 410
    functionName: rtpin_rtsp_del
    functionSourceFile: /src/gpac/src/filters/in_rtp_rtsp.c
    functionUses: 1
    functionsReached:
    - gf_rtsp_session_del
    - gf_free
    - gf_list_del
    - gf_rtsp_response_del
    - rtpin_rtsp_reset
    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_LOG
    - gf_sk_bind
    - gf_sk_is_multicast_address
    - gf_sk_setup_multicast
    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_filter_get_netcap_id
    - gf_sk_del
    - gf_free
    - GF_SAFEALLOC
    - routemx_setup_socket
    - gf_sk_new_ex
    - gf_strdup
    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:
    - sprintf
    - gf_free
    - route_create_lct_channel
    - gf_list_del
    - GF_SAFEALLOC
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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_sk_del
    - gf_free
    - 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_list_count
    - gf_sk_del
    - gf_free
    - gf_list_del
    - routeout_remove_pid
    - gf_list_pop_back
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - routeout_create_service
    - GF_SAFEALLOC
    - gf_net_bump_ip_address
    - gf_filter_pid_send_event
    - gf_list_add
    - strstr
    - strchr
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_timestamp_rescale
    - gf_list_find
    - gf_filter_pid_ignore_blocking
    - gf_list_get
    - route_create_lct_channel
    - gf_filter_abort
    - gf_sys_clock
    - routeout_remove_pid
    - strcmp
    - gf_filter_pid_check_caps
    - gf_free
    - gf_filter_pid_init_play_event
    - GF_LOG
    - gf_filter_release_property
    - GF_4CC
    - gf_filter_pid_get_info
    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: gf_strcpy
      Src: /src/gpac/src/filters/out_route.c:856,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_route.c:857,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_route.c:859,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_route.c:862,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/out_route.c:867,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/out_route.c:867,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_route.c:871,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_route.c:874,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_route.c:874,1
    - Dst: routemx_setup_socket
      Src: /src/gpac/src/filters/out_route.c:875,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_route.c:879,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_route.c:879,1
    - Dst: routemx_setup_socket
      Src: /src/gpac/src/filters/out_route.c:880,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:887,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_route.c:888,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/out_route.c:890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:899,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/out_route.c:905,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/out_route.c:906,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 128
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 761
    functionDepth: 4
    functionLinenumber: 761
    functionLinenumberEnd: 909
    functionName: routeout_initialize
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_netcap_id
    - gf_filter_is_alias
    - strlwr
    - gf_file_basename
    - gf_bs_new
    - routemx_setup_socket
    - gf_filter_is_temporary
    - gf_filter_add_status_metric
    - strchr
    - gf_malloc
    - gf_filter_get_udta
    - gf_strcpy
    - gf_file_ext_start
    - gf_sk_is_multicast_address
    - atoi
    - gf_sys_clock_high_res
    - strnicmp
    - strrchr
    - gf_sk_new_ex
    - gf_list_new
    - gf_free
    - gf_net_get_adapter_ip
    - gf_filter_override_caps
    - GF_LOG
    - PROP_NAME
    - PROP_UINT
    - gf_strdup
    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:915,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_route.c:918,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:920,1
    - Dst: routeout_delete_service
      Src: /src/gpac/src/filters/out_route.c:921,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_route.c:921,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_route.c:923,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_route.c:925,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_route.c:927,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_free
      Src: /src/gpac/src/filters/out_route.c:931,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:932,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:933,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:934,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/out_route.c:935,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 911
    functionDepth: 5
    functionLinenumber: 911
    functionLinenumberEnd: 936
    functionName: routeout_finalize
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_is_alias
    - gf_sk_del
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    - routeout_delete_service
    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:943,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:945,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:946,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:948,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:951,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:952,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:953,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:957,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - serv
    - url
    argTypes:
    - ROUTEService*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 958
      start: 938
    functionDepth: 0
    functionLinenumber: 938
    functionLinenumberEnd: 958
    functionName: routeout_strip_base
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - strchr
    - strncmp
    - 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:970,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:974,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_route.c:985,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:988,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_route.c:992,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:993,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:996,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:997,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:998,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:1007,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1008,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1009,1
    - Dst: routeout_strip_base
      Src: /src/gpac/src/filters/out_route.c:1010,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_route.c:1012,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_route.c:1032,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:1036,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1040,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_route.c:1042,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1046,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1051,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1058,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1060,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_route.c:1064,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1069,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_route.c:1080,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:1081,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1083,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:1084,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:1085,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1098,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1099,1
    - Dst: routeout_strip_base
      Src: /src/gpac/src/filters/out_route.c:1100,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_route.c:1107,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:1108,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1134,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:1135,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:1136,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1140,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1141,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1144,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1146,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1151,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1152,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1155,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1156,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1158,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1160,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1161,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1164,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1166,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:1168,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1174,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1179,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: gf_free
      Src: /src/gpac/src/filters/out_route.c:1185,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1186,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:1189,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/out_route.c:1189,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1189,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1190,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_route.c:1193,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_route.c:1198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1200,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_route.c:1220,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1227,1
    - Dst: routeout_update_stsid_bundle
      Src: /src/gpac/src/filters/out_route.c:1233,1
    CyclomaticComplexity: 76
    EdgeCount: 76
    ICount: 220
    argCount: 2
    argNames:
    - ctx
    - serv
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1234
      start: 963
    functionDepth: 1
    functionLinenumber: 963
    functionLinenumberEnd: 1234
    functionName: routeout_check_service_updates
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - routeout_update_stsid_bundle
    - gf_file_basename
    - gf_assert
    - routeout_strip_base
    - gf_filter_pid_drop_packet
    - snprintf
    - gf_filter_pid_get_packet
    - strstr
    - strchr
    - gf_malloc
    - gf_crc_32
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_dynstrcat
    - memcpy
    - atoi
    - gf_sys_clock
    - strcmp
    - strlen
    - sprintf
    - gf_free
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_strdup
    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:1244,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1249,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1264,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1266,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1269,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1273,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:1278,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1280,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1281,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1283,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1285,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:1290,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1292,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:1297,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1298,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1299,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1300,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:1302,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:1309,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1311,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1312,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1314,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_route.c:1316,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1322,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1326,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1327,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1328,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/out_route.c:1331,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1334,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1337,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_route.c:1339,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:1340,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1342,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1343,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1344,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1345,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1347,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1351,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1358,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1360,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:1365,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: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:1374,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1375,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:1377,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:1382,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1384,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1385,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1387,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:1390,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1391,1
    - Dst: gf_sk_get_local_ip
      Src: /src/gpac/src/filters/out_route.c:1397,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_route.c:1398,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1404,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:1411,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1412,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1413,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1414,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1422,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1424,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1426,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1429,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:1435,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1437,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1440,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_route.c:1443,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1444,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1445,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1447,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1448,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/out_route.c:1460,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:1461,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/out_route.c:1462,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1462,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:1469,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1470,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1472,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1475,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1477,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1478,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1479,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1496,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1497,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: snprintf
      Src: /src/gpac/src/filters/out_route.c:1505,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1506,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1510,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1511,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1516,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1520,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_route.c:1521,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1523,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:1528,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1530,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1532,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1536,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1540,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1543,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1544,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:1546,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1549,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1552,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:1559,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1560,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:1564,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1568,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1570,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1575,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1578,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1580,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1583,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1585,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1587,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/filters/out_route.c:1590,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 280
    argCount: 3
    argNames:
    - ctx
    - serv
    - manifest_updated
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1607
      start: 1238
    functionDepth: 2
    functionLinenumber: 1238
    functionLinenumberEnd: 1607
    functionName: routeout_update_stsid_bundle
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_gz_compress_payload_ex
    - gf_file_basename
    - snprintf
    - strstr
    - gf_sk_get_local_ip
    - strchr
    - gf_list_get
    - gf_dynstrcat
    - gf_strcpy
    - strcmp
    - strlen
    - gf_free
    - GF_LOG
    - gf_strcat
    - gf_filter_release_property
    - gf_filter_pid_get_info
    - gf_strdup
    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:1614,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:1615,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1616,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1617,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1618,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1619,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1626,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:1629,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: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1633,1
    - Dst: sprintf
      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_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1636,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:1637,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1638,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1639,1
    - Dst: gf_md5_csum
      Src: /src/gpac/src/filters/out_route.c:1643,1
    - Dst: gf_base64_encode
      Src: /src/gpac/src/filters/out_route.c:1644,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1646,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1647,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1648,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1650,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: 1651
      start: 1611
    functionDepth: 4
    functionLinenumber: 1611
    functionLinenumberEnd: 1651
    functionName: inject_fdt_file_desc
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_md5_csum
    - gf_base64_encode
    - gf_dynstrcat
    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:1660,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1661,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1668,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:1670,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1672,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1676,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1681,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1685,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:1695,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:1697,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:1703,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:1704,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1709,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1718,1
    - Dst: inject_fdt_file_desc
      Src: /src/gpac/src/filters/out_route.c:1725,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1725,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:1731,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1733,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:1734,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:1736,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 66
    argCount: 3
    argNames:
    - ctx
    - serv
    - manifest_updated
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1655
    functionDepth: 5
    functionLinenumber: 1655
    functionLinenumberEnd: 1740
    functionName: routeout_update_dvb_mabr_fdt
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_list_get
    - inject_fdt_file_desc
    - gf_dynstrcat
    - strcmp
    - 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:1744,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1749
      start: 1742
    functionDepth: 0
    functionLinenumber: 1742
    functionLinenumberEnd: 1749
    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:1821,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1823,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1824,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1826,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1827,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/out_route.c:1833,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1835,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/out_route.c:1836,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/out_route.c:1837,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1841,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1842,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/out_route.c:1844,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/out_route.c:1846,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/out_route.c:1848,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/out_route.c:1850,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1854,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/out_route.c:1855,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/out_route.c:1856,1
    - Dst: gf_net_get_ntp
      Src: /src/gpac/src/filters/out_route.c:1858,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/out_route.c:1859,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/out_route.c:1860,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1863,1
    - Dst: PUT_U16
      Src: /src/gpac/src/filters/out_route.c:1864,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1881,1
    - Dst: PUT_U32
      Src: /src/gpac/src/filters/out_route.c:1885,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_route.c:1888,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1890,1
    - Dst: update_error_simulation_state
      Src: /src/gpac/src/filters/out_route.c:1892,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:1894,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_route.c:1895,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1897,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_route.c:1897,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:1900,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: 1908
      start: 1751
    functionDepth: 5
    functionLinenumber: 1751
    functionLinenumberEnd: 1908
    functionName: routeout_lct_send
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - update_error_simulation_state
    - gf_sk_send
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_write_long_int
    - gf_net_get_ntp
    - gf_assert
    - PUT_U16
    - gf_bs_write_u16
    - PUT_U32
    - gf_bs_write_u32
    - gf_bs_reassign_buffer
    - memcpy
    - gf_bs_write_u8
    - gf_error_to_string
    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: 1813
      start: 1807
    functionDepth: 0
    functionLinenumber: 1807
    functionLinenumberEnd: 1813
    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: 1818
      start: 1814
    functionDepth: 0
    functionLinenumber: 1814
    functionLinenumberEnd: 1818
    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:1914,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: 1916
      start: 1910
    functionDepth: 6
    functionLinenumber: 1910
    functionLinenumberEnd: 1916
    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:1920,1
    - Dst: routeout_send_file
      Src: /src/gpac/src/filters/out_route.c:1926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - serv
    argTypes:
    - GF_ROUTEOutCtx*
    - ROUTEService*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1928
      start: 1918
    functionDepth: 7
    functionLinenumber: 1918
    functionLinenumberEnd: 1928
    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:2674,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2675,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2676,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2677,1
    - Dst: gf_net_get_timezone
      Src: /src/gpac/src/filters/out_route.c:2678,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2682,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_route.c:2682,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2684,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_route.c:2684,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2685,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2686,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2687,1
    - Dst: gf_net_time_is_dst
      Src: /src/gpac/src/filters/out_route.c:2687,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2688,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2690,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2691,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:2693,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/filters/out_route.c:2695,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2696,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2710,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_route.c:2711,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:2716,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2717,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2718,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2724,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2729,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2732,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_route.c:2734,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2736,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_route.c:2738,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/out_route.c:2740,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2744,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:2745,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:2753,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:2754,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2756,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2759,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2762,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2765,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2767,1
    - Dst: gf_sk_get_local_ip
      Src: /src/gpac/src/filters/out_route.c:2771,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_route.c:2772,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2776,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2779,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2781,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2785,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2787,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_route.c:2789,1
    - Dst: gf_gz_compress_payload_ex
      Src: /src/gpac/src/filters/out_route.c:2791,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:2806,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_route.c:2807,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 109
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2809
      start: 2652
    functionDepth: 2
    functionLinenumber: 2652
    functionLinenumberEnd: 2809
    functionName: routeout_send_lls
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_gz_compress_payload_ex
    - gf_list_count
    - gf_net_time_is_dst
    - gf_sk_send
    - snprintf
    - gf_sk_get_local_ip
    - gf_malloc
    - gf_list_get
    - gf_dynstrcat
    - gf_net_get_timezone
    - memcpy
    - gf_strcpy
    - atoi
    - gf_filter_pid_get_property_str
    - ABS
    - strlen
    - sprintf
    - gf_free
    - GF_LOG
    - gf_filter_release_property
    - gf_filter_pid_get_info
    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:2816,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2817,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:2820,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2822,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:2825,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2839,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2840,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2841,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: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:2848,1
    - Dst: sprintf
      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:2853,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2854,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2855,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2856,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2857,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2859,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: 2861
      start: 2811
    functionDepth: 1
    functionLinenumber: 2811
    functionLinenumberEnd: 2861
    functionName: mabr_get_carousel_info
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_list_count
    - gf_dynstrcat
    - gf_list_get
    - 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:2870,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:2871,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2872,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2875,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2878,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2881,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:2887,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:2893,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2894,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2896,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2899,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2900,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2901,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2902,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2903,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2904,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2905,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2906,1
    - Dst: mabr_get_carousel_info
      Src: /src/gpac/src/filters/out_route.c:2909,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2912,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2913,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2917,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:2918,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2920,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2928,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:2938,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2939,1
    - Dst: gf_dynstrcat
      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_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_route.c:2943,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2944,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2945,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2946,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:2948,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:2951,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_route.c:2954,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:2965,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2979,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2982,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2983,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2985,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:2986,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: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:2994,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:2995,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:3000,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:3002,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3005,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3007,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3008,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3009,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3029,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3032,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3033,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3035,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3036,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: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:3044,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3045,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_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3052,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3054,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3055,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3056,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3057,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:3060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:3062,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3065,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3066,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3067,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:3072,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:3074,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: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: 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: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3089,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3090,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3091,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3092,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3093,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3094,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3095,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3096,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3097,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3101,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3102,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3103,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3104,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:3112,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_route.c:3115,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_route.c:3119,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3127,1
    - Dst: sprintf
      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:3134,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3135,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3137,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3139,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:3141,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3142,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3145,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3146,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3148,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3149,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3151,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3156,1
    - Dst: sprintf
      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:3161,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3162,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3163,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3164,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3169,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3170,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3171,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3172,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3174,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:3175,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3180,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3184,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3185,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:3187,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_route.c:3189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3193,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3197,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3198,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_route.c:3199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3204,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3208,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3209,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3210,1
    - Dst: mabr_get_carousel_info
      Src: /src/gpac/src/filters/out_route.c:3213,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3215,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3216,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3219,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3222,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_route.c:3224,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3226,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_route.c:3229,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_route.c:3235,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 293
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3240
      start: 2863
    functionDepth: 2
    functionLinenumber: 2863
    functionLinenumberEnd: 3240
    functionName: routeout_update_mabr_manifest
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - sprintf
    - gf_free
    - strchr
    - atoi
    - GF_LOG
    - mabr_get_carousel_info
    - stricmp
    - gf_dynstrcat
    - gf_filter_pid_get_property_str
    - snprintf
    - gf_list_get
    - strlen
    - strstr
    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:3245,1
    - Dst: routeout_update_dvb_mabr_fdt
      Src: /src/gpac/src/filters/out_route.c:3247,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3263,1
    - Dst: routeout_send_file
      Src: /src/gpac/src/filters/out_route.c:3266,1
    - Dst: routeout_send_file
      Src: /src/gpac/src/filters/out_route.c:3268,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ROUTEOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3269
      start: 3242
    functionDepth: 7
    functionLinenumber: 3242
    functionLinenumberEnd: 3269
    functionName: routeout_send_mabr_manifest
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - routeout_update_dvb_mabr_fdt
    - routeout_send_file
    - routeout_update_mabr_manifest
    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:3276,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_route.c:3278,1
    - Dst: MIN
      Src: /src/gpac/src/filters/out_route.c:3279,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_route.c:3280,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/out_route.c:3292,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/out_route.c:3295,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_route.c:3296,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_route.c:3297,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_route.c:3298,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/out_route.c:3306,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_route.c:3307,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_route.c:3308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3309,1
    - Dst: routeout_send_lls
      Src: /src/gpac/src/filters/out_route.c:3319,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_route.c:3322,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:3324,1
    - Dst: routeout_check_service_updates
      Src: /src/gpac/src/filters/out_route.c:3326,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_route.c:3328,1
    - Dst: routeout_send_mabr_manifest
      Src: /src/gpac/src/filters/out_route.c:3333,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_route.c:3337,1
    - Dst: routeout_process_service
      Src: /src/gpac/src/filters/out_route.c:3339,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_route.c:3351,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:3359,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_route.c:3361,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_route.c:3363,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_route.c:3369,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 81
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3371
      start: 3271
    functionDepth: 8
    functionLinenumber: 3271
    functionLinenumberEnd: 3371
    functionName: routeout_process
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - routeout_process_service
    - GF_FEVT_INIT
    - snprintf
    - gf_filter_pid_send_event
    - routeout_send_mabr_manifest
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - routeout_send_lls
    - gf_list_get
    - gf_filter_get_ipid
    - gf_filter_reporting_enabled
    - gf_filter_pid_set_discard
    - gf_filter_connections_pending
    - gf_sys_clock_high_res
    - gf_sys_clock
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - MIN
    - routeout_check_service_updates
    - gf_filter_update_status
    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:3375,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:3376,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_route.c:3377,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3379
      start: 3373
    functionDepth: 0
    functionLinenumber: 3373
    functionLinenumberEnd: 3379
    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:3384,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:3388,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_route.c:3395,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_route.c:3398,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_route.c:3400,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_route.c:3404,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 3
    argNames:
    - filter
    - url
    - mime
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3406
      start: 3380
    functionDepth: 1
    functionLinenumber: 3380
    functionLinenumberEnd: 3406
    functionName: routeout_use_alias
    functionSourceFile: /src/gpac/src/filters/out_route.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_filter_get_udta
    - strcmp
    - strstr
    - strncmp
    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: 3410
      start: 3409
    functionDepth: 0
    functionLinenumber: 3409
    functionLinenumberEnd: 3410
    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:3593,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_route.c:3594,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3597
      start: 3591
    functionDepth: 6
    functionLinenumber: 3591
    functionLinenumberEnd: 3597
    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: 3602
      start: 3599
    functionDepth: 0
    functionLinenumber: 3599
    functionLinenumberEnd: 3602
    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:
    - gf_log_lt
    - gf_log_tool_level_on
    - va_end
    - gf_vfprintf
    - va_start
    - gf_log_va_list
    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_bs_read_u8
    - gf_bs_read_int
    - inspect_printf
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_4cc_to_str
    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_bs_read_u8
    - gf_free
    - gf_malloc
    - GF_LOG
    - memcmp
    - inspect_printf
    - gf_bs_available
    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:
    - inspect_printf
    - GF_4CC
    - gf_4cc_to_str
    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:
    - inspect_printf
    - gf_bs_read_int
    - dump_time_code
    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_bs_inspect_int
    - GF_LOG
    - gf_assert
    - gf_bs_read_int
    - inspect_printf
    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_get_position
    - gf_bs_read_u8
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_seek
    - dump_time_code_hevc
    - dump_mdcv
    - dump_unregistered_sei
    - gf_bs_peek_bits
    - get_sei_name
    - gf_bs_read_int
    - dump_t35
    - gf_bs_read_ue
    - inspect_printf
    - dump_avc_pic_timing
    - gf_bs_available
    - dump_clli
    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:
    - inspect_printf
    - gf_bs_new
    - gf_bs_del
    - gf_bs_seek
    - gf_bs_read_u32
    - 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: 134
    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:1609,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1611,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1616,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1619,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1620,1
    - Dst: dump_sei
      Src: /src/gpac/src/filters/inspect.c:1621,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1622,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1624,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1629,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1631,1
    CyclomaticComplexity: 180
    EdgeCount: 180
    ICount: 630
    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: 1633
      start: 934
    functionDepth: 9
    functionLinenumber: 934
    functionLinenumberEnd: 1633
    functionName: gf_inspect_dump_nalu_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_new
    - gf_bs_del
    - gf_bs_set_logger
    - gf_hevc_read_sps
    - gf_bs_reassign_buffer
    - inspect_printf
    - gf_vvc_parse_nalu_bs
    - inspect_get_nal_size
    - get_hevc_nal_name
    - get_avc_nal_name
    - gf_crc_32
    - gf_fputs
    - gf_hevc_read_vps
    - gf_hevc_parse_nalu
    - gf_hevc_read_pps
    - get_vvc_nal_name
    - gf_hevc_parse_nalu_bs
    - inspect_dump_crypt
    - gf_avc_read_pps_bs
    - gf_avc_read_sps_bs
    - gf_avc_parse_nalu
    - dump_sei
    - gf_vvc_parse_nalu
    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:1637,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filters/inspect.c:1639,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:1640,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:1641,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:1642,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:1643,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1648
      start: 1635
    functionDepth: 1
    functionLinenumber: 1635
    functionLinenumberEnd: 1648
    functionName: inspect_get_analyze_mode
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_sys_get_argc
    - gf_sys_get_arg
    - strncmp
    - strcmp
    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:1654,1
    - Dst: inspect_get_analyze_mode
      Src: /src/gpac/src/filters/inspect.c:1654,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: 1655
      start: 1650
    functionDepth: 10
    functionLinenumber: 1650
    functionLinenumberEnd: 1655
    functionName: gf_inspect_dump_nalu
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - gf_inspect_dump_nalu_internal
    - inspect_get_analyze_mode
    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:1659,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dump
    - idx
    - tile
    argTypes:
    - FILE*
    - u32
    - AV1Tile*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1660
      start: 1657
    functionDepth: 3
    functionLinenumber: 1657
    functionLinenumberEnd: 1660
    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:1674,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1676,1
    - Dst: gf_av1_parse_obu
      Src: /src/gpac/src/filters/inspect.c:1678,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:1681,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1688,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1695,1
    - Dst: gf_av1_get_obu_name
      Src: /src/gpac/src/filters/inspect.c:1695,1
    - Dst: inspect_dump_crypt
      Src: /src/gpac/src/filters/inspect.c:1698,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1702,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1706,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:1706,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1710,1
    - Dst: DUMP_OBU_INT
      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_INT
      Src: /src/gpac/src/filters/inspect.c:1713,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1714,1
    - Dst: DUMP_OBU_INT2
      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_INT2
      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_INT
      Src: /src/gpac/src/filters/inspect.c:1719,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1720,1
    - Dst: DUMP_OBU_INT
      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:1723,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1724,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1725,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1726,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1732,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1735,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1737,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1739,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1740,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1741,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1742,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1743,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1746,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1748,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1749,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1751,1
    - Dst: DUMP_OBU_INT
      Src: /src/gpac/src/filters/inspect.c:1752,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1761,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/inspect.c:1762,1
    - Dst: av1_dump_tile
      Src: /src/gpac/src/filters/inspect.c:1764,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1767,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1769,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1773,1
    - Dst: gf_av1_leb128_read
      Src: /src/gpac/src/filters/inspect.c:1775,1
    - Dst: DUMP_OBU_INT2
      Src: /src/gpac/src/filters/inspect.c:1776,1
    - Dst: dump_time_code
      Src: /src/gpac/src/filters/inspect.c:1779,1
    - Dst: dump_t35
      Src: /src/gpac/src/filters/inspect.c:1782,1
    - Dst: dump_clli
      Src: /src/gpac/src/filters/inspect.c:1785,1
    - Dst: dump_mdcv
      Src: /src/gpac/src/filters/inspect.c:1788,1
    - Dst: dump_unregistered_sei
      Src: /src/gpac/src/filters/inspect.c:1792,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1797,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1805,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: 1808
      start: 1662
    functionDepth: 10
    functionLinenumber: 1662
    functionLinenumberEnd: 1808
    functionName: gf_inspect_dump_obu_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - fprintf
    - av1_dump_tile
    - DUMP_OBU_INT2
    - dump_time_code
    - gf_crc_32
    - dump_mdcv
    - gf_av1_get_obu_name
    - dump_unregistered_sei
    - DUMP_OBU_INT
    - gf_av1_parse_obu
    - gf_bs_new
    - gf_av1_leb128_read
    - gf_bs_del
    - gf_bs_set_logger
    - dump_t35
    - inspect_printf
    - inspect_dump_crypt
    - dump_clli
    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: 1693
      start: 1692
    functionDepth: 0
    functionLinenumber: 1692
    functionLinenumberEnd: 1693
    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: 1694
      start: 1693
    functionDepth: 0
    functionLinenumber: 1693
    functionLinenumberEnd: 1694
    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:1814,1
    - Dst: inspect_get_analyze_mode
      Src: /src/gpac/src/filters/inspect.c:1814,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: 1815
      start: 1810
    functionDepth: 11
    functionLinenumber: 1810
    functionLinenumberEnd: 1815
    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:1823,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:1826,1
    - Dst: gf_media_prores_parse_bs
      Src: /src/gpac/src/filters/inspect.c:1828,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:1829,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1832,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/inspect.c:1832,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1835,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:1840,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:1841,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1846,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1847,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:1852,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1853,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:1858,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1859,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1860,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: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:1874,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1875,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: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:1884,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1885,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:1890,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1891,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1892,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:1897,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1898,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1899,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1900,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1903,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1906,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1907,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1908,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1909,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1911,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1914,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:1914,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1917,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1920,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1922,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1925,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1928,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1931,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1934,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1937,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1939,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: 1941
      start: 1817
    functionDepth: 3
    functionLinenumber: 1817
    functionLinenumberEnd: 1941
    functionName: gf_inspect_dump_prores_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_media_prores_parse_bs
    - gf_crc_32
    - gf_bs_new
    - gf_bs_del
    - inspect_printf
    - gf_bs_reassign_buffer
    - gf_4cc_to_str
    - gf_error_to_string
    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:1947,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: 1948
      start: 1943
    functionDepth: 4
    functionLinenumber: 1943
    functionLinenumberEnd: 1948
    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:1962,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1965,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:1970,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1972,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1975,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1976,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/inspect.c:1978,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1979,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1981,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1983,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:1983,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:1985,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:1990,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: 1996
      start: 1950
    functionDepth: 3
    functionLinenumber: 1950
    functionLinenumberEnd: 1996
    functionName: gf_inspect_dump_opus_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_crc_32
    - GF_LOG
    - gf_opus_parse_packet_header
    - inspect_printf
    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:2002,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: 2003
      start: 1998
    functionDepth: 4
    functionLinenumber: 1998
    functionLinenumberEnd: 2003
    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:2053,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2054,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2055,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2056,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2057,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2059,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2060,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2062,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2063,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2064,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2065,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2066,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2067,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 3
    argNames:
    - dump
    - bs
    - indent
    argTypes:
    - FILE*
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2068
      start: 2050
    functionDepth: 5
    functionLinenumber: 2050
    functionLinenumberEnd: 2068
    functionName: dump_mha_config
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    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:2072,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2073,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2074,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2075,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - dump
    - bs
    - indent
    argTypes:
    - FILE*
    - GF_BitStream*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 2069
    functionDepth: 5
    functionLinenumber: 2069
    functionLinenumberEnd: 2076
    functionName: gf_inspect_dump_mha_frame
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    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:2080,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2083,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:2085,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2089,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2090,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2091,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/inspect.c:2093,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2100,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2102,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2105,1
    - Dst: dump_mha_config
      Src: /src/gpac/src/filters/inspect.c:2106,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2107,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2110,1
    - Dst: gf_inspect_dump_mha_frame
      Src: /src/gpac/src/filters/inspect.c:2111,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2112,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2115,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2116,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2116,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2118,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2121,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2124,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2124,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2127,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/inspect.c:2127,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2131,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2133,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2133,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2134,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2137,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/inspect.c:2140,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2141,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2143,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2146,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: 2147
      start: 2077
    functionDepth: 7
    functionLinenumber: 2077
    functionLinenumberEnd: 2147
    functionName: gf_inspect_dump_mhas
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_align
    - GF_ARRAY_LENGTH
    - gf_mpegh_escaped_value
    - gf_bs_read_int
    - dump_mha_config
    - inspect_printf
    - gf_bs_reassign_buffer
    - gf_inspect_dump_mha_frame
    - gf_bs_available
    - gf_bs_skip_bytes
    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:2155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:2158,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/inspect.c:2170,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/inspect.c:2171,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/inspect.c:2172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2175,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/inspect.c:2177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2178,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/inspect.c:2178,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/inspect.c:2184,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2186,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: 2189
      start: 2152
    functionDepth: 5
    functionLinenumber: 2152
    functionLinenumberEnd: 2189
    functionName: finalize_dump
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_feof
    - gf_fclose
    - GF_LOG
    - gf_fwrite
    - gf_fseek
    - gf_fread
    - gf_list_get
    - 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:2195,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:2197,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_InspectCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2202
      start: 2193
    functionDepth: 1
    functionLinenumber: 2193
    functionLinenumberEnd: 2202
    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:2207,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2212,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2213,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2214,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/inspect.c:2216,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2220,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:2220,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/inspect.c:2221,1
    - Dst: inspect_dump_stats
      Src: /src/gpac/src/filters/inspect.c:2230,1
    - Dst: next_service_to_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: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2236,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2237,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2238,1
    - Dst: finalize_dump
      Src: /src/gpac/src/filters/inspect.c:2239,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:2245,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/inspect.c:2246,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2249,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2250,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2251,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:2253,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/inspect.c:2254,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2255,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/inspect.c:2258,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:2259,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2260,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/inspect.c:2262,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2265,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/inspect.c:2269,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/inspect.c:2270,1
    - Dst: gf_ferror
      Src: /src/gpac/src/filters/inspect.c:2271,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/inspect.c:2274,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 70
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2277
      start: 2204
    functionDepth: 6
    functionLinenumber: 2204
    functionLinenumberEnd: 2277
    functionName: inspect_finalize
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_ferror
    - gf_odf_vp_cfg_del
    - gf_bs_del
    - inspect_printf
    - gf_odf_av1_cfg_del
    - finalize_dump
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_fopen
    - gf_fflush
    - inspect_dump_stats
    - strcmp
    - gf_av1_reset_state
    - gf_fclose
    - gf_free
    - next_service_to_dump
    - gf_list_del
    - gf_sys_is_cov_mode
    linkageType: ''
    returnType: void
    signature: void inspect_finalize(GF_Filter *filter)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2285,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2287,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2290,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:2292,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2295,1
    - Dst: atoi
      Src: /src/gpac/src/filters/inspect.c:2299,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2301,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2302,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:2307,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2308,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2310,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2311,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2313,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2316,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2317,1
    - Dst: DUMP_ATT_FRAC
      Src: /src/gpac/src/filters/inspect.c:2319,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2323,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2325,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: 2327
      start: 2279
    functionDepth: 5
    functionLinenumber: 2279
    functionLinenumberEnd: 2327
    functionName: dump_temi_loc
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - atoi
    - gf_bs_new
    - DUMP_ATT_D
    - gf_bs_read_int
    - DUMP_ATT_FRAC
    - inspect_printf
    - gf_bs_reassign_buffer
    - DUMP_ATT_STR
    - gf_bs_read_u32
    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:2334,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2336,1
    - Dst: atoi
      Src: /src/gpac/src/filters/inspect.c:2338,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2340,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:2342,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2344,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2345,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2346,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/inspect.c:2347,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2348,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/inspect.c:2349,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2350,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2352,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2353,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2355,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2356,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2358,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2359,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2361,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2362,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/inspect.c:2365,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2366,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2369,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2371,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: 2373
      start: 2329
    functionDepth: 5
    functionLinenumber: 2329
    functionLinenumberEnd: 2373
    functionName: dump_temi_time
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - atoi
    - DUMP_ATT_LLU
    - gf_bs_read_u64
    - gf_bs_new
    - DUMP_ATT_D
    - gf_bs_read_int
    - inspect_printf
    - gf_bs_reassign_buffer
    - gf_bs_read_u32
    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:2377,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2378,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2380,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2381,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2382,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2384,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - dump
    - bs
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2387
      start: 2375
    functionDepth: 6
    functionLinenumber: 2375
    functionLinenumberEnd: 2387
    functionName: scte35_parse_splice_time
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 2
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    - DUMP_ATT_LLU
    - gf_bs_read_long_int
    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:2391,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2393,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2393,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2394,1
    - Dst: inspect_printf
      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:2396,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2397,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: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2401,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:2403,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2404,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2406,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2406,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2407,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2407,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2408,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2408,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2409,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2411,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2414,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2415,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2417,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2417,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2418,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2419,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2419,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: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2424,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2424,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2427,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2428,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2429,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2430,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2432,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2433,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2434,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2434,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:2439,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2439,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2440,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2440,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2443,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2447,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2448,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2450,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2452,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2452,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2453,1
    - Dst: EIDR
      Src: /src/gpac/src/filters/inspect.c:2463,1
    - Dst: EIDR
      Src: /src/gpac/src/filters/inspect.c:2465,1
    - Dst: Id
      Src: /src/gpac/src/filters/inspect.c:2467,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2472,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2475,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2477,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2479
      start: 2389
    functionDepth: 7
    functionLinenumber: 2389
    functionLinenumberEnd: 2479
    functionName: scte35_parse_segmentation_descriptor
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_get_position
    - EIDR
    - Id
    - gf_bs_seek
    - gf_bs_read_long_int
    - gf_bs_read_int
    - inspect_printf
    - gf_bs_read_u32
    - 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:2483,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2486,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2489,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:2492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2493,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2497,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2499,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2499,1
    - Dst: scte35_parse_segmentation_descriptor
      Src: /src/gpac/src/filters/inspect.c:2507,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2514
      start: 2481
    functionDepth: 8
    functionLinenumber: 2481
    functionLinenumberEnd: 2514
    functionName: scte35_parse_splice_descriptor
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - GF_LOG
    - scte35_parse_segmentation_descriptor
    - gf_4cc_to_str
    - gf_bs_read_u32
    - 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:2518,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2520,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2521,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2522,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2524,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2525,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2527,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/inspect.c:2529,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2530,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2531,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2535,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2536,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2537,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2539,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2540,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2541,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2546,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2548,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2550,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2556,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2557,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:2558,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2560,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2562,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2563,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2564,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2569,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2570,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2571,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: 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: DUMP_ATT_BOOL
      Src: /src/gpac/src/filters/inspect.c:2581,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2582,1
    - Dst: DUMP_ATT_BOOL
      Src: /src/gpac/src/filters/inspect.c:2583,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2584,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2585,1
    - Dst: scte35_parse_splice_time
      Src: /src/gpac/src/filters/inspect.c:2588,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2592,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:2593,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2595,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2596,1
    - Dst: scte35_parse_splice_time
      Src: /src/gpac/src/filters/inspect.c:2598,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2600,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2605,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2606,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2607,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/inspect.c:2608,1
    - Dst: DUMP_ATT_LLU
      Src: /src/gpac/src/filters/inspect.c:2609,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2610,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2612,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2613,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:2614,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2616,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2618,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2620,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2624,1
    - Dst: scte35_parse_splice_time
      Src: /src/gpac/src/filters/inspect.c:2625,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2626,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2629,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:2630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2631,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2632,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2636,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2637,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2641,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2642,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2646,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2647,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2650,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:2651,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/inspect.c:2652,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:2656,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2656,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2659,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:2660,1
    - Dst: scte35_parse_splice_descriptor
      Src: /src/gpac/src/filters/inspect.c:2662,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:2666,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2670,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 112
    argCount: 3
    argNames:
    - ctx
    - dump
    - bs
    argTypes:
    - GF_InspectCtx*
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2671
      start: 2516
    functionDepth: 9
    functionLinenumber: 2516
    functionLinenumberEnd: 2671
    functionName: scte35_dump
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_bs_get_size
    - gf_assert
    - gf_bs_seek
    - inspect_printf
    - gf_bs_skip_bytes
    - scte35_parse_splice_time
    - DUMP_ATT_U
    - scte35_parse_splice_descriptor
    - DUMP_ATT_BOOL
    - gf_bs_read_int
    - DUMP_ATT_D
    - gf_bs_read_u32
    - DUMP_ATT_STR
    - gf_bs_read_u16
    - DUMP_ATT_LLU
    - GF_LOG
    - gf_bs_read_long_int
    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:2677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2678
      start: 2673
    functionDepth: 10
    functionLinenumber: 2673
    functionLinenumberEnd: 2678
    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:2683,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2685,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2689,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:2691,1
    - Dst: scte35_dump
      Src: /src/gpac/src/filters/inspect.c:2693,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2696,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2698,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: 2700
      start: 2680
    functionDepth: 10
    functionLinenumber: 2680
    functionLinenumberEnd: 2700
    functionName: dump_scte35_info_m2ts_section
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_reassign_buffer
    - scte35_dump
    - gf_bs_new
    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:2708,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2709,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2710,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2711,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2712,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2713,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2715,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:2718,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2719,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2720,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:2721,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2722,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2723,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2724,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2725,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:2726,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2727,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2729,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - dump
    - bs
    argTypes:
    - FILE*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2730
      start: 2703
    functionDepth: 5
    functionLinenumber: 2703
    functionLinenumberEnd: 2730
    functionName: gf_inspect_dump_truehd_frame
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - inspect_printf
    - gf_bs_read_int
    - gf_bs_read_u32
    - 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:2738,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2741,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2743,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:2743,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:2750,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:2770,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:2779,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:2780,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:2782,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/inspect.c:2783,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:2783,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2792,1
    - Dst: dump_clli
      Src: /src/gpac/src/filters/inspect.c:2793,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:2794,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:2798,1
    - Dst: dump_mdcv
      Src: /src/gpac/src/filters/inspect.c:2800,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:2801,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:2814,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2817,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/inspect.c:2817,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2819,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2829,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/inspect.c:2835,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2836,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2838,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2843,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2845,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2847,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2854,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2856,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2858,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:2898,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2906,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/inspect.c:2906,1
    - Dst: strpbrk
      Src: /src/gpac/src/filters/inspect.c:2908,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/inspect.c:2910,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2918,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2920,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2920,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2922,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2927,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/filters/inspect.c:2928,1
    - Dst: gf_xml_dump_string
      Src: /src/gpac/src/filters/inspect.c:2931,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2933,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:2933,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:2935,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2936,1
    - Dst: dump_scte35_info_m2ts_section
      Src: /src/gpac/src/filters/inspect.c:2937,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_dump
      Src: /src/gpac/src/filters/inspect.c:2943,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2947,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2947,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/inspect.c:2947,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2949,1
    - Dst: dump_scte35_info_m2ts_section
      Src: /src/gpac/src/filters/inspect.c:2950,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2952,1
    - Dst: dump_temi_loc
      Src: /src/gpac/src/filters/inspect.c:2953,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:2955,1
    - Dst: dump_temi_time
      Src: /src/gpac/src/filters/inspect.c:2956,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2960,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2960,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2966,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2968,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:2968,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2970,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2976,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2977,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2980,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:2980,1
    - Dst: format_duration
      Src: /src/gpac/src/filters/inspect.c:2983,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:2985,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: 2987
      start: 2733
    functionDepth: 11
    functionLinenumber: 2733
    functionLinenumberEnd: 2987
    functionName: inspect_dump_property
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - format_duration
    - strncmp
    - gf_bs_new
    - gf_bs_del
    - dump_temi_time
    - inspect_printf
    - strstr
    - dump_scte35_info_m2ts_section
    - gf_xml_dump_string
    - gf_sys_is_test_mode
    - memcpy
    - dump_clli
    - dump_mdcv
    - strnicmp
    - gf_props_dump
    - strcmp
    - gf_free
    - dump_temi_loc
    - strpbrk
    - gf_props_get_type_name
    - gf_strdup
    - gf_props_4cc_get_name
    - gf_4cc_to_str
    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:2995,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/inspect.c:2998,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3008,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3014,1
    - Dst: strchr
      Src: /src/gpac/src/filters/inspect.c:3018,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3020,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3028,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3028,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3028,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3029,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3029,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3030,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3030,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3031,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3037,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3037,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3038,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3039,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3040,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3041,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3043,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3044,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3045,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3046,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3048,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3049,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3050,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3051,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3055,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3059,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3060,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3061,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3062,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3066,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3070,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3071,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3072,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3074,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3075,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3078,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3078,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3078,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3079,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/inspect.c:3081,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3082,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3083,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3084,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3085,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3087,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3087,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3088,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3090,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3092,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3095,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3095,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/inspect.c:3095,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3096,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3096,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/inspect.c:3096,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3097,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3097,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/inspect.c:3097,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3098,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/inspect.c:3099,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3100,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3101,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: gf_filter_pck_get_roll_info
      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_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:3104,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: gf_filter_pck_get_carousel_version
      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: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3107,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3108,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3108,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:3108,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3109,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3109,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3109,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3110,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3110,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3111,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/inspect.c:3113,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3115,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3119,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3123,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3124,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3126,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3128,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3129,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3132,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3134,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3135,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3138,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3140,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3141,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: strcmp
      Src: /src/gpac/src/filters/inspect.c:3145,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3145,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3145,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3146,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3147,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3149,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3150,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/inspect.c:3152,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3160,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3160,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3161,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3163,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3166,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:3167,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3168,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3169,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3169,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3169,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/inspect.c:3173,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:3175,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/inspect.c:3176,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:3186,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/inspect.c:3187,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3188,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3189,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3192,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3193,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3198,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3200,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3202,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3205,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3208,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/inspect.c:3212,1
    - Dst: strlen
      Src: /src/gpac/src/filters/inspect.c:3213,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:3213,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:3216,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/inspect.c:3218,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3221,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:3221,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3223,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3226,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3227,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/inspect.c:3227,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:3229,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3230,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3234,1
    - Dst: gf_format_timecode
      Src: /src/gpac/src/filters/inspect.c:3234,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3236,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/inspect.c:3241,1
    - Dst: strlen
      Src: /src/gpac/src/filters/inspect.c:3242,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:3242,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3245,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/inspect.c:3247,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3250,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/inspect.c:3250,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3252,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: 3259
      start: 2989
    functionDepth: 3
    functionLinenumber: 2989
    functionLinenumberEnd: 3259
    functionName: inspect_dump_packet_fmt
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_get_dependency_flags
    - gf_filter_get_name
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_clock_type
    - gf_filter_pid_get_timescale
    - gf_filter_pck_get_duration
    - gf_assert
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_crypt_flags
    - gf_props_get_id
    - inspect_printf
    - gf_filter_pck_get_framing
    - strchr
    - gf_crc_32
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_format_timecode
    - gf_filter_pck_get_dts
    - gf_filter_pck_get_property_str
    - gf_utf8_is_legal
    - gf_filter_pid_get_clock_info
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_carousel_version
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_filter_pck_get_roll_info
    - strlen
    - gf_props_dump
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_get_property
    - GF_4CC
    - gf_filter_pck_get_timescale
    - strncmp
    - gf_filter_pck_get_corrupted
    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: 3273
      start: 3265
    functionDepth: 0
    functionLinenumber: 3265
    functionLinenumberEnd: 3273
    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:3281,1
    - Dst: gf_m4v_parser_set_inspect
      Src: /src/gpac/src/filters/inspect.c:3283,1
    - Dst: gf_m4v_parse_frame
      Src: /src/gpac/src/filters/inspect.c:3287,1
    - Dst: gf_m4v_parser_get_obj_type
      Src: /src/gpac/src/filters/inspect.c:3291,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3293,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3297,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:3304,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3306,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3311,1
    - Dst: get_frame_type_name
      Src: /src/gpac/src/filters/inspect.c:3311,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:3322,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3325,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3330,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3332,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3335,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3339,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3342,1
    - Dst: get_frame_type_name
      Src: /src/gpac/src/filters/inspect.c:3342,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3345,1
    - Dst: gf_m4v_get_object_start
      Src: /src/gpac/src/filters/inspect.c:3348,1
    - Dst: dump_udta_m2v
      Src: /src/gpac/src/filters/inspect.c:3350,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3355,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/inspect.c:3358,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 70
    argCount: 4
    argNames:
    - pctx
    - data
    - size
    - dump
    argTypes:
    - PidCtx*
    - char*
    - u32
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3359
      start: 3274
    functionDepth: 4
    functionLinenumber: 3274
    functionLinenumberEnd: 3359
    functionName: inspect_dump_mpeg124
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - dump_udta_m2v
    - gf_m4v_get_object_start
    - inspect_printf
    - gf_m4v_parser_set_inspect
    - gf_m4v_parser_new
    - gf_m4v_parser_get_obj_type
    - get_frame_type_name
    - gf_m4v_parser_del
    - gf_m4v_parse_frame
    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:3377,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3380,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:3383,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:3384,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3393,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:3396,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:3397,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:3398,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:3399,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:3400,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3458,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/inspect.c:3460,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:3462,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: 3463
      start: 3362
    functionDepth: 7
    functionLinenumber: 3362
    functionLinenumberEnd: 3463
    functionName: inspect_format_tmcd_internal
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - sprintf
    - gf_bs_seek
    - inspect_printf
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_read_u32
    - 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:3469,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: 3470
      start: 3466
    functionDepth: 8
    functionLinenumber: 3466
    functionLinenumberEnd: 3470
    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:3475,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: 3476
      start: 3473
    functionDepth: 8
    functionLinenumber: 3473
    functionLinenumberEnd: 3476
    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:3481,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:3483,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/inspect.c:3485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:3487,1
    - Dst: gf_isom_box_dump
      Src: /src/gpac/src/filters/inspect.c:3490,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/inspect.c:3492,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:3495,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: 3497
      start: 3478
    functionDepth: 4
    functionLinenumber: 3478
    functionLinenumberEnd: 3497
    functionName: inspect_dump_boxes
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_bs_available
    - gf_isom_box_parse
    - gf_bs_new
    - gf_bs_del
    - gf_isom_box_del
    - gf_isom_box_dump
    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:3506,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3512,1
    - Dst: gf_vp9_parse_superframe
      Src: /src/gpac/src/filters/inspect.c:3516,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3518,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3520,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3521,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3525,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:3527,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/inspect.c:3530,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3533,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3535,1
    - Dst: gf_vp9_parse_sample
      Src: /src/gpac/src/filters/inspect.c:3536,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3537,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3540,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/inspect.c:3541,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3543,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/inspect.c:3543,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3547,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3552,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3553,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: 3554
      start: 3499
    functionDepth: 7
    functionLinenumber: 3499
    functionLinenumberEnd: 3554
    functionName: inspect_dump_vpx
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_seek
    - gf_assert
    - gf_bs_set_logger
    - gf_vp9_parse_superframe
    - inspect_printf
    - gf_bs_reassign_buffer
    - gf_vp9_parse_sample
    - gf_error_to_string
    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:3561,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3562,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3567,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3569,1
    - Dst: memset
      Src: /src/gpac/src/filters/inspect.c:3570,1
    - Dst: gf_ac3_parser_bs
      Src: /src/gpac/src/filters/inspect.c:3571,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3573,1
    - Dst: gf_ac3_get_bitrate
      Src: /src/gpac/src/filters/inspect.c:3573,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3575,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3579,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:3580,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: 3581
      start: 3556
    functionDepth: 3
    functionLinenumber: 3556
    functionLinenumberEnd: 3581
    functionName: inspect_dump_ac3_eac3
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - memset
    - gf_bs_new
    - gf_bs_set_logger
    - inspect_printf
    - gf_bs_reassign_buffer
    - gf_ac3_get_bitrate
    - gf_ac3_parser_bs
    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:3594,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:3595,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/inspect.c:3597,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3600,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3603,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3605,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3609,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3610,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3611,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3613,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3614,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3616,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3617,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3619,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3621,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3623,1
    - Dst: gf_filter_pck_get_interlaced
      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_corrupted
      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_seek_flag
      Src: /src/gpac/src/filters/inspect.c:3629,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3630,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:3631,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3632,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/inspect.c:3633,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3634,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3636,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3638,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: 3639
      start: 3585
    functionDepth: 3
    functionLinenumber: 3585
    functionLinenumberEnd: 3639
    functionName: inspect_dump_packet_as_info
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_seek_flag
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_carousel_version
    - inspect_printf
    - gf_filter_pck_get_frame_interface
    - 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:3656,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/inspect.c:3660,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/inspect.c:3661,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:3663,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/inspect.c:3665,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3669,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3671,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3673,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3676,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3678,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:3681,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3683,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3684,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3689,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3690,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:3695,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3696,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3697,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3698,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3699,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:3701,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3702,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:3705,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3706,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3709,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:3709,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3710,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3712,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3714,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/inspect.c:3714,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:3716,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/inspect.c:3716,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:3717,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/inspect.c:3717,1
    - Dst: DUMP_ATT_D
      Src: /src/gpac/src/filters/inspect.c:3718,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/inspect.c:3718,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/inspect.c:3720,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3721,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3724,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/inspect.c:3724,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3725,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:3725,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3726,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/inspect.c:3726,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3729,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/inspect.c:3731,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3732,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3733,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3734,1
    - Dst: DUMP_ATT_U
      Src: /src/gpac/src/filters/inspect.c:3735,1
    - Dst: DUMP_ATT_STR
      Src: /src/gpac/src/filters/inspect.c:3740,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3742,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3744,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3749,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3751,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/filters/inspect.c:3756,1
    - Dst: GF_FilterFrameInterface*::get_gl_texture
      Src: /src/gpac/src/filters/inspect.c:3758,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3760,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3761,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/inspect.c:3765,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3770,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3774,1
    - Dst: DUMP_ATT_X
      Src: /src/gpac/src/filters/inspect.c:3777,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/inspect.c:3777,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3783,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/inspect.c:3790,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3792,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3795,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:3797,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3804,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3808,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/inspect.c:3815,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/inspect.c:3817,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:3819,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3829,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3830,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3841,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3849,1
    - Dst: inspect_get_nal_size
      Src: /src/gpac/src/filters/inspect.c:3852,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3856,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3859,1
    - Dst: gf_inspect_dump_nalu_internal
      Src: /src/gpac/src/filters/inspect.c:3860,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3869,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/inspect.c:3872,1
    - Dst: gf_inspect_dump_obu_internal
      Src: /src/gpac/src/filters/inspect.c:3883,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3886,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3890,1
    - Dst: inspect_dump_mpeg124
      Src: /src/gpac/src/filters/inspect.c:3910,1
    - Dst: gf_mp3_get_next_header_mem
      Src: /src/gpac/src/filters/inspect.c:3917,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3919,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/filters/inspect.c:3922,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3923,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/filters/inspect.c:3923,1
    - Dst: gf_mp3_version
      Src: /src/gpac/src/filters/inspect.c:3923,1
    - Dst: gf_mp3_bit_rate
      Src: /src/gpac/src/filters/inspect.c:3923,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/filters/inspect.c:3923,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/filters/inspect.c:3923,1
    - Dst: gf_mp3_sampling_rate
      Src: /src/gpac/src/filters/inspect.c:3923,1
    - Dst: inspect_dump_tmcd
      Src: /src/gpac/src/filters/inspect.c:3930,1
    - Dst: inspect_dump_boxes
      Src: /src/gpac/src/filters/inspect.c:3933,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:3937,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3938,1
    - Dst: scte35_dump
      Src: /src/gpac/src/filters/inspect.c:3939,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3940,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:3941,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3946,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3958,1
    - Dst: gf_fputc
      Src: /src/gpac/src/filters/inspect.c:3960,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:3963,1
    - Dst: gf_webvtt_parse_cues_from_data
      Src: /src/gpac/src/filters/inspect.c:3967,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:3968,1
    - Dst: gf_list_pop_front
      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_fprintf
      Src: /src/gpac/src/filters/inspect.c:3972,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3973,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3974,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/inspect.c:3975,1
    - Dst: gf_webvtt_cue_del
      Src: /src/gpac/src/filters/inspect.c:3977,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/inspect.c:3979,1
    - Dst: gf_inspect_dump_prores_internal
      Src: /src/gpac/src/filters/inspect.c:3988,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:3992,1
    - Dst: gf_inspect_dump_mha_frame
      Src: /src/gpac/src/filters/inspect.c:3993,1
    - Dst: gf_inspect_dump_mhas
      Src: /src/gpac/src/filters/inspect.c:3997,1
    - Dst: inspect_dump_vpx
      Src: /src/gpac/src/filters/inspect.c:4002,1
    - Dst: inspect_dump_ac3_eac3
      Src: /src/gpac/src/filters/inspect.c:4007,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4010,1
    - Dst: gf_inspect_dump_truehd_frame
      Src: /src/gpac/src/filters/inspect.c:4011,1
    - Dst: gf_inspect_dump_opus_internal
      Src: /src/gpac/src/filters/inspect.c:4014,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4018,1
    - Dst: inspect_printf
      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:4029,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4031,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4032,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:4034,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4036,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4046,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: 4047
      start: 3641
    functionDepth: 12
    functionLinenumber: 3641
    functionLinenumberEnd: 4047
    functionName: inspect_dump_packet
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_dependency_flags
    - gf_mp3_sampling_rate
    - gf_filter_pck_get_interlaced
    - inspect_dump_tmcd
    - gf_list_count
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_duration
    - inspect_dump_property
    - gf_mp3_layer
    - gf_fputc
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_inspect_dump_mhas
    - gf_filter_pck_get_crypt_flags
    - gf_bs_del
    - gf_webvtt_cue_del
    - gf_inspect_dump_truehd_frame
    - inspect_printf
    - gf_bs_reassign_buffer
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_frame_interface
    - inspect_get_nal_size
    - gf_inspect_dump_obu_internal
    - gf_list_pop_front
    - gf_crc_32
    - gf_mp3_num_channels
    - DUMP_ATT_U
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - inspect_dump_boxes
    - gf_mp3_window_size
    - gf_filter_pck_get_dts
    - gf_inspect_dump_opus_internal
    - gf_filter_pck_enum_properties
    - inspect_dump_vpx
    - gf_mx_init
    - gf_inspect_dump_nalu_internal
    - gf_webvtt_parse_cues_from_data
    - GF_FilterFrameInterface*::get_gl_texture
    - gf_filter_pck_get_cts
    - DUMP_ATT_D
    - gf_filter_pck_get_carousel_version
    - GF_FilterFrameInterface*::get_plane
    - gf_inspect_dump_prores_internal
    - gf_filter_pck_get_roll_info
    - gf_fprintf
    - DUMP_ATT_STR
    - gf_inspect_dump_mha_frame
    - gf_mp3_frame_size
    - inspect_dump_ac3_eac3
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_get_property
    - gf_list_del
    - gf_mp3_bit_rate
    - inspect_dump_mpeg124
    - gf_mp3_version
    - inspect_dump_packet_as_info
    - scte35_dump
    - get_and_print
    - DUMP_ATT_X
    - gf_mp3_get_next_header_mem
    - strncmp
    - gf_filter_pck_get_corrupted
    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: 4024
      start: 4021
    functionDepth: 0
    functionLinenumber: 4021
    functionLinenumberEnd: 4024
    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: 4060
      start: 4049
    functionDepth: 0
    functionLinenumber: 4049
    functionLinenumberEnd: 4060
    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:4065,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4069,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4073,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4077,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4078,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/inspect.c:4082,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4085,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 25
    argCount: 2
    argNames:
    - pctx
    - keep_parser_address
    argTypes:
    - PidCtx*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4086
      start: 4062
    functionDepth: 2
    functionLinenumber: 4062
    functionLinenumberEnd: 4086
    functionName: inspect_reset_parsers
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_odf_av1_cfg_del
    - gf_free
    - gf_odf_vp_cfg_del
    - gf_m4v_parser_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:4093,1
    - Dst: gf_format_duration
      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:4109,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4111,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4114,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: 4115
      start: 4089
    functionDepth: 3
    functionLinenumber: 4089
    functionLinenumberEnd: 4115
    functionName: format_duration
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 9
    functionsReached:
    - inspect_printf
    - gf_format_duration
    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:4130,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4132,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4133,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4134,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: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4144,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4146,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4150,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4153,1
    - Dst: gf_stream_type_short_name
      Src: /src/gpac/src/filters/inspect.c:4153,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4157,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4160,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/inspect.c:4161,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4162,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/inspect.c:4163,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4164,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/inspect.c:4165,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4168,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4169,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4171,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4173,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:4177,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/inspect.c:4178,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4178,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4180,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4182,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4183,1
    - Dst: format_duration
      Src: /src/gpac/src/filters/inspect.c:4184,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4187,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:4190,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4192,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4193,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4195,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4199,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4206,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4208,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4209,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4210,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4211,1
    - Dst: gf_media_get_reduced_frame_rate
      Src: /src/gpac/src/filters/inspect.c:4215,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4216,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4217,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4220,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4222,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4224,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4226,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4227,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/inspect.c:4227,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4232,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:4235,1
    - Dst: gf_audio_fmt_get_layout_name
      Src: /src/gpac/src/filters/inspect.c:4235,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_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4241,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4242,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/inspect.c:4242,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4246,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4248,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4249,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4251,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4252,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4256,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4257,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/inspect.c:4257,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4258,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4260,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4263,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/inspect.c:4265,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4267,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4270,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4271,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4273,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4278,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4279,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4280,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:4282,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4283,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4295,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4297,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4299,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4300,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4301,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:4303,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4308,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4310,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4311,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4315,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4317,1
    - Dst: gf_hevc_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4317,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4317,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4319,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4322,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4324,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4328,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4330,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4331,1
    - Dst: gf_hevc_parse_nalu
      Src: /src/gpac/src/filters/inspect.c:4333,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4336,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4341,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4344,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4349,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4351,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4353,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4354,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4355,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4358,1
    - Dst: gf_avc_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4358,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4358,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4359,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4362,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4363,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4366,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4368,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/inspect.c:4369,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4370,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/inspect.c:4372,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4373,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4380,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4382,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4384,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4387,1
    - Dst: gf_vvc_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4387,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4387,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4389,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4391,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4397,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4398,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4400,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4402,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4403,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4404,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4405,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4406,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4408,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4412,1
    - Dst: gf_m4a_get_config
      Src: /src/gpac/src/filters/inspect.c:4418,1
    - Dst: gf_m4a_object_type_name
      Src: /src/gpac/src/filters/inspect.c:4431,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:4432,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4435,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4436,1
    - Dst: gf_m4a_object_type_name
      Src: /src/gpac/src/filters/inspect.c:4436,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4437,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4439,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4442,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/inspect.c:4445,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4446,1
    - Dst: gf_m4v_get_profile_name
      Src: /src/gpac/src/filters/inspect.c:4446,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4447,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4447,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4448,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: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4458,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4460,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4463,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:4463,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4465,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4466,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4468,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4469,1
    - Dst: gf_avc_hevc_get_chroma_format_name
      Src: /src/gpac/src/filters/inspect.c:4469,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4471,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4472,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: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4479,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4481,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4484,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4486,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:4488,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filters/inspect.c:4489,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:4490,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4492,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4494,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4495,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4496,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4497,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4498,1
    - Dst: gf_odf_ac3_cfg_parse
      Src: /src/gpac/src/filters/inspect.c:4504,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4506,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4510,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4512,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: 4513
      start: 4118
    functionDepth: 8
    functionLinenumber: 4118
    functionLinenumberEnd: 4513
    functionName: inspect_dump_pid_as_info
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_vvc_get_profile_name
    - gf_odf_dovi_cfg_del
    - gf_codecid_name
    - format_duration
    - gf_odf_vvc_cfg_read
    - gf_audio_fmt_name
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - inspect_printf
    - gf_odf_av1_cfg_del
    - gf_odf_av1_cfg_read
    - gf_odf_vvc_cfg_del
    - strstr
    - gf_m4v_get_config
    - gf_odf_hevc_cfg_del
    - gf_hevc_get_profile_name
    - gf_stream_type_short_name
    - gf_filter_pid_get_rfc_6381_codec_string
    - gf_odf_hevc_cfg_read
    - gf_odf_ac3_cfg_parse
    - gf_audio_fmt_get_layout_name
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_hevc_parse_nalu
    - gf_m4a_get_config
    - gf_media_get_reduced_frame_rate
    - strrchr
    - gf_avc_get_profile_name
    - strcmp
    - gf_avc_hevc_get_chroma_format_name
    - gf_odf_avc_cfg_del
    - gf_odf_dovi_cfg_read_bs
    - gf_avc_read_sps
    - gf_m4a_object_type_name
    - gf_pixel_fmt_name
    - gf_free
    - gf_m4v_get_profile_name
    - gf_filter_release_property
    - stricmp
    - GF_4CC
    - gf_filter_pid_get_info
    - gf_4cc_to_str
    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:4535,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:4536,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/inspect.c:4537,1
    - Dst: inspect_dump_pid_as_info
      Src: /src/gpac/src/filters/inspect.c:4544,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4557,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:4557,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4560,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: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:4565,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4567,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:4567,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4569,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4570,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/inspect.c:4578,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:4580,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4583,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4585,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:4587,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4593,1
    - Dst: gf_filter_pid_get_rfc_6381_codec_string
      Src: /src/gpac/src/filters/inspect.c:4597,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:4601,1
    - Dst: gf_filter_pid_enum_info
      Src: /src/gpac/src/filters/inspect.c:4608,1
    - Dst: inspect_dump_property
      Src: /src/gpac/src/filters/inspect.c:4610,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4616,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4621,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4623,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4628,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:4629,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4646,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4649,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4654,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4657,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4658,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:4665,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4671,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4679,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: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4684,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4685,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4689,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4696,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4699,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4705,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:4716,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4722,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4728,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4729,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4732,1
    - Dst: gf_list_get
      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: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4739,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4741,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4746,1
    - Dst: gf_list_get
      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: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4753,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4755,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4760,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4766,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4769,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4774,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4778,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4784,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4785,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4788,1
    - Dst: gf_list_get
      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: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4801,1
    - Dst: DUMP_ARRAY
      Src: /src/gpac/src/filters/inspect.c:4803,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4808,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4813,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:4815,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/inspect.c:4817,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4821,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/inspect.c:4825,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4826,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4827,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4828,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:4832,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:4836,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:4839,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4841,1
    - Dst: gf_inspect_dump_obu_internal
      Src: /src/gpac/src/filters/inspect.c:4843,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4848,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4861,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4864,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4867,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4868,1
    - Dst: inspect_dump_mpeg124
      Src: /src/gpac/src/filters/inspect.c:4870,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4872,1
    - Dst: gf_m4v_parser_del
      Src: /src/gpac/src/filters/inspect.c:4874,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4883,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4888,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4891,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4892,1
    - Dst: gf_fputc
      Src: /src/gpac/src/filters/inspect.c:4894,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4896,1
    - Dst: gf_odf_tx3g_read
      Src: /src/gpac/src/filters/inspect.c:4900,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4902,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4905,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4906,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4907,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4908,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4910,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4912,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/inspect.c:4913,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4922,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4925,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4926,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4928,1
    - Dst: gf_fputc
      Src: /src/gpac/src/filters/inspect.c:4930,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4933,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4934,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4942,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4947,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:4953,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:4955,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4957,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4958,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4959,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:4959,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4960,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:4960,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4961,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/inspect.c:4961,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/inspect.c:4962,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4964,1
    - Dst: dump_mha_config
      Src: /src/gpac/src/filters/inspect.c:4966,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4968,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4970,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4977,1
    - Dst: inspect_reset_parsers
      Src: /src/gpac/src/filters/inspect.c:4982,1
    - Dst: gf_odf_vp_cfg_read
      Src: /src/gpac/src/filters/inspect.c:4985,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4986,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4989,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4993,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4995,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4996,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:4998,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5009,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:5009,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5016,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5017,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5020,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:5022,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/inspect.c:5027,1
    - Dst: gf_m4a_parse_config
      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:5034,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5036,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5039,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5041,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5043,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5049,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5055,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5056,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5059,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/inspect.c:5061,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:5063,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/inspect.c:5064,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5066,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5068,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5076,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5077,1
    - Dst: gf_odf_opus_cfg_parse
      Src: /src/gpac/src/filters/inspect.c:5078,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5080,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5083,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5085,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5087,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5091,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5093,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5100,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5101,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5102,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/inspect.c:5103,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:5110,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/inspect.c:5111,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:5112,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: get_and_print
      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: GF_4CC
      Src: /src/gpac/src/filters/inspect.c:5126,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5127,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5128,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5129,1
    - Dst: get_and_print
      Src: /src/gpac/src/filters/inspect.c:5130,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5135,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/inspect.c:5136,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5146,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:5146,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5148,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5152,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5153,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5154,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5155,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/inspect.c:5156,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5157,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: 5158
      start: 4515
    functionDepth: 12
    functionLinenumber: 4515
    functionLinenumberEnd: 5158
    functionName: inspect_dump_pid
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_bs_read_u8
    - gf_m4a_parse_config
    - gf_codecid_name
    - gf_odf_vvc_cfg_read
    - gf_fputc
    - inspect_dump_property
    - gf_filter_pid_enum_properties
    - gf_bs_new
    - gf_odf_vp_cfg_read
    - GF_SAFEALLOC
    - gf_av1_init_state
    - gf_bs_set_logger
    - gf_bs_del
    - inspect_reset_parsers
    - inspect_printf
    - gf_odf_av1_cfg_del
    - gf_bs_reassign_buffer
    - strstr
    - gf_odf_av1_cfg_read
    - gf_odf_vvc_cfg_del
    - DUMP_ARRAY
    - gf_inspect_dump_obu_internal
    - gf_odf_tx3g_read
    - gf_odf_hevc_cfg_del
    - gf_filter_pid_get_rfc_6381_codec_string
    - gf_odf_hevc_cfg_read
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_dynstrcat
    - dump_mha_config
    - gf_m4v_parser_del
    - gf_filter_pid_get_name
    - gf_filter_pid_enum_info
    - gf_bs_read_int
    - strcmp
    - gf_odf_avc_cfg_del
    - gf_bs_read_u32
    - gf_odf_opus_cfg_parse
    - gf_bs_read_u16
    - gf_odf_desc_del
    - GF_LOG
    - inspect_dump_pid_as_info
    - GF_4CC
    - inspect_dump_mpeg124
    - get_and_print
    - gf_bs_available
    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: 5109
      start: 5106
    functionDepth: 0
    functionLinenumber: 5106
    functionLinenumberEnd: 5109
    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:5162,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:5164,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:5165,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:5168,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:5172,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/inspect.c:5182,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/inspect.c:5198,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/inspect.c:5200,1
    - Dst: gf_filter_pck_get_crypt_flags
      Src: /src/gpac/src/filters/inspect.c:5202,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 80
    argCount: 3
    argNames:
    - ctx
    - pctx
    - pck
    argTypes:
    - GF_InspectCtx*
    - PidCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5238
      start: 5160
    functionDepth: 1
    functionLinenumber: 5160
    functionLinenumberEnd: 5238
    functionName: inspect_stats_packet
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_data
    - gf_filter_pck_get_corrupted
    - gf_filter_pck_get_crypt_flags
    - 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:5242,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5245,1
    - Dst: inspect_dump_pid
      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:5251,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5253,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5254,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5255,1
    - Dst: format_duration
      Src: /src/gpac/src/filters/inspect.c:5256,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:5261,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5263,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:5271,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5272,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5273,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5274,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5277,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5279,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5280,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5282,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5286,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5292,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5294,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5296,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 51
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_InspectCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5299
      start: 5240
    functionDepth: 13
    functionLinenumber: 5240
    functionLinenumberEnd: 5299
    functionName: inspect_dump_stats
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - format_duration
    - inspect_dump_pid
    - gf_list_get
    - inspect_printf
    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:5304,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:5306,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5311,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5316,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5319,1
    - Dst: gf_filter_pid_set_clock_mode
      Src: /src/gpac/src/filters/inspect.c:5322,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5332,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/inspect.c:5334,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5339,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/inspect.c:5345,1
    - Dst: gf_filter_pid_eos_received
      Src: /src/gpac/src/filters/inspect.c:5355,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/inspect.c:5356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5359,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5365,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/inspect.c:5371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5372,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5374,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5374,1
    - Dst: inspect_dump_pid
      Src: /src/gpac/src/filters/inspect.c:5381,1
    - Dst: inspect_dump_packet_fmt
      Src: /src/gpac/src/filters/inspect.c:5390,1
    - Dst: inspect_stats_packet
      Src: /src/gpac/src/filters/inspect.c:5399,1
    - Dst: inspect_dump_packet_fmt
      Src: /src/gpac/src/filters/inspect.c:5405,1
    - Dst: inspect_dump_packet
      Src: /src/gpac/src/filters/inspect.c:5407,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/inspect.c:5413,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/inspect.c:5414,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/inspect.c:5415,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/inspect.c:5416,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/inspect.c:5419,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/inspect.c:5421,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5423,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/inspect.c:5423,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/inspect.c:5424,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5426,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/inspect.c:5427,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/inspect.c:5432,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/inspect.c:5435,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5438,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/inspect.c:5440,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5441,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 121
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5448
      start: 5301
    functionDepth: 13
    functionLinenumber: 5301
    functionLinenumberEnd: 5448
    functionName: inspect_process
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_codecid_name
    - gf_filter_pid_set_framing_mode
    - gf_filter_pck_get_duration
    - GF_FEVT_INIT
    - inspect_stats_packet
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - inspect_dump_packet
    - gf_filter_get_udta
    - inspect_dump_packet_fmt
    - gf_list_get
    - gf_filter_pck_get_dts
    - gf_timestamp_greater_or_equal
    - gf_filter_pid_set_discard
    - gf_filter_connections_pending
    - gf_filter_pid_eos_received
    - gf_sys_clock
    - inspect_dump_pid
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - gf_filter_pid_query_buffer_duration
    - GF_LOG
    - gf_filter_pid_set_clock_mode
    - gf_filter_pck_get_timescale
    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:5456,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/inspect.c:5458,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5459,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/inspect.c:5461,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/inspect.c:5463,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/inspect.c:5470,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/inspect.c:5473,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/inspect.c:5477,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5480,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5482,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5484,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/inspect.c:5490,1
    - Dst: gf_filter_pid_has_decoder
      Src: /src/gpac/src/filters/inspect.c:5500,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5501,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/inspect.c:5502,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:5508,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5519,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5522,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/inspect.c:5524,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/inspect.c:5524,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_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5535,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5537,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:5544,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/inspect.c:5546,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_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5565,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5567,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/inspect.c:5582,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/inspect.c:5583,1
    - Dst: gf_list_get
      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_add
      Src: /src/gpac/src/filters/inspect.c:5592,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/inspect.c:5595,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/inspect.c:5598,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5600,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/inspect.c:5600,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5606,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/inspect.c:5609,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/inspect.c:5617,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/inspect.c:5618,1
    - Dst: gf_filter_pid_set_clock_mode
      Src: /src/gpac/src/filters/inspect.c:5626,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/inspect.c:5628,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/inspect.c:5632,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: 5634
      start: 5450
    functionDepth: 6
    functionLinenumber: 5450
    functionLinenumberEnd: 5634
    functionName: inspect_configure_pid
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_assert
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - inspect_printf
    - gf_list_add
    - strstr
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_has_decoder
    - gf_filter_pid_get_udta
    - gf_filter_post_process_task
    - gf_list_find
    - gf_file_temp
    - gf_list_get
    - gf_list_insert
    - gf_sys_clock
    - gf_filter_pid_get_name
    - PROP_BOOL
    - gf_list_new
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_init_play_event
    - gf_filter_pid_set_clock_mode
    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:5667,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: 5670
      start: 5665
    functionDepth: 1
    functionLinenumber: 5665
    functionLinenumberEnd: 5670
    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:5674,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/inspect.c:5675,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5678,1
    - Dst: gf_log_parse_tool
      Src: /src/gpac/src/filters/inspect.c:5682,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5690,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5697,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/inspect.c:5715,1
    - Dst: strstr
      Src: /src/gpac/src/filters/inspect.c:5723,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/inspect.c:5729,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/inspect.c:5732,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/inspect.c:5735,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/inspect.c:5738,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5741,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5742,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/inspect.c:5743,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/inspect.c:5745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/inspect.c:5747,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5753,1
    - Dst: inspect_printf
      Src: /src/gpac/src/filters/inspect.c:5754,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/inspect.c:5758,1
    - Dst: inspect_update_arg
      Src: /src/gpac/src/filters/inspect.c:5759,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 76
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5764
      start: 5672
    functionDepth: 3
    functionLinenumber: 5672
    functionLinenumberEnd: 5764
    functionName: inspect_initialize
    functionSourceFile: /src/gpac/src/filters/inspect.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_name
    - gf_filter_override_caps
    - gf_filter_get_udta
    - GF_LOG
    - gf_fopen
    - inspect_printf
    - gf_log_parse_tool
    - gf_sys_is_cov_mode
    - inspect_update_arg
    - strcmp
    - gf_sys_is_test_mode
    - gf_filter_is_temporary
    - strstr
    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:5769,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/inspect.c:5772,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5775
      start: 5766
    functionDepth: 1
    functionLinenumber: 5766
    functionLinenumberEnd: 5775
    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: 5778
      start: 5777
    functionDepth: 0
    functionLinenumber: 5777
    functionLinenumberEnd: 5778
    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: 5995
      start: 5992
    functionDepth: 0
    functionLinenumber: 5992
    functionLinenumberEnd: 5995
    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: 6000
      start: 5997
    functionDepth: 0
    functionLinenumber: 5997
    functionLinenumberEnd: 6000
    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: 6005
      start: 6002
    functionDepth: 0
    functionLinenumber: 6002
    functionLinenumberEnd: 6005
    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: 6010
      start: 6007
    functionDepth: 0
    functionLinenumber: 6007
    functionLinenumberEnd: 6010
    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_bsf_list_free
    - av_bsf_get_by_name
    - gf_filter_report_meta_option
    - gf_free
    - gf_filter_get_udta
    - av_bsf_list_append2
    - GF_LOG
    - av_bsf_list_alloc
    - av_dict_copy
    - av_err2str
    - av_bsf_list_finalize
    - gf_filter_meta_set_instances
    - av_dict_free
    - gf_dynstrcat
    - ffmpeg_report_options
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - ffmpeg_extradata_from_gpac
    - ffmpeg_extradata_to_gpac
    - gf_filter_get_udta
    - ffmpeg_codec_par_from_gpac
    - PROP_DATA_NO_COPY
    - ffmpeg_codecid_to_gpac
    - av_bsf_init
    - av_bsf_free
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_remove
    - ffmpeg_codecid_from_gpac
    - ffbsf_init_bsf
    - ffmpeg_codec_par_to_gpac
    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:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - av_packet_alloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - av_bsf_receive_packet
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - AVERROR
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - av_malloc
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - gf_filter_pck_set_dts
    - av_bsf_send_packet
    - av_packet_unref
    - ffmpeg_generate_gpac_dsi
    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:
    - gf_filter_get_udta
    - av_bsf_free
    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_filter_pck_discard
    - gf_list_count
    - avformat_free_context
    - gf_free
    - gf_fclose
    - av_freep
    - gf_filter_get_udta
    - gf_list_del
    - av_packet_free
    - avformat_close_input
    - av_dict_free
    - gf_list_pop_back
    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:
    - ffmpeg_extradata_to_gpac
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_property
    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:
    - PROP_DATA
    - gf_bs_write_int
    - gf_bs_new
    - gf_filter_pid_set_property
    - rescale_mdcv
    - gf_bs_write_u16
    - gf_bs_del
    - gf_bs_write_u32
    - memset
    - 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:
    - av_err2str
    - ffdmx_init_common
    - gf_filter_pid_drop_packet
    - avformat_open_input
    - gf_filter_pid_get_packet
    - ffmpeg_report_options
    - gf_malloc
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - avformat_free_context
    - av_dict_copy
    - avformat_find_stream_info
    - gf_filter_pid_is_eos
    - gf_free
    - GF_LOG
    - avformat_close_input
    - av_dict_free
    - memmove
    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_filter_pid_get_property
    - gf_filter_pck_new_alloc
    - gf_list_count
    - PROP_LONGUINT
    - ffdmx_parse_side_data
    - av_err2str
    - gf_filter_pid_set_eos
    - avio_read_partial
    - gf_bs_new
    - gf_filter_pid_raw_new
    - gf_bs_del
    - gf_filter_pck_new_shared
    - gf_filter_pid_is_playing
    - gf_filter_pck_set_property
    - FF_INIT_PCK
    - gf_list_add
    - ffdmx_flush_input
    - gf_filter_pid_would_block
    - gf_malloc
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_filter_post_process_task
    - GF_FFDemuxCtx*::on_pkt
    - gf_net_get_ntp_ts
    - memcpy
    - gf_filter_pck_send
    - ffmpeg_channel_layout_to_gpac
    - PROP_LONGSINT
    - gf_sys_clock_high_res
    - ffdmx_set_decoder_config
    - gf_filter_pck_set_cts
    - gf_bs_read_u64_le
    - AVERROR
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_list_new
    - PROP_STRING_NO_COPY
    - av_read_frame
    - gf_filter_pck_discard
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - gf_filter_setup_failure
    - gf_list_del
    - gf_bs_read_u32_le
    - gf_filter_pid_set_property
    - FF_FREE_PCK
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_corrupted
    - gf_filter_pck_set_property_str
    - gf_filter_pck_truncate
    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_m4a_get_config
    - gf_odf_hevc_cfg_del
    - gf_odf_vvc_cfg_read
    - gf_odf_vp_cfg_del
    - gf_odf_hevc_cfg_read
    - gf_odf_vp_cfg_read
    - gf_odf_ac3_cfg_parse
    - gf_odf_avs3v_cfg_read
    - gf_odf_avc_cfg_del
    - gf_odf_avc_cfg_read
    - gf_odf_av1_cfg_del
    - gf_odf_avs3v_cfg_del
    - gf_odf_av1_cfg_read
    - gf_odf_vvc_cfg_del
    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:
    - ffdmx_parse_side_data
    - PROP_POINTER
    - ffmpeg_codecid_to_gpac
    - gf_filter_pid_set_name
    - gf_filter_is_temporary
    - ffmpeg_codec_par_to_gpac
    - strstr
    - gf_malloc
    - gf_filter_pid_set_udta
    - gf_timestamp_rescale
    - ffmpeg_tags_to_gpac
    - av_dict_get
    - PROP_FRAC_INT
    - ffmpeg_codecid_to_gpac_audio_fmt
    - av_packet_alloc
    - gf_filter_pid_new
    - gf_sys_is_test_mode
    - gf_log_set_tool_level
    - ffmpeg_pixfmt_to_gpac
    - gf_file_exists
    - ffdmx_set_decoder_config
    - PROP_CONST_DATA
    - avcodec_get_name
    - gf_filter_meta_set_instances
    - PROP_STRING
    - PROP_BOOL
    - strcmp
    - gf_media_get_reduced_frame_rate
    - AVFMT_URL
    - sprintf
    - gf_free
    - PROP_FRAC64_INT
    - GF_LOG
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_log_get_tool_level
    - ffmpeg_pixfmt_from_codec_tag
    - ffdmx_valid_should_reframe
    - gf_strdup
    - memset
    - ffmpeg_pixfmt_is_fullrange
    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_feof
    - gf_fread
    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_ftell
    - gf_fsize
    - gf_fseek
    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:
    - ffdmx_update_arg
    - avio_open2
    - av_err2str
    - av_find_input_format
    - av_demuxer_iterate
    - ffdmx_init_common
    - ffmpeg_set_mx_dmx_flags
    - avformat_open_input
    - gf_filter_is_temporary
    - ffmpeg_codec_par_to_gpac
    - ffmpeg_report_options
    - gf_malloc
    - gf_filter_get_udta
    - gf_fopen
    - gf_fileio_translate_url
    - avformat_free_context
    - av_dict_copy
    - ffmpeg_setup_logs
    - avformat_find_stream_info
    - gf_filter_meta_set_instances
    - strrchr
    - avformat_alloc_context
    - PROP_STRING_NO_COPY
    - av_malloc
    - strtoull
    - avio_alloc_context
    - gf_free
    - GF_LOG
    - stricmp
    - gf_sys_is_cov_mode
    - avformat_close_input
    - ffmpeg_pixfmt_from_codec_tag
    - av_dict_free
    - av_match_name
    - strncmp
    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_pid_get_property
    - gf_filter_pid_get_info
    - gf_filter_release_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_filter_pid_get_property
    - avio_alloc_context
    - gf_malloc
    - gf_filter_get_udta
    - GF_LOG
    - stricmp
    - ffmpeg_set_mx_dmx_flags
    - gf_filter_pid_remove
    - avformat_alloc_context
    - gf_strdup
    - av_malloc
    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:
    - gf_filter_get_udta
    - GF_LOG
    - av_err2str
    - GF_FEVT_INIT
    - av_seek_frame
    - gf_filter_pid_send_event
    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:
    - gf_file_ext_start
    - av_find_input_format
    - strncmp
    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:
    - av_register_all
    - gf_free
    - gf_malloc
    - av_probe_input_format3
    - memset
    - memcpy
    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
    - gf_filter_get_udta
    - ffdmx_finalize
    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: gf_strcpy
      Src: /src/gpac/src/filters/ff_dmx.c:2156,1
    - Dst: gf_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: gf_strcpy
      Src: /src/gpac/src/filters/ff_dmx.c:2178,1
    - Dst: gf_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_err2str
    - av_find_input_format
    - ffdmx_init_common
    - ffmpeg_set_mx_dmx_flags
    - avformat_open_input
    - avdevice_register_all
    - strstr
    - ffmpeg_report_options
    - strchr
    - gf_malloc
    - gf_filter_get_udta
    - av_dict_get
    - av_dump_format
    - av_dict_set
    - gf_strcpy
    - atoi
    - av_dict_copy
    - ffmpeg_setup_logs
    - av_input_video_device_next
    - avformat_find_stream_info
    - strcmp
    - avformat_alloc_context
    - sscanf
    - sprintf
    - GF_LOG
    - gf_strcat
    - stricmp
    - av_dict_free
    - memset
    - strncmp
    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:
    - avformat_free_context
    - sprintf
    - av_find_input_format
    - avformat_close_input
    - AV_IS_INPUT_DEVICE
    - avformat_open_input
    - gf_dynstrcat
    - avdevice_list_input_sources
    - avdevice_list_devices
    - avdevice_free_list_devices
    - av_dict_free
    - avformat_alloc_context
    - av_dict_set
    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:
    - vsnprintf
    - gf_dynstrcat
    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_sys_get_arg
    - gf_free
    - av_input_audio_device_next
    - ffmpeg_build_register
    - ffmpeg_register_set_dyn_help
    - av_log_set_callback
    - gf_strdup
    - av_input_video_device_next
    - ffavin_enum_devices
    - gf_sys_get_argc
    - gf_dynstrcat
    - gf_opts_get_bool
    - strncmp
    - gf_opts_set_key
    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_send_event
    - GF_FEVT_INIT
    - gf_timestamp_rescale
    - gf_filter_pid_init_play_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
    - gf_filter_pid_get_property_str
    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:
    - sprintf
    - PROP_STRING_NO_COPY
    - gf_filter_pid_set_property
    - gf_dynstrcat
    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_filter_override_caps
    - GF_ARRAY_LENGTH
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_get_timescale
    - GF_SAFEALLOC
    - filelist_start_ipid
    - gf_list_add
    - filelist_override_caps
    - gf_filter_pid_reset_properties
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_merge_properties
    - gf_list_get
    - gf_filter_pid_new
    - gf_filter_force_main_thread
    - gf_filter_pid_push_properties
    - gf_filter_pid_copy_properties
    - PROP_LONGSINT
    - gf_fileio_is_main_thread
    - PROP_BOOL
    - PROP_STRING
    - strcmp
    - gf_filter_pid_check_caps
    - PROP_STRING_NO_COPY
    - gf_audio_fmt_bit_depth
    - gf_filter_pid_set_property_str
    - gf_free
    - PROP_NAME
    - gf_filter_pid_set_property
    - PROP_UINT
    - filelist_push_period_id
    - gf_strdup
    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_count
    - gf_filter_pid_init_play_event
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - gf_list_get
    - gf_filter_pid_send_event
    - memcpy
    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_url_concatenate
    - gf_url_colon_suffix
    - gf_isom_probe_file
    - gf_strdup
    - strstr
    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:
    - strchr
    - gf_parse_lfrac
    - stricmp
    - gf_net_parse_date
    - 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_realloc
    - gf_timestamp_rescale
    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: gf_strlcpy
      Src: /src/gpac/src/filters/filelist.c:868,1
    - Dst: filelist_check_implicit_cat
      Src: /src/gpac/src/filters/filelist.c:869,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:870,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:882,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:885,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:887,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/filelist.c:901,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/filelist.c:905,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/filelist.c:906,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/filelist.c:908,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/filelist.c:920,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:926,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:930,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:931,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:937,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:940,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:941,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:942,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:946,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:964,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:974,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:975,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:976,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:978,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:979,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:992,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:999,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1001,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1002,1
    - Dst: atof
      Src: /src/gpac/src/filters/filelist.c:1004,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1005,1
    - Dst: atof
      Src: /src/gpac/src/filters/filelist.c:1007,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1008,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1010,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1012,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/filelist.c:1014,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1015,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/filelist.c:1017,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1018,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1023,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/filelist.c:1025,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1026,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/filelist.c:1029,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/filelist.c:1030,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/filelist.c:1031,1
    - Dst: filelist_override_caps
      Src: /src/gpac/src/filters/filelist.c:1035,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1037,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1038,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1039,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1040,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:1041,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1042,1
    - Dst: filelist_parse_splice_time
      Src: /src/gpac/src/filters/filelist.c:1043,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1044,1
    - Dst: filelist_parse_splice_time
      Src: /src/gpac/src/filters/filelist.c:1045,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1046,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1048,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1050,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1052,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1053,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:1054,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1055,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/filelist.c:1057,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1059,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1060,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:1061,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1062,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:1062,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1064,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1065,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/filelist.c:1066,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/filelist.c:1081,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:1081,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:1122,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:1153,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1177,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:1182,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:1183,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/filelist.c:1194,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filters/filelist.c:1196,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1197,1
    - Dst: filelist_check_implicit_cat
      Src: /src/gpac/src/filters/filelist.c:1205,1
    - Dst: push_chapter
      Src: /src/gpac/src/filters/filelist.c:1207,1
    CyclomaticComplexity: 146
    EdgeCount: 146
    ICount: 342
    argCount: 4
    argNames:
    - filter
    - ctx
    - szURL
    - is_splice_update
    argTypes:
    - GF_Filter*
    - GF_FileListCtx*
    - char[]
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 829
    functionDepth: 5
    functionLinenumber: 829
    functionLinenumberEnd: 1209
    functionName: filelist_next_url
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - atof
    - gf_url_concatenate
    - strstr
    - gf_feof
    - strchr
    - filelist_override_caps
    - gf_fopen
    - gf_crc_32
    - gf_file_modification_time
    - gf_list_get
    - gf_fgets
    - filelist_check_implicit_cat
    - gf_dynstrcat
    - gf_strcpy
    - atoi
    - gf_sys_clock
    - filelist_parse_splice_time
    - strcmp
    - strlen
    - sscanf
    - gf_strlcpy
    - gf_fclose
    - gf_free
    - GF_LOG
    - stricmp
    - gf_fseek
    - push_chapter
    - gf_strdup
    - strncmp
    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:1215,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1217,1
    - Dst: gf_filter_get_src_args
      Src: /src/gpac/src/filters/filelist.c:1217,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/filelist.c:1217,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1221,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/filelist.c:1224,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/filelist.c:1228,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/filelist.c:1229,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: 1231
      start: 1211
    functionDepth: 3
    functionLinenumber: 1211
    functionLinenumberEnd: 1231
    functionName: filelist_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_get_src_args
    - gf_filter_post_process_task
    - gf_list_del_item
    - gf_list_get
    - gf_filter_pid_is_filter_in_parents
    - gf_error_to_string
    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:1252,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/filelist.c:1255,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1257,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1259,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/filelist.c:1260,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/filelist.c:1262,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1268,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1275,1
    - Dst: assert
      Src: /src/gpac/src/filters/filelist.c:1284,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:1286,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:1291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1293,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1294,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/filelist.c:1295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1302,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:1303,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/filelist.c:1304,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1313,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1319,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1326,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:1327,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:1329,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:1336,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:1337,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:1338,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:1339,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/filelist.c:1342,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1346,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1347,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/filelist.c:1349,1
    - Dst: filelist_start_ipid
      Src: /src/gpac/src/filters/filelist.c:1350,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1366,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/filelist.c:1368,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1377,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1379,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:1381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1384,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1385,1
    - Dst: SET_SOURCE
      Src: /src/gpac/src/filters/filelist.c:1429,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/filelist.c:1431,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1436,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1441,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1442,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/filelist.c:1445,1
    - Dst: memset
      Src: /src/gpac/src/filters/filelist.c:1446,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/filelist.c:1451,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1453,1
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/filelist.c:1457,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filters/filelist.c:1458,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/filelist.c:1461,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/filelist.c:1464,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filters/filelist.c:1465,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:1470,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1471,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/filelist.c:1471,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1477,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:1481,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1482,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:1482,1
    - Dst: SET_SOURCE
      Src: /src/gpac/src/filters/filelist.c:1484,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/filelist.c:1487,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:1490,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/filelist.c:1504,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/filelist.c:1507,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:1518,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1521,1
    - Dst: atoi
      Src: /src/gpac/src/filters/filelist.c:1525,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/filelist.c:1531,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/filelist.c:1534,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:1542,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:1549,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1550,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1551,1
    - Dst: SET_SOURCE
      Src: /src/gpac/src/filters/filelist.c:1559,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/filelist.c:1566,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/filelist.c:1570,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:1572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:1575,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: 1283
        line_start: 1283
        source_file: /src/gpac/src/filters/filelist.c
    constantsTouched: []
    func_position:
      end: 1579
      start: 1234
    functionDepth: 6
    functionLinenumber: 1234
    functionLinenumberEnd: 1579
    functionName: filelist_load_next
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_url_concatenate
    - memset
    - gf_filter_pid_send_event
    - filelist_start_ipid
    - gf_list_add
    - strstr
    - SET_SOURCE
    - strchr
    - assert
    - gf_filter_remove_src
    - gf_filter_reset_source
    - gf_filter_pid_clear_eos
    - gf_filter_send_event
    - gf_filter_connect_source
    - gf_list_get
    - gf_list_insert
    - gf_filter_set_source
    - atoi
    - filelist_next_url
    - gf_filter_pid_send_flush
    - gf_filter_abort
    - gf_list_new
    - gf_filter_set_setup_failure_callback
    - gf_list_pop_back
    - gf_filter_load_filter
    - gf_error_to_string
    - gf_free
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_list_del
    - gf_filter_require_source_id
    - gf_filter_lock_all
    - gf_list_reset
    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: 1424
      start: 1408
    functionDepth: 0
    functionLinenumber: 1408
    functionLinenumberEnd: 1424
    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:1584,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - iopid
    - cts
    argTypes:
    - FileListPid*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1581
    functionDepth: 1
    functionLinenumber: 1581
    functionLinenumberEnd: 1587
    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:1597,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/filelist.c:1598,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1603,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:1605,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1616,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1618,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:1625,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/filelist.c:1637,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1639,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:1643,1
    - Dst: filelist_next_url
      Src: /src/gpac/src/filters/filelist.c:1649,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/filelist.c:1654,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:1663,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:1668,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1671,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1675,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1682,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:1684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1692,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1694,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:1708,1
    - Dst: filelist_next_url
      Src: /src/gpac/src/filters/filelist.c:1723,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/filelist.c:1729,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:1739,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1744,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1752,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:1754,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1756,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1764,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 129
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FileListCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1589
    functionDepth: 6
    functionLinenumber: 1589
    functionLinenumberEnd: 1768
    functionName: filelist_check_splice
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_timestamp_greater_or_equal
    - gf_list_count
    - filelist_translate_splice_cts
    - filelist_next_url
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_timestamp_rescale
    - gf_filter_pck_get_cts
    - gf_assert
    - gf_net_get_utc
    - gf_fatal_assert
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    linkageType: ''
    returnType: Bool
    signature: Bool filelist_check_splice(GF_FileListCtx *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/gpac/src/filters/filelist.c:1777,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/filelist.c:1780,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: 1782
      start: 1770
    functionDepth: 0
    functionLinenumber: 1770
    functionLinenumberEnd: 1782
    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:1794,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/filelist.c:1796,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/filelist.c:1806,1
    - Dst: filelist_copy_raw_audio
      Src: /src/gpac/src/filters/filelist.c:1809,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1813,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1814,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/filelist.c:1817,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/filelist.c:1818,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/filelist.c:1819,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/filelist.c:1821,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/filelist.c:1823,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - iopid
    - pck
    argTypes:
    - FileListPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1784
    functionDepth: 1
    functionLinenumber: 1784
    functionLinenumberEnd: 1825
    functionName: filelist_forward_splice_pck
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_forward
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - gf_filter_pck_set_dts
    - filelist_copy_raw_audio
    - gf_filter_pck_set_duration
    - 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:1829,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:1830,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:1834,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:1837,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1843,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:1846,1
    - Dst: filelist_translate_splice_cts
      Src: /src/gpac/src/filters/filelist.c:1849,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:1850,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1854,1
    - Dst: filelist_forward_splice_pck
      Src: /src/gpac/src/filters/filelist.c:1855,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:1857,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:1861,1
    - Dst: filelist_forward_splice_pck
      Src: /src/gpac/src/filters/filelist.c:1862,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:1865,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_FileListCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1866
      start: 1827
    functionDepth: 2
    functionLinenumber: 1827
    functionLinenumberEnd: 1866
    functionName: filelist_purge_slice
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - filelist_translate_splice_cts
    - gf_assert
    - gf_filter_pck_get_cts
    - filelist_forward_splice_pck
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_timestamp_greater
    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:1881,1
    - Dst: ABS
      Src: /src/gpac/src/filters/filelist.c:1889,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/filelist.c:1890,1
    - Dst: filelist_copy_raw_audio
      Src: /src/gpac/src/filters/filelist.c:1893,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/filelist.c:1895,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/filelist.c:1898,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/filelist.c:1900,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:1903,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1908,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/filelist.c:1925,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1932,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:1935,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/filelist.c:1939,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/filelist.c:1940,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/filelist.c:1941,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:1943,1
    - Dst: gf_filter_pck_set_dts
      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_cts
      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_duration
      Src: /src/gpac/src/filters/filelist.c:1950,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/filelist.c:1976,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:1976,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:1980,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:1980,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/filelist.c:1985,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:1985,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/filelist.c:1987,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:1987,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:1989,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/filelist.c:1993,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:1996,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: 1998
      start: 1868
    functionDepth: 1
    functionLinenumber: 1868
    functionLinenumberEnd: 1998
    functionName: filelist_send_packet
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pck_get_duration
    - gf_filter_pck_set_property
    - gf_filter_pid_drop_packet
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - PROP_STRING
    - ABS
    - gf_filter_pck_set_duration
    - gf_filter_pck_new_ref
    - gf_filter_pid_set_property_str
    - gf_free
    - gf_filter_pck_set_dts
    - filelist_copy_raw_audio
    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:2005,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2015,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/filelist.c:2017,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2020,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2027,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2029,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:2030,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2039,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2042,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2043,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2046,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/filelist.c:2048,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/filelist.c:2053,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2054,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2055,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:2057,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2059,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2064,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2066,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2071,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2072,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:2079,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/filelist.c:2080,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/filelist.c:2081,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2085,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/filelist.c:2086,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2087,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2088,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/filelist.c:2088,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/filelist.c:2089,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2101,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2104,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2107,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2110,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/filelist.c:2110,1
    - Dst: filelist_load_next
      Src: /src/gpac/src/filters/filelist.c:2118,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2122,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2129,1
    - Dst: gf_filter_has_pid_connection_pending
      Src: /src/gpac/src/filters/filelist.c:2130,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2146,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/filelist.c:2146,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2150,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/filelist.c:2150,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2151,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2159,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2163,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/filelist.c:2181,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:2183,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/filelist.c:2188,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2189,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/filelist.c:2192,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2193,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2199,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2208,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2210,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2221,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/filelist.c:2231,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2240,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2280,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2286,1
    - Dst: filelist_check_splice
      Src: /src/gpac/src/filters/filelist.c:2297,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2303,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2315,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2317,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2320,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2322,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2338,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2340,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/filelist.c:2359,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/filelist.c:2359,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:2363,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:2365,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2377,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2378,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2388,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:2401,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2407,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2411,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2426,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2432,1
    - Dst: gf_timestamp_greater_or_equal
      Src: /src/gpac/src/filters/filelist.c:2448,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2454,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2458,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2468,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2481,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/filelist.c:2485,1
    - Dst: filelist_send_packet
      Src: /src/gpac/src/filters/filelist.c:2501,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:2507,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:2508,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2509,1
    - Dst: filelist_purge_slice
      Src: /src/gpac/src/filters/filelist.c:2519,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2534,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2544,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2550,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2556,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/filelist.c:2560,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2561,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/filelist.c:2579,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/filelist.c:2581,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/filelist.c:2582,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2584,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/filelist.c:2585,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2586,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/filelist.c:2590,1
    - Dst: filelist_send_packet
      Src: /src/gpac/src/filters/filelist.c:2594,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2608,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:2609,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/filelist.c:2610,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:2612,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2617,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2619,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2620,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:2620,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2621,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2622,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:2622,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2633,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2635,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/filelist.c:2636,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2643,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/filelist.c:2649,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2654,1
    - Dst: filelist_configure_pid
      Src: /src/gpac/src/filters/filelist.c:2656,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2657,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:2657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2676,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/filelist.c:2678,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2682,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2702,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/filelist.c:2712,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2723,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2725,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2726,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/filelist.c:2726,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2727,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/filelist.c:2728,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/filelist.c:2728,1
    - Dst: gf_filter_pid_push_properties
      Src: /src/gpac/src/filters/filelist.c:2731,1
    - Dst: filelist_push_period_id
      Src: /src/gpac/src/filters/filelist.c:2734,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:2737,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/filelist.c:2757,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2759,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/filelist.c:2761,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2772,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2782,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/filelist.c:2791,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2804,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2808,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2816,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/filelist.c:2820,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2848,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/filelist.c:2851,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/filelist.c:2853,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/filelist.c:2854,1
    - Dst: filelist_start_ipid
      Src: /src/gpac/src/filters/filelist.c:2857,1
    CyclomaticComplexity: 256
    EdgeCount: 256
    ICount: 721
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2877
      start: 2000
    functionDepth: 7
    functionLinenumber: 2000
    functionLinenumberEnd: 2877
    functionName: filelist_process
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - filelist_purge_slice
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - GF_FEVT_INIT
    - filelist_configure_pid
    - gf_filter_pck_get_sap
    - gf_assert
    - gf_timestamp_rescale_signed
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - filelist_start_ipid
    - strstr
    - gf_timestamp_greater
    - strchr
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_fopen
    - gf_filter_remove_src
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_filter_pid_remove
    - gf_fileio_url
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_filter_pck_get_dts
    - gf_timestamp_greater_or_equal
    - gf_filter_pid_set_discard
    - gf_filter_pid_push_properties
    - gf_filter_has_pid_connection_pending
    - gf_sys_clock
    - gf_filter_pid_get_name
    - gf_fileio_from_mem
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - PROP_STRING
    - strlen
    - gf_filter_pid_is_eos
    - gf_list_pop_back
    - gf_timestamp_less
    - gf_filter_pid_set_property_str
    - gf_filter_end_of_session
    - gf_free
    - gf_fclose
    - filelist_load_next
    - GF_LOG
    - gf_list_del
    - filelist_send_packet
    - filelist_check_splice
    - filelist_push_period_id
    - gf_strdup
    - gf_filter_pid_is_flush_eos
    - strncmp
    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:2882,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:2884,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:2887,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/filelist.c:2890,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:2900,1
    - Dst: strlen
      Src: /src/gpac/src/filters/filelist.c:2901,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/filelist.c:2905,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/filelist.c:2910,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/filelist.c:2914,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 33
    argCount: 2
    argNames:
    - ctx
    - fentry
    argTypes:
    - GF_FileListCtx*
    - FileListEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2915
      start: 2879
    functionDepth: 2
    functionLinenumber: 2879
    functionLinenumberEnd: 2915
    functionName: filelist_add_entry
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - strcmp
    - strlen
    - gf_list_insert
    - gf_list_add
    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:2926,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:2929,1
    - Dst: filelist_add_entry
      Src: /src/gpac/src/filters/filelist.c:2932,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: 2935
      start: 2917
    functionDepth: 3
    functionLinenumber: 2917
    functionLinenumberEnd: 2935
    functionName: filelist_enum
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - filelist_add_entry
    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:2941,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:2942,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:2944,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/filelist.c:2949,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:2950,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/filelist.c:2955,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filters/filelist.c:2959,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2961,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/filelist.c:2962,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/filelist.c:2963,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/filelist.c:2976,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2981,1
    - Dst: strstr
      Src: /src/gpac/src/filters/filelist.c:2981,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/filelist.c:2984,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2986,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:2988,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/filelist.c:2990,1
    - Dst: gf_file_modification_time
      Src: /src/gpac/src/filters/filelist.c:2992,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/filelist.c:2993,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/filelist.c:2995,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:2996,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/filelist.c:3006,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/filelist.c:3008,1
    - Dst: filelist_add_entry
      Src: /src/gpac/src/filters/filelist.c:3013,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:3016,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3021,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/filelist.c:3022,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3029,1
    - Dst: filelist_override_caps
      Src: /src/gpac/src/filters/filelist.c:3032,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/filelist.c:3034,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/filelist.c:3036,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 85
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3038
      start: 2937
    functionDepth: 5
    functionLinenumber: 2937
    functionLinenumberEnd: 3038
    functionName: filelist_initialize
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_make_sticky
    - GF_SAFEALLOC
    - strstr
    - gf_enum_directory
    - strchr
    - filelist_override_caps
    - gf_filter_get_udta
    - gf_fopen
    - gf_filter_post_process_task
    - gf_dir_exists
    - gf_file_modification_time
    - gf_fsize
    - filelist_add_entry
    - gf_file_ext_start
    - gf_file_exists
    - strrchr
    - gf_list_new
    - gf_filter_is_dynamic
    - gf_fclose
    - GF_LOG
    - gf_strdup
    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:3042,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3043,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:3044,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3045,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/filelist.c:3048,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/filelist.c:3049,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3050,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3051,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:3053,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:3055,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/filelist.c:3056,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3057,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3058,1
    - Dst: gf_free
      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:3068,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/filelist.c:3072,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/filelist.c:3074,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3075,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/filelist.c:3076,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3078
      start: 3040
    functionDepth: 5
    functionLinenumber: 3040
    functionLinenumberEnd: 3078
    functionName: filelist_finalize
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_props_reset_single
    - gf_fclose
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    linkageType: ''
    returnType: void
    signature: void filelist_finalize(GF_Filter *filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/filelist.c:3083,1
    - Dst: memchr
      Src: /src/gpac/src/filters/filelist.c:3093,1
    - Dst: memchr
      Src: /src/gpac/src/filters/filelist.c:3095,1
    - Dst: isalnum
      Src: /src/gpac/src/filters/filelist.c:3112,1
    - Dst: strchr
      Src: /src/gpac/src/filters/filelist.c:3114,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/filelist.c:3125,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 50
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3140
      start: 3080
    functionDepth: 2
    functionLinenumber: 3080
    functionLinenumberEnd: 3140
    functionName: filelist_probe_data
    functionSourceFile: /src/gpac/src/filters/filelist.c
    functionUses: 0
    functionsReached:
    - memchr
    - strchr
    - isalnum
    - strncmp
    - 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: 3143
      start: 3142
    functionDepth: 0
    functionLinenumber: 3142
    functionLinenumberEnd: 3143
    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: 3352
      start: 3349
    functionDepth: 0
    functionLinenumber: 3349
    functionLinenumberEnd: 3352
    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: 3357
      start: 3354
    functionDepth: 0
    functionLinenumber: 3354
    functionLinenumberEnd: 3357
    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:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    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:
    - maddec_copy_props
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_malloc
    - gf_filter_get_udta
    - mad_frame_finish
    - gf_filter_pid_set_framing_mode
    - mad_synth_init
    - mad_frame_init
    - gf_filter_pid_remove
    - mad_synth_finish
    - gf_filter_pid_check_caps
    - mad_stream_finish
    - gf_filter_set_name
    - mad_stream_init
    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_frame_finish
    - gf_filter_get_udta
    - mad_synth_finish
    - mad_stream_finish
    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:
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_filter_pck_set_dependency_flags
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - mad_synth_frame
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - mad_frame_decode
    - memmove
    - gf_filter_pck_set_duration
    - gf_filter_pid_is_eos
    - mad_stream_errorstr
    - GF_LOG
    - mad_stream_buffer
    - MAD_SCALE
    - gf_filter_pid_set_property
    - gf_filter_pck_get_timescale
    - PROP_UINT
    - memset
    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_set_framing_mode
    - gf_filter_get_udta
    - gf_fileio_is_main_thread
    - gf_filter_pid_remove
    - gf_filter_force_main_thread
    - gf_filter_pid_check_caps
    - strstr
    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:
    - atof
    - strchr
    - atoi
    - gf_filter_get_udta
    - stricmp
    - gf_list_enum
    - sscanf
    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:
    - stricmp
    - gf_list_enum
    - strcmp
    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:
    - stricmp
    - nhmldmx_get_prop_ref
    - gf_list_enum
    - strcmp
    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_pid_set_property_dyn
    - gf_props_parse_value
    - gf_props_4cc_get_type
    - gf_props_parse_type
    - gf_props_reset_single
    - gf_bs_get_content
    - stricmp
    - gf_list_enum
    - gf_bs_new
    - gf_filter_pid_set_property
    - gf_bs_del
    - gf_filter_pck_set_property
    - strcmp
    - gf_props_get_id
    - gf_xml_parse_bit_sequence_bs
    - nhmldmx_get_props
    - gf_filter_pck_set_property_dyn
    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_xml_sax_get_node_start_pos
    - gf_xml_sax_suspend
    - stricmp
    - strcmp
    - gf_strdup
    - gf_list_add
    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
    - gf_list_rem_last
    - strcmp
    - gf_list_last
    - gf_xml_sax_get_node_end_pos
    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_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:512,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhml.c:514,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:515,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:516,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:522,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_nhml.c:523,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dmx_nhml.c:524,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/filters/dmx_nhml.c:525,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:526,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_nhml.c:528,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:529,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:530,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: 532
      start: 441
    functionDepth: 10
    functionLinenumber: 441
    functionLinenumberEnd: 532
    functionName: nhml_sample_from_xml
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_rem_last
    - strstr
    - strchr
    - gf_fopen
    - gf_fsize
    - gf_list_last
    - gf_realloc
    - gf_xml_sax_del
    - gf_xml_sax_new
    - gf_list_new
    - gf_fclose
    - gf_free
    - GF_LOG
    - gf_list_del
    - stricmp
    - gf_fseek
    - gf_xml_sax_parse_file
    - gf_fread
    - gf_strdup
    - memset
    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:549,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:555,1
    - Dst: deflateInit
      Src: /src/gpac/src/filters/dmx_nhml.c:567,1
    - Dst: deflateInit2
      Src: /src/gpac/src/filters/dmx_nhml.c:569,1
    - Dst: deflateSetDictionary
      Src: /src/gpac/src/filters/dmx_nhml.c:575,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:577,1
    - Dst: deflateEnd
      Src: /src/gpac/src/filters/dmx_nhml.c:578,1
    - Dst: deflate
      Src: /src/gpac/src/filters/dmx_nhml.c:582,1
    - Dst: deflateEnd
      Src: /src/gpac/src/filters/dmx_nhml.c:584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:588,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:591,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_nhml.c:592,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:593,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dmx_nhml.c:595,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dmx_nhml.c:596,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:597,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:600,1
    - Dst: deflateEnd
      Src: /src/gpac/src/filters/dmx_nhml.c:604,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: 606
      start: 540
    functionDepth: 1
    functionLinenumber: 540
    functionLinenumberEnd: 606
    functionName: compress_sample_data
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - deflateInit2
    - gf_free
    - deflate
    - gf_malloc
    - deflateSetDictionary
    - GF_LOG
    - deflateEnd
    - MAX
    - strlen
    - gf_realloc
    - memcpy
    - deflateInit
    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: 617
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 617
    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:644,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dmx_nhml.c:645,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:647,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:657,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:668,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:669,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:670,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filters/dmx_nhml.c:672,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:673,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:673,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhml.c:674,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:675,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:675,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhml.c:676,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:677,1
    - Dst: NHML_SCAN_INT
      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:680,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhml.c:681,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:683,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:685,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:687,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_nhml.c:690,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_nhml.c:692,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:694,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:695,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:696,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:697,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: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:708,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: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:715,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:716,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:717,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:718,1
    - Dst: stricmp
      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:723,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:725,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:727,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_nhml.c:728,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:731,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:733,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:734,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/dmx_nhml.c:736,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:738,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:740,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_nhml.c:740,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:748,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:749,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:751,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:752,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:753,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:754,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:755,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:755,1
    - Dst: GF_4CC
      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: NHML_SCAN_INT
      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: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:773,1
    - Dst: NHML_SCAN_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:774,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: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:777,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:779,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:779,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:781,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:782,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:784,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:786,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:789,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:789,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:791,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:792,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:796,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:800,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:802,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: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:813,1
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:829,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:830,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:834,1
    - Dst: gf_file_exists_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:839,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhml.c:840,1
    - Dst: gf_file_load_data_filep
      Src: /src/gpac/src/filters/dmx_nhml.c:843,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:844,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:846,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_nhml.c:852,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:853,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:856,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:858,1
    - Dst: nhml_sample_from_xml
      Src: /src/gpac/src/filters/dmx_nhml.c:860,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:862,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_nhml.c:862,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:863,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_nhml.c:867,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:868,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:876,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:878,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:879,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:882,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filters/dmx_nhml.c:886,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:888,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:889,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_nhml.c:896,1
    - Dst: gf_codec_id_from_isobmf
      Src: /src/gpac/src/filters/dmx_nhml.c:899,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filters/dmx_nhml.c:901,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:905,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:905,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:906,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:906,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:907,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:907,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:909,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhml.c:909,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dmx_nhml.c:914,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:924,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:924,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:925,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:925,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:926,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:926,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:928,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_nhml.c:928,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:934,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:934,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:937,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:937,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:940,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:940,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:943,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:947,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:947,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:948,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:948,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:949,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:949,1
    - Dst: gf_filter_pid_set_property_str
      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_str
      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_str
      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:955,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:955,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:956,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhml.c:956,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_STRING
      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_STRING
      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_STRING
      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_STRING
      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_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:962,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:965,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:965,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:966,1
    - Dst: PROP_UINT
      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:969,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:969,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:970,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:970,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:971,1
    - Dst: PROP_STRING
      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:977,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:977,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:978,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:978,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
      Src: /src/gpac/src/filters/dmx_nhml.c:984,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:984,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:985,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:985,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:988,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:988,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:989,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:989,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:990,1
    - Dst: PROP_STRING
      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:992,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:992,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
      Src: /src/gpac/src/filters/dmx_nhml.c:998,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:998,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:999,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:999,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1001,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1001,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1002,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1002,1
    - Dst: gf_filter_pid_set_property_str
      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_str
      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:1005,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1005,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
      Src: /src/gpac/src/filters/dmx_nhml.c:1012,1
    - Dst: PROP_DATA_NO_COPY
      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_STRING
      Src: /src/gpac/src/filters/dmx_nhml.c:1017,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhml.c:1020,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1021,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1021,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1024,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1025,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1026,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1028,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhml.c:1028,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1033,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1035,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1037,1
    - Dst: nhmldmx_set_props
      Src: /src/gpac/src/filters/dmx_nhml.c:1039,1
    CyclomaticComplexity: 160
    EdgeCount: 160
    ICount: 432
    argCount: 3
    argNames:
    - filter
    - ctx
    - root
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    - GF_XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1044
      start: 618
    functionDepth: 11
    functionLinenumber: 618
    functionLinenumberEnd: 1044
    functionName: nhmldmx_config_output
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - gf_stream_type_by_name
    - gf_url_concatenate
    - gf_codecid_type
    - gf_malloc
    - gf_m4v_get_config
    - gf_file_load_data_filep
    - gf_timestamp_rescale
    - PROP_FRAC_INT
    - gf_xml_parse_bit_sequence
    - gf_codecid_parse
    - gf_dynstrcat
    - gf_filter_pid_new
    - gf_fsize
    - memcpy
    - gf_codec_id_from_isobmf
    - gf_strcpy
    - gf_file_ext_start
    - gf_list_enum
    - PROP_BOOL
    - nhml_sample_from_xml
    - PROP_STRING
    - strcmp
    - strlen
    - gf_error_to_string
    - gf_filter_pid_set_property_str
    - gf_free
    - gf_fclose
    - gf_file_load_data
    - GF_LOG
    - gf_file_exists_ex
    - stricmp
    - GF_4CC
    - nhmldmx_set_props
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_fopen_ex
    - NHML_SCAN_INT
    - gf_strdup
    - gf_fread
    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:1061,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_nhml.c:1065,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1066,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1067,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1068,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/dmx_nhml.c:1069,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/dmx_nhml.c:1070,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_nhml.c:1074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1075,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1079,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1082,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_nhml.c:1083,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dmx_nhml.c:1083,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:1084,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_nhml.c:1086,1
    - Dst: gf_file_ext_start
      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_xml_dom_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1093,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:1094,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1096,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/src/filters/dmx_nhml.c:1096,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/dmx_nhml.c:1096,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dmx_nhml.c:1100,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1102,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1107,1
    - Dst: nhmldmx_config_output
      Src: /src/gpac/src/filters/dmx_nhml.c:1111,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1124,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1130,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1131,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1137,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1138,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1138,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:1141,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1141,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1143,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1147,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1147,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1148,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1148,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1149,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1166,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1173,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_nhml.c:1173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1174,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhml.c:1174,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 109
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1046
    functionDepth: 12
    functionLinenumber: 1046
    functionLinenumberEnd: 1176
    functionName: nhmldmx_init_parsing
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - nhmldmx_config_output
    - gf_file_basename
    - gf_filter_pid_get_packet
    - gf_xml_dom_get_error
    - PROP_FRAC64
    - strchr
    - gf_xml_dom_parse
    - gf_xml_dom_get_line
    - gf_fileio_translate_url
    - gf_filter_pck_get_data
    - gf_fileio_url
    - gf_dynstrcat
    - gf_file_ext_start
    - atoi
    - gf_file_exists
    - gf_list_enum
    - gf_fileio_from_mem
    - gf_xml_dom_new
    - sscanf
    - gf_xml_dom_get_root
    - gf_fclose
    - gf_free
    - GF_LOG
    - stricmp
    - gf_filter_pid_set_property
    - PROP_UINT
    - strncmp
    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:1182,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1183,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: 1184
      start: 1180
    functionDepth: 1
    functionLinenumber: 1180
    functionLinenumberEnd: 1184
    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:1190,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1196,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1200,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1201,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1201,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1204,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1206,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1208,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1218,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1219,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1219,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1220,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1221,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1222,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1222,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1222,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: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1231,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1232,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1233,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1233,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1234,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:1239,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_nhml.c:1241,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhml.c:1243,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1244,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1246,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_nhml.c:1250,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_nhml.c:1251,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dmx_nhml.c:1252,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1253,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1254,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_nhml.c:1259,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1260,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_nhml.c:1261,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_nhml.c:1261,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: 1264
      start: 1186
    functionDepth: 9
    functionLinenumber: 1186
    functionLinenumberEnd: 1264
    functionName: nhmldmx_set_subs
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_free
    - atoi
    - PROP_DATA_NO_COPY
    - gf_fopen
    - gf_bs_get_content
    - stricmp
    - gf_list_enum
    - gf_bs_new
    - strnicmp
    - gf_url_concatenate
    - gf_bs_del
    - gf_bs_write_u32
    - gf_fsize
    - strcmp
    - gf_bs_write_u8
    - gf_filter_pck_set_property
    - sscanf
    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:1270,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1274,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1276,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1280,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1281,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1282,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1282,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - id
    argTypes:
    - GF_NHMLDmxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1266
    functionDepth: 2
    functionLinenumber: 1266
    functionLinenumberEnd: 1288
    functionName: nhmldmx_find_sai
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - stricmp
    - gf_list_enum
    - strcmp
    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:1294,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1301,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1313,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1314,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:1314,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1315,1
    - Dst: nhmldmx_find_sai
      Src: /src/gpac/src/filters/dmx_nhml.c:1317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1323,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1328,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1328,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1329,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1330,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1330,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1330,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1335,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1336,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_nhml.c:1340,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1341,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_nhml.c:1345,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1345,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_nhml.c:1347,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_nhml.c:1347,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dmx_nhml.c:1350,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_nhml.c:1350,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: 1352
      start: 1290
    functionDepth: 9
    functionLinenumber: 1290
    functionLinenumberEnd: 1352
    functionName: nhmldmx_set_sai
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_4cc_parse
    - atoi
    - PROP_DATA_NO_COPY
    - GF_LOG
    - gf_bs_get_content
    - stricmp
    - gf_list_enum
    - gf_bs_new
    - nhmldmx_find_sai
    - gf_bs_del
    - gf_filter_pck_set_property_dyn
    - strcmp
    - gf_xml_parse_bit_sequence_bs
    - gf_4cc_to_str
    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:1361,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1376,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1377,1
    - Dst: nhmldmx_config_output
      Src: /src/gpac/src/filters/dmx_nhml.c:1378,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1380,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1385,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1386,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1387,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1408,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1409,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1409,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:1412,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1412,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1414,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1418,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1418,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1419,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1421,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1423,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1425,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1425,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1426,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1426,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1427,1
    - Dst: atof
      Src: /src/gpac/src/filters/dmx_nhml.c:1427,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1428,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_nhml.c:1428,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1429,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1430,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:1431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1433,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1437,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1438,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_nhml.c:1441,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1443,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1445,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1446,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1450,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1451,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1453,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1454,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1457,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1457,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1459,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1459,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1463,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1463,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:1469,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1469,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1471,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/dmx_nhml.c:1472,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_nhml.c:1488,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1490,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1494,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1497,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1500,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1501,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1502,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1503,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1506,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1511,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1511,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1513,1
    - Dst: nhml_sample_from_xml
      Src: /src/gpac/src/filters/dmx_nhml.c:1516,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1517,1
    - Dst: gf_xml_dom_serialize
      Src: /src/gpac/src/filters/dmx_nhml.c:1519,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1522,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1526,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1529,1
    - Dst: nhml_get_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1531,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_nhml.c:1532,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1533,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1534,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1535,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_nhml.c:1541,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1543,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1546,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/dmx_nhml.c:1548,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhml.c:1554,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/dmx_nhml.c:1555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1557,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhml.c:1561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1567,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhml.c:1574,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dmx_nhml.c:1575,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/dmx_nhml.c:1580,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1585,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1591,1
    - Dst: nhml_get_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1593,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_nhml.c:1594,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/dmx_nhml.c:1595,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:1596,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1598,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1609,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1615,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhml.c:1618,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1620,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1631,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1641,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1643,1
    - Dst: gf_xml_parse_bit_sequence_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1646,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1648,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dmx_nhml.c:1651,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1652,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1656,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1658,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1663,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_nhml.c:1668,1
    - Dst: compress_sample_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1675,1
    - Dst: nhml_get_bs
      Src: /src/gpac/src/filters/dmx_nhml.c:1679,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_nhml.c:1680,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1689,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_nhml.c:1693,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_nhml.c:1696,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_nhml.c:1697,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_nhml.c:1699,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_nhml.c:1700,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_nhml.c:1701,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dmx_nhml.c:1702,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_nhml.c:1705,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_nhml.c:1708,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_nhml.c:1714,1
    - Dst: nhmldmx_set_subs
      Src: /src/gpac/src/filters/dmx_nhml.c:1718,1
    - Dst: nhmldmx_set_sai
      Src: /src/gpac/src/filters/dmx_nhml.c:1721,1
    - Dst: nhmldmx_set_props
      Src: /src/gpac/src/filters/dmx_nhml.c:1724,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_nhml.c:1726,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_nhml.c:1737,1
    CyclomaticComplexity: 119
    EdgeCount: 119
    ICount: 319
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1742
      start: 1355
    functionDepth: 12
    functionLinenumber: 1355
    functionLinenumberEnd: 1742
    functionName: nhmldmx_send_sample
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - atof
    - gf_filter_pck_new_alloc
    - nhmldmx_config_output
    - gf_bs_get_content
    - gf_url_concatenate
    - gf_bs_new
    - gf_bs_del
    - strstr
    - gf_bs_write_u8
    - strchr
    - gf_filter_pid_would_block
    - gf_filter_pck_set_seek_flag
    - gf_fopen
    - gf_filter_pck_set_dependency_flags
    - nhmldmx_set_subs
    - gf_fsize
    - gf_fatal_assert
    - compress_sample_data
    - nhmldmx_set_sai
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_strcpy
    - atoi
    - gf_xml_dom_serialize
    - gf_list_enum
    - gf_filter_pck_set_cts
    - strnicmp
    - nhml_sample_from_xml
    - gf_bs_write_data
    - strcmp
    - strlen
    - nhml_get_bs
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_duration
    - sscanf
    - gf_free
    - gf_fclose
    - gf_filter_pck_set_framing
    - GF_LOG
    - stricmp
    - nhmldmx_set_props
    - gf_fseek
    - gf_base64_decode
    - gf_bs_write_u16
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_fread
    - gf_xml_parse_bit_sequence_bs
    - strncmp
    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:1753,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_nhml.c:1758,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/dmx_nhml.c:1759,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/dmx_nhml.c:1760,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dmx_nhml.c:1762,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filters/dmx_nhml.c:1763,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1765,1
    - Dst: gf_xml_dom_get_line
      Src: /src/gpac/src/filters/dmx_nhml.c:1765,1
    - Dst: gf_xml_dom_get_error
      Src: /src/gpac/src/filters/dmx_nhml.c:1765,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dmx_nhml.c:1769,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1771,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/dmx_nhml.c:1775,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhml.c:1776,1
    - Dst: gf_xml_dom_append_child
      Src: /src/gpac/src/filters/dmx_nhml.c:1781,1
    - Dst: gf_xml_dom_node_clone
      Src: /src/gpac/src/filters/dmx_nhml.c:1781,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1782,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1783,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dmx_nhml.c:1786,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_nhml.c:1786,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dmx_nhml.c:1787,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_NHMLDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1744
    functionDepth: 11
    functionLinenumber: 1744
    functionLinenumberEnd: 1790
    functionName: nhmldmx_update_document
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_list_count
    - gf_xml_dom_parse
    - gf_xml_dom_del
    - gf_fclose
    - GF_LOG
    - gf_xml_dom_get_line
    - stricmp
    - MIN
    - gf_fileio_from_mem
    - gf_filter_pck_get_data
    - gf_xml_dom_new
    - MAX
    - gf_fileio_url
    - gf_xml_dom_append_child
    - gf_filter_pid_get_packet
    - gf_xml_dom_node_clone
    - gf_xml_dom_get_error
    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:1794,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_nhml.c:1799,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_nhml.c:1801,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_nhml.c:1803,1
    - Dst: nhmldmx_init_parsing
      Src: /src/gpac/src/filters/dmx_nhml.c:1807,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/dmx_nhml.c:1809,1
    - Dst: nhmldmx_update_document
      Src: /src/gpac/src/filters/dmx_nhml.c:1819,1
    - Dst: nhmldmx_send_sample
      Src: /src/gpac/src/filters/dmx_nhml.c:1824,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhml.c:1830,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1832,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_nhml.c:1836,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_nhml.c:1843,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1845
      start: 1792
    functionDepth: 13
    functionLinenumber: 1792
    functionLinenumberEnd: 1845
    functionName: nhmldmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_fclose
    - gf_filter_get_udta
    - gf_filter_abort
    - gf_filter_pid_set_eos
    - nhmldmx_update_document
    - gf_assert
    - gf_filter_pid_is_eos
    - nhmldmx_init_parsing
    - nhmldmx_send_sample
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    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: 1851
      start: 1847
    functionDepth: 0
    functionLinenumber: 1847
    functionLinenumberEnd: 1851
    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:1855,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1856,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1858,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhml.c:1860,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1863,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1865,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhml.c:1866,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1867,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1868,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhml.c:1869,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1870
      start: 1853
    functionDepth: 8
    functionLinenumber: 1853
    functionLinenumberEnd: 1870
    functionName: nhmldmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_nhml.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - gf_xml_dom_del
    - gf_filter_get_udta
    - gf_bs_del
    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: 1874
      start: 1873
    functionDepth: 0
    functionLinenumber: 1873
    functionLinenumberEnd: 1874
    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: 1911
      start: 1908
    functionDepth: 0
    functionLinenumber: 1908
    functionLinenumberEnd: 1911
    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: 1916
      start: 1913
    functionDepth: 0
    functionLinenumber: 1913
    functionLinenumberEnd: 1916
    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_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - gf_filter_get_udta
    - gf_crc_32
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_m4a_get_config
    - NeAACDecClose
    - gf_stringizer
    - strcmp
    - gf_filter_pid_check_caps
    - gf_filter_set_name
    - NeAACDecOpen
    - gf_free
    - gf_m4a_write_config
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - NeAACDecInit2
    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:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - faaddec_check_mc_config
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_filter_pck_set_dependency_flags
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - faaddec_get_channel_pos
    - memcpy
    - gf_filter_pck_send
    - NeAACDecGetErrorMessage
    - NeAACDecDecode
    - gf_filter_pid_eos_received
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - gf_filter_pid_is_eos
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_filter_pck_get_timescale
    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_add
    - gf_list_insert
    - gf_list_get
    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_count
    - CHECK_PARAM
    - PROP_DATA_NO_COPY
    - gf_odf_avc_cfg_write
    - GF_LOG
    - gf_list_get
    - gf_list_find
    - PROP_UINT
    - gf_filter_pid_set_property
    - bs_split_svc_add_param
    - GF_SAFEALLOC
    - gf_list_new
    - memcpy
    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_list_count
    - PROP_DATA_NO_COPY
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_bs_new
    - gf_filter_pid_set_info_str
    - gf_bs_del
    - gf_list_get
    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
    - PROP_BOOL
    - gf_filter_pid_set_property_str
    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_filter_pid_get_property
    - gf_list_count
    - PROP_DATA_NO_COPY
    - GF_SAFEALLOC
    - gf_list_add
    - strchr
    - gf_odf_hevc_cfg_del
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - gf_filter_pid_new
    - gf_list_last
    - memcpy
    - bs_split_copy_props_base
    - bs_split_update_hevc_linf
    - gf_odf_hevc_cfg_write
    - strcmp
    - sscanf
    - gf_filter_pid_set_property_str
    - PROP_DATA
    - bs_split_check_svc_config
    - gf_filter_pid_set_property
    - PROP_UINT
    - memset
    - match_substream
    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_list_reset
    - gf_odf_avc_cfg_del
    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_filter_pid_get_property
    - gf_list_count
    - gf_malloc
    - PROP_DATA_NO_COPY
    - gf_odf_avc_cfg_write
    - gf_bs_new
    - AVC_READ_LIST
    - gf_filter_pid_set_property
    - PROP_UINT
    - bs_split_svcc_del
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_odf_avc_cfg_del
    - memset
    - bs_split_copy_props_base
    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_filter_pid_get_property
    - gf_list_count
    - gf_odf_vvc_cfg_read
    - PROP_DATA_NO_COPY
    - GF_SAFEALLOC
    - gf_list_add
    - gf_odf_vvc_cfg_del
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_odf_hevc_cfg_read
    - gf_hevc_parse_nalu
    - gf_list_get
    - memcpy
    - bs_split_copy_props_base
    - bs_split_update_hevc_linf
    - gf_odf_hevc_cfg_write
    - gf_list_new
    - bs_split_get_out_stream
    - gf_free
    - gf_list_del
    - gf_odf_vvc_cfg_write
    - gf_filter_pid_set_property
    - PROP_UINT
    - match_substream
    - gf_vvc_parse_nalu
    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_filter_pid_copy_properties
    - gf_list_count
    - gf_list_get
    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_filter_pck_forward
    - gf_list_get
    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_filter_pck_new_alloc
    - gf_list_count
    - gf_filter_pck_merge_properties
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_del
    - gf_bs_reassign_buffer
    - gf_filter_pck_expand
    - gf_filter_pck_get_data
    - gf_list_get
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - bs_split_get_out_stream
    - gf_filter_pck_forward
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_avc_parse_nalu
    - gf_filter_pck_set_dts
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_bs_del
    - bs_split_svcc_del
    - gf_filter_pid_remove
    - gf_odf_avc_cfg_del
    - gf_list_pop_back
    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_filter_pid_get_property
    - gf_filter_pid_new
    - gf_free
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_framing_mode
    - BSSplitIn*::rewrite_pid_config
    - gf_filter_pid_get_udta
    - gf_list_new
    - GF_SAFEALLOC
    - gf_fatal_assert
    - bs_split_reset_stream
    - gf_filter_pid_check_caps
    - gf_list_add
    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_list_count
    - gf_filter_get_udta
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - BSSplitIn*::split_packet
    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_filter_get_udta
    - gf_list_new
    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_count
    - gf_filter_get_udta
    - gf_list_del
    - bs_split_reset_stream
    - gf_list_pop_back
    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_del
    - gf_list_count
    - gf_filter_pid_init_play_event
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_post_process_task
    - gf_filter_pid_send_event
    - gf_sk_group_unregister
    - gf_filter_pid_check_caps
    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: gf_strcpy
      Src: /src/gpac/src/filters/out_sock.c:160,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_sock.c:161,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_sock.c:163,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_sock.c:166,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:170,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:173,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:176,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:179,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/out_sock.c:185,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_sock.c:188,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_sock.c:192,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_sock.c:192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:194,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_sock.c:200,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_sock.c:202,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_sock.c:202,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_sock.c:204,1
    - Dst: gf_sk_is_multicast_address
      Src: /src/gpac/src/filters/out_sock.c:208,1
    - Dst: gf_sk_setup_multicast
      Src: /src/gpac/src/filters/out_sock.c:210,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_sock.c:217,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_sock.c:220,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/out_sock.c:221,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_sock.c:223,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/out_sock.c:224,1
    - Dst: gf_sk_connect
      Src: /src/gpac/src/filters/out_sock.c:227,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:233,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/filters/out_sock.c:237,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_sock.c:238,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_sock.c:240,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 117
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 108
    functionDepth: 4
    functionLinenumber: 108
    functionLinenumberEnd: 244
    functionName: sockout_initialize
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_netcap_id
    - strlwr
    - gf_sk_bind
    - gf_sk_group_register
    - gf_filter_is_temporary
    - strchr
    - gf_sk_connect
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - gf_strcpy
    - gf_sk_set_buffer_size
    - gf_file_ext_start
    - gf_sk_is_multicast_address
    - atoi
    - strnicmp
    - gf_sk_group_new
    - strrchr
    - gf_sk_new_ex
    - gf_list_new
    - gf_sk_del
    - gf_filter_override_caps
    - gf_sk_setup_multicast
    - gf_filter_setup_failure
    - GF_LOG
    - PROP_NAME
    - gf_sk_listen
    - PROP_UINT
    - gf_sk_server_mode
    - strncmp
    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:248,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_sock.c:250,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_sock.c:251,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:252,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_sock.c:253,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_sock.c:255,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:258,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/filters/out_sock.c:259,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 246
    functionDepth: 3
    functionLinenumber: 246
    functionLinenumberEnd: 261
    functionName: sockout_finalize
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_sk_del
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    - gf_sk_group_del
    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:274,1
    - Dst: gf_sk_send_ex
      Src: /src/gpac/src/filters/out_sock.c:277,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:281,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_sock.c:281,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_sock.c:286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:289,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_sock.c:294,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_sock.c:296,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_sock.c:298,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/out_sock.c:303,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_sock.c:309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:311,1
    - Dst: gf_sk_send
      Src: /src/gpac/src/filters/out_sock.c:322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:324,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_sock.c:324,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: 332
      start: 263
    functionDepth: 5
    functionLinenumber: 263
    functionLinenumberEnd: 332
    functionName: sockout_send_packet
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_sk_send
    - gf_sk_send_ex
    - GF_LOG
    - gf_filter_pck_get_data
    - gf_pixel_get_size_info
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pck_get_frame_interface
    - gf_error_to_string
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err sockout_send_packet(GF_SockOutCtx *ctx, GF_FilterPacket *pck,
      GF_Socket *dst_sock)
  - BBCount: 48
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_sock.c:340,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_sock.c:345,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_sock.c:347,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:350,1
    - Dst: MAX
      Src: /src/gpac/src/filters/out_sock.c:350,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_sock.c:352,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_sock.c:354,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_sock.c:356,1
    - Dst: gf_sk_accept
      Src: /src/gpac/src/filters/out_sock.c:363,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_sock.c:366,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_sock.c:370,1
    - Dst: gf_sk_get_remote_address
      Src: /src/gpac/src/filters/out_sock.c:371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:373,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_sock.c:374,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_sock.c:378,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_sock.c:379,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_sock.c:386,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:390,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_sock.c:394,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/out_sock.c:398,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:400,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_sock.c:406,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_sock.c:408,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_sock.c:408,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_sock.c:414,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:415,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:422,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_sock.c:434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:441,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:442,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_sock.c:453,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/out_sock.c:460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_sock.c:461,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:463,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_sock.c:464,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_sock.c:471,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/out_sock.c:472,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_sock.c:478,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_sock.c:481,1
    - Dst: sockout_send_packet
      Src: /src/gpac/src/filters/out_sock.c:492,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_sock.c:494,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:495,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_sock.c:497,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_sock.c:498,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_sock.c:513,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:516,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_sock.c:524,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_sock.c:525,1
    - Dst: sockout_send_packet
      Src: /src/gpac/src/filters/out_sock.c:528,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_sock.c:532,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_sock.c:533,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_sock.c:534,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_sock.c:535,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_sock.c:543,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_sock.c:546,1
    - Dst: sockout_send_packet
      Src: /src/gpac/src/filters/out_sock.c:548,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_sock.c:550,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 186
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 334
    functionDepth: 6
    functionLinenumber: 334
    functionLinenumberEnd: 557
    functionName: sockout_process
    functionSourceFile: /src/gpac/src/filters/out_sock.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_get_dependency_flags
    - gf_rand
    - GF_FEVT_INIT
    - gf_sk_group_unregister
    - GF_SAFEALLOC
    - snprintf
    - gf_filter_pid_drop_packet
    - gf_sk_group_register
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_sk_group_sock_is_set
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - gf_sk_accept
    - sockout_send_packet
    - gf_sk_get_remote_address
    - gf_list_get
    - gf_filter_reporting_enabled
    - gf_strcpy
    - gf_sk_group_select
    - gf_filter_pck_unref
    - gf_filter_pck_ref
    - gf_sys_clock_high_res
    - MAX
    - gf_filter_pid_is_eos
    - gf_sk_del
    - gf_free
    - gf_filter_pid_init_play_event
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_filter_pid_is_flush_eos
    - gf_filter_update_status
    - 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:561,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:562,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:564,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_sock.c:565,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 568
      start: 559
    functionDepth: 0
    functionLinenumber: 559
    functionLinenumberEnd: 568
    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: 572
      start: 571
    functionDepth: 0
    functionLinenumber: 571
    functionLinenumberEnd: 572
    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:650,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_sock.c:652,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_sock.c:654,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 648
    functionDepth: 6
    functionLinenumber: 648
    functionLinenumberEnd: 658
    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: 664
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 664
    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_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - theora_comment_clear
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_malloc
    - gf_filter_get_udta
    - gf_crc_32
    - gf_filter_pid_remove
    - theora_clear
    - gf_filter_pid_new
    - theora_decode_init
    - gf_filter_pid_copy_properties
    - gf_filter_pid_check_caps
    - gf_bs_read_u16
    - theora_comment_init
    - gf_free
    - GF_LOG
    - theora_info_init
    - theora_info_clear
    - theora_decode_header
    - gf_filter_pid_set_property
    - PROP_UINT
    - strncmp
    - gf_bs_available
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err theoradec_configure_pid(GF_Filter *filter, GF_FilterPid *pid,
      Bool is_remove)
  - BBCount: 25
    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_LOG
      Src: /src/gpac/src/filters/dec_theora.c:218,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:221,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:221,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:222,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:222,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:223,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:223,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:224,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dec_theora.c:224,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_theora.c:225,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_theora.c:225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_theora.c:240,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_theora.c:244,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_theora.c:255,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_theora.c:260,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_theora.c:261,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_theora.c:268,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_theora.c:270,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_theora.c:271,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_theora.c:272,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_theora.c:273,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_theora.c:274,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_theora.c:275,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_theora.c:276,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_theora.c:279,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_theora.c:283,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_theora.c:285,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_theora.c:287,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 133
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 130
    functionDepth: 2
    functionLinenumber: 130
    functionLinenumberEnd: 289
    functionName: theoradec_process
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_get_data
    - PROP_FRAC_INT
    - gf_filter_pck_get_seek_flag
    - gf_list_get
    - gf_list_insert
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - memcmp
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - theora_decode_packetin
    - gf_filter_pck_ref_props
    - theora_decode_YUVout
    - gf_filter_pid_is_eos
    - gf_filter_pck_discard
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - memset
    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:293,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_theora.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: theoradec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gf_list_new
    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:299,1
    - Dst: theora_clear
      Src: /src/gpac/src/filters/dec_theora.c:301,1
    - Dst: theora_info_clear
      Src: /src/gpac/src/filters/dec_theora.c:302,1
    - Dst: theora_comment_clear
      Src: /src/gpac/src/filters/dec_theora.c:303,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_theora.c:305,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_theora.c:306,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_theora.c:307,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_theora.c:309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 297
    functionDepth: 3
    functionLinenumber: 297
    functionLinenumberEnd: 310
    functionName: theoradec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_theora.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - theora_comment_clear
    - gf_list_del
    - theora_info_clear
    - theora_clear
    - gf_list_pop_back
    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: 343
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 343
    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_read_u8
    - gf_bs_get_position
    - gf_bs_read_int
    - gf_bs_seek
    - 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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_bs_get_position
    - gf_fclose
    - gf_fileio_is_main_thread
    - adts_dmx_sync_frame_bs
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_del
    - PROP_FRAC64
    - gf_fopen_ex
    - gf_realloc
    - strncmp
    - gf_bs_skip_bytes
    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:
    - gf_filter_pid_copy_properties
    - gf_bs_align
    - PROP_DATA_NO_COPY
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_timestamp_rescale
    - gf_bs_new
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_m4a_get_profile
    - gf_bs_del
    - PROP_BOOL
    - adts_dmx_check_dur
    - gf_m4a_write_config_bs
    - gf_filter_pid_new
    - PROP_FRAC64
    - id3dmx_flush
    linkageType: ''
    returnType: void
    signature: void adts_dmx_check_pid(GF_Filter *filter, GF_ADTSDmxCtx *ctx)
  - BBCount: 13
    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:520,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_adts.c:522,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 541
    functionName: adts_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - 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:545,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ADTSDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 543
    functionDepth: 1
    functionLinenumber: 543
    functionLinenumberEnd: 555
    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:559,1
    - Dst: adts_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_adts.c:571,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_adts.c:576,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_adts.c:578,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_adts.c:581,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_adts.c:582,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_adts.c:593,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_adts.c:595,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_adts.c:600,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_adts.c:613,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:615,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_adts.c:621,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_adts.c:656,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:659,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:672,1
    - Dst: id3dmx_flush
      Src: /src/gpac/src/filters/reframe_adts.c:676,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_adts.c:683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:694,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_adts.c:701,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_adts.c:703,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:707,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:709,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:716,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:721,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_read_int
      Src: /src/gpac/src/filters/reframe_adts.c:726,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:746,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:756,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:762,1
    - Dst: gf_m4a_parse_program_config_element
      Src: /src/gpac/src/filters/reframe_adts.c:763,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:765,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:767,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:782,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:798,1
    - Dst: adts_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_adts.c:804,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:836,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_adts.c:840,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_adts.c:842,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_adts.c:844,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_adts.c:846,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_adts.c:847,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_adts.c:849,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_adts.c:849,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_adts.c:851,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_adts.c:852,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_adts.c:853,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_adts.c:856,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_adts.c:859,1
    - Dst: adts_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_adts.c:861,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_adts.c:866,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_adts.c:881,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_adts.c:884,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_adts.c:897,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_adts.c:901,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_adts.c:904,1
    CyclomaticComplexity: 99
    EdgeCount: 99
    ICount: 280
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 907
      start: 557
    functionDepth: 10
    functionLinenumber: 557
    functionLinenumberEnd: 907
    functionName: adts_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_bs_new
    - adts_dmx_check_dur
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_m4a_parse_program_config_element
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - adts_dmx_update_cts
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - memchr
    - gf_filter_pck_unref
    - adts_dmx_check_pid
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - memmove
    - id3dmx_flush
    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:911,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_adts.c:915,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_adts.c:916,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 909
    functionDepth: 3
    functionLinenumber: 909
    functionLinenumberEnd: 917
    functionName: adts_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:933,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_adts.c:943,1
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_adts.c:944,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_adts.c:945,1
    - Dst: adts_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_adts.c:949,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:958,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_adts.c:972,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_adts.c:973,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_adts.c:975,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 53
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 985
      start: 919
    functionDepth: 8
    functionLinenumber: 919
    functionLinenumberEnd: 985
    functionName: adts_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_adts.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - adts_dmx_sync_frame_bs
    - gf_bs_new
    - 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: 1014
      start: 1013
    functionDepth: 0
    functionLinenumber: 1013
    functionLinenumberEnd: 1014
    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: 1056
      start: 1053
    functionDepth: 0
    functionLinenumber: 1053
    functionLinenumberEnd: 1056
    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: 1061
      start: 1058
    functionDepth: 0
    functionLinenumber: 1058
    functionLinenumberEnd: 1061
    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_filter_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_framing_mode
    - gf_odf_vvc_cfg_read
    - gf_filter_pid_get_udta
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_remove
    - gf_odf_avc_cfg_read
    - gf_odf_avc_cfg_del
    - gf_filter_pid_check_caps
    - gf_odf_vvc_cfg_del
    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_SAFEALLOC
    - gf_list_enum
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ccenc_enqueue_cc_clear(GF_Filter *filter, u64 cts)
  - BBCount: 7
    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_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: 9
    EdgeCount: 9
    ICount: 31
    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_malloc
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_pck_get_duration
    - gf_list_enum
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - GF_SAFEALLOC
    - memset
    - gf_list_add
    - memcpy
    - gf_list_rem
    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_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_list_count
    - caption_frame_from_text
    - gf_filter_pck_merge_properties
    - CHECK_OOM
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_malloc
    - sei_free
    - gf_filter_get_udta
    - sei_render
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_list_insert
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_filter_pck_unref
    - gf_filter_pck_ref
    - gf_media_nalu_add_emulation_bytes
    - gf_list_enum
    - gf_bs_write_data
    - gf_error_to_string
    - gf_filter_pck_forward
    - gf_free
    - gf_media_nalu_emulation_bytes_add_count
    - GF_LOG
    - sei_render_size
    - sei_from_caption_frame
    - ccenc_enqueue_cc_clear
    - sei_from_caption_clear
    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_filter_get_udta
    - gf_list_last
    - gf_filter_pck_get_dts
    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:
    - ccenc_pair
    - gf_list_count
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_list_del_item
    - gf_timestamp_rescale
    - ccenc_forward_video
    - gf_filter_pck_get_cts
    - gf_timestamp_equal
    - gf_list_get
    - ccenc_can_use_frame
    - gf_timestamp_less
    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_list_count
    - gf_filter_pck_forward
    - gf_filter_connections_pending
    - gf_free
    - gf_list_last
    - gf_filter_get_udta
    - GF_LOG
    - ccenc_enqueue_cc
    - gf_filter_pck_ref
    - gf_filter_pid_set_eos
    - ccenc_forward_video
    - gf_list_add
    - gf_filter_pck_is_blocking_ref
    - ccenc_flush
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - gf_list_pop_back
    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:
    - ccenc_enqueue_cc_clear
    - gf_filter_get_udta
    - gf_list_new
    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_list_count
    - gf_free
    - gf_filter_pck_unref
    - sei_free
    - gf_filter_get_udta
    - GF_LOG
    - gf_list_del
    - gf_list_enum
    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_filter_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_laser_decoder_configure_stream
    - gf_filter_pid_is_filter_in_parents
    - gf_laser_decoder_remove_stream
    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_laser_decoder_new
    - gf_laser_decoder_set_clock
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - lsrdec_configure_pid
    - gf_filter_get_ipid
    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_pid_get_property
    - gf_filter_pid_set_eos
    - gf_laser_decode_has_conditionnals
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_set_info
    - gf_sc_check_sys_frame
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_timestamp_to_clocktime
    - gf_filter_pck_get_data
    - gf_filter_get_ipid
    - gf_sys_clock_high_res
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_laser_decode_au
    - gf_filter_pid_is_eos
    - GF_LOG
    - gf_filter_pck_get_timescale
    - gf_scene_attach_to_compositor
    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_type
    - gf_sys_is_cov_mode
    - gf_svg_get_system_paint_server_name
    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_filter_get_udta
    - gf_laser_decoder_del
    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: 276
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 276
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_bs_get_position
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_media_probe_iamf
    - gf_odf_vp_cfg_del
    - gf_odf_iamf_cfg_new
    - gf_bs_seek
    - gf_odf_av1_cfg_new
    - gf_odf_vp_cfg_new
    - gf_av1_get_obu_name
    - gf_media_parse_ivf_file_header
    - gf_media_probe_ivf
    - gf_av1_reset_state
    - aom_av1_parse_temporal_unit_from_section5
    - gf_sei_init_from_av1
    - gf_sei_loader_new
    - GF_LOG
    - gf_filter_setup_failure
    - gf_media_aom_probe_annexb
    - GF_4CC
    - gf_sei_loader_del
    - gf_4cc_to_str
    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_filter_pid_get_property
    - gf_bs_get_position
    - gf_media_parse_ivf_frame_header
    - gf_odf_iamf_cfg_new
    - GF_SAFEALLOC
    - gf_bs_set_logger
    - gf_av1_init_state
    - gf_bs_del
    - gf_bs_seek
    - gf_odf_av1_cfg_del
    - PROP_FRAC64
    - gf_bs_skip_bytes
    - gf_odf_av1_cfg_new
    - gf_bs_from_file
    - aom_iamf_parse_temporal_unit
    - gf_realloc
    - gf_iamf_reset_state
    - aom_av1_parse_temporal_unit_from_ivf
    - gf_fileio_is_main_thread
    - gf_odf_iamf_cfg_del
    - gf_log_tool_level_on
    - PROP_BOOL
    - gf_av1_reset_state
    - aom_av1_parse_temporal_unit_from_section5
    - gf_fclose
    - gf_iamf_init_state
    - aom_av1_parse_temporal_unit_from_annexb
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_fopen_ex
    - gf_opts_get_bool
    - strncmp
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void av1dmx_check_dur(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 14
    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:572,1
    - Dst: av1dmx_check_dur
      Src: /src/gpac/src/filters/reframe_av1.c:573,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_av1.c:595,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_av1.c:597,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 53
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 546
    functionDepth: 8
    functionLinenumber: 546
    functionLinenumberEnd: 617
    functionName: av1dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - GF_LOG
    - av1dmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    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:621,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_av1.c:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 619
    functionDepth: 1
    functionLinenumber: 619
    functionLinenumberEnd: 632
    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:640,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:641,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_av1.c:650,1
    - Dst: av1dmx_check_dur
      Src: /src/gpac/src/filters/reframe_av1.c:651,1
    - Dst: gf_odf_vp_cfg_write
      Src: /src/gpac/src/filters/reframe_av1.c:658,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:659,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:662,1
    - Dst: gf_list_pop_back
      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_free
      Src: /src/gpac/src/filters/reframe_av1.c:665,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:669,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_av1.c:670,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_av1.c:671,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframe_av1.c:672,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:674,1
    - Dst: gf_odf_av1_cfg_write
      Src: /src/gpac/src/filters/reframe_av1.c:677,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:691,1
    - Dst: gf_list_pop_back
      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_free
      Src: /src/gpac/src/filters/reframe_av1.c:694,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:701,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_av1.c:702,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_av1.c:703,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframe_av1.c:705,1
    - Dst: gf_odf_iamf_cfg_write
      Src: /src/gpac/src/filters/reframe_av1.c:708,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:711,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:715,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_av1.c:721,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:724,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:727,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:727,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:729,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/reframe_av1.c:729,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:732,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:732,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:735,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:735,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:737,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:737,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:739,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:739,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_av1.c:743,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:744,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_av1.c:744,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:748,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:748,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:751,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:751,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:755,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_av1.c:755,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:759,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:762,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:762,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:766,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_av1.c:766,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:769,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:769,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:772,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:772,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_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:780,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:781,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:781,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:785,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_av1.c:785,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:786,1
    - Dst: gf_av1_format_mdcv_to_mpeg
      Src: /src/gpac/src/filters/reframe_av1.c:791,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:792,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_av1.c:792,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/reframe_av1.c:793,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_UINT
      Src: /src/gpac/src/filters/reframe_av1.c:804,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_av1.c:805,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_av1.c:805,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 133
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 634
    functionDepth: 8
    functionLinenumber: 634
    functionLinenumberEnd: 808
    functionName: av1dmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - PROP_DATA_NO_COPY
    - av1dmx_check_dur
    - gf_odf_av1_cfg_write
    - gf_list_add
    - PROP_FRAC64
    - gf_crc_32
    - gf_odf_iamf_cfg_write
    - gf_av1_format_mdcv_to_mpeg
    - PROP_FRAC
    - gf_list_get
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - PROP_LONGSINT
    - PROP_BOOL
    - gf_list_pop_back
    - PROP_DATA
    - gf_odf_vp_cfg_write
    - gf_free
    - gf_filter_pid_set_property
    - PROP_UINT
    - 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:820,1
    - Dst: gf_media_parse_ivf_frame_header
      Src: /src/gpac/src/filters/reframe_av1.c:821,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:824,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:825,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:826,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:834,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_av1.c:843,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:845,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:849,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:856,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_av1.c:861,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:863,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_av1.c:866,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:869,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:871,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:874,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_av1.c:876,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:877,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:879,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_av1.c:881,1
    - Dst: av1dmx_update_cts
      Src: /src/gpac/src/filters/reframe_av1.c:883,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 56
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 810
    functionDepth: 9
    functionLinenumber: 810
    functionLinenumberEnd: 885
    functionName: av1dmx_parse_ivf
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - GF_LOG
    - gf_media_parse_ivf_frame_header
    - av1dmx_check_pid
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_read_data
    - av1dmx_update_cts
    - gf_filter_pck_set_sap
    - gf_bs_seek
    - gf_bs_available
    - 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:899,1
    - Dst: gf_media_parse_ivf_frame_header
      Src: /src/gpac/src/filters/reframe_av1.c:900,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:903,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:907,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:908,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:909,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:918,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_av1.c:927,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:928,1
    - Dst: gf_vp9_parse_superframe
      Src: /src/gpac/src/filters/reframe_av1.c:933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:935,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:940,1
    - Dst: gf_vp9_parse_sample
      Src: /src/gpac/src/filters/reframe_av1.c:941,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:942,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:945,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:947,1
    - Dst: gf_bs_get_position
      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:953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:955,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:957,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:959,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:961,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:965,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/reframe_av1.c:966,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:969,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:976,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_av1.c:980,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:982,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_av1.c:985,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:988,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:990,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:994,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/reframe_av1.c:1007,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:1010,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_av1.c:1011,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_av1.c:1012,1
    - Dst: av1dmx_update_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1014,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 95
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 887
    functionDepth: 9
    functionLinenumber: 887
    functionLinenumberEnd: 1016
    functionName: av1dmx_parse_vp9
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - GF_LOG
    - gf_media_parse_ivf_frame_header
    - av1dmx_check_pid
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_read_data
    - av1dmx_update_cts
    - gf_vp9_parse_superframe
    - gf_fatal_assert
    - gf_filter_pck_set_sap
    - gf_bs_seek
    - gf_bs_available
    - gf_vp9_parse_sample
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err av1dmx_parse_vp9(GF_Filter *filter, GF_AV1DmxCtx *ctx)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1029,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/reframe_av1.c:1032,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/reframe_av1.c:1033,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/reframe_av1.c:1034,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1039,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1041,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_av1.c:1046,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_av1.c:1050,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1052,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:1054,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:1056,1
    - Dst: gf_filter_pck_set_switch_frame
      Src: /src/gpac/src/filters/reframe_av1.c:1058,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1061,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/reframe_av1.c:1063,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_av1.c:1064,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_av1.c:1068,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1071,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/reframe_av1.c:1084,1
    - Dst: gf_sei_load_from_state
      Src: /src/gpac/src/filters/reframe_av1.c:1088,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_av1.c:1090,1
    - Dst: av1dmx_update_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1092,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1093,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1094,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1098
      start: 1018
    functionDepth: 8
    functionLinenumber: 1018
    functionLinenumberEnd: 1098
    functionName: av1dmx_parse_flush_sample
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_roll_info
    - gf_free
    - gf_filter_pck_merge_properties
    - gf_sei_load_from_state
    - GF_LOG
    - gf_bs_get_size
    - gf_filter_pck_set_switch_frame
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_cts
    - av1dmx_update_cts
    - gf_bs_get_content_no_truncate
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_duration
    - gf_av1_reset_state
    - memcpy
    - 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:1109,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1113,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/filters/reframe_av1.c:1116,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1121,1
    - Dst: aom_av1_parse_temporal_unit_from_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:1124,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1126,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:1127,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1133,1
    - Dst: aom_av1_parse_temporal_unit_from_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:1136,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:1144,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1160,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1162,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1172,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1175
      start: 1099
    functionDepth: 9
    functionLinenumber: 1099
    functionLinenumberEnd: 1175
    functionName: av1dmx_parse_av1
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - aom_av1_parse_temporal_unit_from_ivf
    - aom_av1_parse_temporal_unit_from_annexb
    - GF_LOG
    - av1dmx_check_pid
    - av1dmx_parse_flush_sample
    - gf_av1_reset_state
    - gf_bs_seek
    - aom_av1_parse_temporal_unit_from_section5
    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:1182,1
    - Dst: aom_iamf_parse_temporal_unit
      Src: /src/gpac/src/filters/reframe_av1.c:1186,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1188,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_av1.c:1189,1
    - Dst: av1dmx_check_pid
      Src: /src/gpac/src/filters/reframe_av1.c:1194,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_av1.c:1205,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1207,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1211,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_AV1DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1213
      start: 1177
    functionDepth: 9
    functionLinenumber: 1177
    functionLinenumberEnd: 1213
    functionName: av1dmx_parse_iamf
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - GF_LOG
    - av1dmx_check_pid
    - av1dmx_parse_flush_sample
    - aom_iamf_parse_temporal_unit
    - gf_bs_seek
    - 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:1220,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1221,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/reframe_av1.c:1224,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/reframe_av1.c:1225,1
    - Dst: av1dmx_check_format
      Src: /src/gpac/src/filters/reframe_av1.c:1229,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:1233,1
    - Dst: av1dmx_parse_iamf
      Src: /src/gpac/src/filters/reframe_av1.c:1236,1
    - Dst: av1dmx_parse_vp9
      Src: /src/gpac/src/filters/reframe_av1.c:1238,1
    - Dst: av1dmx_parse_av1
      Src: /src/gpac/src/filters/reframe_av1.c:1240,1
    - Dst: av1dmx_parse_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:1242,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1246,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/reframe_av1.c:1256,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_av1.c:1257,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: 1263
      start: 1215
    functionDepth: 10
    functionLinenumber: 1215
    functionLinenumberEnd: 1263
    functionName: av1dmx_process_buffer
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - av1dmx_parse_av1
    - av1dmx_parse_vp9
    - av1dmx_parse_iamf
    - av1dmx_check_format
    - gf_bs_new
    - gf_log_tool_level_on
    - gf_bs_set_logger
    - gf_fatal_assert
    - memmove
    - gf_bs_reassign_buffer
    - av1dmx_parse_ivf
    - gf_bs_available
    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:1268,1
    - Dst: av1dmx_check_dur
      Src: /src/gpac/src/filters/reframe_av1.c:1277,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1282,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_av1.c:1284,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1288,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_av1.c:1294,1
    - Dst: av1dmx_parse_flush_sample
      Src: /src/gpac/src/filters/reframe_av1.c:1295,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_av1.c:1299,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_av1.c:1300,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_av1.c:1308,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_av1.c:1312,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_av1.c:1320,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_av1.c:1325,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1327,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1332,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1335,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1340,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_av1.c:1347,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_av1.c:1351,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_av1.c:1353,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_av1.c:1359,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1361,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1363,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_av1.c:1366,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1368,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1370,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_av1.c:1377,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_av1.c:1379,1
    - Dst: av1dmx_process_buffer
      Src: /src/gpac/src/filters/reframe_av1.c:1381,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_av1.c:1382,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 91
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1265
    functionDepth: 11
    functionLinenumber: 1265
    functionLinenumberEnd: 1384
    functionName: av1dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pid_would_block
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - av1dmx_check_dur
    - av1dmx_process_buffer
    - gf_filter_pid_set_eos
    - av1dmx_parse_flush_sample
    - gf_assert
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - gf_filter_pid_drop_packet
    - gf_filter_pck_ref_props
    - gf_realloc
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_framing
    - memcpy
    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:1388,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:1389,1
    - Dst: gf_iamf_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:1392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1386
    functionDepth: 1
    functionLinenumber: 1386
    functionLinenumberEnd: 1395
    functionName: av1dmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_av1_init_state
    - gf_iamf_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: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_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1403,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1404,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:1405,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1406,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1407,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1409,1
    - Dst: gf_iamf_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1411,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1412,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:1413,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1414,1
    - Dst: gf_sei_loader_del
      Src: /src/gpac/src/filters/reframe_av1.c:1416,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 25
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1417
      start: 1397
    functionDepth: 4
    functionLinenumber: 1397
    functionLinenumberEnd: 1417
    functionName: av1dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_get_udta
    - gf_odf_iamf_cfg_del
    - gf_odf_vp_cfg_del
    - gf_bs_del
    - gf_av1_reset_state
    - gf_odf_av1_cfg_del
    - gf_sei_loader_del
    - gf_iamf_reset_state
    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:1421,1
    - Dst: gf_log_get_tool_level
      Src: /src/gpac/src/filters/reframe_av1.c:1425,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_av1.c:1426,1
    - Dst: gf_media_probe_iamf
      Src: /src/gpac/src/filters/reframe_av1.c:1428,1
    - Dst: gf_media_probe_ivf
      Src: /src/gpac/src/filters/reframe_av1.c:1432,1
    - Dst: gf_media_aom_probe_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:1436,1
    - Dst: gf_media_aom_probe_annexb
      Src: /src/gpac/src/filters/reframe_av1.c:1440,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_av1.c:1448,1
    - Dst: gf_av1_init_state
      Src: /src/gpac/src/filters/reframe_av1.c:1451,1
    - Dst: gf_odf_av1_cfg_new
      Src: /src/gpac/src/filters/reframe_av1.c:1452,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_av1.c:1453,1
    - Dst: aom_av1_parse_temporal_unit_from_section5
      Src: /src/gpac/src/filters/reframe_av1.c:1454,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1456,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1456,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1457,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_av1.c:1474,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1482,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filters/reframe_av1.c:1489,1
    - Dst: gf_av1_reset_state
      Src: /src/gpac/src/filters/reframe_av1.c:1490,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_av1.c:1491,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_av1.c:1495,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_av1.c:1497,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 70
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1419
    functionDepth: 5
    functionLinenumber: 1419
    functionLinenumberEnd: 1500
    functionName: av1dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_av1.c
    functionUses: 0
    functionsReached:
    - gf_log_set_tool_level
    - gf_odf_av1_cfg_new
    - gf_list_count
    - gf_free
    - gf_media_probe_iamf
    - gf_bs_available
    - gf_media_aom_probe_annexb
    - gf_bs_new
    - gf_log_get_tool_level
    - GF_SAFEALLOC
    - gf_av1_init_state
    - gf_bs_del
    - gf_av1_reset_state
    - gf_odf_av1_cfg_del
    - aom_av1_parse_temporal_unit_from_section5
    - gf_media_probe_ivf
    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: 1534
      start: 1533
    functionDepth: 0
    functionLinenumber: 1533
    functionLinenumberEnd: 1534
    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: 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: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1579
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1579
    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:68,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/write_tx3g.c:73,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/write_tx3g.c:78,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:81,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:86,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/write_tx3g.c:88,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/write_tx3g.c:95,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/write_tx3g.c:97,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:106,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/write_tx3g.c:106,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:108,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/write_tx3g.c:108,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:109,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/write_tx3g.c:112,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/write_tx3g.c:112,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:118,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:121,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/write_tx3g.c:122,1
    - Dst: gf_odf_get_text_config
      Src: /src/gpac/src/filters/write_tx3g.c:124,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:126,1
    - Dst: gf_odf_tx3g_read
      Src: /src/gpac/src/filters/write_tx3g.c:132,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:134,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/write_tx3g.c:141,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/write_tx3g.c:146,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/write_tx3g.c:146,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:149,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/write_tx3g.c:152,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:154,1
    - Dst: tx3gmx_write_config
      Src: /src/gpac/src/filters/write_tx3g.c:158,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:161,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:163,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 82
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 64
    functionDepth: 5
    functionLinenumber: 64
    functionLinenumberEnd: 166
    functionName: tx3gmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_codecid_name
    - gf_filter_pid_set_framing_mode
    - gf_list_add
    - gf_filter_get_udta
    - gf_odf_tx3g_read
    - gf_crc_32
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_odf_get_text_config
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pid_check_caps
    - gf_filter_pid_set_property_str
    - gf_odf_desc_del
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_odf_desc_new
    - tx3gmx_write_config
    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:172,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: 183
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 183
    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:187,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_tx3g.c:191,1
    - Dst: tx3gmx_get_stsd
      Src: /src/gpac/src/filters/write_tx3g.c:193,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:195,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:197,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:202,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:203,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:205,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:207,1
    - Dst: dump_ttxt_header
      Src: /src/gpac/src/filters/write_tx3g.c:210,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:212,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_tx3g.c:214,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_tx3g.c:215,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/write_tx3g.c:217,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/write_tx3g.c:218,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:219,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/write_tx3g.c:219,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/write_tx3g.c:222,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - TX3GMxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 185
    functionDepth: 6
    functionLinenumber: 185
    functionLinenumberEnd: 223
    functionName: tx3gmx_write_config
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_fclose
    - gf_malloc
    - PROP_DATA_NO_COPY
    - tx3gmx_get_stsd
    - gf_fseek
    - gf_filter_pid_set_property
    - gf_ftell
    - gf_file_temp
    - gf_fread
    - gf_list_get
    - gf_fprintf
    - dump_ttxt_header
    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:235,1
    - Dst: gf_filter_pid_get_property
      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:244,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:250,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:253,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:260,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:262,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:264,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/filters/write_tx3g.c:266,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:267,1
    - Dst: tx3g_format_time
      Src: /src/gpac/src/filters/write_tx3g.c:268,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:269,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:272,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/write_tx3g.c:277,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/write_tx3g.c:283,1
    - Dst: gf_utf8_mbstowcs
      Src: /src/gpac/src/filters/write_tx3g.c:288,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:311,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:312,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:313,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:314,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:316,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/filters/write_tx3g.c:316,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:320,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:328,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:379,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:385,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:386,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:387,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:390,1
    - Dst: gf_color_get_name
      Src: /src/gpac/src/filters/write_tx3g.c:390,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:392,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:399,1
    - Dst: gf_utf8_wcstombs
      Src: /src/gpac/src/filters/write_tx3g.c:407,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:410,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:416,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:418,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/write_tx3g.c:419,1
    - Dst: gf_fprintf
      Src: /src/gpac/src/filters/write_tx3g.c:423,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: 425
      start: 230
    functionDepth: 3
    functionLinenumber: 230
    functionLinenumberEnd: 425
    functionName: dump_ttxt_sample_ttml
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - tx3g_format_time
    - gf_free
    - gf_malloc
    - gf_utf8_mbstowcs
    - gf_utf8_wcstombs
    - gf_color_get_name
    - gf_fprintf
    - memcpy
    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: 26
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/write_tx3g.c:429,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/write_tx3g.c:437,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/write_tx3g.c:439,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/write_tx3g.c:440,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/write_tx3g.c:446,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/write_tx3g.c:450,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_tx3g.c:452,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_tx3g.c:458,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_tx3g.c:462,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_tx3g.c:465,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/write_tx3g.c:466,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:474,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/write_tx3g.c:477,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_tx3g.c:481,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/write_tx3g.c:482,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/write_tx3g.c:484,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/write_tx3g.c:486,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/write_tx3g.c:492,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/write_tx3g.c:493,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/write_tx3g.c:494,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/write_tx3g.c:495,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/write_tx3g.c:501,1
    - Dst: gf_isom_parse_text_sample
      Src: /src/gpac/src/filters/write_tx3g.c:510,1
    - Dst: gf_file_temp
      Src: /src/gpac/src/filters/write_tx3g.c:514,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/write_tx3g.c:519,1
    - Dst: tx3gmx_get_stsd
      Src: /src/gpac/src/filters/write_tx3g.c:524,1
    - Dst: dump_ttxt_sample_srt
      Src: /src/gpac/src/filters/write_tx3g.c:530,1
    - Dst: dump_ttxt_sample_ttml
      Src: /src/gpac/src/filters/write_tx3g.c:532,1
    - Dst: dump_ttxt_sample
      Src: /src/gpac/src/filters/write_tx3g.c:536,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_tx3g.c:536,1
    - Dst: gf_isom_delete_text_sample
      Src: /src/gpac/src/filters/write_tx3g.c:539,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_tx3g.c:550,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/write_tx3g.c:551,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/write_tx3g.c:552,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/write_tx3g.c:554,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/write_tx3g.c:555,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/write_tx3g.c:556,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/write_tx3g.c:557,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/write_tx3g.c:558,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/write_tx3g.c:559,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/write_tx3g.c:560,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/write_tx3g.c:561,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/write_tx3g.c:563,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/write_tx3g.c:563,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/write_tx3g.c:566,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/write_tx3g.c:568,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/write_tx3g.c:571,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/write_tx3g.c:572,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/write_tx3g.c:573,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/write_tx3g.c:576,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 109
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 427
    functionDepth: 7
    functionLinenumber: 427
    functionLinenumberEnd: 579
    functionName: tx3gmx_process
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_read_u8
    - gf_filter_pck_new_alloc
    - dump_ttxt_sample_srt
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - tx3gmx_get_stsd
    - gf_filter_pid_drop_packet
    - gf_filter_pck_set_property
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - dump_ttxt_sample_ttml
    - gf_filter_pck_get_data
    - gf_file_temp
    - gf_list_get
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_ftell
    - gf_bs_read_int
    - PROP_BOOL
    - gf_set_progress
    - gf_filter_pck_set_sap
    - dump_ttxt_sample
    - gf_isom_delete_text_sample
    - gf_filter_pid_is_eos
    - gf_bs_read_u16
    - gf_filter_pck_forward
    - gf_fclose
    - gf_filter_pck_get_property
    - gf_filter_pck_set_framing
    - gf_fseek
    - gf_filter_pck_get_timescale
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_dts
    - gf_isom_parse_text_sample
    - gf_fread
    - gf_bs_available
    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:583,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/write_tx3g.c:584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 586
    functionName: tx3gmx_initialize
    functionSourceFile: /src/gpac/src/filters/write_tx3g.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gf_bs_new
    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:590,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/write_tx3g.c:591,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/write_tx3g.c:592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 588
    functionDepth: 3
    functionLinenumber: 588
    functionLinenumberEnd: 593
    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: 609
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 609
    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: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    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:648,1
    - Dst: tx3gmx_initialize
      Src: /src/gpac/src/filters/write_tx3g.c:649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 646
    functionDepth: 2
    functionLinenumber: 646
    functionLinenumberEnd: 652
    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: 671
      start: 668
    functionDepth: 0
    functionLinenumber: 668
    functionLinenumberEnd: 671
    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:688,1
    - Dst: tx3gmx_initialize
      Src: /src/gpac/src/filters/write_tx3g.c:689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 686
    functionDepth: 2
    functionLinenumber: 686
    functionLinenumberEnd: 692
    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: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    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:727,1
    - Dst: tx3gmx_initialize
      Src: /src/gpac/src/filters/write_tx3g.c:728,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 725
    functionDepth: 2
    functionLinenumber: 725
    functionLinenumberEnd: 731
    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: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    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: 759
      start: 756
    functionDepth: 0
    functionLinenumber: 756
    functionLinenumberEnd: 759
    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: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    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: 767
      start: 764
    functionDepth: 0
    functionLinenumber: 764
    functionLinenumberEnd: 767
    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: 771
      start: 768
    functionDepth: 0
    functionLinenumber: 768
    functionLinenumberEnd: 771
    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_pck_merge_properties
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - memcpy
    - gf_filter_pck_send
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_get_udta
    - GF_4CC
    - gf_filter_pid_set_property
    - strcmp
    - gf_filter_pid_new
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - gf_crc_32
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_eos
    - gf_bs_write_int
    - gf_bs_reassign_buffer
    - gf_filter_pck_get_data
    - gf_filter_pck_set_byte_offset
    - gf_filter_pid_drop_packet
    - gf_filter_pck_has_properties
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - memcpy
    - gf_bs_write_u8
    - gf_filter_pck_send
    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_filter_get_udta
    - gf_bs_new
    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:
    - AVI_audio_bits
    - gf_list_count
    - gf_4cc_parse
    - PROP_DATA_NO_COPY
    - GF_SAFEALLOC
    - AVI_video_height
    - AVI_audio_format
    - gf_m4a_get_profile
    - gf_list_add
    - AVI_video_compressor
    - PROP_FRAC64
    - AVI_video_frames
    - AVI_audio_channels
    - AVI_frame_rate
    - AVI_read_audio
    - gf_mp3_object_type_indication
    - AVI_audio_rate
    - AVI_audio_tracks
    - PROP_FRAC
    - gf_list_get
    - gf_filter_pid_new
    - AVI_set_audio_position
    - AVI_audio_mp3rate
    - PROP_BOOL
    - AVI_set_audio_track
    - AVI_video_width
    - gf_filter_pid_set_property_str
    - PROP_DATA
    - gf_m4a_write_config
    - GF_LOG
    - stricmp
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - memset
    - gf_media_get_video_timing
    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_filter_pid_get_property
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_pid_remove
    - strcmp
    - gf_list_get
    - gf_filter_pid_check_caps
    - gf_list_pop_back
    - AVI_close
    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:
    - gf_list_count
    - AVI_set_video_position
    - gf_filter_get_udta
    - AVI_seek_start
    - gf_filter_post_process_task
    - gf_sys_is_cov_mode
    - gf_list_get
    - AVI_set_audio_position
    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:
    - gf_filter_pck_new_alloc
    - gf_list_count
    - AVI_audio_size
    - AVI_get_video_position
    - gf_filter_pid_set_eos
    - AVI_read_frame
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_fopen
    - gf_filter_post_process_task
    - AVI_read_audio
    - AVI_frame_size
    - gf_fsize
    - avidmx_setup
    - gf_list_get
    - gf_filter_reporting_enabled
    - gf_filter_pck_send
    - AVI_open_input_file
    - gf_file_exists
    - gf_filter_pck_set_cts
    - gf_ftell
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - AVI_set_audio_track
    - sprintf
    - gf_fclose
    - gf_filter_pck_set_framing
    - gf_filter_setup_failure
    - gf_filter_pck_set_byte_offset
    - gf_filter_update_status
    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_filter_get_udta
    - gf_list_new
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - GF_LOG
    - gf_list_pop_back
    - AVI_close
    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:
    - PROP_VEC2I_INT
    - PROP_UINT
    - gf_filter_pid_set_property
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - PROP_VEC2I_INT
    - tilesplit_update_pid_props
    - gf_file_basename
    - gf_filter_pid_set_name
    - gf_hevc_read_sps
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_remove
    - gf_hevc_read_vps
    - gf_list_get
    - gf_filter_pid_new
    - gf_realloc
    - memcpy
    - gf_odf_hevc_cfg_write
    - gf_filter_pid_copy_properties
    - gf_hevc_read_pps
    - gf_filter_pid_get_name
    - PROP_BOOL
    - gf_filter_pid_set_property_str
    - PROP_DATA
    - sprintf
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - memset
    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_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - tilesplit_update_pid_props
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_hevc_parse_nalu
    - memcpy
    - gf_filter_pck_send
    - tilesplit_set_eos
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - hevc_get_tile_id
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - GF_LOG
    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_bs_del
    - gf_free
    - 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_u8
    - gf_bs_get_position
    - gf_latm_get_value
    - gf_m4a_parse_config
    - gf_bs_peek_bits
    - gf_bs_read_data
    - gf_bs_read_int
    - gf_bs_seek
    - gf_bs_available
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_bs_get_position
    - gf_fclose
    - GF_ARRAY_LENGTH
    - gf_fileio_is_main_thread
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_del
    - PROP_FRAC64
    - gf_fopen_ex
    - latm_dmx_sync_frame_bs
    - memset
    - gf_realloc
    - strncmp
    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
    - gf_m4a_write_config
    - PROP_DATA_NO_COPY
    - GF_LOG
    - gf_timestamp_rescale
    - gf_filter_pid_set_property
    - PROP_UINT
    - latm_dmx_check_dur
    - PROP_BOOL
    - gf_filter_pid_new
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void latm_dmx_check_pid(GF_Filter *filter, GF_LATMDmxCtx *ctx)
  - BBCount: 13
    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:424,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_latm.c:426,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 381
    functionDepth: 1
    functionLinenumber: 381
    functionLinenumberEnd: 445
    functionName: latm_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - 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:449,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_LATMDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 447
    functionDepth: 1
    functionLinenumber: 447
    functionLinenumberEnd: 459
    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:463,1
    - Dst: latm_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_latm.c:479,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_latm.c:484,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_latm.c:486,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_latm.c:489,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_latm.c:490,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_latm.c:498,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_latm.c:503,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_latm.c:514,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_latm.c:516,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_latm.c:520,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_latm.c:521,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_latm.c:524,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:533,1
    - Dst: latm_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_latm.c:535,1
    - Dst: latm_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_latm.c:548,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_latm.c:558,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_latm.c:561,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_latm.c:563,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_latm.c:565,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_latm.c:567,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_latm.c:567,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_latm.c:569,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_latm.c:570,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_latm.c:582,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_latm.c:584,1
    - Dst: latm_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_latm.c:586,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:589,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_latm.c:592,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_latm.c:595,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_latm.c:601,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_latm.c:603,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_latm.c:610,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_latm.c:612,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_latm.c:613,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 125
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 461
    functionDepth: 11
    functionLinenumber: 461
    functionLinenumberEnd: 620
    functionName: latm_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_assert
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - latm_dmx_update_cts
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - latm_dmx_check_dur
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - latm_dmx_sync_frame_bs
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - gf_filter_pck_set_framing
    - latm_dmx_check_pid
    - memmove
    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:624,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_latm.c:627,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_latm.c:628,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 622
    functionDepth: 3
    functionLinenumber: 622
    functionLinenumberEnd: 629
    functionName: latm_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:637,1
    - Dst: latm_dmx_sync_frame_bs
      Src: /src/gpac/src/filters/reframe_latm.c:640,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/reframe_latm.c:641,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_latm.c:655,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 631
    functionDepth: 9
    functionLinenumber: 631
    functionLinenumberEnd: 661
    functionName: latm_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_latm.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_bs_del
    - gf_bs_new
    - latm_dmx_sync_frame_bs
    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: 683
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 683
    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: 710
      start: 707
    functionDepth: 0
    functionLinenumber: 707
    functionLinenumberEnd: 710
    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: 715
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 715
    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_list_count
    - gf_list_get
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_hevc_parse_nalu
    - gf_vvc_parse_nalu
    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_del
    - gf_odf_vvc_cfg_read
    - GF_ARRAY_LENGTH
    - nalumx_get_vvc_ps
    - gf_bs_get_content
    - gf_odf_hevc_cfg_read
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_odf_avc_cfg_read
    - nalumx_get_hevc_ps
    - gf_odf_avc_cfg_del
    - nalumx_write_ps_list
    - gf_odf_vvc_cfg_del
    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
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - gf_crc_32
    - nalumx_make_inband_header
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_get_property_str
    - gf_filter_pid_check_caps
    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_vvc_parse_nalu
    - gf_hevc_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:671,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/rewrite_nalu.c:672,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 200
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 419
    functionDepth: 10
    functionLinenumber: 419
    functionLinenumberEnd: 676
    functionName: nalumx_process
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_bs_write_int
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - snprintf
    - gf_filter_update_status
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_filter_reporting_enabled
    - memcpy
    - gf_filter_pck_send
    - nalumx_is_nal_skip
    - gf_bs_read_int
    - gf_bs_write_data
    - gf_filter_pck_set_sap
    - gf_filter_pck_has_properties
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - gf_free
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pck_set_byte_offset
    - gf_bs_write_u32
    - gf_bs_available
    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:680,1
    - Dst: gf_sys_old_arch_compat
      Src: /src/gpac/src/filters/rewrite_nalu.c:686,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/rewrite_nalu.c:689,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 678
    functionDepth: 1
    functionLinenumber: 678
    functionLinenumberEnd: 691
    functionName: nalumx_initialize
    functionSourceFile: /src/gpac/src/filters/rewrite_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_add_status_metric
    - 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_bs_del
    - gf_free
    - 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:
    - cudaGetErrorEnum
    - GF_LOG
    - gf_assert
    - gf_th_id
    - 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_list_count
    - gf_list_get
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_mx_v
    - gf_list_pop_back
    - 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_copy_properties
    - PROP_UINT
    - gf_filter_pid_set_property
    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:
    - GF_LOG
    - cuvidDestroyDecoder
    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_list_count
    - nvdec_flush_frame
    - gf_list_pop_front
    - GF_LOG
    - nvdec_init_decoder
    - load_inactive_dec
    - update_pix_fmt
    - gf_assert
    - gf_filter_pid_set_property
    - nvdec_destroy_decoder
    - PROP_UINT
    - nvdec_copy_props
    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:
    - GF_LOG
    - cudaGetErrorEnum
    - cuvidDecodePicture
    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_count
    - GF_LOG
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    - gf_list_pop_back
    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_bs_write_u32
    - gf_bs_write_data
    - gf_list_get
    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_list_count
    - gf_free
    - gf_odf_hevc_cfg_del
    - nvdec_store_paramlist
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_odf_avc_cfg_del
    - gf_list_get
    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_filter_pid_get_property
    - cudaGetErrorEnum
    - GF_LOG
    - cuCtxPopCurrent
    - load_inactive_dec
    - cuvidCreateVideoParser
    - gf_odf_hevc_cfg_read
    - nvdec_store_xps
    - gf_odf_avc_cfg_read
    - cuCtxPushCurrent
    - memset
    - 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_get_property
    - gf_filter_pid_set_framing_mode
    - cuDeviceGet
    - gf_assert
    - cuCtxCreate
    - gf_list_add
    - cuDeviceGetName
    - gf_filter_get_udta
    - gf_crc_32
    - GET_GLFUN
    - gf_filter_pid_remove
    - gf_mx_v
    - gf_filter_pid_new
    - cuGLCtxCreate
    - gf_mx_new
    - gf_mx_p
    - nvdec_copy_props
    - gf_filter_request_opengl
    - gf_list_new
    - gf_filter_pid_check_caps
    - cudaGetErrorEnum
    - gf_error_to_string
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - cuDeviceComputeCapability
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - GF_LOG
    - cuvidDestroyVideoParser
    - gf_assert
    - nvdec_destroy_decoder
    - gf_mx_p
    - gf_mx_v
    - gf_list_add
    - gf_list_pop_back
    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_count
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_merge_properties
    - gf_filter_pck_unref
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_interlaced
    - gf_list_get
    - 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_list_count
    - nvdec_flush_frame
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_sap
    - gf_bs_new
    - nvdec_destroy_decoder
    - gf_bs_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_get_udta
    - gf_list_pop_front
    - nvdec_init_decoder
    - gf_filter_pck_get_data
    - gf_filter_pck_get_cts
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - gf_filter_pck_ref_props
    - cudaGetErrorEnum
    - gf_filter_pid_is_eos
    - cuvidParseVideoData
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - nvdec_reset_pcks
    - gf_bs_write_u32
    - cuCtxPushCurrent
    - cuCtxPopCurrent
    - memset
    - nvdec_configure_stream
    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_filter_pck_discard
    - gf_filter_pck_new_alloc
    - cuvidMapVideoFrame
    - cudaGetErrorEnum
    - cuMemcpy2D
    - GF_LOG
    - nvdec_send_hw_frame
    - gf_assert
    - MIN
    - gf_filter_pck_get_seek_flag
    - nvdec_merge_pck_props
    - memset
    - gf_list_add
    - cuvidUnmapVideoFrame
    - gf_filter_pck_send
    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:
    - memset
    - gf_list_add
    - gf_filter_pck_get_frame_interface
    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:
    - gf_assert
    - glBindBuffer
    - cuvidUnmapVideoFrame
    - cuGLRegisterBufferObject
    - glTexSubImage2D
    - glPixelTransferf
    - glBufferData
    - cuvidMapVideoFrame
    - cuMemcpy2D
    - glDeleteBuffers
    - cuGLUnmapBufferObject
    - glPixelStorei
    - cudaGetErrorEnum
    - cuGLMapBufferObject
    - cuGLUnregisterBufferObject
    - GF_LOG
    - glDeleteTextures
    - MIN
    - glTexImage2D
    - glGenTextures
    - cuCtxPushCurrent
    - cuCtxPopCurrent
    - memset
    - glGenBuffers
    - glBindTexture
    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:
    - cuvidMapVideoFrame
    - cuMemcpy2D
    - GF_LOG
    - MIN
    - memset
    - cuCtxPushCurrent
    - cuCtxPopCurrent
    - cudaGetErrorEnum
    - gf_realloc
    - cuvidUnmapVideoFrame
    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:
    - gf_filter_pck_discard
    - gf_list_count
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_filter_pck_get_seek_flag
    - nvdec_merge_pck_props
    - gf_filter_pck_new_frame_interface
    - 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:
    - cuDeviceGetCount
    - GF_LOG
    - cuInit
    - cudaGetErrorEnum
    - gf_opts_get_key
    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_filter_get_udta
    - gf_list_new
    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:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - cuvidDestroyVideoParser
    - nvdec_reset_pcks
    - nvdec_destroy_decoder
    - gf_mx_del
    - gf_list_pop_back
    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:
    - cuUninit
    - cuCtxDestroy
    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:
    - init_cuda_sdk
    - gf_opts_get_bool
    - gf_opts_get_key
    - strstr
    - gf_opts_set_key
    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:
    - CallObjectMethod
    - NewStringUTF
    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:
    - GetObjectClass
    - DeleteLocalRef
    - FindClass
    - GetMethodID
    - 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:
    - GF_LOG
    - GetJavaVM
    - 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:
    - NewGlobalRef
    - HandleJNIError
    - DeleteLocalRef
    - GetJavaVM
    - GetEnv
    - FindClass
    - AttachCurrentThread
    - CallVoidMethod
    - ANativeWindow_fromSurface
    - GetMethodID
    - NewObject
    - 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:
    - GetStringUTFChars
    - HandleJNIError
    - DeleteLocalRef
    - ExceptionCheck
    - CallObjectMethod
    - gf_strdup
    - ReleaseStringUTFChars
    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
    - NewGlobalRef
    - HandleJNIError
    - DeleteLocalRef
    - GetJavaVM
    - GetEnv
    - FindClass
    - AttachCurrentThread
    - CallStaticObjectMethod
    - CallVoidMethod
    - ExceptionCheck
    - GetMethodID
    - NewObject
    - GetStaticMethodID
    - mcdec_get_decoder_name
    - NewStringUTF
    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
    - GetJavaVM
    - GetEnv
    - AttachCurrentThread
    - CallVoidMethod
    - 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
    - DeleteLocalRef
    - GetJavaVM
    - GetEnv
    - AttachCurrentThread
    - CallVoidMethod
    - ExceptionCheck
    - NewFloatArray
    - ReleaseFloatArrayElements
    - GetArrayLength
    - GetFloatArrayElements
    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:
    - GetJavaVM
    - GetEnv
    - AttachCurrentThread
    - DetachCurrentThread
    - DeleteGlobalRef
    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_filter_pid_get_property
    - GF_FEVT_INIT
    - naludmx_finalize_au_flags
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_sei_init_from_hevc
    - naludmx_enqueue_or_dispatch
    - strstr
    - naludmx_reset_param_sets
    - gf_filter_get_udta
    - gf_sei_init_from_vvc
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - PROP_BOOL
    - gf_filter_pid_check_caps
    - gf_sei_init_from_avc
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    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_read_ue
    - gf_bs_available
    - 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_filter_pid_get_property
    - gf_bs_get_position
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_vvc_parse_nalu_bs
    - PROP_FRAC64
    - gf_bs_from_file
    - gf_realloc
    - naludmx_next_start_code
    - gf_bs_enable_emulation_byte_removal
    - gf_fileio_is_main_thread
    - naludmx_probe_recovery_sei
    - gf_hevc_parse_nalu_bs
    - PROP_BOOL
    - gf_free
    - gf_fclose
    - gf_bs_align
    - GF_LOG
    - gf_avc_parse_nalu
    - gf_filter_pid_set_property
    - gf_fopen_ex
    - gf_opts_get_bool
    - strncmp
    - gf_bs_available
    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:
    - PROP_DATA_NO_COPY
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_filter_pid_set_info_str
    - gf_bs_new
    - gf_bs_del
    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:
    - naludmx_hevc_set_parall_type
    - gf_list_count
    - gf_odf_hevc_cfg_del
    - naludmx_add_param_nalu
    - gf_odf_hevc_cfg_new
    - gf_list_get
    - gf_list_reset
    - gf_odf_hevc_cfg_write
    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_list_count
    - gf_odf_vvc_cfg_new
    - gf_free
    - gf_malloc
    - gf_odf_vvc_cfg_write
    - naludmx_add_param_nalu
    - gf_media_get_reduced_frame_rate
    - gf_list_get
    - memcpy
    - gf_list_reset
    - gf_odf_vvc_cfg_del
    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_count
    - gf_odf_avc_cfg_write
    - GF_LOG
    - gf_list_new
    - gf_avcc_use_extensions
    - gf_odf_avc_cfg_del
    - gf_list_get
    - gf_list_add
    - gf_list_reset
    - 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:
    - PROP_DATA
    - gf_crc_32
    - gf_filter_pid_set_property
    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:
    - PROP_DATA
    - gf_dolby_vision_level
    - GF_LOG
    - gf_bs_write_int
    - gf_bs_new
    - gf_filter_pid_set_property
    - gf_bs_del
    - gf_bs_write_u32
    - memset
    - 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_filter_pid_get_property
    - gf_list_count
    - PROP_DATA_NO_COPY
    - naludmx_create_avc_decoder_config
    - naludmx_enqueue_or_dispatch
    - PROP_FRAC64
    - naludmx_check_dur
    - naludmx_create_vvc_decoder_config
    - gf_crc_32
    - PROP_FRAC
    - gf_filter_pid_new
    - naludmx_create_hevc_decoder_config
    - gf_filter_pid_copy_properties
    - PROP_BOOL
    - naludmx_set_dolby_vision
    - gf_free
    - naludmx_set_hevc_oinf
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - naludmx_update_clli_mdcv
    - 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: 18
    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:2036,1
    - Dst: naludmx_check_dur
      Src: /src/gpac/src/filters/reframe_nalu.c:2037,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:2060,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/reframe_nalu.c:2061,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_nalu.c:2072,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_nalu.c:2074,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:2086,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_nalu.c:2087,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_nalu.c:2088,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:2090,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 80
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2104
      start: 2006
    functionDepth: 10
    functionLinenumber: 2006
    functionLinenumberEnd: 2104
    functionName: naludmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - naludmx_check_dur
    - gf_list_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_post_process_task
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_pid_is_eos
    - gf_list_pop_back
    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:2108,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2120
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2120
    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:2130,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2135,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2150,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2154,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2160,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2174,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2178,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2182,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2186,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2203,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2207,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:2212,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:2214,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:2225,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:2227,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:2242,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2243,1
    - Dst: naludmx_end_access_unit
      Src: /src/gpac/src/filters/reframe_nalu.c:2250,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/reframe_nalu.c:2256,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_nalu.c:2258,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:2260,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2263,1
    - Dst: naludmx_end_access_unit
      Src: /src/gpac/src/filters/reframe_nalu.c:2271,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:2273,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: 2274
      start: 2122
    functionDepth: 2
    functionLinenumber: 2122
    functionLinenumberEnd: 2274
    functionName: naludmx_queue_param_set
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_crc_32
    - gf_assert
    - gf_list_new
    - gf_list_add
    - GF_SAFEALLOC
    - gf_list_get
    - gf_realloc
    - memcpy
    - naludmx_end_access_unit
    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:2284,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:2286,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2296,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2305,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/reframe_nalu.c:2306,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2311,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/reframe_nalu.c:2316,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2320,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2323,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2324,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/reframe_nalu.c:2326,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2330,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/reframe_nalu.c:2330,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:2344,1
    - Dst: naludmx_update_clli_mdcv
      Src: /src/gpac/src/filters/reframe_nalu.c:2351,1
    - Dst: naludmx_update_clli_mdcv
      Src: /src/gpac/src/filters/reframe_nalu.c:2355,1
    - Dst: gf_sei_load_from_state
      Src: /src/gpac/src/filters/reframe_nalu.c:2359,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:2365,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 68
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2276
    functionDepth: 4
    functionLinenumber: 2276
    functionLinenumberEnd: 2368
    functionName: naludmx_finalize_au_flags
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 2
    functionsReached:
    - PROP_DATA
    - gf_filter_pck_set_roll_info
    - gf_sei_load_from_state
    - GF_LOG
    - gf_filter_pck_set_dependency_flags
    - gf_assert
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_set_interlaced
    - naludmx_update_clli_mdcv
    - gf_filter_pck_set_property
    - gf_filter_pck_set_sap
    - naludmx_enqueue_or_dispatch
    - 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:2375,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - size
    argTypes:
    - GF_NALUDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2378
      start: 2370
    functionDepth: 1
    functionLinenumber: 2370
    functionLinenumberEnd: 2378
    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:2382,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2386,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2387,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:2388,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_nalu.c:2393,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_nalu.c:2395,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:2399,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2400,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:2403,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:2405,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/reframe_nalu.c:2408,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_nalu.c:2410,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_nalu.c:2412,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:2415,1
    - Dst: naludmx_update_time
      Src: /src/gpac/src/filters/reframe_nalu.c:2419,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2442,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2442,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2448,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_nalu.c:2452,1
    - Dst: naludmx_update_nalu_maxsize
      Src: /src/gpac/src/filters/reframe_nalu.c:2454,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:2456,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: 2459
      start: 2380
    functionDepth: 5
    functionLinenumber: 2380
    functionLinenumberEnd: 2459
    functionName: naludmx_start_nalu
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - naludmx_update_time
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_bs_write_int
    - PROP_SINT
    - naludmx_update_nalu_maxsize
    - gf_filter_pck_set_cts
    - gf_bs_new
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_property
    - gf_bs_reassign_buffer
    - naludmx_enqueue_or_dispatch
    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:2465,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:2467,1
    - Dst: gf_bs_reassign_buffer
      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_u32
      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
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/reframe_nalu.c:2473,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: 2476
      start: 2461
    functionDepth: 4
    functionLinenumber: 2461
    functionLinenumberEnd: 2476
    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_realloc
    - gf_bs_write_u8
    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:2482,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:2485,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:2486,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:2487,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2488,1
    - Dst: gf_avc_reformat_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2491,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_nalu.c:2493,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/reframe_nalu.c:2494,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: 2499
      start: 2478
    functionDepth: 7
    functionLinenumber: 2478
    functionLinenumberEnd: 2499
    functionName: naludmx_push_prefix
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_avc_reformat_sei
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_realloc
    - memcpy
    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:2510,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/reframe_nalu.c:2511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2516,1
    - Dst: gf_hevc_read_vps_ex
      Src: /src/gpac/src/filters/reframe_nalu.c:2530,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2535,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2544,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2553,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2555,1
    - Dst: gf_hevc_parse_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2560,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2562,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2565,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2565,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2569,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: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:2577,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:2577,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2640,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:2659,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:2668,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2674,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: 2690
      start: 2501
    functionDepth: 8
    functionLinenumber: 2501
    functionLinenumberEnd: 2690
    functionName: naludmx_parse_nal_hevc
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - naludmx_queue_param_set
    - GF_LOG
    - gf_hevc_parse_sei
    - gf_hevc_parse_nalu_bs
    - gf_filter_pid_set_property
    - PROP_UINT
    - naludmx_push_prefix
    - naludmx_set_dolby_vision
    - gf_bs_reassign_buffer
    - memcpy
    - gf_hevc_read_vps_ex
    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:2701,1
    - Dst: gf_vvc_parse_nalu_bs
      Src: /src/gpac/src/filters/reframe_nalu.c:2702,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2727,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2729,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2736,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2738,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2745,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2747,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2753,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2766,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2768,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2773,1
    - Dst: gf_vvc_parse_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2778,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2782,1
    - Dst: gf_vvc_parse_sei
      Src: /src/gpac/src/filters/reframe_nalu.c:2790,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2847,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2861,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: 2877
      start: 2693
    functionDepth: 8
    functionLinenumber: 2693
    functionLinenumberEnd: 2877
    functionName: naludmx_parse_nal_vvc
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - naludmx_queue_param_set
    - GF_LOG
    - naludmx_push_prefix
    - gf_vvc_parse_sei
    - gf_bs_reassign_buffer
    - gf_vvc_parse_nalu_bs
    - memcpy
    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:2885,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:2887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2902,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2905,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2913,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2915,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:2923,1
    - Dst: naludmx_queue_param_set
      Src: /src/gpac/src/filters/reframe_nalu.c:2925,1
    - Dst: naludmx_push_prefix
      Src: /src/gpac/src/filters/reframe_nalu.c:2932,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:2950,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:3000,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:3001,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/reframe_nalu.c:3004,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:3006,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_nalu.c:3007,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:3046,1
    - Dst: naludmx_set_dolby_vision
      Src: /src/gpac/src/filters/reframe_nalu.c:3055,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: 3060
      start: 2879
    functionDepth: 8
    functionLinenumber: 2879
    functionLinenumberEnd: 3060
    functionName: naludmx_parse_nal_avc
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - naludmx_set_dolby_vision
    - naludmx_queue_param_set
    - GF_LOG
    - gf_avc_parse_nalu
    - gf_list_new
    - naludmx_push_prefix
    - gf_list_get
    - gf_bs_reassign_buffer
    - gf_list_add
    - memcpy
    - 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:3067,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:3073,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/reframe_nalu.c:3079,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3100,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3101,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_nalu.c:3101,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3104,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_nalu.c:3105,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_nalu.c:3105,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/reframe_nalu.c:3112,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:3113,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_nalu.c:3115,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_nalu.c:3118,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_NALUDmxCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3120
      start: 3062
    functionDepth: 1
    functionLinenumber: 3062
    functionLinenumberEnd: 3120
    functionName: naldmx_switch_timestamps
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_unref
    - gf_filter_pck_get_duration
    - gf_filter_pid_get_clock_info
    - gf_filter_pid_set_property
    - gf_filter_pck_get_cts
    - gf_filter_pck_ref_props
    - PROP_FRAC
    - gf_filter_pck_get_framing
    - 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:3130,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:3132,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: 3137
      start: 3122
    functionDepth: 2
    functionLinenumber: 3122
    functionLinenumberEnd: 3137
    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:3142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3146,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3148,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3156,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: 3157
      start: 3139
    functionDepth: 1
    functionLinenumber: 3139
    functionLinenumberEnd: 3157
    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:3162,1
    - Dst: naludmx_check_dur
      Src: /src/gpac/src/filters/reframe_nalu.c:3180,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:3182,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:3184,1
    - Dst: naludmx_finalize_au_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:3195,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:3201,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:3202,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/reframe_nalu.c:3206,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:3206,1
    - Dst: naludmx_set_hevc_oinf
      Src: /src/gpac/src/filters/reframe_nalu.c:3208,1
    - Dst: naludmx_set_hevc_linf
      Src: /src/gpac/src/filters/reframe_nalu.c:3209,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/reframe_nalu.c:3210,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_nalu.c:3210,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:3213,1
    - Dst: naldmx_switch_timestamps
      Src: /src/gpac/src/filters/reframe_nalu.c:3233,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_nalu.c:3238,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:3241,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_nalu.c:3247,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3250,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_nalu.c:3258,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3261,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_nalu.c:3266,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_nalu.c:3272,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/reframe_nalu.c:3275,1
    - Dst: gf_bs_set_logger
      Src: /src/gpac/src/filters/reframe_nalu.c:3276,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_nalu.c:3280,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3283,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/reframe_nalu.c:3319,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3328,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3332,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:3336,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/reframe_nalu.c:3455,1
    - Dst: naludmx_parse_nal_hevc
      Src: /src/gpac/src/filters/reframe_nalu.c:3469,1
    - Dst: naludmx_parse_nal_vvc
      Src: /src/gpac/src/filters/reframe_nalu.c:3471,1
    - Dst: naludmx_parse_nal_avc
      Src: /src/gpac/src/filters/reframe_nalu.c:3473,1
    - Dst: naludmx_end_access_unit
      Src: /src/gpac/src/filters/reframe_nalu.c:3484,1
    - Dst: naludmx_check_pid
      Src: /src/gpac/src/filters/reframe_nalu.c:3489,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3495,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:3498,1
    - Dst: naludmx_check_pid
      Src: /src/gpac/src/filters/reframe_nalu.c:3502,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3507,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:3510,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3531,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3534,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:3537,1
    - Dst: gf_hevc_slice_is_IDR
      Src: /src/gpac/src/filters/reframe_nalu.c:3564,1
    - Dst: gf_hevc_slice_is_intra
      Src: /src/gpac/src/filters/reframe_nalu.c:3568,1
    - Dst: gf_hevc_slice_is_IDR
      Src: /src/gpac/src/filters/reframe_nalu.c:3571,1
    - Dst: gf_vvc_slice_is_ref
      Src: /src/gpac/src/filters/reframe_nalu.c:3604,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3687,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_nalu.c:3698,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3700,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3702,1
    - Dst: gf_avc_slice_is_intra
      Src: /src/gpac/src/filters/reframe_nalu.c:3723,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3771,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/reframe_nalu.c:3787,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_nalu.c:3788,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:3809,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:3812,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:3813,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/reframe_nalu.c:3814,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:3816,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_nalu.c:3821,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:3872,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:3890,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:3923,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3969,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3970,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:3973,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3978,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3979,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:3981,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3987,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:3988,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:3990,1
    - Dst: naludmx_start_nalu
      Src: /src/gpac/src/filters/reframe_nalu.c:3996,1
    - Dst: naludmx_add_subsample
      Src: /src/gpac/src/filters/reframe_nalu.c:4001,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_nalu.c:4006,1
    - Dst: naldmx_check_timestamp_switch
      Src: /src/gpac/src/filters/reframe_nalu.c:4016,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_nalu.c:4020,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:4022,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:4023,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:4025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4032,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_nalu.c:4035,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_nalu.c:4036,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_nalu.c:4042,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/reframe_nalu.c:4049,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/reframe_nalu.c:4052,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/reframe_nalu.c:4053,1
    - Dst: naludmx_finalize_au_flags
      Src: /src/gpac/src/filters/reframe_nalu.c:4057,1
    - Dst: naludmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_nalu.c:4059,1
    CyclomaticComplexity: 237
    EdgeCount: 237
    ICount: 670
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4062
      start: 3160
    functionDepth: 11
    functionLinenumber: 3160
    functionLinenumberEnd: 4062
    functionName: naludmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_eos
    - naludmx_finalize_au_flags
    - gf_assert
    - gf_bs_new
    - gf_bs_set_logger
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_bs_reassign_buffer
    - naludmx_enqueue_or_dispatch
    - naludmx_parse_nal_vvc
    - naludmx_start_nalu
    - naludmx_check_dur
    - gf_filter_pid_set_info
    - gf_filter_pid_would_block
    - naludmx_check_pid
    - gf_filter_get_udta
    - naludmx_parse_nal_hevc
    - gf_avc_slice_is_intra
    - gf_filter_pid_set_info_str
    - naldmx_check_timestamp_switch
    - gf_filter_pck_get_data
    - gf_list_find
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_filter_reporting_enabled
    - gf_hevc_slice_is_IDR
    - gf_filter_pck_get_dts
    - gf_vvc_slice_is_ref
    - gf_filter_pck_unref
    - naldmx_switch_timestamps
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - naludmx_parse_nal_avc
    - gf_log_tool_level_on
    - gf_media_nalu_next_start_code
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - sprintf
    - naludmx_set_hevc_oinf
    - gf_filter_pck_get_byte_offset
    - gf_hevc_slice_is_intra
    - GF_LOG
    - PROP_UINT
    - naludmx_add_subsample
    - naludmx_set_hevc_linf
    - memmove
    - gf_filter_update_status
    - naludmx_end_access_unit
    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:4066,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:4067,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_nalu.c:4068,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4085,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4095,1
    - Dst: gf_sei_loader_new
      Src: /src/gpac/src/filters/reframe_nalu.c:4098,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4100,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4101,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4102,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4103,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4104,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4105,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4106,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4107,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/reframe_nalu.c:4108,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4110
      start: 4064
    functionDepth: 2
    functionLinenumber: 4064
    functionLinenumberEnd: 4110
    functionName: naludmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_sei_loader_new
    - gf_filter_get_udta
    - GF_LOG
    - gf_list_new
    - gf_filter_add_status_metric
    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:4115,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_nalu.c:4116,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4117,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4118,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ps
    - do_free
    argTypes:
    - GF_List*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4123
      start: 4112
    functionDepth: 3
    functionLinenumber: 4112
    functionLinenumberEnd: 4123
    functionName: naludmx_del_param_list
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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:4134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4141,1
    - Dst: GF_LOG
      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_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:4151,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/reframe_nalu.c:4154,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4157,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4161,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4165,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4170,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_nalu.c:4172,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 40
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_NALUDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4175
      start: 4125
    functionDepth: 1
    functionLinenumber: 4125
    functionLinenumberEnd: 4175
    functionName: naludmx_log_stats
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - 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:4179,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4180,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4181,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4182,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4183,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4184,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4185,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4186,1
    - Dst: naludmx_del_param_list
      Src: /src/gpac/src/filters/reframe_nalu.c:4187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - do_free
    argTypes:
    - GF_NALUDmxCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4188
      start: 4177
    functionDepth: 4
    functionLinenumber: 4177
    functionLinenumberEnd: 4188
    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:4192,1
    - Dst: naludmx_log_stats
      Src: /src/gpac/src/filters/reframe_nalu.c:4194,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4196,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4199,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/reframe_nalu.c:4201,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/reframe_nalu.c:4202,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_nalu.c:4203,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4205,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4207,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4208,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4209,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_nalu.c:4211,1
    - Dst: naludmx_reset_param_sets
      Src: /src/gpac/src/filters/reframe_nalu.c:4214,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4216,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4217,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_nalu.c:4218,1
    - Dst: gf_sei_loader_del
      Src: /src/gpac/src/filters/reframe_nalu.c:4219,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 34
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4220
      start: 4190
    functionDepth: 5
    functionLinenumber: 4190
    functionLinenumberEnd: 4220
    functionName: naludmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_nalu.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_list_count
    - naludmx_reset_param_sets
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - gf_sei_loader_del
    - gf_bs_del
    - gf_list_pop_back
    - naludmx_log_stats
    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:4243,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 118
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4355
      start: 4223
    functionDepth: 1
    functionLinenumber: 4223
    functionLinenumberEnd: 4355
    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: 4396
      start: 4395
    functionDepth: 0
    functionLinenumber: 4395
    functionLinenumberEnd: 4396
    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: 4467
      start: 4464
    functionDepth: 0
    functionLinenumber: 4464
    functionLinenumberEnd: 4467
    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: 4472
      start: 4469
    functionDepth: 0
    functionLinenumber: 4469
    functionLinenumberEnd: 4472
    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_filter_get_udta
    - gf_list_new
    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_copy_buffer_req
      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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_copy_buffer_req
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_audio_fmt_bit_depth
    - gf_audio_fmt_is_planar
    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_count
    - gf_filter_pck_forward
    - gf_filter_pck_unref
    - GF_LOG
    - gf_filter_pck_ref
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - gf_list_add
    - gf_list_pop_back
    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_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - rewind_process_video
    - gf_filter_pck_get_data
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - memcpy
    - gf_filter_pck_send
    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_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_framing_mode
    - gf_odf_vvc_cfg_read
    - gf_filter_pid_get_udta
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_odf_avc_cfg_read
    - gf_odf_avc_cfg_del
    - gf_filter_pid_check_caps
    - gf_odf_vvc_cfg_del
    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:
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - CCDecCtx*::pck_truncate
    - CCDecCtx*::pck_send
    - CCDecCtx*::pck_new_alloc
    - memcpy
    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
    - find_last_separator
    - same_crc
    - memmove
    - strncmp
    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:
    - libcaption_status_update
    - cea708_parse_h264
    - cea708_cc_data
    - gf_free
    - gf_list_pop_front
    - text_aggregate_and_post
    - cea708_cc_count
    - caption_frame_init
    - caption_frame_to_text
    - GF_SAFEALLOC
    - caption_frame_decode
    - cea708_parse_h262
    - cea708_init
    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:
    - ccdec_flush_queue
    - gf_list_count
    - gf_free
    - gf_malloc
    - GF_4CC
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    - memcpy
    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_get_position
    - gf_list_count
    - gf_bs_read_u8
    - gf_filter_pid_set_eos
    - ccdec_flush
    - ccdec_queue_data
    - gf_bs_new
    - gf_m4v_get_object_start
    - gf_filter_pid_drop_packet
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_m4v_parser_new
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - ccdec_flush_queue
    - gf_malloc
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_m4v_parser_set_inspect
    - gf_m4v_parser_get_obj_type
    - gf_m4v_parser_del
    - gf_m4v_parse_frame
    - gf_bs_enable_emulation_byte_removal
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_filter_pid_is_eos
    - gf_bs_read_u16
    - gf_av1_parse_obu_header
    - gf_bs_peek_bits
    - gf_av1_leb128_read
    - gf_bs_available
    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_filter_get_udta
    - gf_list_new
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_name
    - gf_bs_read_data
    - PROP_FRAC64
    - gf_filter_pid_new
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pid_copy_properties
    - memcmp
    - gf_filter_pck_set_cts
    - PROP_BOOL
    - gf_filter_pck_set_sap
    - gf_odf_ac3_cfg_write
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_dts
    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_get_position
    - truehd_aux_ac3
    - gf_bs_peek_bits
    - gf_ac3_parser_bs
    - gf_bs_read_int
    - gf_bs_read_u32
    - memset
    - gf_bs_read_u16
    - gf_bs_available
    - 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_filter_pid_get_property
    - truehd_frame_dur
    - gf_bs_get_position
    - gf_fclose
    - truehd_parse_frame
    - gf_fileio_is_main_thread
    - gf_bs_available
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_del
    - PROP_FRAC64
    - gf_fopen_ex
    - gf_bs_seek
    - gf_realloc
    - strncmp
    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:
    - gf_filter_pid_copy_properties
    - truehd_frame_dur
    - truehd_check_dur
    - PROP_DATA_NO_COPY
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_timestamp_rescale
    - gf_bs_new
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_del
    - PROP_BOOL
    - gf_bs_write_u32
    - gf_filter_pid_new
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void truehd_check_pid(GF_Filter *filter, GF_TrueHDDmxCtx *ctx, TrueHDHdr
      *hdr)
  - BBCount: 12
    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:495,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_truehd.c:497,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 47
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 516
    functionName: truehd_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - 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: 528
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 528
    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:532,1
    - Dst: truehd_check_dur
      Src: /src/gpac/src/filters/reframe_truehd.c:546,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_truehd.c:551,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_truehd.c:553,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_truehd.c:556,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_truehd.c:558,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_truehd.c:559,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_truehd.c:570,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_truehd.c:572,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_truehd.c:577,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_truehd.c:590,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_truehd.c:593,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_truehd.c:599,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_truehd.c:621,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_truehd.c:623,1
    - Dst: truehd_parse_frame
      Src: /src/gpac/src/filters/reframe_truehd.c:630,1
    - Dst: truehd_check_pid
      Src: /src/gpac/src/filters/reframe_truehd.c:655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_truehd.c:684,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_truehd.c:692,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_truehd.c:694,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_truehd.c:696,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_truehd.c:697,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_truehd.c:698,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_truehd.c:699,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_truehd.c:700,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_truehd.c:703,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_truehd.c:705,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_truehd.c:708,1
    - Dst: truehd_update_cts
      Src: /src/gpac/src/filters/reframe_truehd.c:710,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_truehd.c:714,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_truehd.c:723,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_truehd.c:729,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_truehd.c:732,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_truehd.c:745,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_truehd.c:749,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_truehd.c:752,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 181
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 530
    functionDepth: 11
    functionLinenumber: 530
    functionLinenumberEnd: 755
    functionName: truehd_process
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - truehd_update_cts
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - truehd_check_dur
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - truehd_parse_frame
    - GF_LOG
    - truehd_check_pid
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - memmove
    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:759,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_truehd.c:762,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_truehd.c:763,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 757
    functionDepth: 3
    functionLinenumber: 757
    functionLinenumberEnd: 764
    functionName: truehd_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:769,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_truehd.c:770,1
    - Dst: truehd_parse_frame
      Src: /src/gpac/src/filters/reframe_truehd.c:773,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_truehd.c:779,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_truehd.c:781,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 766
    functionDepth: 9
    functionLinenumber: 766
    functionLinenumberEnd: 787
    functionName: truehd_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_truehd.c
    functionUses: 0
    functionsReached:
    - truehd_parse_frame
    - gf_bs_new
    - gf_bs_del
    - gf_bs_seek
    - 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: 804
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 804
    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: 831
      start: 828
    functionDepth: 0
    functionLinenumber: 828
    functionLinenumberEnd: 831
    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: 836
      start: 833
    functionDepth: 0
    functionLinenumber: 833
    functionLinenumberEnd: 836
    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: gf_strcpy
      Src: /src/gpac/src/filters/out_pipe.c:104,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/out_pipe.c:106,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/out_pipe.c:107,1
    - Dst: gf_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: gf_strcpy
      Src: /src/gpac/src/filters/out_pipe.c:127,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_pipe.c:130,1
    - Dst: gf_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:
    - ConnectNamedPipe
    - open
    - CloseHandle
    - strchr
    - WaitNamedPipeA
    - gf_filter_pid_resolve_file_template
    - gf_strcpy
    - gf_file_exists
    - strcmp
    - strlen
    - mkfifo
    - gf_free
    - CreateFile
    - CreateNamedPipe
    - gf_errno_str
    - gf_strcat
    - GF_LOG
    - mknod
    - GetLastError
    - gf_strdup
    - close
    - strncmp
    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:
    - gf_filter_pid_get_property
    - pipeout_open_close
    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_filter_pid_init_play_event
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_pid_send_event
    - gf_filter_pid_check_caps
    - pipeout_open_close
    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: gf_strcpy
      Src: /src/gpac/src/filters/out_pipe.c:290,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_pipe.c:291,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_pipe.c:293,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_pipe.c:296,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 251
    functionDepth: 4
    functionLinenumber: 251
    functionLinenumberEnd: 298
    functionName: pipeout_initialize
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_file_ext_start
    - gf_filter_override_caps
    - strlwr
    - gf_filter_get_udta
    - gf_filter_setup_failure
    - GF_LOG
    - PROP_NAME
    - strnicmp
    - PROP_UINT
    - strstr
    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:302,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:306,1
    - Dst: pipeout_open_close
      Src: /src/gpac/src/filters/out_pipe.c:309,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_pipe.c:313,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_pipe.c:314,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 300
    functionDepth: 5
    functionLinenumber: 300
    functionLinenumberEnd: 316
    functionName: pipeout_finalize
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - gf_free
    - pipeout_open_close
    - 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:324,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:325,1
    - Dst: GetLastError
      Src: /src/gpac/src/filters/out_pipe.c:325,1
    - Dst: write
      Src: /src/gpac/src/filters/out_pipe.c:329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:331,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filters/out_pipe.c:331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:335,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_pipe.c:337,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_PipeOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 339
    functionName: pout_write_marker
    functionSourceFile: /src/gpac/src/filters/out_pipe.c
    functionUses: 0
    functionsReached:
    - write
    - gf_errno_str
    - GF_LOG
    - WriteFile
    - GetLastError
    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:486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 487
    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:509,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_pipe.c:510,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 507
    functionDepth: 0
    functionLinenumber: 507
    functionLinenumberEnd: 512
    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: 516
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 516
    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:579,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_pipe.c:580,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 577
    functionDepth: 6
    functionLinenumber: 577
    functionLinenumberEnd: 583
    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: 588
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 588
    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: 2
    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: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEL_PROGRAM(_a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:197,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 200
    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:208,1
    - Dst: glShaderSource
      Src: /src/gpac/src/filters/out_video.c:209,1
    - Dst: glCompileShader
      Src: /src/gpac/src/filters/out_video.c:210,1
    - Dst: glGetShaderiv
      Src: /src/gpac/src/filters/out_video.c:212,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_video.c:214,1
    - Dst: glGetShaderInfoLog
      Src: /src/gpac/src/filters/out_video.c:216,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/src/filters/out_video.c:218,1
    - Dst: glGetInfoLogARB
      Src: /src/gpac/src/filters/out_video.c:220,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:222,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:223,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - shader_id
    - name
    - source
    argTypes:
    - GF_SHADERID
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 227
    functionName: vout_compile_shader
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glGetShaderiv
    - gf_free
    - gf_malloc
    - GF_LOG
    - glShaderSource
    - glGetInfoLogARB
    - glGetShaderInfoLog
    - strlen
    - glCompileShader
    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:235,1
    - Dst: vout_make_gl_current
      Src: /src/gpac/src/filters/out_video.c:236,1
    - Dst: glDeleteTextures
      Src: /src/gpac/src/filters/out_video.c:238,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:242,1
    - Dst: GF_VideoOutCtx*::video_out::Flush
      Src: /src/gpac/src/filters/out_video.c:243,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/out_video.c:246,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 249
    functionName: vout_reset_overlay
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_filter_lock
    - glDeleteTextures
    - vout_make_gl_current
    - glClear
    - GF_VideoOutCtx*::video_out::Flush
    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:255,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/out_video.c:260,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/out_video.c:263,1
    - Dst: gf_filter_pid_get_source_filter_name
      Src: /src/gpac/src/filters/out_video.c:264,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_video.c:266,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_video.c:267,1
    - Dst: gf_filter_path_escape_colon
      Src: /src/gpac/src/filters/out_video.c:269,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:272,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 274
    functionName: vout_set_caption
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - gf_filter_pid_orig_src_args
    - gf_filter_pid_get_source_filter_name
    - gf_filter_pid_get_property_str
    - gf_filter_path_escape_colon
    - memset
    - strncmp
    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:280,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_video.c:289,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:296,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filters/out_video.c:298,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filters/out_video.c:308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:311,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:315,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:320,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:324,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:329,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:332,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 3
    argNames:
    - ctx
    - dw
    - dh
    argTypes:
    - GF_VideoOutCtx*
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 276
    functionDepth: 6
    functionLinenumber: 276
    functionLinenumberEnd: 335
    functionName: resize_video_output
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - GF_FEVT_INIT
    - gf_opengl_init
    - gf_filter_pid_send_event
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - gf_opts_get_bool
    - memset
    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:342,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/filters/out_video.c:346,1
    - Dst: gf_mx_add_translation
      Src: /src/gpac/src/filters/out_video.c:354,1
    - Dst: gf_mx_add_scale
      Src: /src/gpac/src/filters/out_video.c:355,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:356,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/filters/out_video.c:358,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:359,1
    - Dst: glUniform1i
      Src: /src/gpac/src/filters/out_video.c:361,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:362,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:366,1
    - Dst: glUniform1i
      Src: /src/gpac/src/filters/out_video.c:367,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:368,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 371
    functionName: load_gl_tx_matrix
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glUseProgram
    - gf_mx_init
    - glUniformMatrix4fv
    - gf_mx_add_scale
    - glGetUniformLocation
    - gf_mx_add_translation
    - glUniform1i
    linkageType: ''
    returnType: void
    signature: void load_gl_tx_matrix(GF_VideoOutCtx *ctx)
  - BBCount: 118
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:381,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:385,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:386,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_video.c:392,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_video.c:396,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_video.c:397,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:401,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:404,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:406,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:408,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:411,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:413,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:415,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:419,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:426,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:429,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:439,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:442,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:444,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:447,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:451,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:456,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:458,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:460,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:462,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:469,1
    - Dst: gf_prop_matrix_decompose
      Src: /src/gpac/src/filters/out_video.c:471,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:478,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:486,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_video.c:488,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:493,1
    - Dst: vout_set_caption
      Src: /src/gpac/src/filters/out_video.c:501,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:505,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_video.c:514,1
    - Dst: load_gl_tx_matrix
      Src: /src/gpac/src/filters/out_video.c:525,1
    - Dst: resize_video_output
      Src: /src/gpac/src/filters/out_video.c:564,1
    - Dst: GF_VideoOutCtx*::video_out::SetFullScreen
      Src: /src/gpac/src/filters/out_video.c:579,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:584,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:589,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/out_video.c:602,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:606,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:715,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/out_video.c:715,1
    - Dst: vout_make_gl_current
      Src: /src/gpac/src/filters/out_video.c:721,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:722,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:723,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/filters/out_video.c:724,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/filters/out_video.c:725,1
    - Dst: vout_make_gl_current
      Src: /src/gpac/src/filters/out_video.c:731,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:732,1
    - Dst: glCreateProgram
      Src: /src/gpac/src/filters/out_video.c:733,1
    - Dst: glCreateShader
      Src: /src/gpac/src/filters/out_video.c:734,1
    - Dst: vout_compile_shader
      Src: /src/gpac/src/filters/out_video.c:735,1
    - Dst: glCreateShader
      Src: /src/gpac/src/filters/out_video.c:737,1
    - Dst: gf_gl_txw_setup
      Src: /src/gpac/src/filters/out_video.c:738,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:740,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_video.c:743,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_video.c:750,1
    - Dst: gf_gl_txw_insert_fragment_shader
      Src: /src/gpac/src/filters/out_video.c:753,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_video.c:754,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:759,1
    - Dst: vout_compile_shader
      Src: /src/gpac/src/filters/out_video.c:761,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:762,1
    - Dst: glAttachShader
      Src: /src/gpac/src/filters/out_video.c:764,1
    - Dst: glAttachShader
      Src: /src/gpac/src/filters/out_video.c:765,1
    - Dst: glLinkProgram
      Src: /src/gpac/src/filters/out_video.c:766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:771,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:777,1
    - Dst: glViewport
      Src: /src/gpac/src/filters/out_video.c:778,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:780,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:781,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:783,1
    - Dst: glHint
      Src: /src/gpac/src/filters/out_video.c:784,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:785,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:786,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:787,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:789,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/filters/out_video.c:790,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:792,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:794,1
    - Dst: load_gl_tx_matrix
      Src: /src/gpac/src/filters/out_video.c:797,1
    - Dst: gf_pixel_fmt_is_transparent
      Src: /src/gpac/src/filters/out_video.c:829,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/out_video.c:833,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_video.c:833,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:837,1
    CyclomaticComplexity: 109
    EdgeCount: 109
    ICount: 399
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 373
    functionDepth: 7
    functionLinenumber: 373
    functionLinenumberEnd: 839
    functionName: vout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_gl_txw_reset
    - resize_video_output
    - GF_VideoOutCtx*::video_out::SetFullScreen
    - GF_FEVT_INIT
    - load_gl_tx_matrix
    - gf_assert
    - gf_filter_pid_send_event
    - DEL_PROGRAM
    - vout_compile_shader
    - glEnable
    - gf_filter_get_udta
    - glBlendFunc
    - gf_timestamp_rescale
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - glLinkProgram
    - DEL_SHADER
    - glCreateShader
    - gf_dynstrcat
    - glClear
    - glDisable
    - GL_CHECK_ERR
    - gf_filter_pck_unref
    - glAttachShader
    - glHint
    - vout_make_gl_current
    - gf_filter_pid_check_caps
    - gf_filter_pid_negotiate_property
    - vout_draw_frame
    - gf_pixel_fmt_name
    - glViewport
    - gf_free
    - gf_gl_txw_insert_fragment_shader
    - gf_filter_pid_init_play_event
    - gf_gl_txw_setup
    - GF_LOG
    - gf_prop_matrix_decompose
    - PROP_UINT
    - vout_set_caption
    - gf_pixel_get_size_info
    - glCreateProgram
    - gf_pixel_fmt_is_transparent
    - memset
    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:857,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:860,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:863,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:879,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:910,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filters/out_video.c:915,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/filters/out_video.c:920,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/out_video.c:930,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/out_video.c:931,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:943,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 90
    argCount: 2
    argNames:
    - cbk
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 946
    functionName: vout_on_event
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_filter_ui_event
    - vout_reset_overlay
    - gf_filter_remove
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    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:959,1
    - Dst: gf_filter_claim_opengl_provider
      Src: /src/gpac/src/filters/out_video.c:965,1
    - Dst: gf_module_load
      Src: /src/gpac/src/filters/out_video.c:970,1
    - Dst: gpac_force_step_mode
      Src: /src/gpac/src/filters/out_video.c:975,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:986,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:989,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_video.c:990,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:993,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:999,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_video.c:1000,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:1001,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_video.c:1002,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_video.c:1003,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_video.c:1004,1
    - Dst: GF_VideoOutCtx*::video_out::Setup
      Src: /src/gpac/src/filters/out_video.c:1009,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1011,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_video.c:1012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1022,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1030,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1037,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filters/out_video.c:1040,1
    - Dst: gf_filter_register_opengl_provider
      Src: /src/gpac/src/filters/out_video.c:1042,1
    - Dst: gf_filter_set_event_target
      Src: /src/gpac/src/filters/out_video.c:1052,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_video.c:1054,1
    - Dst: gf_filter_load_script
      Src: /src/gpac/src/filters/out_video.c:1058,1
    - Dst: vout_set_caption
      Src: /src/gpac/src/filters/out_video.c:1062,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 79
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 953
    functionDepth: 6
    functionLinenumber: 953
    functionLinenumberEnd: 1065
    functionName: vout_initialize
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_filter_register_opengl_provider
    - GF_VideoOutCtx*::video_out::Setup
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_post_process_task
    - gf_filter_claim_opengl_provider
    - gpac_force_step_mode
    - gf_opengl_init
    - gf_module_load
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - vout_set_caption
    - gf_modules_close_interface
    - gf_filter_load_script
    - gf_filter_set_event_target
    - memset
    - gf_opts_get_key
    - sscanf
    - gf_opts_set_key
    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:1069,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1072,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_video.c:1078,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:1082,1
    - Dst: DEL_SHADER
      Src: /src/gpac/src/filters/out_video.c:1083,1
    - Dst: DEL_PROGRAM
      Src: /src/gpac/src/filters/out_video.c:1084,1
    - Dst: gf_gl_txw_reset
      Src: /src/gpac/src/filters/out_video.c:1085,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/out_video.c:1087,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/out_video.c:1088,1
    - Dst: gf_filter_unclaim_opengl_provider
      Src: /src/gpac/src/filters/out_video.c:1094,1
    - Dst: GF_VideoOutCtx*::video_out::Shutdown
      Src: /src/gpac/src/filters/out_video.c:1095,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_video.c:1096,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:1100,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 1067
    functionDepth: 3
    functionLinenumber: 1067
    functionLinenumberEnd: 1103
    functionName: vout_finalize
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_gl_txw_reset
    - gf_sleep
    - gf_filter_pck_unref
    - gf_free
    - gf_filter_get_udta
    - glDeleteBuffers
    - gf_filter_unclaim_opengl_provider
    - DEL_SHADER
    - gf_modules_close_interface
    - GF_VideoOutCtx*::video_out::Shutdown
    - DEL_PROGRAM
    linkageType: ''
    returnType: void
    signature: void vout_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1141,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/filters/out_video.c:1142,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1143,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/filters/out_video.c:1144,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1146,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1147,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1148,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/filters/out_video.c:1150,1
    - Dst: glVertexPointer
      Src: /src/gpac/src/filters/out_video.c:1151,1
    - Dst: glClientActiveTexture
      Src: /src/gpac/src/filters/out_video.c:1152,1
    - Dst: glEnableClientState
      Src: /src/gpac/src/filters/out_video.c:1153,1
    - Dst: glTexCoordPointer
      Src: /src/gpac/src/filters/out_video.c:1154,1
    - Dst: glDrawElements
      Src: /src/gpac/src/filters/out_video.c:1156,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/filters/out_video.c:1157,1
    - Dst: glDisableClientState
      Src: /src/gpac/src/filters/out_video.c:1158,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/filters/out_video.c:1160,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1161,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1164
      start: 1107
    functionDepth: 0
    functionLinenumber: 1107
    functionLinenumberEnd: 1164
    functionName: vout_draw_overlay
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glEnableClientState
    - glEnable
    - glClientActiveTexture
    - glVertexPointer
    - glLoadIdentity
    - glDrawElements
    - glMatrixMode
    - glTexCoordPointer
    - glDisable
    - glActiveTexture
    - glDisableClientState
    - glBindTexture
    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:1173,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/filters/out_video.c:1254,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1255,1
    - Dst: glBufferData
      Src: /src/gpac/src/filters/out_video.c:1256,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1257,1
    - Dst: glGenBuffers
      Src: /src/gpac/src/filters/out_video.c:1259,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1260,1
    - Dst: glBufferData
      Src: /src/gpac/src/filters/out_video.c:1261,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1262,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/filters/out_video.c:1265,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1267,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/filters/out_video.c:1268,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1269,1
    - Dst: glGetAttribLocation
      Src: /src/gpac/src/filters/out_video.c:1272,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1274,1
    - Dst: glVertexAttribPointer
      Src: /src/gpac/src/filters/out_video.c:1275,1
    - Dst: glEnableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1276,1
    - Dst: glDrawArrays
      Src: /src/gpac/src/filters/out_video.c:1278,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1281,1
    - Dst: glDisableVertexAttribArray
      Src: /src/gpac/src/filters/out_video.c:1283,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1285,1
    - Dst: glActiveTexture
      Src: /src/gpac/src/filters/out_video.c:1288,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1289,1
    - Dst: glBindBuffer
      Src: /src/gpac/src/filters/out_video.c:1290,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1292,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:1295,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_video.c:1300,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_video.c:1300,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1301,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1303,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_video.c:1306,1
    - Dst: glFlush
      Src: /src/gpac/src/filters/out_video.c:1308,1
    - Dst: glReadPixels
      Src: /src/gpac/src/filters/out_video.c:1310,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:1311,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_video.c:1313,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_video.c:1316,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_video.c:1317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1320,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1320,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 111
    argCount: 2
    argNames:
    - ctx
    - flip_texture
    argTypes:
    - GF_VideoOutCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1323
      start: 1166
    functionDepth: 5
    functionLinenumber: 1166
    functionLinenumberEnd: 1323
    functionName: vout_draw_gl_quad
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - glDrawArrays
    - gf_file_basename
    - glBindBuffer
    - snprintf
    - glFlush
    - gf_fwrite
    - glActiveTexture
    - strchr
    - gf_malloc
    - glGetAttribLocation
    - gf_fopen
    - glBufferData
    - glDisable
    - glUseProgram
    - GL_CHECK_ERR
    - gf_gl_txw_bind
    - glVertexAttribPointer
    - gf_error_to_string
    - gf_fclose
    - GF_LOG
    - glEnableVertexAttribArray
    - glReadPixels
    - glDisableVertexAttribArray
    - glGenBuffers
    - glBindTexture
    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:1328,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1334,1
    - Dst: glLoadIdentity
      Src: /src/gpac/src/filters/out_video.c:1335,1
    - Dst: vout_draw_gl_quad
      Src: /src/gpac/src/filters/out_video.c:1338,1
    - Dst: GL_CHECK_ERR
      Src: /src/gpac/src/filters/out_video.c:1339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - hwf
    argTypes:
    - GF_VideoOutCtx*
    - GF_FilterFrameInterface*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1340
      start: 1325
    functionDepth: 6
    functionLinenumber: 1325
    functionLinenumberEnd: 1340
    functionName: vout_draw_gl_hw_textures
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - GL_CHECK_ERR
    - glDeleteTextures
    - glLoadIdentity
    - vout_draw_gl_quad
    - glMatrixMode
    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:1345,1
    - Dst: glDeleteBuffers
      Src: /src/gpac/src/filters/out_video.c:1349,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1342
    functionDepth: 0
    functionLinenumber: 1342
    functionLinenumberEnd: 1352
    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:1362,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:1363,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_video.c:1415,1
    - Dst: gf_mx_init
      Src: /src/gpac/src/filters/out_video.c:1418,1
    - Dst: gf_mx_ortho
      Src: /src/gpac/src/filters/out_video.c:1421,1
    - Dst: glGetUniformLocation
      Src: /src/gpac/src/filters/out_video.c:1423,1
    - Dst: glUniformMatrix4fv
      Src: /src/gpac/src/filters/out_video.c:1425,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1431,1
    - Dst: glLoadMatrixf
      Src: /src/gpac/src/filters/out_video.c:1432,1
    - Dst: glMatrixMode
      Src: /src/gpac/src/filters/out_video.c:1433,1
    - Dst: vbo_changed
      Src: /src/gpac/src/filters/out_video.c:1436,1
    - Dst: glViewport
      Src: /src/gpac/src/filters/out_video.c:1439,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/out_video.c:1442,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/out_video.c:1443,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/out_video.c:1444,1
    - Dst: glClearColor
      Src: /src/gpac/src/filters/out_video.c:1445,1
    - Dst: glClearColor
      Src: /src/gpac/src/filters/out_video.c:1447,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:1449,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_video.c:1456,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1465,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1467,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1468,1
    - Dst: glBlendFunc
      Src: /src/gpac/src/filters/out_video.c:1470,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1471,1
    - Dst: glDisable
      Src: /src/gpac/src/filters/out_video.c:1473,1
    - Dst: GF_COL_R
      Src: /src/gpac/src/filters/out_video.c:1477,1
    - Dst: GF_COL_G
      Src: /src/gpac/src/filters/out_video.c:1478,1
    - Dst: GF_COL_B
      Src: /src/gpac/src/filters/out_video.c:1479,1
    - Dst: glClearColor
      Src: /src/gpac/src/filters/out_video.c:1480,1
    - Dst: glClear
      Src: /src/gpac/src/filters/out_video.c:1481,1
    - Dst: vout_draw_gl_hw_textures
      Src: /src/gpac/src/filters/out_video.c:1485,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_video.c:1487,1
    - Dst: gf_gl_txw_upload
      Src: /src/gpac/src/filters/out_video.c:1490,1
    - Dst: vout_draw_gl_quad
      Src: /src/gpac/src/filters/out_video.c:1493,1
    - Dst: glUseProgram
      Src: /src/gpac/src/filters/out_video.c:1499,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/out_video.c:1504,1
    - Dst: glGenTextures
      Src: /src/gpac/src/filters/out_video.c:1507,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1510,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1512,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1513,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1515,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1516,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1517,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1519,1
    - Dst: glTexParameteri
      Src: /src/gpac/src/filters/out_video.c:1520,1
    - Dst: glTexImage2D
      Src: /src/gpac/src/filters/out_video.c:1523,1
    - Dst: glEnable
      Src: /src/gpac/src/filters/out_video.c:1527,1
    - Dst: glBindTexture
      Src: /src/gpac/src/filters/out_video.c:1529,1
    - Dst: glTexSubImage2D
      Src: /src/gpac/src/filters/out_video.c:1530,1
    - Dst: vout_draw_overlay
      Src: /src/gpac/src/filters/out_video.c:1533,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/out_video.c:1535,1
    - Dst: GF_VideoOutCtx*::video_out::Flush
      Src: /src/gpac/src/filters/out_video.c:1539,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 142
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_VideoOutCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1540
      start: 1354
    functionDepth: 7
    functionLinenumber: 1354
    functionLinenumberEnd: 1540
    functionName: vout_draw_gl
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - vbo_changed
    - glGetUniformLocation
    - GF_COL_R
    - GF_COL_G
    - gf_filter_pck_get_frame_interface
    - gf_mx_ortho
    - glEnable
    - glTexSubImage2D
    - glBlendFunc
    - vout_draw_gl_quad
    - gf_filter_pck_get_data
    - glMatrixMode
    - glClear
    - glDisable
    - GF_VideoOutCtx*::video_out::Flush
    - gf_filter_lock
    - glUseProgram
    - glClearColor
    - gf_mx_init
    - vout_draw_overlay
    - vout_make_gl_current
    - glViewport
    - gf_free
    - glLoadMatrixf
    - glUniformMatrix4fv
    - vout_draw_gl_hw_textures
    - glTexImage2D
    - glGenTextures
    - gf_gl_txw_upload
    - glTexParameteri
    - GF_COL_B
    - glBindTexture
    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:1554,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_video.c:1562,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_video.c:1566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1570,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_video.c:1573,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1575,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_video.c:1579,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1581,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_video.c:1585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1587,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1600,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1607,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1607,1
    - Dst: GF_VideoOutCtx*::video_out::Blit
      Src: /src/gpac/src/filters/out_video.c:1635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1637,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1637,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1643,1
    - Dst: gf_stretch_bits
      Src: /src/gpac/src/filters/out_video.c:1645,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1648,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1648,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1657,1
    - Dst: GF_VideoOutCtx*::video_out::Blit
      Src: /src/gpac/src/filters/out_video.c:1667,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_video.c:1671,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1674,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1681,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_video.c:1684,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_video.c:1684,1
    - Dst: gf_pixel_fmt_sname
      Src: /src/gpac/src/filters/out_video.c:1685,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:1688,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1689,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_video.c:1691,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_video.c:1693,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_video.c:1697,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_video.c:1700,1
    - Dst: GF_VideoOutCtx*::video_out::LockBackBuffer
      Src: /src/gpac/src/filters/out_video.c:1704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1708,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1708,1
    - Dst: GF_VideoOutCtx*::video_out::Flush
      Src: /src/gpac/src/filters/out_video.c:1716,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1718,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_video.c:1718,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 142
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - GF_VideoOutCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1721
      start: 1543
    functionDepth: 5
    functionLinenumber: 1543
    functionLinenumberEnd: 1721
    functionName: vout_draw_2d
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - gf_pixel_fmt_sname
    - GF_VideoOutCtx*::video_out::LockBackBuffer
    - gf_file_basename
    - snprintf
    - gf_fwrite
    - gf_filter_pck_get_frame_interface
    - strchr
    - gf_fopen
    - GF_VideoOutCtx*::video_out::Blit
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - gf_filter_pck_get_data
    - gf_stretch_bits
    - GF_VideoOutCtx*::video_out::Flush
    - GF_FilterFrameInterface*::get_plane
    - strcmp
    - gf_error_to_string
    - gf_fclose
    - GF_LOG
    - memset
    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:1726,1
    - Dst: resize_video_output
      Src: /src/gpac/src/filters/out_video.c:1733,1
    - Dst: vout_configure_pid
      Src: /src/gpac/src/filters/out_video.c:1739,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:1742,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1747,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1748,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:1754,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1755,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_video.c:1757,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1758,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1761,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1777,1
    - Dst: gf_filter_has_connect_errors
      Src: /src/gpac/src/filters/out_video.c:1779,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/src/filters/out_video.c:1783,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/out_video.c:1783,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1792,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_video.c:1796,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_video.c:1798,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_video.c:1798,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:1801,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1802,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1809,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1813,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1817,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1821,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1822,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/src/filters/out_video.c:1827,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1828,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1841,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:1842,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1868,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:1871,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_video.c:1874,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/out_video.c:1880,1
    - Dst: gf_filter_pid_query_buffer_duration_and_max
      Src: /src/gpac/src/filters/out_video.c:1887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1889,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_video.c:1891,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1892,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_video.c:1894,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_video.c:1896,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_video.c:1897,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:1901,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1906,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1908,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_video.c:1913,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1914,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1915,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:1926,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:1927,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/out_video.c:1933,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1936,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:1940,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:1941,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_video.c:1942,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_video.c:1944,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1945,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1951,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:1958,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:1961,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:1962,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/src/filters/out_video.c:1972,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1976,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1982,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:1995,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:1996,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:1996,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:2001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2005,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2005,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2019,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_video.c:2022,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2048,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2062,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2062,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:2064,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_video.c:2070,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2071,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2071,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/filters/out_video.c:2076,1
    - Dst: gf_filter_ui_event
      Src: /src/gpac/src/filters/out_video.c:2083,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2090,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_video.c:2094,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/out_video.c:2094,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/out_video.c:2097,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:2098,1
    - Dst: ABS
      Src: /src/gpac/src/filters/out_video.c:2105,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/filters/out_video.c:2115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2122,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2122,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:2124,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_video.c:2125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2130,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2130,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/out_video.c:2132,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_video.c:2133,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:2137,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2138,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_video.c:2138,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:2145,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_video.c:2148,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:2150,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_video.c:2158,1
    - Dst: gf_filter_pid_query_buffer_duration_and_max
      Src: /src/gpac/src/filters/out_video.c:2161,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:2166,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:2168,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_video.c:2170,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/out_video.c:2171,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_video.c:2171,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_video.c:2172,1
    - Dst: vout_draw_frame
      Src: /src/gpac/src/filters/out_video.c:2179,1
    CyclomaticComplexity: 115
    EdgeCount: 115
    ICount: 339
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2180
      start: 1723
    functionDepth: 8
    functionLinenumber: 1723
    functionLinenumberEnd: 2180
    functionName: vout_process
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - resize_video_output
    - gf_filter_has_connect_errors
    - gf_filter_pck_get_duration
    - GF_FEVT_INIT
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_timestamp_greater
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - GF_VideoOutCtx*::video_out::ProcessEvent
    - vout_configure_pid
    - gf_filter_reporting_enabled
    - gf_filter_pid_get_first_packet_cts
    - gf_filter_pid_query_buffer_duration_and_max
    - gf_filter_pid_set_discard
    - gf_filter_connections_pending
    - gf_filter_pck_unref
    - gf_filter_pck_ref
    - gf_sys_clock_high_res
    - gf_sys_clock
    - gf_filter_pck_get_cts
    - gf_filter_pck_is_blocking_ref
    - ABS
    - gf_filter_get_clock_hint
    - gf_filter_pid_is_eos
    - vout_draw_frame
    - gf_pixel_fmt_name
    - sprintf
    - gf_filter_ui_event
    - gf_filter_pid_init_play_event
    - gf_filter_all_sinks_done
    - gf_filter_pck_get_property
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_filter_pid_has_seen_eos
    - gf_filter_pid_is_flush_eos
    - gf_filter_update_status
    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:2188,1
    - Dst: vout_draw_gl
      Src: /src/gpac/src/filters/out_video.c:2189,1
    - Dst: glGetError
      Src: /src/gpac/src/filters/out_video.c:2190,1
    - Dst: vout_draw_2d
      Src: /src/gpac/src/filters/out_video.c:2194,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/out_video.c:2199,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/out_video.c:2203,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_video.c:2207,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VideoOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2211
      start: 2182
    functionDepth: 8
    functionLinenumber: 2182
    functionLinenumberEnd: 2211
    functionName: vout_draw_frame
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 2
    functionsReached:
    - glGetError
    - gf_filter_pck_unref
    - vout_draw_gl
    - gf_sys_clock_high_res
    - gf_filter_pck_is_blocking_ref
    - vout_draw_2d
    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:2216,1
    - Dst: vout_set_caption
      Src: /src/gpac/src/filters/out_video.c:2217,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_video.c:2221,1
    - Dst: GF_VideoOutCtx*::video_out::ProcessEvent
      Src: /src/gpac/src/filters/out_video.c:2224,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2230
      start: 2213
    functionDepth: 2
    functionLinenumber: 2213
    functionLinenumberEnd: 2230
    functionName: vout_process_event
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - vout_set_caption
    - gf_filter_get_udta
    - GF_VideoOutCtx*::video_out::ProcessEvent
    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:2234,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2236,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2242,1
    - Dst: vout_reset_overlay
      Src: /src/gpac/src/filters/out_video.c:2246,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_video.c:2252,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2255,1
    - Dst: vout_reset_overlay
      Src: /src/gpac/src/filters/out_video.c:2256,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2260,1
    - Dst: GF_VideoOutCtx*::video_out::SetFullScreen
      Src: /src/gpac/src/filters/out_video.c:2263,1
    - Dst: GF_VideoOutCtx*::video_out::SetFullScreen
      Src: /src/gpac/src/filters/out_video.c:2269,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2276,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2276,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2281,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_video.c:2285,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_video.c:2290,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_video.c:2292,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_video.c:2303,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: 2309
      start: 2232
    functionDepth: 2
    functionLinenumber: 2232
    functionLinenumberEnd: 2309
    functionName: vout_update_arg
    functionSourceFile: /src/gpac/src/filters/out_video.c
    functionUses: 0
    functionsReached:
    - vout_reset_overlay
    - gf_filter_get_udta
    - GF_VideoOutCtx*::video_out::SetFullScreen
    - GF_LOG
    - gf_filter_post_process_task
    - GF_FEVT_INIT
    - strcmp
    - gf_filter_pid_send_event
    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: 2314
      start: 2313
    functionDepth: 0
    functionLinenumber: 2313
    functionLinenumberEnd: 2314
    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: 2410
      start: 2407
    functionDepth: 0
    functionLinenumber: 2407
    functionLinenumberEnd: 2410
    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: 2415
      start: 2412
    functionDepth: 0
    functionLinenumber: 2412
    functionLinenumberEnd: 2415
    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: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:111,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_fclose
    - gf_free
    - gf_strcat
    - gf_file_move
    - gf_file_delete
    linkageType: ''
    returnType: void
    signature: void fileout_close_hls_chunk(GF_FileOutCtx *ctx, Bool final_flush)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:123,1
    - Dst: gf_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:
    - gf_strcpy
    - gf_file_move
    - gf_file_delete
    - gf_strcat
    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: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:185,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:187,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:187,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:187,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/out_file.c:188,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/out_file.c:189,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:192,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_file.c:197,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:198,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:199,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/out_file.c:200,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:203,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:204,1
    - Dst: gf_filter_pid_resolve_file_template_ex
      Src: /src/gpac/src/filters/out_file.c:205,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_file.c:212,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:214,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_file.c:217,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/out_file.c:222,1
    - Dst: scanf
      Src: /src/gpac/src/filters/out_file.c:223,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:239,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:242,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:245,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/out_file.c:246,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:246,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_file.c:246,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/out_file.c:247,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_file.c:251,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:252,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_file.c:255,1
    - Dst: gf_fd_open
      Src: /src/gpac/src/filters/out_file.c:257,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_file.c:260,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_file.c:262,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:263,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:265,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:273,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 104
    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: 278
      start: 130
    functionDepth: 6
    functionLinenumber: 130
    functionLinenumberEnd: 278
    functionName: fileout_open_close
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - fprintf
    - GF_ARRAY_LENGTH
    - gf_assert
    - gf_fd_open
    - _setmode
    - gf_fopen
    - gf_filter_pid_resolve_file_template_ex
    - gf_fileio_translate_url
    - fileout_close_hls_chunk
    - gf_filter_pid_resolve_file_template
    - gf_strcpy
    - gf_file_ext_start
    - gf_file_exists
    - strcmp
    - _fileno
    - strlen
    - fileout_check_close
    - gf_fclose
    - scanf
    - GF_LOG
    - gf_strcat
    - gf_fopen_ex
    - gf_opts_get_bool
    - close
    - strncmp
    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:285,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:286,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:289,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:293,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_file.c:296,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:298,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:301,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:302,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: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:310,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:313,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:315,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:316,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:318,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 41
    argCount: 2
    argNames:
    - ctx
    - explicit_overwrite
    argTypes:
    - GF_FileOutCtx*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 280
    functionDepth: 7
    functionLinenumber: 280
    functionLinenumberEnd: 320
    functionName: fileout_setup_file
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - strchr
    - fileout_open_close
    - strstr
    - strncmp
    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:324,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:327,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_file.c:330,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_file.c:334,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:335,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:339,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:346,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:349,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_file.c:358,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:360,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:365,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: 371
      start: 321
    functionDepth: 7
    functionLinenumber: 321
    functionLinenumberEnd: 371
    functionName: fileout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_init_play_event
    - gf_filter_get_udta
    - gf_filter_pid_send_event
    - fileout_open_close
    - gf_list_new
    - gf_filter_pid_check_caps
    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:377,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:388,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:388,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_file.c:388,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_file.c:389,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_file.c:392,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_file.c:397,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_file.c:399,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:403,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/filters/out_file.c:405,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/out_file.c:405,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_file.c:407,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/out_file.c:410,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:416,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:418,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_file.c:426,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:431,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_file.c:436,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_file.c:441,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:444,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_file.c:446,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_file.c:448,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_file.c:451,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 70
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 373
    functionDepth: 4
    functionLinenumber: 373
    functionLinenumberEnd: 457
    functionName: fileout_initialize
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - strchr
    - gf_filter_override_caps
    - gf_file_ext_start
    - strlwr
    - gf_filter_get_udta
    - gf_fileio_from_url
    - gf_filter_setup_failure
    - GF_LOG
    - PROP_NAME
    - stricmp
    - gf_fileio_open_url
    - gf_fileio_translate_url
    - strnicmp
    - PROP_UINT
    - strstr
    - strncmp
    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:462,1
    - Dst: fileout_close_hls_chunk
      Src: /src/gpac/src/filters/out_file.c:464,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:466,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/filters/out_file.c:468,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_file.c:471,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_file.c:472,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:473,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_file.c:475,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:477,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:478,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 459
    functionDepth: 7
    functionLinenumber: 459
    functionLinenumberEnd: 479
    functionName: fileout_finalize
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_fileio_open_url
    - fileout_close_hls_chunk
    - fileout_open_close
    - gf_list_pop_back
    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:489,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_file.c:491,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_file.c:499,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_file.c:499,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_file.c:500,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_file.c:502,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_file.c:502,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_file.c:503,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_file.c:512,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:520,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:526,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:530,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:538,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:541,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/out_file.c:547,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/out_file.c:549,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_file.c:552,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:561,1
    - Dst: gf_filter_pid_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:564,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:565,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_file.c:568,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_file.c:570,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:575,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_file.c:577,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_file.c:578,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:594,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_file.c:598,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:606,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:612,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:616,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_file.c:625,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:627,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:631,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:644,1
    - Dst: gf_filter_pid_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:647,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:651,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:654,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/out_file.c:656,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:663,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/out_file.c:667,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:669,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:672,1
    - Dst: fileout_setup_file
      Src: /src/gpac/src/filters/out_file.c:680,1
    - Dst: gf_fileio_check
      Src: /src/gpac/src/filters/out_file.c:685,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:689,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:691,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_file.c:692,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_file.c:696,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_file.c:697,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:698,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:699,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:701,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_file.c:703,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_file.c:703,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_file.c:707,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_file.c:710,1
    - Dst: fileout_close_hls_chunk
      Src: /src/gpac/src/filters/out_file.c:712,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_file.c:715,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_file.c:716,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:721,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_file.c:722,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_file.c:723,1
    - Dst: gf_fileio_open_url
      Src: /src/gpac/src/filters/out_file.c:727,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/out_file.c:727,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_file.c:729,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:732,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/out_file.c:734,1
    - Dst: gf_fileio_write_ready
      Src: /src/gpac/src/filters/out_file.c:741,1
    - Dst: gf_fileio_write_ready
      Src: /src/gpac/src/filters/out_file.c:743,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/out_file.c:749,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_file.c:765,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_file.c:767,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/out_file.c:769,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/out_file.c:770,1
    - Dst: GF_LOG
      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_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/out_file.c:776,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:785,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:786,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:787,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:791,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:792,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:793,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:797,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_file.c:803,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:805,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:815,1
    - Dst: read
      Src: /src/gpac/src/filters/out_file.c:816,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:820,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/out_file.c:821,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:825,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:831,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:832,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:836,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:837,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:841,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:847,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:853,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:854,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:855,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:859,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:860,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_file.c:861,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:865,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:874,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:880,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:889,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_file.c:899,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_pixel_get_size_info
      Src: /src/gpac/src/filters/out_file.c:908,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_file.c:914,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:916,1
    - Dst: write
      Src: /src/gpac/src/filters/out_file.c:929,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_file.c:932,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:943,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:948,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_file.c:950,1
    - Dst: lseek_64
      Src: /src/gpac/src/filters/out_file.c:955,1
    - Dst: gf_ftell
      Src: /src/gpac/src/filters/out_file.c:958,1
    - Dst: fileout_open_close
      Src: /src/gpac/src/filters/out_file.c:960,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_file.c:962,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_file.c:966,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/out_file.c:968,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_file.c:968,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_file.c:969,1
    CyclomaticComplexity: 123
    EdgeCount: 123
    ICount: 376
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 481
    functionDepth: 8
    functionLinenumber: 481
    functionLinenumberEnd: 972
    functionName: fileout_process
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_get_dependency_flags
    - gf_list_count
    - gf_filter_pck_get_interlaced
    - GF_FEVT_INIT
    - gf_file_basename
    - gf_url_concatenate
    - snprintf
    - gf_filter_pid_drop_packet
    - gf_fwrite
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_list_add
    - gf_filter_pck_get_frame_interface
    - gf_mpd_resolve_subnumber
    - gf_malloc
    - gf_filter_get_udta
    - gf_list_pop_front
    - fileout_close_hls_chunk
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - fileout_setup_file
    - gf_dynstrcat
    - gf_filter_reporting_enabled
    - gf_strcpy
    - write
    - read
    - gf_fileio_from_url
    - gf_filter_abort
    - gf_fileio_check
    - gf_ftell
    - fileout_open_close
    - strrchr
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pid_is_eos
    - gf_fileio_write_ready
    - sprintf
    - gf_free
    - gf_filter_pck_get_property
    - gf_filter_pck_get_byte_offset
    - GF_LOG
    - lseek_64
    - gf_filter_setup_failure
    - gf_fileio_open_url
    - gf_fseek
    - gf_pixel_get_size_info
    - gf_file_delete
    - gf_fopen_ex
    - gf_fread
    - gf_strdup
    - strncmp
    - gf_filter_pid_is_flush_eos
    - gf_filter_update_status
    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:979,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:981,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_file.c:983,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_file.c:986,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_file.c:986,1
    - Dst: gf_fileio_file_delete
      Src: /src/gpac/src/filters/out_file.c:989,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/out_file.c:993,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:994,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_file.c:995,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_file.c:997,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1003
      start: 976
    functionDepth: 3
    functionLinenumber: 976
    functionLinenumberEnd: 1003
    functionName: fileout_process_event
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_free
    - gf_filter_get_udta
    - GF_LOG
    - gf_url_concatenate
    - gf_fileio_file_delete
    - gf_file_delete
    - strncmp
    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:1006,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:1008,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_file.c:1009,1
    - Dst: gf_fileio_write_mode
      Src: /src/gpac/src/filters/out_file.c:1010,1
    - Dst: gf_fileio_from_url
      Src: /src/gpac/src/filters/out_file.c:1010,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1017
      start: 1004
    functionDepth: 3
    functionLinenumber: 1004
    functionLinenumberEnd: 1017
    functionName: fileout_probe_url
    functionSourceFile: /src/gpac/src/filters/out_file.c
    functionUses: 0
    functionsReached:
    - gf_fileio_from_url
    - strstr
    - gf_fileio_write_mode
    - strnicmp
    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: 1021
      start: 1020
    functionDepth: 0
    functionLinenumber: 1020
    functionLinenumberEnd: 1021
    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:1099,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_file.c:1100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 1097
    functionDepth: 6
    functionLinenumber: 1097
    functionLinenumberEnd: 1103
    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: 1108
      start: 1105
    functionDepth: 0
    functionLinenumber: 1105
    functionLinenumberEnd: 1108
    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_filter_pid_get_property
    - gf_list_count
    - gf_bs_write_int
    - GF_FEVT_INIT
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pid_is_playing
    - gf_filter_pid_send_event
    - oh_decode
    - gf_filter_pid_get_max_buffer
    - gf_odf_hevc_cfg_del
    - oh_select_view_layer
    - gf_odf_hevc_cfg_read
    - gf_list_get
    - oh_extradata_cpy_lhvc
    - oh_select_active_layer
    - gf_bs_write_data
    - oh_start
    - gf_free
    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_bs_write_int
    - gf_bs_write_data
    - gf_list_get
    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_get_content
    - ohevcdec_write_ps_list
    - gf_bs_new
    - gf_bs_del
    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:
    - libOpenHevcVersion
    - gf_filter_set_name
    - 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: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties_from_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:288,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:290,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:292,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:292,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:293,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:294,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:297,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:297,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:298,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:298,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:300,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: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:305,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:307,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:307,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:308,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: ohevcdec_get_pixel_format
      Src: /src/gpac/src/filters/dec_openhevc.c:313,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:314,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_openhevc.c:314,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_openhevc.c:315,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_openhevc.c:315,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - src_pck
    argTypes:
    - GF_OHEVCDecCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 316
    functionName: ohevc_set_out_props
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_filter_pid_copy_properties_from_packet
    - PROP_FRAC
    - ohevcdec_get_pixel_format
    linkageType: ''
    returnType: void
    signature: void ohevc_set_out_props(GF_OHEVCDecCtx *ctx, GF_FilterPacket *src_pck)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:725,1
    - Dst: oh_select_view_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:738,1
    - Dst: oh_select_active_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:739,1
    - Dst: oh_close
      Src: /src/gpac/src/filters/dec_openhevc.c:753,1
    - Dst: ohevcdec_configure_pid
      Src: /src/gpac/src/filters/dec_openhevc.c:757,1
    - Dst: oh_select_active_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:762,1
    - Dst: oh_select_view_layer
      Src: /src/gpac/src/filters/dec_openhevc.c:763,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 39
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 723
    functionDepth: 1
    functionLinenumber: 723
    functionLinenumberEnd: 771
    functionName: ohevcdec_process_event
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - oh_select_active_layer
    - gf_filter_get_udta
    - ohevcdec_configure_pid
    - oh_select_view_layer
    - oh_close
    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:776,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dec_openhevc.c:778,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: 779
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 779
    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: 801
      start: 781
    functionDepth: 0
    functionLinenumber: 781
    functionLinenumberEnd: 801
    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:812,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/dec_openhevc.c:814,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:818,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_openhevc.c:820,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:821,1
    - Dst: gf_filter_pck_get_mark
      Src: /src/gpac/src/filters/dec_openhevc.c:822,1
    - Dst: ohevc_set_out_props
      Src: /src/gpac/src/filters/dec_openhevc.c:823,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:825,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_openhevc.c:826,1
    - Dst: gf_filter_pck_unref
      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: 27
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_OHEVCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 803
    functionDepth: 2
    functionLinenumber: 803
    functionLinenumberEnd: 839
    functionName: ohevcdec_send_output_frame
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_merge_properties
    - oh_output_update
    - gf_filter_pck_unref
    - gf_filter_pck_get_mark
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - ohevc_set_out_props
    - gf_list_get
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_send
    - gf_list_rem
    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_mark
      Src: /src/gpac/src/filters/dec_openhevc.c:1066,1
    - Dst: ohevc_set_out_props
      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: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:1073,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_openhevc.c:1075,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_openhevc.c:1077,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 201
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_OHEVCDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1080
      start: 840
    functionDepth: 3
    functionLinenumber: 840
    functionLinenumberEnd: 1080
    functionName: ohevcdec_flush_picture
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - oh_cropped_frameinfo_from_layer
    - ohevc_set_out_props
    - oh_cropped_frameinfo
    - gf_filter_pck_get_seek_flag
    - gf_list_get
    - memcpy
    - gf_filter_pck_send
    - ohevcdec_send_output_frame
    - gf_filter_pck_unref
    - oh_output_update
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - oh_output_cropped_cpy_from_layer
    - gf_filter_pck_discard
    - oh_frameinfo_update
    - gf_filter_pck_get_mark
    - GF_LOG
    - gf_list_del_item
    - oh_output_cropped_cpy
    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:1085,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_openhevc.c:1091,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dec_openhevc.c:1094,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - stream
    - ts
    argTypes:
    - GF_OHEVCDecCtx*
    - GF_HEVCStream*
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1101
      start: 1082
    functionDepth: 1
    functionLinenumber: 1082
    functionLinenumberEnd: 1101
    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: 47
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_openhevc.c:1113,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1121,1
    - Dst: oh_flush
      Src: /src/gpac/src/filters/dec_openhevc.c:1124,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1128,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1131,1
    - Dst: ohevcdec_flush_picture
      Src: /src/gpac/src/filters/dec_openhevc.c:1134,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1136,1
    - Dst: oh_close
      Src: /src/gpac/src/filters/dec_openhevc.c:1139,1
    - Dst: ohevcdec_configure_pid
      Src: /src/gpac/src/filters/dec_openhevc.c:1143,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1149,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/dec_openhevc.c:1155,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dec_openhevc.c:1159,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_openhevc.c:1161,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_openhevc.c:1162,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dec_openhevc.c:1163,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dec_openhevc.c:1164,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_openhevc.c:1166,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1173,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_openhevc.c:1178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1182,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_openhevc.c:1182,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_openhevc.c:1187,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1188,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_openhevc.c:1192,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:1193,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1197,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1198,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1201,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_openhevc.c:1207,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1210,1
    - Dst: oh_start
      Src: /src/gpac/src/filters/dec_openhevc.c:1226,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1234,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1237,1
    - Dst: ohevcdec_flush_picture
      Src: /src/gpac/src/filters/dec_openhevc.c:1240,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_openhevc.c:1247,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:1248,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_openhevc.c:1249,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:1250,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_openhevc.c:1259,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_openhevc.c:1260,1
    - Dst: gf_filter_pck_set_mark
      Src: /src/gpac/src/filters/dec_openhevc.c:1262,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1272,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_openhevc.c:1275,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_openhevc.c:1276,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1280,1
    - Dst: translate_ts_temi
      Src: /src/gpac/src/filters/dec_openhevc.c:1281,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_openhevc.c:1294,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dec_openhevc.c:1299,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1301,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1302,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:1306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1310,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1316,1
    - Dst: oh_decode_lhvc
      Src: /src/gpac/src/filters/dec_openhevc.c:1318,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dec_openhevc.c:1326,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_openhevc.c:1328,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1331,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1334,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/dec_openhevc.c:1334,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_openhevc.c:1339,1
    - Dst: oh_decode
      Src: /src/gpac/src/filters/dec_openhevc.c:1343,1
    - Dst: ohevcdec_flush_picture
      Src: /src/gpac/src/filters/dec_openhevc.c:1352,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 189
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1103
    functionDepth: 5
    functionLinenumber: 1103
    functionLinenumberEnd: 1353
    functionName: ohevcdec_process
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_bs_read_u64
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pid_drop_packet
    - oh_decode
    - gf_filter_pid_get_packet
    - gf_list_add
    - ohevcdec_flush_picture
    - gf_filter_pck_set_mark
    - gf_filter_get_udta
    - translate_ts_temi
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - oh_close
    - gf_filter_pck_get_dts
    - gf_filter_pck_enum_properties
    - gf_filter_pck_unref
    - gf_filter_pid_get_name
    - gf_filter_pck_get_cts
    - gf_filter_pck_ref_props
    - gf_bs_read_u32
    - gf_filter_pid_is_eos
    - gf_list_pop_back
    - oh_start
    - gf_free
    - GF_LOG
    - ohevcdec_configure_pid
    - oh_flush
    - oh_decode_lhvc
    - strncmp
    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:1358,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/filters/dec_openhevc.c:1361,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_openhevc.c:1363,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_openhevc.c:1366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1370
      start: 1355
    functionDepth: 1
    functionLinenumber: 1355
    functionLinenumberEnd: 1370
    functionName: ohevcdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_sys_get_rti
    - gf_filter_get_udta
    - gf_list_new
    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:1374,1
    - Dst: oh_start
      Src: /src/gpac/src/filters/dec_openhevc.c:1376,1
    - Dst: oh_close
      Src: /src/gpac/src/filters/dec_openhevc.c:1377,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:1379,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_openhevc.c:1380,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_openhevc.c:1382,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_openhevc.c:1383,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_openhevc.c:1384,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_openhevc.c:1386,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1372
    functionDepth: 3
    functionLinenumber: 1372
    functionLinenumberEnd: 1387
    functionName: ohevcdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_openhevc.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - oh_start
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    - oh_close
    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: 1406
      start: 1405
    functionDepth: 0
    functionLinenumber: 1405
    functionLinenumberEnd: 1406
    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: 1460
      start: 1451
    functionDepth: 0
    functionLinenumber: 1451
    functionLinenumberEnd: 1460
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_is_filter_in_parents
    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_odf_desc_del
    - gf_odf_desc_copy
    - gf_list_count
    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_scene_setup_object
    - gf_list_count
    - gf_mo_new
    - GF_LOG
    - gf_odm_setup_object
    - gf_list_enum
    - gf_odm_setup_remote_object
    - gf_odm_new
    - gf_list_get
    - gf_scene_new
    - gf_clock_set_time
    - gf_list_add
    - gf_input_sensor_setup_object
    - attach_desc_to_odm
    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
    - ODS_SetupOD
    - gf_list_get
    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_odm_disconnect
    - gf_scene_find_odm
    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_scene_setup_object
    - gf_odf_desc_del
    - gf_list_count
    - gf_list_enum
    - gf_odm_setup_es
    - gf_scene_find_odm
    - gf_list_get
    - gf_list_add
    - 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_filter_pid_get_property
    - ODS_RemoveOD
    - gf_list_count
    - ODS_ODUpdate
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_odf_codec_del
    - gf_sc_check_sys_frame
    - gf_odf_codec_get_com
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_timestamp_to_clocktime
    - IS_UpdateIPMP
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_filter_get_ipid
    - gf_odf_codec_decode
    - ODS_UpdateESD
    - gf_sys_clock_high_res
    - gf_filter_pck_get_cts
    - gf_odf_codec_new
    - gf_filter_pid_is_eos
    - gf_odf_com_del
    - GF_LOG
    - ODS_RemoveESD
    - gf_filter_pck_get_timescale
    - gf_odf_codec_set_au
    - 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_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_ipid
    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_filter_pid_get_property
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_bs_read_u64
    - gf_bs_del
    - PROP_FRAC64
    - gf_fopen
    - gf_bs_from_file
    - gf_realloc
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_fclose
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - strncmp
    - gf_bs_available
    - gf_bs_read_u24
    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_set_framing_mode
    - gf_filter_get_udta
    - gf_fileio_is_main_thread
    - gf_filter_pid_remove
    - gf_filter_force_main_thread
    - gf_filter_pid_check_caps
    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:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - nhntdmx_check_dur
    - 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: gf_strcpy
      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_strcpy
      Src: /src/gpac/src/filters/dmx_nhnt.c:317,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/dmx_nhnt.c:320,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_nhnt.c:322,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_nhnt.c:322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:323,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dmx_nhnt.c:326,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhnt.c:327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:330,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:331,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_nhnt.c:332,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_nhnt.c:337,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:337,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:337,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:337,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:341,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dmx_nhnt.c:341,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:342,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_nhnt.c:343,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_nhnt.c:347,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:350,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_nhnt.c:350,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/dmx_nhnt.c:352,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:353,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:353,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:356,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:358,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:360,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:362,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:362,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_nhnt.c:364,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:365,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:365,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_nhnt.c:367,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_nhnt.c:368,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:369,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:370,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:370,1
    - Dst: gf_bs_read_u32
      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_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:373,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:373,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhnt.c:376,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/dmx_nhnt.c:376,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_nhnt.c:378,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/dmx_nhnt.c:380,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dmx_nhnt.c:382,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/dmx_nhnt.c:384,1
    - Dst: gf_file_load_data_filep
      Src: /src/gpac/src/filters/dmx_nhnt.c:387,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:388,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dmx_nhnt.c:394,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:396,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_nhnt.c:396,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_FRAC_INT
      Src: /src/gpac/src/filters/dmx_nhnt.c:399,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:404,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/dmx_nhnt.c:404,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhnt.c:406,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_nhnt.c:410,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_nhnt.c:410,1
    - Dst: nhntdmx_check_dur
      Src: /src/gpac/src/filters/dmx_nhnt.c:412,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_nhnt.c:416,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_nhnt.c:423,1
    - Dst: gf_bs_read_u24
      Src: /src/gpac/src/filters/dmx_nhnt.c:427,1
    - Dst: gf_bs_read_int
      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:432,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_nhnt.c:435,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_u32
      Src: /src/gpac/src/filters/dmx_nhnt.c:439,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_fseek
      Src: /src/gpac/src/filters/dmx_nhnt.c:452,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_nhnt.c:454,1
    - Dst: gf_fread
      Src: /src/gpac/src/filters/dmx_nhnt.c:457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_nhnt.c:459,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_nhnt.c:461,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_nhnt.c:463,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_nhnt.c:464,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_nhnt.c:465,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/dmx_nhnt.c:466,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_nhnt.c:467,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_nhnt.c:468,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_nhnt.c:470,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_nhnt.c:473,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 157
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 266
    functionDepth: 7
    functionLinenumber: 266
    functionLinenumberEnd: 475
    functionName: nhntdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_read_u8
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - GF_ARRAY_LENGTH
    - PROP_DATA_NO_COPY
    - gf_bs_read_u64
    - gf_filter_pid_set_eos
    - gf_bs_available
    - gf_assert
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_4cc_to_str
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_bs_skip_bytes
    - gf_filter_pid_would_block
    - gf_m4v_get_config
    - gf_filter_get_udta
    - gf_filter_pck_set_seek_flag
    - gf_fileio_translate_url
    - gf_file_load_data_filep
    - gf_filter_pck_get_data
    - PROP_FRAC_INT
    - gf_fsize
    - gf_filter_pid_new
    - nhntdmx_check_dur
    - gf_filter_pck_send
    - gf_strcpy
    - gf_filter_pid_set_discard
    - gf_file_ext_start
    - gf_filter_pck_set_cts
    - gf_bs_read_int
    - PROP_BOOL
    - strrchr
    - PROP_STRING
    - gf_filter_pck_set_sap
    - strlen
    - gf_bs_read_u32
    - gf_filter_pid_is_eos
    - gf_bs_read_u16
    - gf_fclose
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_strcat
    - GF_4CC
    - gf_fseek
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_fopen_ex
    - gf_fread
    - gf_strlcat
    - strncmp
    - gf_bs_read_u24
    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: 481
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 481
    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:485,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_nhnt.c:486,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_nhnt.c:487,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_nhnt.c:488,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 483
    functionDepth: 5
    functionLinenumber: 483
    functionLinenumberEnd: 489
    functionName: nhntdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_nhnt.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_bs_del
    - gf_fclose
    - 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: 493
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 493
    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: 532
      start: 529
    functionDepth: 0
    functionLinenumber: 529
    functionLinenumberEnd: 532
    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: 537
      start: 534
    functionDepth: 0
    functionLinenumber: 534
    functionLinenumberEnd: 537
    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_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - gf_crc_32
    - GF_LOG
    - mpeghdecoder_setMhaConfig
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - mpeghdecoder_init
    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_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_timestamp_rescale_signed
    - mpeghdecoder_destroy
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - mpegh_dec_configure_pid
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - mpeghdecoder_process
    - gf_list_get
    - mpeghdecoder_getSamples
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - mpeghdecoder_flush
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_ref_props
    - mpeghdecoder_flushAndGet
    - gf_filter_pid_is_eos
    - gf_filter_pck_discard
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_truncate
    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_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - mpeghdecoder_flush
    - gf_list_pop_back
    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_filter_get_udta
    - gf_list_new
    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_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - mpeghdecoder_destroy
    - gf_list_pop_back
    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_bs_get_position
    - gf_list_count
    - gf_bs_read_u8
    - gf_bs_write_int
    - gf_bs_get_size
    - gf_assert
    - gf_bs_new
    - gf_bs_read_ue
    - gf_bs_get_bit_position
    - gf_bs_reassign_buffer
    - gf_bs_write_se
    - gf_malloc
    - gf_bs_read_se
    - gf_list_get
    - gf_bs_enable_emulation_byte_removal
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_read_int
    - gf_bs_get_content_no_truncate
    - gf_bs_write_ue
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_align
    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_bs_get_position
    - gf_bs_write_int
    - gf_assert
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_new
    - gf_bs_read_ue
    - gf_bs_get_bit_position
    - gf_bs_reassign_buffer
    - gf_bs_write_se
    - gf_bs_read_se
    - gf_realloc
    - memcpy
    - gf_bs_enable_emulation_byte_removal
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_read_int
    - gf_bs_get_content_no_truncate
    - gf_bs_write_ue
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_align
    - GF_LOG
    - gf_bs_available
    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_list_count
    - gf_free
    - gf_odf_hevc_cfg_del
    - PROP_DATA_NO_COPY
    - hevcmerge_rewrite_pps
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_set_property
    - gf_list_get
    - hevc_rewrite_sps
    - gf_odf_hevc_cfg_write
    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_filter_pid_get_property
    - gf_list_count
    - gf_free
    - gf_malloc
    - GF_LOG
    - PROP_VEC2I_INT
    - gf_assert
    - gf_filter_pid_set_property
    - gf_list_get
    - memset
    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_list_count
    - hevcmerge_compute_address
    - gf_free
    - gf_malloc
    - hevcmerge_build_srdmap
    - gf_list_insert
    - GF_LOG
    - gf_assert
    - gf_filter_pid_get_name
    - gf_list_add
    - memmove
    - gf_list_get
    - memset
    - gf_realloc
    - gf_list_reset
    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:
    - CHECK_PPS_VAL
    - gf_filter_pid_get_source
    - gf_free
    - 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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - gf_assert
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_hevc_read_sps
    - gf_list_add
    - hevcmerge_rebuild_grid
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_crc_32
    - gf_filter_pid_get_udta
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_remove
    - gf_hevc_read_vps
    - gf_list_get
    - gf_filter_pid_new
    - hevcmerge_check_sps_pps
    - hevcmerge_rewrite_config
    - gf_filter_pid_copy_properties
    - gf_hevc_read_pps
    - gf_filter_pid_check_caps
    - gf_free
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_UINT
    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_bs_get_position
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - hevcmerge_rewrite_slice
    - gf_filter_pid_set_eos
    - hevcmerge_write_nal
    - gf_assert
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - gf_filter_pck_expand
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_hevc_parse_nalu
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_bs_read_int
    - gf_filter_pid_is_eos
    - gf_timestamp_less
    - GF_LOG
    - gf_bs_available
    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_filter_get_udta
    - gf_bs_new
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - GF_LOG
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    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
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_get_property_str
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_fclose
    - gf_fileio_is_main_thread
    - gf_fseek
    - gf_ftell
    - gf_fopen_ex
    - strncmp
    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:
    - gf_filter_pid_copy_properties
    - flac_dmx_check_dur
    - PROP_DATA
    - PROP_LONGUINT
    - gf_crc_32
    - flac_channel_layout
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_set_name
    - PROP_BOOL
    - gf_filter_pid_new
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void flac_dmx_check_pid(GF_Filter *filter, GF_FLACDmxCtx *ctx, u8 *dsi,
      u32 dsi_size)
  - BBCount: 15
    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:247,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_flac.c:270,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_flac.c:272,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_flac.c:279,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 225
    functionDepth: 7
    functionLinenumber: 225
    functionLinenumberEnd: 293
    functionName: flac_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - flac_dmx_check_dur
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    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: 305
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 305
    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: 349
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 349
    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: 395
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 395
    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:415,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/filters/reframe_flac.c:416,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:417,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:422,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:425,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:429,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:438,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:442,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_flac.c:445,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_flac.c:450,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:459,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:460,1
    - Dst: gf_bs_read_u8
      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_read_u16
      Src: /src/gpac/src/filters/reframe_flac.c:478,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_flac.c:483,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_flac.c:485,1
    - Dst: flac_dmx_crc8
      Src: /src/gpac/src/filters/reframe_flac.c:486,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:492,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_flac.c:495,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/reframe_flac.c:504,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: 512
      start: 408
    functionDepth: 5
    functionLinenumber: 408
    functionLinenumberEnd: 512
    functionName: flac_parse_header
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_bs_is_overflow
    - gf_bs_mark_overflow
    - gf_bs_read_int
    - gf_bs_reassign_buffer
    - flac_dmx_crc8
    - gf_bs_read_u16
    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:516,1
    - Dst: memset
      Src: /src/gpac/src/filters/reframe_flac.c:524,1
    - Dst: flac_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_flac.c:535,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_flac.c:540,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_flac.c:542,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_flac.c:545,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_flac.c:546,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_flac.c:558,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_flac.c:561,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_flac.c:574,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_flac.c:576,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_flac.c:582,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_flac.c:613,1
    - Dst: flac_parse_header
      Src: /src/gpac/src/filters/reframe_flac.c:622,1
    - Dst: flac_dmx_crc16
      Src: /src/gpac/src/filters/reframe_flac.c:630,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/reframe_flac.c:640,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_flac.c:654,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_flac.c:655,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_flac.c:656,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_flac.c:657,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_flac.c:661,1
    - Dst: gf_bs_available
      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_int
      Src: /src/gpac/src/filters/reframe_flac.c:667,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_flac.c:670,1
    - Dst: gf_bs_read_u16
      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_u24
      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_int
      Src: /src/gpac/src/filters/reframe_flac.c:676,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/reframe_flac.c:680,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_flac.c:683,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_flac.c:684,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_flac.c:689,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_flac.c:694,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_flac.c:698,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframe_flac.c:699,1
    - Dst: flac_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_flac.c:703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_flac.c:713,1
    - Dst: flac_parse_header
      Src: /src/gpac/src/filters/reframe_flac.c:721,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:724,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_flac.c:724,1
    - Dst: flac_channel_layout
      Src: /src/gpac/src/filters/reframe_flac.c:729,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_flac.c:730,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/reframe_flac.c:730,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_flac.c:750,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_flac.c:752,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_flac.c:754,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_flac.c:756,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_flac.c:758,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_flac.c:758,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_flac.c:760,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_flac.c:761,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_flac.c:764,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_flac.c:766,1
    - Dst: flac_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_flac.c:768,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:771,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_flac.c:774,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_flac.c:785,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_flac.c:789,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_flac.c:792,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 216
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 514
    functionDepth: 8
    functionLinenumber: 514
    functionLinenumberEnd: 795
    functionName: flac_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - gf_filter_pid_set_eos
    - gf_assert
    - flac_dmx_update_cts
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - flac_channel_layout
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - flac_dmx_crc16
    - gf_fatal_assert
    - flac_dmx_check_pid
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pid_set_discard
    - memchr
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - flac_parse_header
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_bs_read_u32
    - memmove
    - gf_filter_pid_is_eos
    - gf_filter_pck_ref_props
    - gf_bs_read_u16
    - flac_dmx_check_dur
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - GF_LOG
    - GF_4CC
    - gf_bs_read_long_int
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_byte_offset
    - memset
    - gf_bs_available
    - gf_bs_read_u24
    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:799,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_flac.c:800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 797
    functionDepth: 1
    functionLinenumber: 797
    functionLinenumberEnd: 802
    functionName: flac_dmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gf_bs_new
    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:805,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_flac.c:808,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_flac.c:809,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 803
    functionDepth: 3
    functionLinenumber: 803
    functionLinenumberEnd: 810
    functionName: flac_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:815,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 813
    functionDepth: 0
    functionLinenumber: 813
    functionLinenumberEnd: 820
    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: 840
      start: 839
    functionDepth: 0
    functionLinenumber: 839
    functionLinenumberEnd: 840
    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:873,1
    - Dst: flac_dmx_crc16
      Src: /src/gpac/src/filters/reframe_flac.c:875,1
    - Dst: flac_channel_layout
      Src: /src/gpac/src/filters/reframe_flac.c:876,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 869
    functionDepth: 1
    functionLinenumber: 869
    functionLinenumberEnd: 882
    functionName: rfflac_register
    functionSourceFile: /src/gpac/src/filters/reframe_flac.c
    functionUses: 0
    functionsReached:
    - flac_dmx_crc16
    - gf_sys_is_cov_mode
    - flac_channel_layout
    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: 887
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 887
    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_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_codecid_has_unframer
    - gf_filter_pid_set_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_pck_forward
    - gf_filter_get_ipid
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    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_sys_clock
    - gf_rtsp_send_response
    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: memcpy
      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:
    - strchr
    - gf_free
    - gf_malloc
    - gf_fclose
    - gf_rtsp_response_reset
    - rtspout_send_response
    - gf_fseek
    - gf_ftell
    - rtspout_process_setup
    - gf_fread
    - rtpout_create_sdp
    - memcpy
    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:
    - gf_filter_pid_send_event
    - gf_filter_pid_set_discard
    - GF_FEVT_INIT
    - rtpout_del_stream
    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_list_count
    - gf_rtsp_session_del
    - gf_free
    - gf_list_del
    - gf_filter_remove_src
    - gf_list_del_item
    - gf_rtsp_response_del
    - gf_rtsp_command_del
    - rtspout_del_stream
    - gf_list_pop_back
    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_filter_pid_is_filter_in_parents
    - gf_list_count
    - gf_list_get
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_get_netcap_id
    - GF_FEVT_INIT
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_list_add
    - rtspout_del_stream
    - rtspout_locate_session_for_pid
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - rtspout_on_rtcp
    - gf_list_find
    - gf_filter_pid_get_name
    - rtspout_del_session
    - strcmp
    - rtpout_init_streamer
    - GF_LOG
    - gf_list_del_item
    - gf_sys_is_cov_mode
    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: gf_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_strcpy
    - gf_rtsp_session_del
    - gf_filter_get_netcap_id
    - sprintf
    - gf_rand
    - gf_rtsp_command_new
    - GF_LOG
    - gf_rtsp_get_remote_address
    - gf_rtsp_session_new_server
    - gf_sys_clock
    - gf_rtsp_session_set_netcap_id
    - gf_rtsp_set_buffer_size
    - GF_SAFEALLOC
    - gf_list_new
    - gf_sys_is_test_mode
    - gf_list_add
    - gf_rtsp_response_new
    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: memcpy
      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_filter_get_netcap_id
    - gf_list_count
    - gf_ssl_server_context_new
    - gf_filter_make_sticky
    - gf_sk_bind
    - GF_SAFEALLOC
    - gf_ssl_init_lib
    - gf_list_add
    - gf_cfg_get_section_name
    - strstr
    - strchr
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - gf_dir_exists
    - gf_cfg_new
    - gf_list_get
    - gf_cfg_get_key
    - gf_dynstrcat
    - memcpy
    - atoi
    - rtspout_check_new_session
    - gf_file_exists
    - gf_cfg_del
    - gf_sk_new_ex
    - gf_list_new
    - strlen
    - strcmp
    - gf_error_to_string
    - gf_sk_listen
    - GF_LOG
    - gf_cfg_get_section_count
    - MIN
    - gf_strdup
    - gf_sk_server_mode
    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_list_count
    - gf_sk_del
    - gf_free
    - gf_filter_get_udta
    - gf_ssl_server_context_del
    - gf_list_del
    - rtspout_del_session
    - gf_list_get
    - gf_list_pop_back
    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_list_count
    - gf_rand
    - gf_rand_init
    - gf_rtp_streamer_get_ssrc
    - GF_SAFEALLOC
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_rtp_streamer_get_next_rtp_sn
    - gf_malloc
    - gf_timestamp_rescale
    - gf_filter_pck_get_seek_flag
    - gf_list_get
    - gf_filter_pck_get_dts
    - gf_sys_clock_high_res
    - gf_filter_pck_get_cts
    - strlen
    - sprintf
    - gf_rtsp_response_reset
    - gf_rtp_streamer_get_timescale
    - GF_LOG
    - gf_sys_is_cov_mode
    - rtspout_send_response
    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_count
    - gf_filter_pid_set_discard
    - gf_list_get
    - gf_filter_pid_send_event
    - memset
    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: 7
    functionLinenumber: 810
    functionLinenumberEnd: 845
    functionName: rtspout_process_rtp
    functionSourceFile: /src/gpac/src/filters/out_rtsp.c
    functionUses: 0
    functionsReached:
    - rtpout_process_rtp
    - rtspout_del_session
    - rtspout_init_clock
    - rtspout_check_last_sess
    - gf_rtsp_check_connection
    - 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_list_count
    - gf_rtsp_response_reset
    - gf_list_del_item
    - rtspout_del_session
    - 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_count
    - gf_rtsp_response_reset
    - gf_filter_get_arg_str
    - rtspout_send_sdp
    - gf_filter_connect_source
    - strcmp
    - gf_list_get
    - gf_filter_set_setup_failure_callback
    - gf_list_add
    - 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_count
    - gf_filter_has_pid_connection_pending
    - rtspout_send_sdp
    - gf_list_get
    - gf_filter_pid_is_filter_in_parents
    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
    - strcmp
    - gf_list_get
    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_count
    - strchr
    - strcmp
    - gf_list_get
    - strstr
    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_list_count
    - strchr
    - gf_free
    - gf_file_exists
    - gf_list_get
    - gf_creds_check_membership
    - gf_creds_check_password
    - gf_base64_decode
    - strcmp
    - gf_dynstrcat
    - strlen
    - strncmp
    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:
    - sscanf
    - strncmp
    - 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_list_count
    - rtspout_get_ctrl_id
    - gf_rtsp_session_del
    - gf_rtsp_generate_session_id
    - rand
    - gf_list_add
    - strstr
    - gf_rtp_streamer_set_interleave_callbacks
    - gf_list_find
    - rtspout_check_last_sess
    - gf_rtsp_get_session_ip
    - gf_list_get
    - gf_sk_is_multicast_address
    - rtspout_get_local_res_path
    - strcmp
    - gf_rtsp_response_reset
    - gf_free
    - GF_LOG
    - gf_strdup
    - rtspout_send_response
    - gf_list_reset
    - gf_rtp_streamer_init_rtsp
    - rtspout_get_next_mcast_port
    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_rtsp_session_del
    - gf_list_count
    - gf_filter_is_supported_source
    - rtspout_get_ctrl_id
    - rtspout_check_sdp
    - gf_rtsp_get_command
    - rtspout_process_setup
    - gf_list_add
    - strstr
    - strchr
    - gf_list_pop_front
    - rtspout_check_last_sess
    - rtspout_send_event
    - rtspout_load_media_service
    - gf_list_get
    - memcpy
    - rtspout_get_local_res_path
    - gf_sys_clock_high_res
    - gf_sys_clock
    - rtspout_del_session
    - strrchr
    - rtspout_send_sdp
    - strcmp
    - strlen
    - gf_list_new
    - gf_rtsp_response_reset
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_filter_url_is_filter
    - gf_rtsp_command_del
    - gf_strdup
    - rtspout_send_response
    - strncmp
    - rtspout_locate_mcast
    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_count
    - gf_rtsp_merge_tunnel
    - GF_LOG
    - gf_rtsp_get_session_cookie
    - rtspout_del_session
    - gf_rtsp_get_session_ip
    - strcmp
    - gf_list_get
    - gf_error_to_string
    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_count
    - rtspout_process_rtp
    - rtspout_check_new_session
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - GF_FEVT_INIT
    - gf_filter_post_process_task
    - gf_sys_clock
    - gf_sys_clock_high_res
    - rtspout_del_session
    - rtspout_process_session_signaling
    - gf_list_get
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - rtspout_merge_http_tunnel
    - gf_list_rem
    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_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_filter_pid_remove
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_check_caps
    - gf_realloc
    - gf_filter_set_name
    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:
    - png_get_io_ptr
    - memcpy
    - gf_filter_pck_expand
    - gf_filter_pck_new_alloc
    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:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - png_destroy_write_struct
    - gf_filter_pid_set_eos
    - png_write_end
    - png_create_write_struct
    - gf_filter_pid_drop_packet
    - png_set_write_fn
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - png_write_image
    - gf_filter_get_udta
    - png_jmpbuf
    - png_write_info
    - gf_filter_pck_get_data
    - gf_filter_pck_send
    - png_set_shift
    - png_create_info_struct
    - png_set_text
    - setjmp
    - png_set_filler
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pid_is_eos
    - gf_filter_pck_discard
    - GF_LOG
    - png_set_bgr
    - png_set_packing
    - memset
    - png_set_sBIT
    - png_set_IHDR
    - gf_filter_pck_truncate
    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_pid_copy_properties
    - sprintf
    - gf_filter_pid_new
    - gf_filter_pid_get_property
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_filter_pid_remove
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_check_caps
    - gf_filter_set_name
    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
    - longjmp
    - jpgenc_output_message
    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:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - jpeg_set_colorspace
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - jpeg_start_compress
    - gf_filter_pck_get_frame_interface
    - gf_filter_get_udta
    - jpeg_write_raw_data
    - gf_filter_pck_get_data
    - jpeg_finish_compress
    - gf_filter_pck_send
    - jpeg_create_compress
    - jpeg_set_defaults
    - setjmp
    - GF_FilterFrameInterface*::get_plane
    - jpeg_set_quality
    - gf_filter_pid_is_eos
    - jpeg_destroy_compress
    - gf_filter_pck_discard
    - GF_LOG
    - MIN
    - jpeg_std_error
    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_nonfatal_error2
    - gf_sys_is_cov_mode
    - jpgenc_output_message
    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_expand
    - gf_filter_pck_set_framing
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_dts
    - assert
    - memcpy
    - 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_filter_pid_set_eos
    - gf_list_count
    - m2tssplit_send_packet
    - gf_list_get
    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_filter_pid_get_property
    - gf_feof
    - gf_m2ts_process_data
    - gf_fclose
    - gf_fopen
    - gf_timestamp_rescale
    - gf_m2ts_demux_new
    - gf_fsize
    - gf_fread
    - gf_m2ts_demux_del
    - memset
    - strncmp
    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_filter_pid_copy_properties
    - gf_list_count
    - gf_filter_pid_new
    - gf_free
    - gf_malloc
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - m2ts_split_estimate_duration
    - GF_SAFEALLOC
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - m2tssplit_flush
    - gf_list_add
    - gf_list_pop_back
    - PROP_FRAC64
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err m2tssplit_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/tssplit.c:319,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:325,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/tssplit.c:346,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/tssplit.c:348,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:352,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:356,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:357,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/tssplit.c:362,1
    - Dst: gf_m2ts_reset_parsers
      Src: /src/gpac/src/filters/tssplit.c:366,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:378,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:379,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:381,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/tssplit.c:383,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 60
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 314
    functionDepth: 6
    functionLinenumber: 314
    functionLinenumberEnd: 392
    functionName: m2tssplit_process_event
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_list_count
    - gf_filter_get_udta
    - m2tssplit_send_packet
    - GF_FEVT_INIT
    - gf_m2ts_reset_parsers
    - gf_list_get
    - gf_filter_pid_send_event
    - gf_realloc
    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:396,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/tssplit.c:400,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/tssplit.c:402,1
    - Dst: m2tssplit_flush
      Src: /src/gpac/src/filters/tssplit.c:403,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/tssplit.c:406,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/tssplit.c:409,1
    - Dst: gf_m2ts_process_data
      Src: /src/gpac/src/filters/tssplit.c:411,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/tssplit.c:413,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/tssplit.c:415,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 394
    functionDepth: 4
    functionLinenumber: 394
    functionLinenumberEnd: 419
    functionName: m2tssplit_process
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_process_data
    - gf_filter_get_udta
    - gf_filter_ask_rt_reschedule
    - gf_sys_clock_high_res
    - gf_filter_pck_get_data
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - m2tssplit_flush
    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:429,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:435,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/tssplit.c:436,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:438,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:439,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/tssplit.c:445,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/tssplit.c:451,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/tssplit.c:453,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/tssplit.c:459,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/tssplit.c:463,1
    - Dst: gf_bs_write_u8
      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_int
      Src: /src/gpac/src/filters/tssplit.c:472,1
    - Dst: gf_bs_write_u8
      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:478,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_int
      Src: /src/gpac/src/filters/tssplit.c:495,1
    - Dst: gf_bs_write_u16
      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_write_int
      Src: /src/gpac/src/filters/tssplit.c:500,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/tssplit.c:502,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/tssplit.c:504,1
    - Dst: memset
      Src: /src/gpac/src/filters/tssplit.c:512,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:514,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:519,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:521,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:522,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:523,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:531,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:533,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:538,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:540,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:541,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:542,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:551,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:552,1
    - Dst: gf_filter_pid_new
      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_UINT
      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_STRING
      Src: /src/gpac/src/filters/tssplit.c:601,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:602,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/tssplit.c:602,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/tssplit.c:604,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/tssplit.c:604,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/tssplit.c:606,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/tssplit.c:608,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/tssplit.c:609,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/tssplit.c:610,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:640,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:642,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:667,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/tssplit.c:669,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:675,1
    - Dst: m2tssplit_send_packet
      Src: /src/gpac/src/filters/tssplit.c:677,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: 682
      start: 422
    functionDepth: 7
    functionLinenumber: 422
    functionLinenumberEnd: 682
    functionName: m2tssplit_on_event
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_bs_write_int
    - gf_assert
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_list_add
    - gf_bs_write_u8
    - PROP_FRAC64
    - gf_malloc
    - m2tssplit_send_packet
    - gf_crc_32
    - gf_list_get
    - gf_filter_pid_new
    - memcpy
    - gf_filter_pck_send
    - PROP_STRING
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_write_u16
    - gf_bs_write_u32
    - memset
    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:686,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/tssplit.c:687,1
    - Dst: gf_m2ts_demux_new
      Src: /src/gpac/src/filters/tssplit.c:688,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/tssplit.c:693,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 684
    functionDepth: 1
    functionLinenumber: 684
    functionLinenumberEnd: 700
    functionName: m2tssplit_initialize
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_demux_new
    - gf_bs_new
    - gf_filter_get_udta
    - gf_list_new
    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:704,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/tssplit.c:706,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/tssplit.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tssplit.c:708,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/tssplit.c:709,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/tssplit.c:711,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/tssplit.c:712,1
    - Dst: gf_m2ts_demux_del
      Src: /src/gpac/src/filters/tssplit.c:713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 702
    functionDepth: 6
    functionLinenumber: 702
    functionLinenumberEnd: 714
    functionName: m2tssplit_finalize
    functionSourceFile: /src/gpac/src/filters/tssplit.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_m2ts_demux_del
    - gf_list_pop_back
    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: 724
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 724
    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: 759
      start: 756
    functionDepth: 0
    functionLinenumber: 756
    functionLinenumberEnd: 759
    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: 771
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 771
    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:781,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/tssplit.c:783,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 787
      start: 779
    functionDepth: 2
    functionLinenumber: 779
    functionLinenumberEnd: 787
    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: 809
      start: 806
    functionDepth: 0
    functionLinenumber: 806
    functionLinenumberEnd: 809
    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: 815
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 815
    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: 819
      start: 816
    functionDepth: 0
    functionLinenumber: 816
    functionLinenumberEnd: 819
    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
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_get_property_str
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_mp3_sampling_rate
    - gf_fclose
    - gf_fileio_is_main_thread
    - gf_mp3_get_next_header
    - gf_fseek
    - gf_filter_pid_set_property
    - gf_ftell
    - PROP_FRAC64
    - gf_fopen_ex
    - gf_mp3_window_size
    - gf_realloc
    - strncmp
    - gf_mp3_frame_size
    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_filter_pid_set_property_dyn
    - gf_free
    - gf_malloc
    - GF_LOG
    - gf_utf8_wcslen
    - gf_utf8_wcstombs
    - PROP_STRING
    - gf_filter_pid_set_property_str
    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: gf_strcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:288,1
    - Dst: gf_strcat
      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_u8
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_property_dyn
    - gf_itags_find_by_id3tag
    - gf_bs_available
    - gf_filter_pid_set_eos
    - gf_bs_new
    - gf_filter_pid_set_name
    - gf_bs_read_data
    - gf_filter_pid_raw_new
    - gf_bs_del
    - gf_bs_skip_bytes
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_strcpy
    - memchr
    - gf_bs_read_int
    - PROP_BOOL
    - gf_bs_read_u32
    - gf_id3_read_size
    - gf_bs_read_u16
    - gf_error_to_string
    - PROP_DATA
    - sprintf
    - gf_free
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_strcat
    - stricmp
    - gf_filter_pid_set_property
    - id3dmx_set_string
    - gf_itags_get_name
    - gf_4cc_to_str
    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_filter_pid_copy_properties
    - gf_mp3_sampling_rate
    - gf_filter_pid_get_property
    - gf_mp3_num_channels
    - gf_mp3_bit_rate
    - gf_mp3_layer
    - gf_mp3_object_type_indication
    - gf_timestamp_rescale
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_set_name
    - mp3_dmx_check_dur
    - PROP_BOOL
    - mp3_dmx_flush_id3
    - gf_mp3_window_size
    - gf_filter_pid_new
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void mp3_dmx_check_pid(GF_Filter *filter, GF_MP3DmxCtx *ctx)
  - BBCount: 15
    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:447,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_mp3.c:470,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_mp3.c:472,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:479,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 425
    functionDepth: 7
    functionLinenumber: 425
    functionLinenumberEnd: 493
    functionName: mp3_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - mp3_dmx_check_dur
    - gf_filter_pid_send_event
    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:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_MP3DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 495
    functionDepth: 2
    functionLinenumber: 495
    functionLinenumberEnd: 506
    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:510,1
    - Dst: mp3_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mp3.c:524,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_mp3.c:529,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_mp3.c:531,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_mp3.c:534,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:535,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_mp3.c:547,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_mp3.c:550,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mp3.c:563,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:565,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_mp3.c:571,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mp3.c:607,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:610,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:623,1
    - Dst: mp3_dmx_flush_id3
      Src: /src/gpac/src/filters/reframe_mp3.c:627,1
    - Dst: gf_mp3_get_next_header_mem
      Src: /src/gpac/src/filters/reframe_mp3.c:633,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/filters/reframe_mp3.c:641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:651,1
    - Dst: mp3_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_mp3.c:662,1
    - Dst: gf_mp3_window_size
      Src: /src/gpac/src/filters/reframe_mp3.c:670,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:688,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mp3.c:691,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mp3.c:693,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mp3.c:695,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_mp3.c:697,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_mp3.c:697,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_mp3.c:699,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_mp3.c:700,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mp3.c:701,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mp3.c:704,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mp3.c:707,1
    - Dst: mp3_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_mp3.c:709,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mp3.c:718,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:734,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mp3.c:737,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mp3.c:750,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mp3.c:754,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_mp3.c:757,1
    CyclomaticComplexity: 73
    EdgeCount: 73
    ICount: 198
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 760
      start: 508
    functionDepth: 10
    functionLinenumber: 508
    functionLinenumberEnd: 760
    functionName: mp3_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - mp3_dmx_update_cts
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - mp3_dmx_check_dur
    - mp3_dmx_flush_id3
    - gf_realloc
    - memcpy
    - gf_mp3_window_size
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - mp3_dmx_check_pid
    - gf_mp3_frame_size
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pck_set_byte_offset
    - memmove
    - gf_mp3_get_next_header_mem
    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: 766
      start: 762
    functionDepth: 0
    functionLinenumber: 762
    functionLinenumberEnd: 766
    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:770,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_mp3.c:774,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mp3.c:775,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 768
    functionDepth: 3
    functionLinenumber: 768
    functionLinenumberEnd: 776
    functionName: mp3_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:796,1
    - Dst: gf_mp3_get_next_header_mem
      Src: /src/gpac/src/filters/reframe_mp3.c:807,1
    - Dst: gf_mp3_version
      Src: /src/gpac/src/filters/reframe_mp3.c:812,1
    - Dst: gf_mp3_frame_size
      Src: /src/gpac/src/filters/reframe_mp3.c:818,1
    - Dst: gf_mp3_num_channels
      Src: /src/gpac/src/filters/reframe_mp3.c:832,1
    - Dst: gf_mp3_layer
      Src: /src/gpac/src/filters/reframe_mp3.c:841,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 71
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 872
      start: 779
    functionDepth: 4
    functionLinenumber: 779
    functionLinenumberEnd: 872
    functionName: mp3_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_mp3.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_mp3_num_channels
    - gf_mp3_layer
    - gf_mp3_version
    - gf_mp3_get_next_header_mem
    - gf_mp3_frame_size
    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: 900
      start: 899
    functionDepth: 0
    functionLinenumber: 899
    functionLinenumberEnd: 900
    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: 929
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 929
    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: 934
      start: 931
    functionDepth: 0
    functionLinenumber: 931
    functionLinenumberEnd: 934
    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: gf_strlcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:268,1
    - Dst: gf_strlcat
      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: gf_strlcpy
      Src: /src/gpac/src/filters/encrypt_cenc_isma.c:290,1
    - Dst: gf_strlcat
      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_filter_pid_get_property
    - PROP_LONGUINT
    - gf_isom_get_media_type
    - gf_odf_vvc_cfg_read
    - gf_rand_init
    - gf_isom_get_sample
    - gf_list_add
    - gf_odf_vvc_cfg_del
    - gf_odf_codec_del
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_ipmpx_data_new
    - gf_odf_hevc_cfg_read
    - gf_isom_add_desc_to_root_od
    - gf_odf_avc_cfg_read
    - gf_realloc
    - memcpy
    - gf_odf_com_new
    - gf_odf_codec_decode
    - gf_odf_codec_add_com
    - gf_filter_pid_get_name
    - gf_odf_codec_get_au
    - PROP_BOOL
    - gf_base64_encode
    - PROP_STRING
    - gf_odf_avc_cfg_del
    - strlen
    - gf_odf_codec_new
    - PROP_STRING_NO_COPY
    - gf_isom_update_sample
    - gf_strlcpy
    - gf_error_to_string
    - sprintf
    - gf_odf_desc_del
    - gf_isom_add_desc_to_description
    - gf_isom_get_track_count
    - gf_free
    - GF_LOG
    - stricmp
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_odf_codec_encode
    - gf_odf_desc_new
    - gf_isom_sample_del
    - gf_crypt_init
    - memset
    - gf_crypt_open
    - gf_strlcat
    - gf_crypt_close
    - gf_odf_codec_set_au
    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:
    - PROP_DATA
    - GF_LOG
    - gf_filter_pid_set_property
    - strlen
    - gf_crypt_open
    - memcpy
    - gf_crypt_close
    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_bs_read_u8
    - gf_list_count
    - gf_bs_get_position
    - gf_xml_dom_del
    - PROP_DATA_NO_COPY
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_xml_dom_node_del
    - gf_crypt_encrypt
    - gf_bs_seek
    - gf_list_add
    - gf_xml_dom_parse
    - gf_malloc
    - gf_xml_parse_bit_sequence
    - atoi
    - gf_list_enum
    - gf_xml_dom_new
    - gf_bs_read_int
    - gf_bs_write_data
    - strcmp
    - gf_list_new
    - gf_bs_read_u32
    - gf_bin128_parse
    - gf_list_pop_back
    - gf_xml_dom_get_root
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_filter_pid_set_property
    - gf_bs_write_u32
    - gf_crypt_init
    - gf_crypt_open
    - gf_crypt_close
    - gf_bs_available
    - 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_odf_av1_cfg_del
    - gf_free
    - gf_odf_vp_cfg_del
    - gf_odf_ac4_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_filter_pid_get_property
    - gf_list_count
    - gf_props_parse_value
    - gf_codecid_name
    - gf_odf_vvc_cfg_read
    - PROP_DATA_NO_COPY
    - gf_bs_get_content
    - memset
    - gf_bs_new
    - gf_rand_init
    - cenc_pid_reset_codec_states
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_vvc_parse_ps
    - gf_odf_av1_cfg_read
    - gf_odf_vvc_cfg_del
    - gf_odf_ac4_cfg_parse
    - gf_bs_write_u8
    - gf_avc_read_pps
    - gf_malloc
    - gf_odf_hevc_cfg_del
    - gf_odf_vp_cfg_new
    - gf_crc_32
    - gf_odf_hevc_cfg_read
    - PROP_FRAC_INT
    - gf_odf_avc_cfg_read
    - gf_list_get
    - memcpy
    - PROP_BOOL
    - PROP_STRING
    - gf_bs_write_data
    - gf_odf_avc_cfg_del
    - PROP_4CC
    - gf_avc_read_sps
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_write_u16
    - cenc_parse_pssh
    - gf_crypt_init
    - gf_hevc_parse_ps
    - gf_crypt_open
    - gf_crypt_close
    - gf_4cc_to_str
    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_list_count
    - gf_free
    - gf_list_del
    - gf_list_pop_back
    - cenc_pid_reset_codec_states
    - gf_xml_dom_node_del
    - gf_crypt_info_del
    - gf_crypt_close
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - isma_enc_configure
    - gf_rand_init
    - GF_SAFEALLOC
    - gf_list_add
    - gf_crypt_info_del
    - gf_stream_type_name
    - gf_malloc
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_remove
    - gf_list_get
    - gf_filter_pid_new
    - gf_realloc
    - gf_filter_pid_copy_properties
    - cenc_free_pid_context
    - gf_filter_pid_get_name
    - adobe_enc_configure
    - cenc_gen_bin128
    - strlen
    - gf_filter_pid_check_caps
    - PROP_4CC
    - cenc_enc_configure
    - GF_LOG
    - gf_list_del_item
    - stricmp
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_crypt_info_load
    - memset
    - gf_4cc_to_str
    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_filter_pck_new_alloc
    - gf_rand
    - gf_filter_pck_merge_properties
    - gf_bs_write_int
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_bs_write_u64
    - gf_bs_del
    - gf_crypt_encrypt
    - gf_bs_reassign_buffer
    - gf_bs_write_u8
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - gf_crypt_decrypt
    - gf_bs_write_long_int
    - gf_filter_pck_get_cts
    - gf_bs_write_data
    - GF_LOG
    - GF_4CC
    - gf_crypt_set_IV
    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_discard
    - gf_filter_pck_new_alloc
    - gf_crypt_get_IV
    - gf_filter_pck_merge_properties
    - GF_LOG
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_data
    - gf_crypt_init
    - gf_crypt_encrypt
    - memset
    - memcpy
    - gf_filter_pck_send
    - gf_error_to_string
    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_get_IV
    - increase_counter
    - gf_crypt_set_IV
    - memset
    - memcpy
    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_get_position
    - gf_bs_enable_emulation_byte_removal
    - gf_bs_align
    - gf_assert
    - gf_avc_parse_nalu
    - gf_hevc_parse_nalu_bs
    - gf_bs_peek_bits
    - gf_bs_seek
    - gf_vvc_parse_nalu_bs
    - avc_is_vcl_or_sei
    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: gf_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: gf_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_bs_get_position
    - gf_filter_pid_get_property
    - cenc_resync_IV
    - gf_rand
    - gf_ac4_parser_bs
    - PROP_DATA_NO_COPY
    - gf_bs_write_int
    - gf_filter_pck_new_copy
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pck_set_property
    - gf_crypt_encrypt
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - strstr
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_filter_pck_expand
    - gf_filter_pck_get_data
    - gf_xml_parse_bit_sequence
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - atoi
    - gf_media_nalu_add_emulation_bytes
    - gf_av1_parse_obu
    - gf_list_enum
    - gf_filter_pck_new_clone
    - gf_bs_read_int
    - gf_bs_write_data
    - strcmp
    - strlen
    - gf_bin128_parse
    - gf_error_to_string
    - gf_filter_pck_discard
    - sprintf
    - gf_crypt_get_IV
    - gf_media_nalu_emulation_bytes_add_count
    - gf_free
    - GF_LOG
    - gf_strcat
    - gf_filter_pck_set_crypt_flags
    - stricmp
    - gf_bs_write_u16
    - gf_vp9_parse_superframe
    - gf_bs_write_u32
    - gf_crypt_set_IV
    - gf_crypt_init
    - gf_crypt_open
    - gf_crypt_close
    - gf_bs_available
    - gf_vp9_parse_sample
    - cenc_get_clear_bytes
    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_merge_properties
    - PROP_DATA_NO_COPY
    - gf_bs_get_content
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pck_set_property
    - gf_crypt_set_key
    - gf_filter_pck_get_data
    - cenc_encrypt_packet
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pid_get_name
    - cenc_gen_bin128
    - PROP_STRING
    - gf_bs_write_data
    - gf_filter_pck_new_ref
    - gf_error_to_string
    - PROP_DATA
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_filter_pck_set_crypt_flags
    - gf_filter_pid_set_property
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_crypt_init
    - memset
    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_count
    - gf_filter_pck_forward
    - cenc_process
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - isma_process
    - adobe_process
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    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_LOG
    - gf_crypt_info_load
    - gf_filter_get_udta
    - gf_list_new
    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:
    - fprintf
    - gf_list_count
    - cenc_free_pid_context
    - gf_crypt_info_del
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    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_LOG
    - gf_filter_pid_get_udta
    - gf_filter_get_name
    - gf_assert
    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_str
    - gf_filter_pck_enum_properties
    - GF_4CC
    - gf_filter_pck_get_property
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_get_name
    - gf_free
    - gf_filter_get_udta
    - GF_LOG
    - gf_sha1_finish
    - gf_list_del
    - memcmp
    - GF_4CC
    - gf_list_get
    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:
    - strchr
    - gf_free
    - gf_filter_get_udta
    - gf_filter_send_update
    - gf_strdup
    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_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_new_ref
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pid_get_udta
    - gf_assert
    - gf_filter_pck_get_data
    - gf_filter_pck_new_shared
    - gf_filter_pck_get_framing
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_sha1_update
    - memcpy
    - gf_filter_pck_send
    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:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - PROP_POINTER
    - PROP_DOUBLE
    - gf_filter_pck_new_shared
    - gf_filter_pck_set_property
    - ut_filter_send_update
    - PROP_FLOAT
    - gf_filter_pck_new_frame_interface
    - gf_filter_pck_set_roll_info
    - gf_malloc
    - gf_filter_get_udta
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_carousel_version
    - PROP_FRAC_INT
    - gf_filter_pck_set_interlaced
    - gf_filter_pid_remove
    - gf_list_get
    - memcpy
    - gf_filter_pck_set_property_dyn
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - PROP_LONGSINT
    - gf_sha1_finish
    - gf_filter_pck_ref
    - gf_filter_pck_set_cts
    - PROP_CONST_DATA
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_sha1_update
    - PROP_DATA
    - PROP_FRAC64_INT
    - GF_LOG
    - PROP_SINT
    - GF_4CC
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_strdup
    - memset
    - gf_filter_pck_set_property_str
    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:435,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/unit_test_filter.c:436,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:437,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:437,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/unit_test_filter.c:437,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:438,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/unit_test_filter.c:439,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:440,1
    - Dst: gf_sha1_update
      Src: /src/gpac/src/filters/unit_test_filter.c:443,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:446,1
    - Dst: dump_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:448,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:450,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 414
    functionDepth: 3
    functionLinenumber: 414
    functionLinenumberEnd: 457
    functionName: ut_filter_process_sink
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - gf_filter_pck_set_framing
    - GF_LOG
    - GF_4CC
    - gf_sha1_update
    - dump_properties
    - gf_filter_pck_get_data
    - PROP_BOOL
    - gf_filter_pck_set_property
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - gf_filter_pck_send
    - gf_log_set_strict_error
    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:466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:469,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/unit_test_filter.c:474,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/unit_test_filter.c:476,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/unit_test_filter.c:480,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:480,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:481,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:487,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:488,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:495,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:497,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:497,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:499,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:501,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:501,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/unit_test_filter.c:504,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:504,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:505,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/unit_test_filter.c:510,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/unit_test_filter.c:513,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/unit_test_filter.c:514,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:519,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:520,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:520,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:521,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/unit_test_filter.c:522,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/unit_test_filter.c:523,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/unit_test_filter.c:524,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:525,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/unit_test_filter.c:530,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:533,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:536,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/unit_test_filter.c:537,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/unit_test_filter.c:538,1
    - Dst: gf_filter_pid_drop_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_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:541,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:544,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:544,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:546,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:547,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/unit_test_filter.c:549,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/filters/unit_test_filter.c:550,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/unit_test_filter.c:555,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/filters/unit_test_filter.c:556,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/unit_test_filter.c:557,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/unit_test_filter.c:558,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: 562
      start: 460
    functionDepth: 2
    functionLinenumber: 460
    functionLinenumberEnd: 562
    functionName: ut_filter_config_input
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_get_name
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_sha1_starts
    - gf_assert
    - GF_SAFEALLOC
    - gf_filter_pck_new_shared
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_pid_reset_properties
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_list_get
    - gf_filter_pid_new
    - gf_log_set_strict_error
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_filter_pck_new_ref
    - GF_LOG
    - GF_4CC
    - gf_filter_pid_set_property
    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:570,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/unit_test_filter.c:574,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/unit_test_filter.c:576,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/unit_test_filter.c:577,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/unit_test_filter.c:578,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:583,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:583,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/unit_test_filter.c:586,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/unit_test_filter.c:587,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:590,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/unit_test_filter.c:591,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:592,1
    - Dst: gf_sha1_starts
      Src: /src/gpac/src/filters/unit_test_filter.c:595,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:598,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:598,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_FRAC_INT
      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_UINT
      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_str
      Src: /src/gpac/src/filters/unit_test_filter.c:604,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/unit_test_filter.c:605,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/unit_test_filter.c:605,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 565
    functionDepth: 2
    functionLinenumber: 565
    functionLinenumberEnd: 610
    functionName: ut_filter_config_source
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property_dyn
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_framing_mode
    - gf_sha1_starts
    - GF_4CC
    - gf_log_set_strict_error
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_FRAC_INT
    - GF_SAFEALLOC
    - gf_filter_pid_new
    - gf_list_add
    - gf_filter_pid_set_property_str
    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: 616
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 616
    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:621,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/unit_test_filter.c:623,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:631,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:633,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:637,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:641,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:645,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:647,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:649,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:651,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:653,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:655,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:657,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:661,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:663,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:665,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:667,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/unit_test_filter.c:668,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:669,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:673,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:676,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:680,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:682,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:683,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:685,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:687,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:689,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:691,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:693,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:695,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:697,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:699,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:701,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:703,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:705,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:707,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:709,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:711,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:713,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:715,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:716,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:717,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unit_test_filter.c:719,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:723,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:725,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:727,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:729,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:731,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:735,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:739,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:743,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:745,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:747,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:750,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:751,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:752,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:753,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:755,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:757,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:759,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:761,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/unit_test_filter.c:763,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/unit_test_filter.c:765,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:766,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/unit_test_filter.c:768,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:771,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/unit_test_filter.c:773,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: memset
      Src: /src/gpac/src/filters/unit_test_filter.c:810,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/unit_test_filter.c:814,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:816,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filters/unit_test_filter.c:817,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:824,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:827,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:829,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/unit_test_filter.c:836,1
    - Dst: gf_log_set_strict_error
      Src: /src/gpac/src/filters/unit_test_filter.c:839,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:842,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:842,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/unit_test_filter.c:844,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/unit_test_filter.c:846,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/unit_test_filter.c:846,1
    - Dst: ut_filter_config_source
      Src: /src/gpac/src/filters/unit_test_filter.c:849,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 215
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 618
    functionDepth: 3
    functionLinenumber: 618
    functionLinenumberEnd: 852
    functionName: utfilter_initialize
    functionSourceFile: /src/gpac/src/filters/unit_test_filter.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_props_parse_value
    - gf_free
    - gf_filter_get_name
    - gf_filter_get_udta
    - GF_LOG
    - gf_props_equal
    - memcmp
    - GF_4CC
    - gf_filter_set_max_extra_input_pids
    - gf_props_get_type_name
    - strcmp
    - gf_list_new
    - gf_props_dump_val
    - memset
    - ut_filter_config_source
    - gf_log_set_strict_error
    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: 855
      start: 854
    functionDepth: 0
    functionLinenumber: 854
    functionLinenumberEnd: 855
    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: 978
      start: 975
    functionDepth: 0
    functionLinenumber: 975
    functionLinenumberEnd: 978
    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: 982
      start: 979
    functionDepth: 0
    functionLinenumber: 979
    functionLinenumberEnd: 982
    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: 986
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 986
    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: 990
      start: 987
    functionDepth: 0
    functionLinenumber: 987
    functionLinenumberEnd: 990
    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: 27
    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_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: 33
    EdgeCount: 33
    ICount: 116
    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_get_position
    - gf_bs_read_u8
    - gf_filter_pck_new_alloc
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_eos
    - gf_bs_new
    - gf_bs_read_data
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_list_add
    - PROP_FRAC64
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_filter_pck_set_seek_flag
    - gf_list_get
    - gf_filter_pid_new
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - saf_get_channel
    - gf_list_enum
    - gf_filter_pck_set_cts
    - gf_bs_read_int
    - PROP_BOOL
    - gf_filter_pck_set_sap
    - gf_bs_read_u16
    - GF_LOG
    - PROP_NAME
    - gf_filter_pid_set_property
    - PROP_UINT
    - memmove
    - gf_bs_available
    - gf_bs_read_u24
    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_filter_pid_get_property
    - gf_free
    - gf_fclose
    - gf_fopen
    - gf_bs_get_size
    - gf_bs_available
    - gf_list_enum
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_read_int
    - gf_bs_del
    - PROP_FRAC64
    - gf_realloc
    - gf_bs_read_u16
    - strncmp
    - gf_bs_skip_bytes
    - gf_bs_read_u24
    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_filter_pid_remove
    - gf_list_enum
    - gf_filter_get_udta
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err safdmx_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/dmx_saf.c:337,1
    - Dst: safdmx_check_dur
      Src: /src/gpac/src/filters/dmx_saf.c:348,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_saf.c:368,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_saf.c:371,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 334
    functionDepth: 8
    functionLinenumber: 334
    functionLinenumberEnd: 389
    functionName: safdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - safdmx_check_dur
    - 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:393,1
    - Dst: safdmx_check_dur
      Src: /src/gpac/src/filters/dmx_saf.c:401,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_saf.c:405,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_saf.c:406,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_saf.c:412,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_saf.c:417,1
    - Dst: safdmx_demux
      Src: /src/gpac/src/filters/dmx_saf.c:418,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_saf.c:419,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 391
    functionDepth: 8
    functionLinenumber: 391
    functionLinenumberEnd: 421
    functionName: safdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_list_enum
    - gf_filter_pck_get_data
    - safdmx_check_dur
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - safdmx_demux
    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:425,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_saf.c:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 428
    functionName: safdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - gf_list_new
    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:432,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_saf.c:434,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filters/dmx_saf.c:435,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/filters/dmx_saf.c:436,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_saf.c:437,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_saf.c:439,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_saf.c:440,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 430
    functionDepth: 2
    functionLinenumber: 430
    functionLinenumberEnd: 441
    functionName: safdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_saf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_rem_last
    - gf_list_last
    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: 447
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 447
    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: 478
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 478
    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: 483
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 483
    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_AudioOutCtx*::audio_out::GetAudioDelay
    - GF_AudioOutCtx*::audio_out::Configure
    - GF_LOG
    - GF_AudioOutCtx*::audio_out::SetPan
    - PROP_DOUBLE
    - gf_filter_abort
    - PROP_UINT
    - GF_AudioOutCtx*::audio_out::GetTotalBufferTime
    - gf_audio_fmt_bit_depth
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_get_packet
    - GF_AudioOutCtx*::audio_out::SetVolume
    - gf_error_to_string
    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_sleep
    - gf_filter_log_tag
    - GF_LOG
    - gf_th_id
    - GF_AudioOutCtx*::audio_out::Shutdown
    - aout_reconfig
    - GF_AudioOutCtx*::audio_out::WriteAudio
    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_and_max
      Src: /src/gpac/src/filters/out_audio.c:250,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:252,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_audio.c:256,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_audio.c:259,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/out_audio.c:265,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_audio.c:265,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_audio.c:266,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_audio.c:269,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/out_audio.c:274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:280,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:280,1
    - Dst: gf_filter_pid_query_buffer_duration_and_max
      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_filter_pid_has_seen_eos
      Src: /src/gpac/src/filters/out_audio.c:288,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:289,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:290,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/out_audio.c:295,1
    - Dst: gf_filter_pid_query_buffer_duration_and_max
      Src: /src/gpac/src/filters/out_audio.c:297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:298,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_audio.c:311,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_audio.c:313,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_audio.c:314,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:317,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:319,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:324,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:330,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_audio.c:332,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_audio.c:334,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/out_audio.c:336,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_audio.c:344,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:351,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/out_audio.c:354,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:357,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/out_audio.c:367,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_audio.c:368,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_audio.c:371,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:372,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:376,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_audio.c:381,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:389,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:394,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/src/filters/out_audio.c:397,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:398,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_audio.c:398,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_audio.c:406,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/out_audio.c:408,1
    - Dst: gf_filter_pid_query_buffer_duration_and_max
      Src: /src/gpac/src/filters/out_audio.c:411,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_audio.c:412,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/out_audio.c:412,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/out_audio.c:413,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_audio.c:417,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:424,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:427,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_audio.c:430,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:432,1
    - Dst: gf_filter_log_tag
      Src: /src/gpac/src/filters/out_audio.c:436,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 175
    argCount: 3
    argNames:
    - ptr
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 206
    functionDepth: 2
    functionLinenumber: 206
    functionLinenumberEnd: 438
    functionName: aout_fill_output
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_log_tag
    - gf_filter_hint_single_clock
    - GF_FEVT_INIT
    - gf_audio_fmt_name
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_timestamp_greater
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_filter_reporting_enabled
    - memcpy
    - gf_filter_pid_query_buffer_duration_and_max
    - gf_filter_pid_get_clock_info
    - gf_sys_clock_high_res
    - gf_sys_clock
    - gf_filter_pck_get_cts
    - gf_filter_pck_is_blocking_ref
    - gf_log_tool_level_on
    - gf_filter_pid_is_eos
    - gf_filter_pid_query_buffer_duration
    - sprintf
    - gf_filter_pid_init_play_event
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_filter_pid_has_seen_eos
    - memset
    - gf_filter_pid_is_flush_eos
    - gf_filter_update_status
    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:446,1
    - Dst: GF_AudioOutCtx*::audio_out::SetPriority
      Src: /src/gpac/src/filters/out_audio.c:450,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - prio
    argTypes:
    - GF_AudioOutCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 452
    functionName: aout_set_priority
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - GF_AudioOutCtx*::audio_out::SetPriority
    - gf_th_set_priority
    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:460,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_audio.c:463,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/src/filters/out_audio.c:469,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_audio.c:472,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/out_audio.c:475,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:480,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_property
      Src: /src/gpac/src/filters/out_audio.c:487,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:489,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_audio.c:493,1
    - Dst: GF_AudioOutCtx*::audio_out::SetVolume
      Src: /src/gpac/src/filters/out_audio.c:494,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/out_audio.c:497,1
    - Dst: GF_AudioOutCtx*::audio_out::SetPan
      Src: /src/gpac/src/filters/out_audio.c:498,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/out_audio.c:500,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:502,1
    - Dst: aout_set_priority
      Src: /src/gpac/src/filters/out_audio.c:503,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:507,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/out_audio.c:510,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:514,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_audio.c:537,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:558,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_audio.c:568,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:569,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_audio.c:579,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:580,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:589,1
    - Dst: aout_set_priority
      Src: /src/gpac/src/filters/out_audio.c:590,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_audio.c:592,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_audio.c:601,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: 603
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 603
    functionName: aout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_hint_single_clock
    - gf_filter_pid_init_play_event
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - gf_filter_release_property
    - aout_set_priority
    - gf_assert
    - gf_timestamp_rescale
    - gf_filter_pid_send_event
    - gf_filter_post_process_task
    - gf_filter_pid_get_info
    - gf_filter_pid_check_caps
    - GF_AudioOutCtx*::audio_out::SetVolume
    - GF_AudioOutCtx*::audio_out::SetPan
    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:610,1
    - Dst: gf_module_load
      Src: /src/gpac/src/filters/out_audio.c:615,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:618,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_audio.c:621,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_audio.c:622,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:628,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_audio.c:633,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_audio.c:634,1
    - Dst: GF_AudioOutCtx*::audio_out::Setup
      Src: /src/gpac/src/filters/out_audio.c:635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:638,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_audio.c:639,1
    - Dst: GF_AudioOutCtx*::audio_out::QueryOutputSampleRate
      Src: /src/gpac/src/filters/out_audio.c:648,1
    - Dst: gf_th_new
      Src: /src/gpac/src/filters/out_audio.c:653,1
    - Dst: gf_th_run
      Src: /src/gpac/src/filters/out_audio.c:654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:656,1
    - Dst: aout_set_priority
      Src: /src/gpac/src/filters/out_audio.c:661,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 605
    functionDepth: 6
    functionLinenumber: 605
    functionLinenumberEnd: 664
    functionName: aout_initialize
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - GF_AudioOutCtx*::audio_out::QueryOutputSampleRate
    - gf_filter_get_udta
    - GF_LOG
    - aout_set_priority
    - gf_th_new
    - gf_module_load
    - gf_modules_close_interface
    - GF_AudioOutCtx*::audio_out::Setup
    - gf_opts_get_key
    - sscanf
    - gf_th_run
    - gf_opts_set_key
    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:668,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:675,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_audio.c:678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_audio.c:680,1
    - Dst: gf_th_del
      Src: /src/gpac/src/filters/out_audio.c:681,1
    - Dst: GF_AudioOutCtx*::audio_out::Shutdown
      Src: /src/gpac/src/filters/out_audio.c:686,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filters/out_audio.c:688,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 666
    functionDepth: 3
    functionLinenumber: 666
    functionLinenumberEnd: 691
    functionName: aout_finalize
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_sleep
    - gf_th_del
    - gf_filter_get_udta
    - GF_LOG
    - GF_AudioOutCtx*::audio_out::Shutdown
    - gf_modules_close_interface
    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:729,1
    - Dst: GF_AudioOutCtx*::audio_out::Play
      Src: /src/gpac/src/filters/out_audio.c:734,1
    - Dst: GF_AudioOutCtx*::audio_out::Play
      Src: /src/gpac/src/filters/out_audio.c:738,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 727
    functionDepth: 1
    functionLinenumber: 727
    functionLinenumberEnd: 746
    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:750,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:752,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:756,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_audio.c:766,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_audio.c:768,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:772,1
    - Dst: GF_AudioOutCtx*::audio_out::SetVolume
      Src: /src/gpac/src/filters/out_audio.c:774,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_audio.c:776,1
    - Dst: GF_AudioOutCtx*::audio_out::SetPan
      Src: /src/gpac/src/filters/out_audio.c:778,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: 781
      start: 748
    functionDepth: 1
    functionLinenumber: 748
    functionLinenumberEnd: 781
    functionName: aout_update_arg
    functionSourceFile: /src/gpac/src/filters/out_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - strcmp
    - gf_filter_pid_send_event
    - GF_AudioOutCtx*::audio_out::SetVolume
    - GF_AudioOutCtx*::audio_out::SetPan
    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: 786
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 786
    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: 845
      start: 842
    functionDepth: 0
    functionLinenumber: 842
    functionLinenumberEnd: 845
    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: 851
      start: 848
    functionDepth: 0
    functionLinenumber: 848
    functionLinenumberEnd: 851
    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
    - gf_filter_pid_new
    - gf_codecid_name
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - PROP_STRING
    - gf_filter_pid_check_caps
    - gf_audio_fmt_bit_depth
    - memcpy
    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: gf_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_filter_pid_get_property
    - gf_filter_pck_new_alloc
    - gf_strcpy
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_framing
    - gf_assert
    - gf_bs_new
    - gf_bs_write_u32_le
    - gf_bs_write_u16
    - gf_bs_write_u16_le
    - gf_bs_del
    - gf_filter_pck_set_byte_offset
    - gf_bs_write_data
    - memset
    - 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_new_alloc
    - gf_filter_pck_new_ref
    - gf_filter_pck_merge_properties
    - qcpmx_send_header
    - gf_filter_get_udta
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_eos
    - GF_LOG
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_get_timescale
    - gf_set_progress
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - memcpy
    - gf_filter_pck_send
    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
    - gf_filter_pid_set_property
    - PROP_STRING
    - strlen
    - strstr
    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_get_position
    - gf_bs_write_int
    - gf_bs_write_u64
    - strnicmp
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_seek
    - gf_bs_write_u8
    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:
    - gf_odf_codec_del
    - gf_list_count
    - gf_odf_codec_decode
    - gf_list_enum
    - gf_assert
    - gf_odf_codec_get_au
    - gf_odf_codec_encode
    - gf_list_get
    - gf_odf_codec_new
    - tsmux_get_sl_config
    - gf_odf_codec_set_au
    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_m2ts_mux_table_update
    - gf_free
    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: gf_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: gf_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: gf_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: gf_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: gf_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_bs_read_u8
    - gf_list_count
    - gf_bs_read_u64
    - gf_filter_pck_get_duration
    - gf_bs_get_content
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_assert
    - gf_bs_del
    - gf_webvtt_cue_del
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - GF_ESInterface*::output_ctrl
    - gf_net_ntp_add_usec
    - gf_malloc
    - tsmux_check_mpd_start_time
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_net_get_ntp_ts
    - gf_list_get
    - memcpy
    - gf_filter_pck_get_dts
    - gf_strcpy
    - gf_timestamp_greater_or_equal
    - gf_filter_pck_get_property_str
    - gf_filter_pck_enum_properties
    - webvtt_write_cue_bs
    - atoi
    - gf_webvtt_parse_cues_from_data
    - gf_bs_is_overflow
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_filter_pck_get_carousel_version
    - gf_bs_get_content_no_truncate
    - gf_bs_read_u32
    - gf_filter_pid_is_eos
    - gf_free
    - tsmux_format_af_descriptor
    - gf_filter_pck_get_property
    - tsmux_rewrite_odf
    - GF_LOG
    - gf_list_del
    - gf_strdup
    - memset
    - gf_filter_pid_is_flush_eos
    - strncmp
    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:
    - gf_filter_pid_get_property
    - gf_odf_desc_del
    - gf_malloc
    - gf_odf_desc_esd_new
    - gf_odf_desc_new
    - gf_list_add
    - memcpy
    - tsmux_get_sl_config
    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_filter_pid_get_property
    - gf_4cc_parse
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_del
    - gf_bs_write_u8
    - gf_crc_32
    - gf_lang_find
    - update_m4sys_info
    - gf_lang_get_3cc
    - memcpy
    - memcmp
    - gf_filter_pid_get_property_str
    - gf_bs_write_data
    - gf_free
    - gf_bs_write_utf8
    - GF_4CC
    - stricmp
    - gf_bs_write_u32
    - memset
    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:
    - strchr
    - atoi
    - GF_LOG
    - gf_list_new
    - GF_SAFEALLOC
    - gf_filter_pid_get_property_str
    - strlen
    - gf_strdup
    - gf_list_add
    - sscanf
    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_list_count
    - gf_free
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    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:1277,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_ts.c:1281,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_ts.c:1282,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1284,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1287,1
    - Dst: gf_filter_pid_set_property
      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: gf_filter_pid_set_property
      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_UINT
      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: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1299,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1300,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_ts.c:1300,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1301,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/mux_ts.c:1301,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_ts.c:1302,1
    - Dst: mux_assign_mime_file_ext
      Src: /src/gpac/src/filters/mux_ts.c:1303,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1305,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/mux_ts.c:1312,1
    - Dst: gf_m2ts_mux_use_single_au_pes_mode
      Src: /src/gpac/src/filters/mux_ts.c:1315,1
    - Dst: gf_m2ts_mux_set_initial_pcr
      Src: /src/gpac/src/filters/mux_ts.c:1320,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1322,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1327,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_ts.c:1330,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_ts.c:1332,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ts.c:1334,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_ts.c:1336,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:1340,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/mux_ts.c:1341,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ts.c:1345,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ts.c:1348,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/mux_ts.c:1352,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/mux_ts.c:1354,1
    - Dst: gf_m2ts_mux_program_find
      Src: /src/gpac/src/filters/mux_ts.c:1363,1
    - Dst: gf_m2ts_mux_program_count
      Src: /src/gpac/src/filters/mux_ts.c:1371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:1374,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_ts.c:1380,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1384,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/mux_ts.c:1398,1
    - Dst: gf_m2ts_mux_program_add
      Src: /src/gpac/src/filters/mux_ts.c:1402,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1407,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/mux_ts.c:1409,1
    - Dst: gf_m2ts_mux_program_set_name
      Src: /src/gpac/src/filters/mux_ts.c:1411,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/mux_ts.c:1412,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1414,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_ts.c:1421,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ts.c:1424,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:1441,1
    - Dst: gf_m2ts_mux_program_get_pmt_pid
      Src: /src/gpac/src/filters/mux_ts.c:1443,1
    - Dst: gf_m2ts_mux_program_get_stream_count
      Src: /src/gpac/src/filters/mux_ts.c:1444,1
    - Dst: gf_m2ts_program_stream_add
      Src: /src/gpac/src/filters/mux_ts.c:1445,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_ts.c:1448,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/mux_ts.c:1451,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_ts.c:1454,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_property
    - gf_m2ts_mux_program_get_stream_count
    - gf_m2ts_mux_program_set_name
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_assert
    - gf_m2ts_mux_set_initial_pcr
    - tsmux_setup_esi
    - gf_filter_pid_set_name
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_list_add
    - gf_timestamp_greater
    - gf_m2ts_mux_program_count
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_m2ts_mux_program_find
    - gf_filter_pid_get_udta
    - tsmux_setup_temi
    - gf_timestamp_rescale
    - gf_m2ts_mux_program_get_pmt_pid
    - gf_filter_pid_new
    - gf_realloc
    - gf_m2ts_program_stream_add
    - gf_m2ts_mux_use_single_au_pes_mode
    - PROP_BOOL
    - gf_filter_pid_get_property_str
    - gf_filter_pid_check_caps
    - gf_m2ts_mux_program_add
    - gf_m2ts_program_stream_remove
    - GF_LOG
    - tsmux_del_stream
    - gf_list_del_item
    - gf_filter_release_property
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_m2ts_mux_program_get_pcr_pid
    - gf_filter_pid_get_info
    - gf_strdup
    - mux_assign_mime_file_ext
    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_count
    - gf_filter_pid_get_buffer_occupancy
    - gf_filter_pid_get_timescale
    - GF_LOG
    - gf_filter_pid_has_seen_eos
    - gf_timestamp_rescale
    - gf_sys_clock
    - gf_filter_pck_get_cts
    - gf_m2ts_mux_update_config
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_dts
    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_list_count
    - gf_filter_pck_new_alloc
    - gf_bs_write_int
    - GF_FEVT_INIT
    - gf_bs_new
    - gf_bs_write_u64
    - gf_filter_pid_set_name
    - gf_filter_pck_set_property
    - gf_filter_pid_send_event
    - gf_bs_reassign_buffer
    - gf_bs_write_u8
    - gf_timestamp_rescale
    - gf_filter_connect_destination
    - gf_list_get
    - gf_filter_pid_new
    - gf_filter_set_source
    - gf_filter_pck_send
    - gf_file_ext_start
    - PROP_STRING
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_write_u16
    - gf_bs_write_u32
    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_filter_pid_send_event
    - GF_FEVT_INIT
    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: gf_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: gf_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: gf_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:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_m2ts_get_ts_clock_90k
    - gf_m2ts_get_ts_clock
    - gf_filter_pid_set_eos
    - tsmux_insert_sidx
    - gf_filter_pck_set_property
    - gf_filter_pid_get_packet
    - gf_m2ts_get_sys_clock
    - PROP_FRAC64
    - tsmux_assign_pcr
    - gf_filter_get_udta
    - tsmux_flush_frag_llhas
    - tsmux_check_mpd_start_time
    - gf_m2ts_mux_update_config
    - gf_list_get
    - gf_filter_pck_new_alloc_destructor
    - tsmux_init_buffering
    - gf_filter_reporting_enabled
    - memcpy
    - tsmux_send_seg_event
    - gf_filter_pck_send
    - gf_strcpy
    - gf_filter_pid_send_flush
    - gf_sys_clock
    - gf_filter_pck_set_cts
    - PROP_STRING
    - PROP_STRING_NO_COPY
    - sprintf
    - gf_filter_pck_get_property
    - gf_m2ts_mux_process
    - gf_filter_pck_set_framing
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_update_status
    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
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/mux_ts.c:2172,1
    - Dst: gf_filter_add_status_metric
      Src: /src/gpac/src/filters/mux_ts.c:2173,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2175
      start: 2130
    functionDepth: 3
    functionLinenumber: 2130
    functionLinenumberEnd: 2175
    functionName: tsmux_initialize
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_m2ts_mux_new
    - gf_filter_block_enabled
    - gf_m2ts_mux_set_pcr_max_interval
    - gf_malloc
    - gf_m2ts_mux_use_single_au_pes_mode
    - gf_filter_get_udta
    - gf_m2ts_mux_enable_sdt
    - gf_sys_is_cov_mode
    - gf_m2ts_mux_set_initial_pcr
    - gf_filter_set_max_extra_input_pids
    - gf_m2ts_mux_enable_pcr_only_packets
    - gf_list_new
    - gf_sys_is_test_mode
    - gf_m2ts_get_sys_clock
    - gf_filter_add_status_metric
    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:2180,1
    - Dst: gf_m2ts_get_ts_clock
      Src: /src/gpac/src/filters/mux_ts.c:2184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_ts.c:2186,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:2191,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_ts.c:2192,1
    - Dst: tsmux_del_stream
      Src: /src/gpac/src/filters/mux_ts.c:2193,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_ts.c:2195,1
    - Dst: gf_m2ts_mux_del
      Src: /src/gpac/src/filters/mux_ts.c:2196,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:2197,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:2198,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_ts.c:2199,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_ts.c:2200,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2201
      start: 2178
    functionDepth: 4
    functionLinenumber: 2178
    functionLinenumberEnd: 2201
    functionName: tsmux_finalize
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_m2ts_mux_del
    - gf_m2ts_get_ts_clock
    - GF_LOG
    - gf_list_del
    - tsmux_del_stream
    - gf_bs_del
    - gf_list_pop_back
    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:2207,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_ts.c:2208,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_ts.c:2209,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2223
      start: 2203
    functionDepth: 1
    functionLinenumber: 2203
    functionLinenumberEnd: 2223
    functionName: tsmux_process_event
    functionSourceFile: /src/gpac/src/filters/mux_ts.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - gf_list_get
    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: 2292
      start: 2291
    functionDepth: 0
    functionLinenumber: 2291
    functionLinenumberEnd: 2292
    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: 2433
      start: 2430
    functionDepth: 0
    functionLinenumber: 2430
    functionLinenumberEnd: 2433
    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: 2440
      start: 2437
    functionDepth: 0
    functionLinenumber: 2437
    functionLinenumberEnd: 2440
    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_new_alloc
    - gf_filter_pck_get_property
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_property
    - gf_filter_pck_new_alloc_destructor
    - memcpy
    - 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_filter_pid_get_property
    - gf_bs_get_position
    - gf_gpac_version
    - gf_bs_get_content
    - gf_bs_new
    - gf_bs_write_u32_le
    - gf_bs_del
    - ogg_stream_packetin
    - gf_bs_skip_bytes
    - ogg_stream_pageout
    - gf_sys_is_test_mode
    - oggmux_send_page
    - gf_bs_read_int
    - gf_bs_write_data
    - strlen
    - gf_bs_read_u16
    - gf_free
    - GF_LOG
    - gf_bs_available
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_set_name
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_list_add
    - oggmux_send_config
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_remove
    - ogg_stream_clear
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - PROP_STRING
    - gf_filter_pck_discard
    - gf_free
    - ogg_stream_init
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_UINT
    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_filter_pid_send_event
    - GF_FEVT_INIT
    - gf_list_get
    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:
    - gf_list_count
    - gf_filter_pck_dangling_copy
    - gf_filter_pck_get_duration
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_sap
    - ogg_stream_packetin
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - gf_timestamp_greater
    - oggmux_send_config
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - ogg_stream_pageout
    - ogg_stream_clear
    - gf_list_get
    - gf_filter_pck_get_dts
    - gf_timestamp_greater_or_equal
    - gf_filter_pck_get_cts
    - oggmux_send_page
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_property
    - ogg_stream_init
    - ogg_stream_flush
    - oggmux_send_seg_info
    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_filter_get_udta
    - gf_list_new
    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_filter_pck_discard
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - ogg_stream_clear
    - gf_list_pop_back
    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: gf_strlcpy
      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:
    - gf_filter_pid_get_property
    - Uint8Array::Uint8Array
    - _on_wcdec_frame
    - gf_filter_pid_set_framing_mode
    - strlwr
    - cwrap
    - gf_filter_get_udta
    - gf_crc_32
    - for
    - _web_decs::push
    - isConfigSupported
    - gf_filter_pid_get_rfc_6381_codec_string
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - BigInt
    - gf_filter_pid_copy_properties
    - _on_wcdec_error
    - dec_class::dec_class
    - gf_filter_pid_check_caps
    - UTF8ToString
    - gf_strlcpy
    - _to_webdec
    - GF_LOG
    - _on_wcdec_audio
    - gf_filter_pid_set_property
    - PROP_UINT
    - if
    - close
    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:
    - EncodedAudioChunk::EncodedAudioChunk
    - EncodedVideoChunk::EncodedVideoChunk
    - Uint8Array::Uint8Array
    - _to_webdec
    - Number
    - let::dec::decode
    - dec::decode
    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_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_unref
    - gf_filter_pck_merge_properties
    - GF_LOG
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - PROP_UINT
    - webcodec_pixfmt_to_gpac
    - gf_pixel_get_size_info
    - gf_filter_pid_set_property
    - gf_filter_pck_get_cts
    - ABS
    - gf_list_get
    - 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:
    - webcodec_audiofmt_to_gpac
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_unref
    - gf_filter_pck_merge_properties
    - GF_LOG
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_filter_pck_get_cts
    - ABS
    - gf_list_get
    - gf_filter_pck_send
    - gf_audio_fmt_bit_depth
    - gf_audio_fmt_is_planar
    - gf_list_rem
    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:
    - _on_wcdec_flush
    - 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_list_count
    - gf_filter_get_udta
    - gf_filter_ask_rt_reschedule
    - gf_filter_post_process_task
    - gf_timestamp_rescale
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - gf_list_add
    - gf_filter_pck_ref_props
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    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_filter_get_udta
    - gf_list_new
    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_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    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:
    - EM_ASM_INT
    - gf_opts_get_bool
    - GF_LOG
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *wcdec_register(GF_FilterSession *session)
  - BBCount: 6
    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_LOG
      Src: /src/gpac/src/filters/load_svg.c:89,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:95,1
    - Dst: inflateEnd
      Src: /src/gpac/src/filters/load_svg.c:101,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 36
    argCount: 4
    argNames:
    - svgin
    - buffer
    - buffer_len
    - is_dims
    argTypes:
    - SVGIn*
    - char*
    - u32
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 61
    functionDepth: 2
    functionLinenumber: 61
    functionLinenumberEnd: 105
    functionName: svgin_deflate
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached:
    - inflateInit
    - gf_sm_load_string
    - GF_LOG
    - inflateEnd
    - inflateInit2
    - memset
    - 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:116,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:121,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:129,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:133,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_svg.c:135,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_svg.c:136,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_svg.c:138,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/load_svg.c:139,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/load_svg.c:140,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/load_svg.c:142,1
    - Dst: svgin_configure_pid
      Src: /src/gpac/src/filters/load_svg.c:143,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:151,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_svg.c:153,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:154,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:159,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:160,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:161,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:166,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_svg.c:168,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:169,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:174,1
    - Dst: svgin_deflate
      Src: /src/gpac/src/filters/load_svg.c:175,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:176,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:188,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/load_svg.c:190,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:191,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/load_svg.c:196,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/load_svg.c:198,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/load_svg.c:199,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/load_svg.c:200,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:203,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/load_svg.c:205,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/load_svg.c:206,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/load_svg.c:207,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/load_svg.c:211,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/load_svg.c:218,1
    - Dst: svgin_deflate
      Src: /src/gpac/src/filters/load_svg.c:223,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:225,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/load_svg.c:228,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/load_svg.c:232,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_svg.c:233,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/load_svg.c:242,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/load_svg.c:244,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/load_svg.c:245,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/filters/load_svg.c:251,1
    - Dst: gf_sm_load_run
      Src: /src/gpac/src/filters/load_svg.c:252,1
    - Dst: gf_gzopen
      Src: /src/gpac/src/filters/load_svg.c:261,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/filters/load_svg.c:264,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/load_svg.c:267,1
    - Dst: gf_gzread
      Src: /src/gpac/src/filters/load_svg.c:272,1
    - Dst: gf_gzeof
      Src: /src/gpac/src/filters/load_svg.c:275,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/load_svg.c:276,1
    - Dst: gf_gzclose
      Src: /src/gpac/src/filters/load_svg.c:277,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_svg.c:279,1
    - Dst: gf_sm_load_string
      Src: /src/gpac/src/filters/load_svg.c:286,1
    - Dst: gf_set_progress
      Src: /src/gpac/src/filters/load_svg.c:295,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/load_svg.c:296,1
    - Dst: gf_sg_get_root_node
      Src: /src/gpac/src/filters/load_svg.c:306,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/load_svg.c:307,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_svg.c:311,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_svg.c:313,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_svg.c:316,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_svg.c:318,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 172
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 109
    functionDepth: 12
    functionLinenumber: 109
    functionLinenumberEnd: 324
    functionName: svgin_process
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_get_position
    - gf_bs_read_u8
    - svgin_configure_pid
    - gf_sm_load_string
    - gf_filter_pid_set_eos
    - gf_bs_new
    - gf_bs_del
    - gf_gzclose
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_filter_get_udta
    - svgin_deflate
    - gf_filter_pck_get_data
    - gf_fileio_url
    - memcpy
    - gf_filter_pck_unref
    - gf_filter_pck_ref
    - gf_gzread
    - gf_sys_clock
    - gf_sg_get_root_node
    - gf_gzeof
    - gf_fileio_from_mem
    - gf_set_progress
    - gf_gzopen
    - gf_bs_read_u32
    - gf_filter_pid_is_eos
    - gf_bs_read_u16
    - gf_fclose
    - gf_free
    - gf_sm_load_done
    - gf_scene_attach_to_compositor
    - gf_sm_load_init
    - gf_sm_load_run
    - gf_bs_available
    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:328,1
    - Dst: gf_filter_pid_check_caps
      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_get_property
      Src: /src/gpac/src/filters/load_svg.c:342,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/load_svg.c:345,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/load_svg.c:351,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/load_svg.c:379,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/load_svg.c:383,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/load_svg.c:394,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/load_svg.c:396,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_svg.c:397,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_svg.c:397,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_svg.c:398,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/load_svg.c:398,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/load_svg.c:399,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/load_svg.c:399,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/load_svg.c:400,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:404,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:406,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:408,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/load_svg.c:410,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: 414
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 414
    functionName: svgin_configure_pid
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_pid_set_framing_mode
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_check_caps
    - gf_filter_set_name
    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:419,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_svg.c:429,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/load_svg.c:437,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/load_svg.c:439,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/load_svg.c:440,1
    - Dst: memset
      Src: /src/gpac/src/filters/load_svg.c:447,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/filters/load_svg.c:450,1
    - Dst: gf_sm_load_init
      Src: /src/gpac/src/filters/load_svg.c:457,1
    - Dst: gf_clock_set_time
      Src: /src/gpac/src/filters/load_svg.c:460,1
    - Dst: gf_odm_check_buffering
      Src: /src/gpac/src/filters/load_svg.c:463,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 2
    argNames:
    - filter
    - com
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 416
    functionDepth: 12
    functionLinenumber: 416
    functionLinenumberEnd: 470
    functionName: svgin_process_event
    functionSourceFile: /src/gpac/src/filters/load_svg.c
    functionUses: 0
    functionsReached:
    - gf_sm_load_done
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_get_default_cache_directory
    - memset
    - gf_odm_check_buffering
    - gf_clock_set_time
    - gf_sm_load_init
    - gf_filter_get_ipid
    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: 489
      start: 488
    functionDepth: 0
    functionLinenumber: 488
    functionLinenumberEnd: 489
    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: 521
      start: 514
    functionDepth: 0
    functionLinenumber: 514
    functionLinenumberEnd: 521
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_get_position
    - gf_bs_get_size
    - gf_bs_read_data
    - gf_bs_seek
    - 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_filter_pid_get_property
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_fclose
    - gf_bs_seek
    - gf_fileio_is_main_thread
    - gf_bs_available
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_del
    - PROP_FRAC64
    - gf_fopen_ex
    - gf_bs_read_u32
    - gf_realloc
    - strncmp
    - h263dmx_next_start_code_bs
    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:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - h263dmx_check_dur
    - PROP_FRAC
    - gf_filter_pid_new
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void h263dmx_check_pid(GF_Filter *filter, GF_H263DmxCtx *ctx, u32 width,
      u32 height)
  - BBCount: 12
    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:299,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_h263.c:301,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 320
    functionName: h263dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - 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:324,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_h263.c:325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_H263DmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 322
    functionDepth: 1
    functionLinenumber: 322
    functionLinenumberEnd: 335
    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: 357
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 357
    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: 386
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 386
    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:390,1
    - Dst: h263dmx_check_dur
      Src: /src/gpac/src/filters/reframe_h263.c:401,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_h263.c:403,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_h263.c:405,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_h263.c:407,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_h263.c:408,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_h263.c:415,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:416,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:425,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_h263.c:427,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:431,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_h263.c:442,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_h263.c:446,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_h263.c:448,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_h263.c:452,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_h263.c:475,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:478,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:479,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_h263.c:483,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_h263.c:486,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:488,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_h263.c:489,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_h263.c:490,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_h263.c:491,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_h263.c:492,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:495,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_h263.c:497,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:500,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:504,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_h263.c:528,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_h263.c:532,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_h263.c:535,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_h263.c:538,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:542,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:544,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:556,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:558,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_h263.c:562,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_h263.c:563,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_h263.c:564,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_h263.c:565,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_h263.c:566,1
    - Dst: h263dmx_update_cts
      Src: /src/gpac/src/filters/reframe_h263.c:568,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_h263.c:572,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_h263.c:574,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_h263.c:576,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:580,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:582,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:584,1
    - Dst: h263_get_pic_size
      Src: /src/gpac/src/filters/reframe_h263.c:585,1
    - Dst: h263dmx_check_pid
      Src: /src/gpac/src/filters/reframe_h263.c:587,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:603,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:614,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_h263.c:623,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_h263.c:626,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:628,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:632,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:634,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_h263.c:636,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_h263.c:638,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_h263.c:642,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_h263.c:643,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_h263.c:644,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_h263.c:645,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/reframe_h263.c:646,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_h263.c:647,1
    - Dst: h263dmx_update_cts
      Src: /src/gpac/src/filters/reframe_h263.c:653,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_h263.c:658,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_h263.c:663,1
    CyclomaticComplexity: 57
    EdgeCount: 57
    ICount: 218
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 388
    functionDepth: 10
    functionLinenumber: 388
    functionLinenumberEnd: 666
    functionName: h263dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - h263dmx_update_cts
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_filter_pck_set_seek_flag
    - h263dmx_check_pid
    - gf_filter_pck_get_data
    - h263dmx_check_dur
    - memcpy
    - h263_get_pic_size
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - h263dmx_next_start_code
    - gf_filter_pck_ref_props
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pck_set_byte_offset
    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:670,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_h263.c:671,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_h263.c:672,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 673
      start: 668
    functionDepth: 3
    functionLinenumber: 668
    functionLinenumberEnd: 673
    functionName: h263dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:681,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_h263.c:687,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:692,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_h263.c:694,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_h263.c:695,1
    - Dst: h263dmx_next_start_code
      Src: /src/gpac/src/filters/reframe_h263.c:711,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 675
    functionDepth: 5
    functionLinenumber: 675
    functionLinenumberEnd: 732
    functionName: h263dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_h263.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_int
    - h263dmx_next_start_code
    - 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: 751
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 751
    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: 779
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 779
    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: 784
      start: 781
    functionDepth: 0
    functionLinenumber: 781
    functionLinenumberEnd: 784
    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_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_pid_set_eos
    - horizontal_flip
    - memset
    - gf_filter_pck_get_data
    - gf_filter_pck_new_clone
    - gf_filter_pid_drop_packet
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pck_send
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_frame_interface
    - vertical_flip
    - gf_pixel_get_bytes_per_pixel
    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
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_filter_pid_remove
    - PROP_FRAC
    - gf_filter_pid_check_caps
    - memset
    - gf_realloc
    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_filter_pid_set_eos
    - gf_list_enum
    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
    - ogg_stream_pagein
    - gf_list_get
    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_adv
    - gf_bs_new
    - oggpack_read
    - gf_bs_read_int
    - gf_bs_del
    - oggpack_readinit
    - gf_bs_read_u32
    - memset
    - strncmp
    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:
    - sprintf
    - PROP_DATA_NO_COPY
    - gf_bs_get_content
    - gf_list_find
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_filter_pid_set_name
    - gf_bs_del
    - gf_bs_new
    - PROP_FRAC64
    - PROP_FRAC
    - gf_filter_pid_new
    - gf_odf_opus_cfg_write_bs
    - gf_stream_type_name
    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:
    - ogg_stream_packetpeek
    - oggdmx_declare_pid
    - gf_free
    - ogg_stream_init
    - oggdmx_get_stream_info
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_filter_release_property
    - gf_list_enum
    - GF_SAFEALLOC
    - gf_filter_pid_get_info
    - ogg_page_serialno
    - ogg_stream_clear
    - gf_list_add
    - ogg_stream_pagein
    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_filter_pid_remove
    - gf_list_enum
    - 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:
    - gf_filter_pid_get_property
    - gf_vorbis_parse_header
    - ogg_sync_buffer
    - gf_vorbis_check_frame
    - ogg_sync_init
    - ogg_stream_packetout
    - ogg_sync_pageout
    - gf_opus_parse_header
    - PROP_FRAC64
    - gf_feof
    - gf_fopen
    - gf_opus_check_frame
    - ogg_sync_wrote
    - ogg_page_serialno
    - ogg_stream_clear
    - ogg_stream_pagein
    - memcpy
    - ogg_stream_packetpeek
    - oggdmx_get_stream_info
    - ogg_page_bos
    - gf_list_enum
    - gf_ftell
    - gf_fclose
    - ogg_stream_init
    - ogg_sync_clear
    - gf_filter_pid_set_property
    - gf_fread
    - memset
    - strncmp
    linkageType: ''
    returnType: void
    signature: void oggdmx_check_dur(GF_Filter *filter, GF_OGGDmxCtx *ctx)
  - BBCount: 16
    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:529,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:549,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_ogg.c:558,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ogg.c:560,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:572,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 510
    functionDepth: 7
    functionLinenumber: 510
    functionLinenumberEnd: 585
    functionName: oggdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - gf_list_enum
    - gf_filter_pid_send_event
    - oggdmx_check_dur
    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:590,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ogg.c:591,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/dmx_ogg.c:592,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_ogg.c:592,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:596,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:600,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:608,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_ogg.c:613,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/dmx_ogg.c:615,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:617,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ogg.c:617,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_ogg.c:622,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:623,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_ogg.c:623,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ogg.c:624,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_ogg.c:626,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:627,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ogg.c:628,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:631,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:634,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_ogg.c:634,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:657,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_ogg.c:657,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ogg.c:661,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: 662
      start: 587
    functionDepth: 2
    functionLinenumber: 587
    functionLinenumberEnd: 662
    functionName: oggdmx_parse_picture
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - gf_filter_pid_set_name
    - gf_filter_pid_raw_new
    - gf_malloc
    - gf_filter_get_udta
    - memcpy
    - gf_filter_pck_send
    - PROP_BOOL
    - strlen
    - gf_filter_pid_set_property_str
    - PROP_DATA
    - gf_error_to_string
    - gf_free
    - gf_filter_pck_set_framing
    - GF_LOG
    - GF_4CC
    - gf_filter_pid_set_property
    - gf_base64_decode
    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:669,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:676,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:676,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_ogg.c:679,1
    - Dst: gf_itags_find_by_name
      Src: /src/gpac/src/filters/dmx_ogg.c:683,1
    - Dst: gf_itags_get_name
      Src: /src/gpac/src/filters/dmx_ogg.c:685,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:686,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:686,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ogg.c:687,1
    - Dst: oggdmx_parse_picture
      Src: /src/gpac/src/filters/dmx_ogg.c:688,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ogg.c:690,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_ogg.c:691,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:691,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_ogg.c:699,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_ogg.c:699,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dmx_ogg.c:711,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: 720
      start: 664
    functionDepth: 3
    functionLinenumber: 664
    functionLinenumberEnd: 720
    functionName: oggdmx_parse_tags
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property_dyn
    - strchr
    - oggdmx_parse_picture
    - gf_itags_find_by_name
    - GF_4CC
    - gf_itags_get_name
    - PROP_STRING
    - strcmp
    - gf_filter_pid_set_property_str
    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:726,1
    - Dst: oggdmx_check_dur
      Src: /src/gpac/src/filters/dmx_ogg.c:732,1
    - Dst: ogg_sync_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:736,1
    - Dst: ogg_sync_init
      Src: /src/gpac/src/filters/dmx_ogg.c:737,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/dmx_ogg.c:744,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_ogg.c:745,1
    - Dst: ogg_sync_pageout
      Src: /src/gpac/src/filters/dmx_ogg.c:755,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_ogg.c:759,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:761,1
    - Dst: oggdmx_signal_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:761,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_ogg.c:764,1
    - Dst: ogg_sync_buffer
      Src: /src/gpac/src/filters/dmx_ogg.c:765,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:766,1
    - Dst: ogg_sync_wrote
      Src: /src/gpac/src/filters/dmx_ogg.c:767,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ogg.c:768,1
    - Dst: ogg_page_bos
      Src: /src/gpac/src/filters/dmx_ogg.c:773,1
    - Dst: oggdmx_new_stream
      Src: /src/gpac/src/filters/dmx_ogg.c:774,1
    - Dst: oggdmx_find_stream_for_page
      Src: /src/gpac/src/filters/dmx_ogg.c:779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:781,1
    - Dst: ogg_page_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:785,1
    - Dst: ogg_stream_packetout
      Src: /src/gpac/src/filters/dmx_ogg.c:788,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ogg.c:794,1
    - Dst: gf_vorbis_parse_header
      Src: /src/gpac/src/filters/dmx_ogg.c:799,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:801,1
    - Dst: gf_opus_parse_header
      Src: /src/gpac/src/filters/dmx_ogg.c:807,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:809,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_ogg.c:818,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/dmx_ogg.c:819,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dmx_ogg.c:820,1
    - Dst: oggdmx_declare_pid
      Src: /src/gpac/src/filters/dmx_ogg.c:826,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ogg.c:833,1
    - Dst: oggpackB_readinit
      Src: /src/gpac/src/filters/dmx_ogg.c:840,1
    - Dst: oggpackB_read
      Src: /src/gpac/src/filters/dmx_ogg.c:842,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ogg.c:844,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:847,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_ogg.c:848,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:849,1
    - Dst: oggpackB_read
      Src: /src/gpac/src/filters/dmx_ogg.c:849,1
    - Dst: gf_vorbis_check_frame
      Src: /src/gpac/src/filters/dmx_ogg.c:857,1
    - Dst: gf_opus_check_frame
      Src: /src/gpac/src/filters/dmx_ogg.c:861,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_ogg.c:863,1
    - Dst: oggdmx_parse_tags
      Src: /src/gpac/src/filters/dmx_ogg.c:864,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ogg.c:870,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/dmx_ogg.c:870,1
    - Dst: ogg_page_eos
      Src: /src/gpac/src/filters/dmx_ogg.c:874,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_ogg.c:879,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ogg.c:882,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_ogg.c:883,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_ogg.c:884,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:887,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/dmx_ogg.c:889,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:890,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dmx_ogg.c:892,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ogg.c:898,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 139
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 723
    functionDepth: 11
    functionLinenumber: 723
    functionLinenumberEnd: 903
    functionName: oggdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_vorbis_parse_header
    - ogg_sync_buffer
    - oggpackB_read
    - gf_bs_new
    - gf_vorbis_check_frame
    - ogg_sync_init
    - gf_filter_pid_drop_packet
    - oggdmx_find_stream_for_page
    - ogg_sync_pageout
    - ogg_page_eos
    - gf_filter_pid_get_packet
    - ogg_stream_packetout
    - gf_opus_parse_header
    - oggdmx_signal_eos
    - gf_filter_pid_would_block
    - oggdmx_new_stream
    - gf_filter_pck_set_roll_info
    - gf_filter_get_udta
    - gf_opus_check_frame
    - ogg_sync_wrote
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - oggdmx_declare_pid
    - PROP_LONGSINT
    - ogg_page_bos
    - gf_list_enum
    - gf_filter_pck_set_cts
    - strnicmp
    - oggpackB_readinit
    - gf_bs_write_data
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_duration
    - gf_filter_pid_is_eos
    - oggdmx_check_dur
    - oggdmx_parse_tags
    - ogg_sync_clear
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_bs_write_u16
    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:907,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ogg.c:908,1
    - Dst: ogg_sync_init
      Src: /src/gpac/src/filters/dmx_ogg.c:909,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 911
      start: 905
    functionDepth: 1
    functionLinenumber: 905
    functionLinenumberEnd: 911
    functionName: oggdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - ogg_sync_init
    - gf_filter_get_udta
    - gf_list_new
    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:915,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ogg.c:918,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ogg.c:919,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dmx_ogg.c:920,1
    - Dst: ogg_stream_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:921,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/dmx_ogg.c:925,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ogg.c:927,1
    - Dst: ogg_sync_clear
      Src: /src/gpac/src/filters/dmx_ogg.c:928,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 913
    functionDepth: 3
    functionLinenumber: 913
    functionLinenumberEnd: 929
    functionName: oggdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_ogg.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_get
    - ogg_sync_clear
    - gf_bs_del
    - ogg_stream_clear
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void oggdmx_finalize(GF_Filter *filter)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_ogg.c:933,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 931
    functionDepth: 0
    functionLinenumber: 931
    functionLinenumberEnd: 938
    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: 960
      start: 959
    functionDepth: 0
    functionLinenumber: 959
    functionLinenumberEnd: 960
    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: 995
      start: 987
    functionDepth: 0
    functionLinenumber: 987
    functionLinenumberEnd: 995
    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_set_IV
    - gf_crypt_encrypt
    linkageType: ''
    returnType: void
    signature: void gsfmx_encrypt(GSFMxCtx *ctx, char *data, u32 nb_crypt_bytes)
  - BBCount: 21
    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:232,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:236,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:242,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:243,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: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:248,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:251,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_gsf.c:253,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:258,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:259,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:262,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_gsf.c:264,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_gsf.c:265,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_gsf.c:266,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:282,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/mux_gsf.c:285,1
    - Dst: gsfmx_encrypt
      Src: /src/gpac/src/filters/mux_gsf.c:290,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/mux_gsf.c:294,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:295,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:297,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:299,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:301,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/mux_gsf.c:303,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/mux_gsf.c:305,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 87
    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: 309
      start: 191
    functionDepth: 8
    functionLinenumber: 191
    functionLinenumberEnd: 309
    functionName: gsfmx_send_packets
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gsfmx_encrypt
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_bs_write_int
    - gf_filter_pck_set_dependency_flags
    - gf_assert
    - gsfmx_write_vlen
    - gf_bs_write_u16
    - gf_bs_get_content_no_truncate
    - gsfmx_get_header_size
    - gf_bs_reassign_buffer
    - memcpy
    - 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:313,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - gst
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 311
    functionDepth: 9
    functionLinenumber: 311
    functionLinenumberEnd: 316
    functionName: gsfmx_send_pid_rem
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_reassign_buffer
    - gsfmx_send_packets
    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:320,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - gst
    - is_eos
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 318
    functionDepth: 9
    functionLinenumber: 318
    functionLinenumberEnd: 323
    functionName: gsfmx_send_pid_eos
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_reassign_buffer
    - gsfmx_send_packets
    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:328,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/mux_gsf.c:331,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filters/mux_gsf.c:332,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filters/mux_gsf.c:332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:334,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/mux_gsf.c:337,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filters/mux_gsf.c:337,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:344,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - p
    - prop_4cc
    argTypes:
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 352
    functionName: gsfmx_can_serialize_prop
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_props_get_base_type
    - gf_props_4cc_get_type
    - GF_LOG
    - gf_props_type_is_enum
    - gf_props_get_type_name
    - gf_props_4cc_get_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:360,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:363,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:367,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:370,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:373,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:374,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:377,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:378,1
    - Dst: gf_bs_write_float
      Src: /src/gpac/src/filters/mux_gsf.c:381,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/mux_gsf.c:381,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/mux_gsf.c:384,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:387,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:388,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/mux_gsf.c:391,1
    - Dst: gf_bs_write_double
      Src: /src/gpac/src/filters/mux_gsf.c:392,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:395,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:396,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:400,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:401,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:402,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:403,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:408,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:409,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:410,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:417,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:418,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:424,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:427,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:428,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:429,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:436,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:438,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:443,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:445,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:450,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:452,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:453,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:457,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/mux_gsf.c:460,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:464,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 106
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - GSFMxCtx*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 354
    functionDepth: 6
    functionLinenumber: 354
    functionLinenumberEnd: 467
    functionName: gsfmx_write_prop
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - FIX2FLT
    - GF_LOG
    - gf_props_type_is_enum
    - gf_bs_write_u64
    - gsfmx_write_vlen
    - gf_bs_write_double
    - gf_bs_write_u32
    - gf_bs_write_u8
    - gf_bs_write_data
    - strlen
    - 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:471,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filters/mux_gsf.c:478,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:483,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:484,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_gsf.c:485,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:489,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:490,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:491,1
    - Dst: strstr
      Src: /src/gpac/src/filters/mux_gsf.c:492,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: 498
      start: 469
    functionDepth: 3
    functionLinenumber: 469
    functionLinenumberEnd: 498
    functionName: gsfmx_is_prop_skip
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_props_4cc_get_flags
    - strcmp
    - strlen
    - gf_props_4cc_get_name
    - strstr
    - gf_4cc_to_str
    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:509,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:514,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:516,1
    - Dst: gsfmx_is_prop_skip
      Src: /src/gpac/src/filters/mux_gsf.c:517,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:520,1
    - Dst: gf_filter_pid_get_alias_udta
      Src: /src/gpac/src/filters/mux_gsf.c:536,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_gsf.c:538,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:543,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:545,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:558,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:564,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:565,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:566,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:571,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:574,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:577,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:580,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:584,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:587,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:590,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:593,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:596,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:599,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:608,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:610,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:613,1
    - Dst: gsfmx_is_prop_skip
      Src: /src/gpac/src/filters/mux_gsf.c:616,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:625,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:627,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/mux_gsf.c:630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:632,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:632,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/mux_gsf.c:632,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:641,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:643,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:644,1
    - Dst: gsfmx_is_prop_skip
      Src: /src/gpac/src/filters/mux_gsf.c:646,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:649,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:651,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:652,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:653,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:655,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:656,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/mux_gsf.c:659,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:661,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/mux_gsf.c:661,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filters/mux_gsf.c:661,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 126
    argCount: 3
    argNames:
    - filter
    - ctx
    - gst
    argTypes:
    - GF_Filter*
    - GSFMxCtx*
    - GSFStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 500
    functionDepth: 7
    functionLinenumber: 500
    functionLinenumberEnd: 665
    functionName: gsfmx_write_pid_config
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gsfmx_write_prop
    - gf_filter_pid_enum_properties
    - gf_bs_write_u8
    - gf_file_ext_start
    - gsfmx_can_serialize_prop
    - gf_log_tool_level_on
    - gf_props_dump
    - gf_bs_write_data
    - strlen
    - gf_filter_get_sep
    - gf_props_4cc_get_type
    - gsfmx_is_prop_skip
    - gf_filter_pid_get_alias_udta
    - GF_LOG
    - gsfmx_write_vlen
    - gf_bs_write_u32
    - gf_props_4cc_get_name
    - gf_4cc_to_str
    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:674,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:677,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:682,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:686,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/mux_gsf.c:686,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:688,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:691,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_gsf.c:692,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filters/mux_gsf.c:693,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:695,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:696,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:699,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:701,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:704,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: 706
      start: 669
    functionDepth: 9
    functionLinenumber: 669
    functionLinenumberEnd: 706
    functionName: gsfmx_send_header
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_write_int
    - GF_4CC
    - gf_bs_new
    - gsfmx_write_vlen
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_bs_write_data
    - strlen
    - gf_bs_reassign_buffer
    - gsfmx_send_packets
    - gf_bs_write_u8
    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:711,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:714,1
    - Dst: gsfmx_write_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:718,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:720,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: 721
      start: 708
    functionDepth: 10
    functionLinenumber: 708
    functionLinenumberEnd: 721
    functionName: gsfmx_send_pid_config
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_bs_reassign_buffer
    - gsfmx_send_header
    - gsfmx_send_packets
    - 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:747,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:749,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:751,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/mux_gsf.c:760,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/mux_gsf.c:762,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/mux_gsf.c:764,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:766,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:768,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:770,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:772,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:774,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/mux_gsf.c:777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:778,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/mux_gsf.c:786,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/mux_gsf.c:787,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/mux_gsf.c:812,1
    - Dst: MAX
      Src: /src/gpac/src/filters/mux_gsf.c:842,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/mux_gsf.c:849,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_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:856,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:857,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:858,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/mux_gsf.c:861,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:862,1
    - Dst: gf_filter_pck_get_crypt_flags
      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_dependency_flags
      Src: /src/gpac/src/filters/mux_gsf.c:865,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:866,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:867,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/mux_gsf.c:870,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/mux_gsf.c:872,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/mux_gsf.c:874,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/mux_gsf.c:876,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/mux_gsf.c:878,1
    - Dst: gf_filter_pck_get_clock_type
      Src: /src/gpac/src/filters/mux_gsf.c:880,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/mux_gsf.c:882,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:885,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:893,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:894,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:898,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:899,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:900,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:901,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/mux_gsf.c:906,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:907,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:911,1
    - Dst: gf_bs_write_long_int
      Src: /src/gpac/src/filters/mux_gsf.c:913,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:914,1
    - Dst: gf_bs_write_int
      Src: /src/gpac/src/filters/mux_gsf.c:919,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/mux_gsf.c:923,1
    - Dst: gf_bs_write_u16
      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_u8
      Src: /src/gpac/src/filters/mux_gsf.c:930,1
    - Dst: gf_bs_write_u64
      Src: /src/gpac/src/filters/mux_gsf.c:933,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:936,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:943,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:945,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:947,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/mux_gsf.c:949,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:951,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:955,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/mux_gsf.c:960,1
    - Dst: gsfmx_can_serialize_prop
      Src: /src/gpac/src/filters/mux_gsf.c:962,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/mux_gsf.c:963,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/mux_gsf.c:964,1
    - Dst: strlen
      Src: /src/gpac/src/filters/mux_gsf.c:965,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:966,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:967,1
    - Dst: gf_bs_write_u8
      Src: /src/gpac/src/filters/mux_gsf.c:969,1
    - Dst: gsfmx_write_prop
      Src: /src/gpac/src/filters/mux_gsf.c:970,1
    - Dst: gsfmx_write_vlen
      Src: /src/gpac/src/filters/mux_gsf.c:972,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/mux_gsf.c:975,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:990,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:992,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:994,1
    - Dst: gf_pixel_get_bytes_per_pixel
      Src: /src/gpac/src/filters/mux_gsf.c:996,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/mux_gsf.c:1001,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1003,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/mux_gsf.c:1010,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1012,1
    - Dst: gsfmx_send_packets
      Src: /src/gpac/src/filters/mux_gsf.c:1017,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 230
    argCount: 3
    argNames:
    - ctx
    - gst
    - pck
    argTypes:
    - GSFMxCtx*
    - GSFStream*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 723
    functionDepth: 9
    functionLinenumber: 723
    functionLinenumberEnd: 1019
    functionName: gsfmx_write_data_packet
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_get_dependency_flags
    - gsfmx_write_prop
    - gf_filter_pck_get_interlaced
    - gf_bs_get_position
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_duration
    - gf_bs_write_int
    - gf_assert
    - gf_filter_pck_get_sap
    - gf_bs_write_u64
    - gf_filter_pck_get_crypt_flags
    - gf_bs_reassign_buffer
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_frame_interface
    - gf_bs_write_u8
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pck_get_dts
    - gf_filter_pck_enum_properties
    - gsfmx_can_serialize_prop
    - gf_bs_write_long_int
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_carousel_version
    - MAX
    - gf_bs_write_data
    - gf_filter_pck_get_roll_info
    - strlen
    - GF_FilterFrameInterface*::get_plane
    - gf_props_4cc_get_type
    - gf_filter_pck_get_byte_offset
    - GF_LOG
    - gsfmx_write_vlen
    - gf_pixel_get_size_info
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gsfmx_send_packets
    - gf_4cc_to_str
    - gf_filter_pck_get_corrupted
    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:1025,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1028,1
    - Dst: gsfmx_send_pid_rem
      Src: /src/gpac/src/filters/mux_gsf.c:1031,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/mux_gsf.c:1032,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_gsf.c:1033,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_gsf.c:1034,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/mux_gsf.c:1035,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/mux_gsf.c:1040,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/mux_gsf.c:1044,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/mux_gsf.c:1045,1
    - Dst: gf_filter_pid_copy_properties
      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: PROP_UINT
      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: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1051,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1052,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1053,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1053,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/mux_gsf.c:1054,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1054,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:1057,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1059,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/mux_gsf.c:1061,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/mux_gsf.c:1063,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1065,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/mux_gsf.c:1071,1
    - Dst: gsfmx_send_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:1077,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: 1079
      start: 1021
    functionDepth: 11
    functionLinenumber: 1021
    functionLinenumberEnd: 1079
    functionName: gsfmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_name
    - GF_SAFEALLOC
    - gf_list_add
    - gsfmx_send_pid_rem
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gsfmx_send_pid_config
    - PROP_STRING
    - gf_filter_pid_check_caps
    - gf_free
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_UINT
    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:1084,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_gsf.c:1085,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_gsf.c:1089,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/mux_gsf.c:1090,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/mux_gsf.c:1092,1
    - Dst: gsfmx_send_pid_eos
      Src: /src/gpac/src/filters/mux_gsf.c:1095,1
    - Dst: gsfmx_write_data_packet
      Src: /src/gpac/src/filters/mux_gsf.c:1102,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/mux_gsf.c:1103,1
    - Dst: gsfmx_send_header
      Src: /src/gpac/src/filters/mux_gsf.c:1107,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/mux_gsf.c:1109,1
    - Dst: gsfmx_send_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:1110,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/mux_gsf.c:1115,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1119
      start: 1082
    functionDepth: 11
    functionLinenumber: 1082
    functionLinenumberEnd: 1119
    functionName: gsfmx_process
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - gsfmx_send_header
    - gsfmx_send_pid_config
    - gsfmx_send_pid_eos
    - gsfmx_write_data_packet
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    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:1123,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/mux_gsf.c:1125,1
    - Dst: gsfmx_send_pid_config
      Src: /src/gpac/src/filters/mux_gsf.c:1127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1131
      start: 1121
    functionDepth: 11
    functionLinenumber: 1121
    functionLinenumberEnd: 1131
    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:1139,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/mux_gsf.c:1143,1
    - Dst: gf_filter_is_dynamic
      Src: /src/gpac/src/filters/mux_gsf.c:1147,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_gsf.c:1149,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1153,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1153,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1157,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/mux_gsf.c:1161,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/mux_gsf.c:1164,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/mux_gsf.c:1166,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/mux_gsf.c:1168,1
    - Dst: gf_filter_act_as_sink
      Src: /src/gpac/src/filters/mux_gsf.c:1173,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/mux_gsf.c:1176,1
    - Dst: gf_rand_init
      Src: /src/gpac/src/filters/mux_gsf.c:1180,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/mux_gsf.c:1188,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1190,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1195,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1196,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1197,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/mux_gsf.c:1198,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/mux_gsf.c:1202,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/mux_gsf.c:1203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1205,1
    - Dst: gf_crypt_open
      Src: /src/gpac/src/filters/mux_gsf.c:1207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1209,1
    - Dst: gf_crypt_init
      Src: /src/gpac/src/filters/mux_gsf.c:1212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1214,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/mux_gsf.c:1214,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/mux_gsf.c:1219,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/mux_gsf.c:1223,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 72
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1137
    functionDepth: 4
    functionLinenumber: 1137
    functionLinenumberEnd: 1230
    functionName: gsfmx_initialize
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_filter_is_alias
    - gf_rand
    - gf_rand_init
    - gf_filter_is_temporary
    - gf_filter_get_udta
    - memcpy
    - gf_file_ext_start
    - PROP_STRING
    - gf_list_new
    - gf_filter_is_dynamic
    - gf_error_to_string
    - sprintf
    - gf_filter_override_caps
    - GF_LOG
    - gf_strcat
    - PROP_UINT
    - gf_crypt_init
    - gf_crypt_open
    - gf_filter_act_as_sink
    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:1234,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/mux_gsf.c:1235,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/mux_gsf.c:1236,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_gsf.c:1237,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/mux_gsf.c:1239,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/mux_gsf.c:1241,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/mux_gsf.c:1242,1
    - Dst: gf_crypt_close
      Src: /src/gpac/src/filters/mux_gsf.c:1244,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1232
    functionDepth: 3
    functionLinenumber: 1232
    functionLinenumberEnd: 1246
    functionName: gsfmx_finalize
    functionSourceFile: /src/gpac/src/filters/mux_gsf.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_list_pop_back
    - gf_crypt_close
    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:1250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - filter
    - url
    - mime
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1252
      start: 1248
    functionDepth: 1
    functionLinenumber: 1248
    functionLinenumberEnd: 1252
    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: 1267
      start: 1266
    functionDepth: 0
    functionLinenumber: 1266
    functionLinenumberEnd: 1267
    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: 1357
      start: 1354
    functionDepth: 0
    functionLinenumber: 1354
    functionLinenumberEnd: 1357
    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: 1362
      start: 1359
    functionDepth: 0
    functionLinenumber: 1359
    functionLinenumberEnd: 1362
    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_stream_del
    - GF_LOG
    - rtpin_stream_new
    - gf_list_enum
    - gf_rtsp_set_buffer_size
    - gf_rtsp_range_parse
    - rtpin_add_stream
    - strcmp
    - gf_rtsp_range_del
    - strncmp
    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_base16_decode
    - strnicmp
    - gf_base64_decode
    - strlen
    - gf_odf_desc_read
    - strstr
    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_DATA
    - gf_list_count
    - gf_m4a_get_config
    - PROP_DATA_NO_COPY
    - gf_filter_pid_recompute_dts
    - GF_LOG
    - gf_rtp_get_clockrate
    - PROP_4CC
    - gf_assert
    - PROP_UINT
    - gf_filter_pid_set_property
    - PROP_BOOL
    - PROP_STRING
    - gf_list_get
    - gf_filter_pid_new
    - PROP_FRAC64
    - gf_filter_pid_set_property_str
    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_list_count
    - rtpin_sdp_load_iod
    - gf_filter_setup_failure
    - gf_sdp_info_parse
    - GF_LOG
    - rtpin_declare_media
    - gf_list_enum
    - stricmp
    - gf_sdp_info_del
    - rtpin_setup_sdp
    - strcmp
    - gf_sdp_info_new
    - rtpin_stream_setup
    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:68,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/resample_audio.c:69,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/resample_audio.c:74,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/resample_audio.c:83,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: 93
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 93
    functionName: resample_fetch_frame
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_data
    - gf_filter_pid_get_packet
    - gf_assert
    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:99,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - callback
    - nb_bytes
    argTypes:
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 108
    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: 118
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 118
    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: 122
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 122
    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: 127
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 127
    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: 133
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 133
    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:137,1
    - Dst: gf_mixer_new
      Src: /src/gpac/src/filters/resample_audio.c:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 150
    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:154,1
    - Dst: gf_mixer_del
      Src: /src/gpac/src/filters/resample_audio.c:155,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:156,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 152
    functionDepth: 2
    functionLinenumber: 152
    functionLinenumberEnd: 157
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/filters/resample_audio.c:167,1
    - Dst: MAX
      Src: /src/gpac/src/filters/resample_audio.c:168,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ResampleCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 176
    functionName: resampler_set_ts_tolerance
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - MIN
    - MAX
    linkageType: ''
    returnType: void
    signature: void resampler_set_ts_tolerance(GF_ResampleCtx *ctx)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:182,1
    - Dst: gf_mixer_remove_input
      Src: /src/gpac/src/filters/resample_audio.c:185,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/resample_audio.c:186,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:189,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/resample_audio.c:193,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/resample_audio.c:197,1
    - Dst: gf_filter_pid_copy_buffer_req
      Src: /src/gpac/src/filters/resample_audio.c:198,1
    - Dst: gf_mixer_add_input
      Src: /src/gpac/src/filters/resample_audio.c:202,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:206,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:211,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:216,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:220,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/resample_audio.c:225,1
    - Dst: gf_audio_fmt_get_layout_from_name
      Src: /src/gpac/src/filters/resample_audio.c:236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/resample_audio.c:238,1
    - Dst: gf_audio_fmt_get_num_channels_from_layout
      Src: /src/gpac/src/filters/resample_audio.c:240,1
    - Dst: gf_audio_fmt_get_cicp_layout
      Src: /src/gpac/src/filters/resample_audio.c:247,1
    - Dst: gf_audio_fmt_get_layout_from_cicp
      Src: /src/gpac/src/filters/resample_audio.c:248,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/filters/resample_audio.c:251,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/resample_audio.c:257,1
    - Dst: gf_audio_fmt_is_planar
      Src: /src/gpac/src/filters/resample_audio.c:263,1
    - Dst: resampler_set_ts_tolerance
      Src: /src/gpac/src/filters/resample_audio.c:267,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/resample_audio.c:270,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:275,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:275,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:276,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:276,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:277,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:277,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:278,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:278,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:279,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/resample_audio.c:279,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 87
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 177
    functionDepth: 3
    functionLinenumber: 177
    functionLinenumberEnd: 281
    functionName: resample_configure_pid
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - PROP_LONGUINT
    - gf_audio_fmt_get_num_channels_from_layout
    - gf_filter_pid_drop_packet
    - gf_mixer_add_input
    - gf_filter_get_udta
    - resampler_set_ts_tolerance
    - gf_filter_pid_copy_buffer_req
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_mixer_remove_input
    - gf_filter_pid_copy_properties
    - gf_audio_fmt_get_layout_from_name
    - gf_mixer_set_config
    - gf_filter_pid_check_caps
    - gf_audio_fmt_get_cicp_layout
    - gf_audio_fmt_is_planar
    - gf_audio_fmt_get_layout_from_cicp
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    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:289,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/resample_audio.c:293,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/resample_audio.c:298,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/resample_audio.c:301,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/resample_audio.c:304,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/resample_audio.c:313,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/resample_audio.c:314,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/resample_audio.c:314,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/resample_audio.c:314,1
    - Dst: ABS
      Src: /src/gpac/src/filters/resample_audio.c:320,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/resample_audio.c:330,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:331,1
    - Dst: gf_audio_fmt_bit_depth
      Src: /src/gpac/src/filters/resample_audio.c:338,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/resample_audio.c:351,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/resample_audio.c:355,1
    - Dst: gf_mixer_get_output
      Src: /src/gpac/src/filters/resample_audio.c:357,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/resample_audio.c:359,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/resample_audio.c:363,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/resample_audio.c:365,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/resample_audio.c:366,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/resample_audio.c:367,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/resample_audio.c:368,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/resample_audio.c:381,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 79
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 284
    functionDepth: 4
    functionLinenumber: 284
    functionLinenumberEnd: 385
    functionName: resample_process
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_mixer_get_output
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - ABS
    - gf_filter_pck_set_duration
    - gf_audio_fmt_bit_depth
    - gf_filter_pid_is_eos
    - gf_filter_pck_discard
    - gf_filter_pck_forward
    - gf_filter_pck_set_dts
    - FIX2INT
    - gf_filter_pck_truncate
    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:393,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:397,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:401,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:405,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:409,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/resample_audio.c:412,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/resample_audio.c:414,1
    - Dst: gf_mixer_set_config
      Src: /src/gpac/src/filters/resample_audio.c:427,1
    - Dst: resampler_set_ts_tolerance
      Src: /src/gpac/src/filters/resample_audio.c:434,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:436,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:436,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:437,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:437,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:438,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:438,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:439,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/resample_audio.c:439,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/resample_audio.c:440,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/resample_audio.c:440,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/resample_audio.c:444,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/resample_audio.c:445,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/resample_audio.c:446,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 51
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 387
    functionDepth: 2
    functionLinenumber: 387
    functionLinenumberEnd: 450
    functionName: resample_reconfigure_output
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_caps_query
    - FLT2FIX
    - PROP_LONGUINT
    - gf_filter_get_udta
    - resampler_set_ts_tolerance
    - gf_mixer_set_config
    - GF_FEVT_INIT
    - gf_filter_pid_set_property
    - PROP_UINT
    - FIX2INT
    - gf_filter_pid_send_event
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err resample_reconfigure_output(GF_Filter *filter, GF_FilterPid
      *pid)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/resample_audio.c:457,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/resample_audio.c:459,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/resample_audio.c:465,1
    - Dst: FIX2INT
      Src: /src/gpac/src/filters/resample_audio.c:466,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/resample_audio.c:467,1
    - Dst: resampler_set_ts_tolerance
      Src: /src/gpac/src/filters/resample_audio.c:471,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 452
    functionDepth: 2
    functionLinenumber: 452
    functionLinenumberEnd: 474
    functionName: resample_process_event
    functionSourceFile: /src/gpac/src/filters/resample_audio.c
    functionUses: 0
    functionsReached:
    - FLT2FIX
    - gf_filter_get_udta
    - resampler_set_ts_tolerance
    - GF_FEVT_INIT
    - FIX2INT
    - gf_filter_pid_send_event
    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: 491
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 491
    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:519,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 517
    functionDepth: 2
    functionLinenumber: 517
    functionLinenumberEnd: 521
    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: 526
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 526
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_bs_get_position
    - gf_fclose
    - gf_ac4_parser_bs
    - gf_fileio_is_main_thread
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_del
    - PROP_FRAC64
    - gf_fopen_ex
    - gf_realloc
    - strncmp
    - gf_bs_skip_bytes
    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_get_property
    - gf_filter_pid_copy_properties
    - PROP_DATA_NO_COPY
    - gf_odf_ac4_cfg_write
    - gf_timestamp_rescale
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_new
    - ac4dmx_check_dur
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void ac4dmx_check_pid(GF_Filter *filter, GF_AC4DmxCtx *ctx)
  - BBCount: 11
    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:290,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_ac4.c:292,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 306
    functionName: ac4dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - 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:310,1
    - Dst: ac4dmx_check_dur
      Src: /src/gpac/src/filters/reframe_ac4.c:324,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_ac4.c:332,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_ac4.c:334,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_ac4.c:337,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac4.c:340,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_ac4.c:353,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac4.c:355,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_ac4.c:362,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac4.c:364,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac4.c:378,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac4.c:381,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/filters/reframe_ac4.c:389,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac4.c:391,1
    - Dst: ac4dmx_check_pid
      Src: /src/gpac/src/filters/reframe_ac4.c:404,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_ac4.c:410,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_ac4.c:413,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_ac4.c:451,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_ac4.c:457,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_ac4.c:462,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_ac4.c:464,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_ac4.c:465,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_ac4.c:467,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_ac4.c:469,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_ac4.c:470,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_ac4.c:473,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_ac4.c:490,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac4.c:499,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac4.c:503,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_ac4.c:515,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_ac4.c:519,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_ac4.c:522,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 154
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 308
    functionDepth: 10
    functionLinenumber: 308
    functionLinenumberEnd: 525
    functionName: ac4dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_ac4_parser_bs
    - gf_filter_pid_set_eos
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - ac4dmx_check_dur
    - ac4dmx_check_pid
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_dts
    - memmove
    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:529,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_ac4.c:532,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_ac4.c:533,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/reframe_ac4.c:535,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 527
    functionDepth: 3
    functionLinenumber: 527
    functionLinenumberEnd: 536
    functionName: ac4dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_odf_ac4_cfg_clean_list
    - gf_bs_del
    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:544,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_ac4.c:545,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_ac4.c:547,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac4.c:548,1
    - Dst: gf_ac4_parser_bs
      Src: /src/gpac/src/filters/reframe_ac4.c:550,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_ac4.c:555,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_ac4.c:562,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_ac4.c:563,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filters/reframe_ac4.c:567,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_ac4.c:568,1
    - Dst: gf_odf_ac4_cfg_clean_list
      Src: /src/gpac/src/filters/reframe_ac4.c:570,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 3
    argNames:
    - _data
    - _size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 538
    functionDepth: 8
    functionLinenumber: 538
    functionLinenumberEnd: 578
    functionName: ac4dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_ac4.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_log_set_tool_level
    - gf_ac4_parser_bs
    - gf_odf_ac4_cfg_clean_list
    - gf_bs_new
    - gf_log_get_tool_level
    - gf_bs_del
    - gf_bs_available
    - 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: 601
      start: 600
    functionDepth: 0
    functionLinenumber: 600
    functionLinenumberEnd: 601
    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: 625
      start: 622
    functionDepth: 0
    functionLinenumber: 622
    functionLinenumberEnd: 625
    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: 630
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 630
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_pid_set_framing_mode
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - gf_filter_pid_check_caps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err img_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/reframe_img.c:120,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_img.c:135,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_img.c:137,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 147
    functionName: img_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - 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:151,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_img.c:162,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_img.c:164,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_img.c:166,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_img.c:172,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_img.c:190,1
    - Dst: gf_img_parse
      Src: /src/gpac/src/filters/reframe_img.c:191,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:192,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_img.c:196,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_img.c:198,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:202,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:202,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:202,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:204,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:204,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:206,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:206,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:206,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:208,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:211,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/reframe_img.c:214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_img.c:214,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:219,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_img.c:223,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:225,1
    - Dst: gf_filter_pid_copy_properties
      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:238,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:238,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:240,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_img.c:240,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_img.c:242,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:243,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:243,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:248,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:248,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:251,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_img.c:251,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:259,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_img.c:264,1
    - Dst: gf_bs_available
      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_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:267,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_img.c:268,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_img.c:269,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_img.c:272,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:274,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:276,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframe_img.c:281,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_img.c:284,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_img.c:286,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_img.c:287,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_img.c:288,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_img.c:290,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:291,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_img.c:295,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/reframe_img.c:297,1
    - Dst: gf_bs_read_u32
      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_u16
      Src: /src/gpac/src/filters/reframe_img.c:300,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:301,1
    - Dst: gf_ntohl
      Src: /src/gpac/src/filters/reframe_img.c:302,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_img.c:304,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:305,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_img.c:315,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_img.c:327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_img.c:333,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_pid_set_property
      Src: /src/gpac/src/filters/reframe_img.c:339,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_img.c:339,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_img.c:341,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_img.c:344,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_img.c:346,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_img.c:347,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_img.c:348,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_img.c:375,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_img.c:376,1
    CyclomaticComplexity: 64
    EdgeCount: 64
    ICount: 191
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 149
    functionDepth: 7
    functionLinenumber: 149
    functionLinenumberEnd: 378
    functionName: img_process
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_eos
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - gf_img_parse
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_filter_pid_new
    - gf_filter_pck_send
    - gf_filter_pid_copy_properties
    - gf_filter_pck_set_cts
    - PROP_BOOL
    - gf_filter_pck_set_duration
    - strcmp
    - gf_filter_pck_set_sap
    - gf_bs_read_u32
    - gf_filter_pck_new_ref
    - gf_filter_pid_is_eos
    - gf_bs_read_u16
    - gf_ntohl
    - GF_LOG
    - stricmp
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_available
    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:394,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:395,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:396,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:400,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_img.c:403,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:406,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_img.c:410,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 28
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 382
    functionDepth: 4
    functionLinenumber: 382
    functionLinenumberEnd: 416
    functionName: img_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_img.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32
    - gf_bs_del
    - gf_bs_new
    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: 431
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 431
    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: 459
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 459
    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: 464
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 464
    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: gf_strcpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:118,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_dvb4linux.c:121,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:123,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:137,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_dvb4linux.c:140,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/in_dvb4linux.c:142,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_dvb4linux.c:148,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:151,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:153,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_dvb4linux.c:156,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:159,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:161,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_dvb4linux.c:164,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:167,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:169,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:175,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:179,1
    - Dst: gf_strict_atoui
      Src: /src/gpac/src/filters/in_dvb4linux.c:185,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:201,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:205,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_dvb4linux.c:205,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:209,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_dvb4linux.c:214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:217,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:218,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:225,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:226,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:237,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:238,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:243,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:244,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:245,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:247,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:248,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:250,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:251,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:252,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:255,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:256,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: strncmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:268,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:268,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/in_dvb4linux.c:272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:274,1
    - Dst: abs
      Src: /src/gpac/src/filters/in_dvb4linux.c:340,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_dvb4linux.c:356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:359,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:366,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:369,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:371,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:373,1
    CyclomaticComplexity: 125
    EdgeCount: 125
    ICount: 314
    argCount: 3
    argNames:
    - ctx
    - chan_name
    - params
    argTypes:
    - GF_DVBLinuxCtx*
    - char*
    - GF_DVBParams*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 107
    functionDepth: 5
    functionLinenumber: 107
    functionLinenumberEnd: 376
    functionName: dvblin_get_channel_params
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_feof
    - strchr
    - gf_fclose
    - atoi
    - gf_fopen
    - GF_LOG
    - gf_strict_atoui
    - sscanf
    - strnicmp
    - abs
    - strcmp
    - strlen
    - gf_fgets
    - memset
    - strstr
    - strncmp
    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: 387
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 387
    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:391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:392,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:397,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:400,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:403,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:406,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:409,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:412,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:414,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:415,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/in_dvb4linux.c:418,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: 420
      start: 389
    functionDepth: 1
    functionLinenumber: 389
    functionLinenumberEnd: 420
    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:435,1
    - Dst: dvblin_get_channel_params
      Src: /src/gpac/src/filters/in_dvb4linux.c:440,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:443,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:445,1
    - Dst: open
      Src: /src/gpac/src/filters/in_dvb4linux.c:448,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:449,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:454,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:455,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: send_diseqc
      Src: /src/gpac/src/filters/in_dvb4linux.c:483,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:485,1
    - Dst: send_diseqc
      Src: /src/gpac/src/filters/in_dvb4linux.c:496,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:498,1
    - Dst: fprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:501,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:503,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:504,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: fprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:518,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:529,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:530,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: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:545,1
    - Dst: DVB_SET_PROP
      Src: /src/gpac/src/filters/in_dvb4linux.c:551,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:554,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:556,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:559,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:560,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:565,1
    - Dst: open
      Src: /src/gpac/src/filters/in_dvb4linux.c:566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:567,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:568,1
    - Dst: memset
      Src: /src/gpac/src/filters/in_dvb4linux.c:575,1
    - Dst: ioctl
      Src: /src/gpac/src/filters/in_dvb4linux.c:582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:583,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/in_dvb4linux.c:587,1
    - Dst: open
      Src: /src/gpac/src/filters/in_dvb4linux.c:588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:589,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:590,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:593,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_dvb4linux.c:594,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 107
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DVBLinuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 424
    functionDepth: 6
    functionLinenumber: 424
    functionLinenumberEnd: 596
    functionName: dvblin_tune
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - fprintf
    - sprintf
    - strchr
    - ioctl
    - GF_LOG
    - open
    - gf_sys_clock
    - dvblin_stop
    - dvblin_get_channel_params
    - DVB_SET_PROP
    - send_diseqc
    - memset
    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:607,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_dvb4linux.c:611,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/in_dvb4linux.c:612,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:617,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:619,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:622,1
    - Dst: atoi
      Src: /src/gpac/src/filters/in_dvb4linux.c:624,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_dvb4linux.c:629,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - url
    argTypes:
    - GF_DVBLinuxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 631
      start: 599
    functionDepth: 5
    functionLinenumber: 599
    functionLinenumberEnd: 631
    functionName: gf_dvblin_get_freq_from_url
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_feof
    - strchr
    - gf_fclose
    - atoi
    - gf_fopen
    - strcmp
    - gf_fgets
    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:640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:641,1
    - Dst: dvblin_tune
      Src: /src/gpac/src/filters/in_dvb4linux.c:646,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:648,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DVBLinuxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 634
    functionDepth: 7
    functionLinenumber: 634
    functionLinenumberEnd: 652
    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:657,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:658,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_dvb4linux.c:659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 655
    functionDepth: 1
    functionLinenumber: 655
    functionLinenumberEnd: 660
    functionName: dvblin_finalize
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_free
    - dvblin_stop
    - 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:664,1
    - Dst: dvblin_setup_demux
      Src: /src/gpac/src/filters/in_dvb4linux.c:672,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/in_dvb4linux.c:674,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:677,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 662
    functionDepth: 8
    functionLinenumber: 662
    functionLinenumberEnd: 684
    functionName: dvblin_process_event
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_filter_post_process_task
    - dvblin_setup_demux
    - dvblin_stop
    - 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:692,1
    - Dst: read
      Src: /src/gpac/src/filters/in_dvb4linux.c:699,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_dvb4linux.c:702,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_dvb4linux.c:703,1
    - Dst: dvblin_stop
      Src: /src/gpac/src/filters/in_dvb4linux.c:704,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/in_dvb4linux.c:708,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/in_dvb4linux.c:715,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_dvb4linux.c:717,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/in_dvb4linux.c:722,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/in_dvb4linux.c:722,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/in_dvb4linux.c:726,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_dvb4linux.c:728,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/in_dvb4linux.c:729,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/in_dvb4linux.c:730,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 736
      start: 686
    functionDepth: 1
    functionLinenumber: 686
    functionLinenumberEnd: 736
    functionName: dvblin_process
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - read
    - gf_filter_get_udta
    - gf_filter_pck_set_framing
    - gf_filter_setup_failure
    - gf_filter_ask_rt_reschedule
    - gf_sys_clock
    - dvblin_stop
    - PROP_UINT
    - gf_filter_pid_raw_new
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pid_set_property_str
    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:740,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - url
    - mime_type
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 742
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 742
    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:748,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:751,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/in_dvb4linux.c:753,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_dvb4linux.c:754,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/in_dvb4linux.c:757,1
    - Dst: dvbin_list_channels
      Src: /src/gpac/src/filters/in_dvb4linux.c:759,1
    - Dst: dvblin_setup_demux
      Src: /src/gpac/src/filters/in_dvb4linux.c:763,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_dvb4linux.c:767,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 771
      start: 746
    functionDepth: 8
    functionLinenumber: 746
    functionLinenumberEnd: 771
    functionName: dvblin_initialize
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - dvbin_list_channels
    - dvblin_setup_demux
    - gf_malloc
    - gf_filter_get_udta
    - gf_file_exists
    - GF_LOG
    - stricmp
    - strnicmp
    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: 777
      start: 774
    functionDepth: 0
    functionLinenumber: 774
    functionLinenumberEnd: 777
    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: 782
      start: 781
    functionDepth: 0
    functionLinenumber: 781
    functionLinenumberEnd: 782
    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: 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:
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_dvb4linux.c:846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - session
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 847
    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:861,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_dvb4linux.c:863,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/in_dvb4linux.c:867,1
    - Dst: gf_feof
      Src: /src/gpac/src/filters/in_dvb4linux.c:873,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filters/in_dvb4linux.c:875,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:880,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:882,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:885,1
    - Dst: strchr
      Src: /src/gpac/src/filters/in_dvb4linux.c:887,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_dvb4linux.c:892,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_dvb4linux.c:893,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:896,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_realloc
      Src: /src/gpac/src/filters/in_dvb4linux.c:904,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_dvb4linux.c:905,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/in_dvb4linux.c:909,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 50
    argCount: 2
    argNames:
    - for_reg
    - _for_ctx
    argTypes:
    - GF_FilterRegister*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 916
      start: 851
    functionDepth: 5
    functionLinenumber: 851
    functionLinenumberEnd: 916
    functionName: dvbin_list_channels
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 1
    functionsReached:
    - gf_feof
    - strchr
    - gf_fclose
    - gf_fopen
    - gf_strdup
    - gf_sys_solve_path
    - gf_dynstrcat
    - gf_fgets
    - 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:922,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_dvb4linux.c:922,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_dvb4linux.c:931,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_dvb4linux.c:932,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_dvb4linux.c:934,1
    - Dst: dvbin_list_channels
      Src: /src/gpac/src/filters/in_dvb4linux.c:939,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 919
    functionDepth: 6
    functionLinenumber: 919
    functionLinenumberEnd: 943
    functionName: dvbin_register
    functionSourceFile: /src/gpac/src/filters/in_dvb4linux.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_bool
    - dvbin_list_channels
    - 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
    - gf_filter_pid_get_property
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - PROP_NAME
    - gf_filter_pid_set_eos
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_new
    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_abort
    - gf_filter_notification_failure
    - gf_filter_get_udta
    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_get_udta
    - gf_filter_get_src_args
    - gf_sys_is_cov_mode
    - gf_filter_set_source
    - gf_filter_connect_source
    - cryptfile_on_filter_setup_error
    - gf_filter_set_setup_failure_callback
    - strstr
    - strncmp
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_list_del
    - gf_crypt_close
    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_LOG
    - gf_crypt_set_key
    - gf_crypt_set_IV
    - gf_crypt_init
    - 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_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - cryptfile_set_key
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_filter_pid_set_info
    - gf_filter_get_udta
    - gf_dm_sess_new
    - gf_filter_pck_get_data
    - gf_dm_sess_process
    - memcpy
    - gf_filter_pck_send
    - gf_filter_get_download_manager
    - gf_crypt_decrypt
    - gf_filter_pck_new_clone
    - PROP_BOOL
    - gf_filter_pid_is_eos
    - gf_error_to_string
    - gf_filter_pck_forward
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_dm_sess_setup_from_url
    - gf_crypt_set_IV
    - gf_filter_pck_truncate
    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_filter_get_udta
    - GF_LOG
    - gf_fopen
    - cryptfile_set_key
    - gf_url_is_local
    - gf_filter_is_instance_of
    - strcmp
    - strlen
    - gf_strdup
    - gf_fread
    - memcpy
    - sscanf
    - strncmp
    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_filter_mirror_forced_caps
    - gf_filter_get_udta
    - gf_filter_get_src_args
    - gf_filter_set_source
    - gf_filter_connect_destination
    - gf_list_new
    - strstr
    - strncmp
    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_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_crypt_encrypt
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_crypt_set_key
    - gf_filter_pck_get_data
    - gf_list_insert
    - memcpy
    - gf_filter_pck_send
    - memcmp
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - gf_free
    - gf_filter_pck_set_framing
    - gf_crypt_set_IV
    - gf_crypt_init
    - gf_crypt_open
    - gf_filter_pid_is_flush_eos
    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_filter_get_udta
    - gf_filter_is_instance_of
    - GF_SAFEALLOC
    - gf_list_add
    - memcpy
    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_filter_pid_get_property
    - gf_bifs_decoder_new
    - gf_node_get_graph
    - gf_bifs_decoder_configure_stream
    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_get_property
    - gf_filter_pid_copy_properties
    - bifs_dec_configure_bifs_dec
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_is_filter_in_parents
    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_filter_pid_get_property
    - gf_filter_pid_set_eos
    - gf_bifs_decode_au
    - gf_bifs_decode_has_conditionnals
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pid_set_info
    - gf_sc_check_sys_frame
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_timestamp_to_clocktime
    - gf_filter_pck_get_data
    - gf_filter_get_ipid
    - gf_sys_clock_high_res
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - gf_filter_pid_is_eos
    - GF_LOG
    - gf_filter_pck_get_timescale
    - gf_scene_attach_to_compositor
    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:
    - bifs_dec_configure_bifs_dec
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_get_ipid
    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: gf_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_filter_get_netcap_id
    - gf_sk_setup_multicast_ex
    - gf_filter_set_blocking
    - gf_filter_prevent_blocking
    - gf_sk_bind
    - gf_sk_group_register
    - strstr
    - strchr
    - gf_sk_connect
    - gf_malloc
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - gf_sk_get_remote_address
    - gf_strcpy
    - gf_sk_set_buffer_size
    - gf_sk_is_multicast_address
    - atoi
    - gf_sys_clock
    - strnicmp
    - gf_sk_group_new
    - gf_sk_set_block_mode
    - strrchr
    - gf_sk_new_ex
    - gf_list_new
    - gf_sk_del
    - gf_sk_listen
    - GF_LOG
    - gf_sk_server_mode
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    - sockin_client_reset
    - gf_sk_group_del
    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_pck_get_data
    - gf_filter_pid_get_udta
    - 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_pck_new_alloc
    - gf_filter_pid_set_eos
    - gf_rtp_reorderer_new
    - gf_filter_pid_raw_new
    - gf_filter_pck_new_shared
    - gf_rtp_reorderer_get
    - gf_filter_pid_set_info
    - gf_filter_pid_would_block
    - gf_filter_pid_set_udta
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pid_send_flush
    - gf_sys_clock_high_res
    - gf_sys_clock
    - gf_rtp_reorderer_add
    - sockin_process_event
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_sys_is_cov_mode
    - PROP_UINT
    - memset
    - gf_sk_receive_no_select
    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_LOG
    - gf_filter_pid_set_eos
    - 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: gf_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_list_count
    - gf_filter_pid_set_eos
    - gf_sk_group_unregister
    - GF_SAFEALLOC
    - sockin_check_eos
    - gf_sk_group_register
    - gf_list_add
    - gf_sk_group_sock_is_set
    - gf_filter_get_udta
    - gf_sk_accept
    - gf_filter_pid_remove
    - gf_list_get
    - gf_sk_get_remote_address
    - sockin_client_reset
    - gf_sk_group_select
    - gf_strcpy
    - sockin_read_client
    - gf_sys_clock_high_res
    - gf_sys_clock
    - gf_sk_set_block_mode
    - gf_sk_del
    - gf_free
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_list_del_item
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:350,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/out_http.c:353,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:355,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - fileio
    - buffer
    - bytes
    argTypes:
    - GF_FileIO*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 359
    functionName: httpio_write
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - memcpy
    - 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:362,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 360
    functionDepth: 1
    functionLinenumber: 360
    functionLinenumberEnd: 365
    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:370,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - fileio
    argTypes:
    - GF_FileIO*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 368
    functionDepth: 1
    functionLinenumber: 368
    functionLinenumberEnd: 374
    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:380,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:384,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:389,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:392,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:393,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:393,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_http.c:394,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:395,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:400,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:403,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:414,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:414,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:415,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:416,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:424,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:425,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/filters/out_http.c:431,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:433,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:438,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:439,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:445,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/filters/out_http.c:448,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:448,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:450,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: 456
      start: 376
    functionDepth: 5
    functionLinenumber: 376
    functionLinenumberEnd: 456
    functionName: httpio_open
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_LOG
    - httpio_del
    - gf_list_del_item
    - gf_assert
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_fileio_resource_url
    - strcmp
    - gf_list_get
    - gf_fileio_get_udta
    - gf_list_rem
    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:464,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:467,1
    - Dst: gf_dm_sess_close_hmux
      Src: /src/gpac/src/filters/out_http.c:470,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_http.c:478,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/out_http.c:481,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:485,1
    - Dst: GF_HTTPOutSession*::cbk_close
      Src: /src/gpac/src/filters/out_http.c:492,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:494,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:495,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:496,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:497,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:499,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:502,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:506,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:508,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:510,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 50
    argCount: 2
    argNames:
    - sess
    - code
    argTypes:
    - GF_HTTPOutSession*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 458
    functionDepth: 3
    functionLinenumber: 458
    functionLinenumberEnd: 514
    functionName: httpout_close_session
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_HTTPOutSession*::cbk_close
    - gf_js_lock
    - gf_free
    - JS_IsUndefined
    - GF_LOG
    - gf_list_del
    - JS_SetOpaque
    - gf_list_pop_back
    - gf_dm_sess_del
    - JS_FreeValue
    - gf_sk_group_unregister
    - gf_dm_sess_close_hmux
    - gf_dm_sess_subsession_count
    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: 522
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 522
    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:532,1
    - Dst: log_request_done
      Src: /src/gpac/src/filters/out_http.c:546,1
    - Dst: httpout_mark_session_done
      Src: /src/gpac/src/filters/out_http.c:547,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:550,1
    - Dst: GF_HTTPOutSession*::cbk_close
      Src: /src/gpac/src/filters/out_http.c:553,1
    - Dst: gf_dm_sess_server_reset
      Src: /src/gpac/src/filters/out_http.c:558,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: 562
      start: 524
    functionDepth: 4
    functionLinenumber: 524
    functionLinenumberEnd: 562
    functionName: httpout_sess_flush_close
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_HTTPOutSession*::cbk_close
    - gf_dm_sess_server_reset
    - log_request_done
    - httpout_mark_session_done
    - gf_dm_sess_flush_close
    - httpout_close_session
    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:571,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:602,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:604,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 72
    argCount: 3
    argNames:
    - time
    - szDate
    - for_listing
    argTypes:
    - u64
    - char[]
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 564
    functionDepth: 1
    functionLinenumber: 564
    functionLinenumberEnd: 606
    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:628,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:630,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:633,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:636,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:643,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:646,1
    - Dst: httpout_format_date
      Src: /src/gpac/src/filters/out_http.c:650,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:651,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:655,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:663,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:664,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:665,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: 668
      start: 614
    functionDepth: 2
    functionLinenumber: 614
    functionLinenumberEnd: 668
    functionName: httpout_dir_file_enum
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - httpout_format_date
    - strlen
    - sprintf
    - gf_dynstrcat
    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:671,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: 672
      start: 669
    functionDepth: 3
    functionLinenumber: 669
    functionLinenumberEnd: 672
    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:675,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: 676
      start: 673
    functionDepth: 3
    functionLinenumber: 673
    functionLinenumberEnd: 676
    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:682,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:688,1
    - Dst: strncmp
      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:691,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:693,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:695,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:696,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:700,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: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:711,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:715,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:717,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_http.c:720,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:728,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:730,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:732,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:735,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:736,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:738,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:741,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:741,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:743,1
    - Dst: httpout_dir_file_enum
      Src: /src/gpac/src/filters/out_http.c:747,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:750,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/out_http.c:755,1
    - Dst: gf_enum_directory
      Src: /src/gpac/src/filters/out_http.c:756,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:759,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:760,1
    - Dst: gf_sk_get_host_name
      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: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:764,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:766,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:768,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:769,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:770,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: 772
      start: 678
    functionDepth: 3
    functionLinenumber: 678
    functionLinenumberEnd: 772
    functionName: httpout_create_listing
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_free
    - sprintf
    - httpout_dir_file_enum
    - gf_list_get
    - gf_sk_get_host_name
    - strrchr
    - strcmp
    - gf_dynstrcat
    - gf_strdup
    - strlen
    - strncmp
    - gf_enum_directory
    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:779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:782,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:785,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:786,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:788,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:789,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:790,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:792,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:794,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 775
    functionDepth: 1
    functionLinenumber: 775
    functionLinenumberEnd: 795
    functionName: httpout_set_local_path
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_free
    - gf_list_get
    - gf_assert
    - gf_dynstrcat
    - 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:831,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:837,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:842,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:844,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_http.c:855,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_http.c:864,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/out_http.c:867,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/out_http.c:877,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/filters/out_http.c:908,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:909,1
    - Dst: gf_dm_sess_get_header
      Src: /src/gpac/src/filters/out_http.c:911,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:912,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:912,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:912,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:981,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:988,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:991,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:994,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:1000,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:1002,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:1004,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 172
    argCount: 3
    argNames:
    - sess
    - range
    - response_body
    argTypes:
    - GF_HTTPOutSession*
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1006
      start: 806
    functionDepth: 1
    functionLinenumber: 806
    functionLinenumberEnd: 1006
    functionName: httpout_sess_parse_range
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_dm_sess_get_header
    - GF_LOG
    - gf_fseek
    - gf_dynstrcat
    - strcmp
    - strlen
    - gf_realloc
    - sscanf
    - strncmp
    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:1018,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1022,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1022,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1025,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1025,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1028,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1028,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1031,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1031,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1034,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1034,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1037,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1037,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 38
    argCount: 2
    argNames:
    - sess
    - method
    argTypes:
    - GF_HTTPOutSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1043
      start: 1008
    functionDepth: 0
    functionLinenumber: 1008
    functionLinenumberEnd: 1043
    functionName: httpout_do_log
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strstr
    - strcmp
    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: 1059
      start: 1046
    functionDepth: 0
    functionLinenumber: 1046
    functionLinenumberEnd: 1059
    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:1068,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:1073,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:1077,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_http.c:1080,1
    - Dst: gf_dm_sess_new_subsession
      Src: /src/gpac/src/filters/out_http.c:1081,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:1083,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:1086,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:1087,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:1088,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - sess
    - stream_id
    argTypes:
    - GF_HTTPOutSession*
    - s64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1094
      start: 1062
    functionDepth: 2
    functionLinenumber: 1062
    functionLinenumberEnd: 1094
    functionName: httpout_new_subsession
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_dm_sess_new_subsession
    - gf_free
    - gf_sys_clock_high_res
    - gf_dm_sess_set_timeout
    - GF_SAFEALLOC
    - gf_list_add
    - gf_dm_sess_is_hmux
    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:1103,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1105,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1106,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:1108,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:1120,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filters/out_http.c:1125,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:1125,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:1127,1
    - Dst: gf_creds_check_password
      Src: /src/gpac/src/filters/out_http.c:1133,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: 1137
      start: 1097
    functionDepth: 7
    functionLinenumber: 1097
    functionLinenumberEnd: 1137
    functionName: httpout_auth_check
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_creds_check_password
    - gf_base64_decode
    - strcmp
    - strlen
    - strstr
    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:1145,1
    - Dst: JS_GetPropertyStr
      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_NewInt64
      Src: /src/gpac/src/filters/out_http.c:1148,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1149,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1150,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1151,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1153,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: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1158,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - udta
    - done
    - total
    argTypes:
    - void*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1140
    functionDepth: 6
    functionLinenumber: 1140
    functionLinenumberEnd: 1161
    functionName: js_sess_throttle
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - js_dump_error
    - JS_FreeValue
    - JS_Call
    - JS_GetPropertyStr
    - JS_IsException
    - JS_ToInt32
    - gf_js_lock
    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:1166,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:1168,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1169,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1172,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/out_http.c:1173,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1174,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1176,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1177,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1179,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: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1183,1
    - Dst: GF_HTTPOutSession*::cbk_close
      Src: /src/gpac/src/filters/out_http.c:1186,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:1187,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1188,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1191,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - udta
    - buffer
    - buffer_size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1163
    functionDepth: 6
    functionLinenumber: 1163
    functionLinenumberEnd: 1193
    functionName: js_sess_read
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_HTTPOutSession*::cbk_close
    - JS_NewArrayBuffer
    - JS_IsUndefined
    - js_dump_error
    - JS_SetOpaque
    - JS_FreeValue
    - JS_Call
    - JS_GetPropertyStr
    - JS_IsException
    - JS_ToInt32
    - gf_js_lock
    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:1197,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1199,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1200,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/out_http.c:1201,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1202,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1203,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1204,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: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1208,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1209,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - udta
    - data
    - size
    argTypes:
    - void*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1211
      start: 1194
    functionDepth: 6
    functionLinenumber: 1194
    functionLinenumberEnd: 1211
    functionName: js_sess_write
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_NewArrayBuffer
    - JS_IsUndefined
    - js_dump_error
    - JS_FreeValue
    - JS_Call
    - JS_GetPropertyStr
    - JS_IsException
    - gf_js_lock
    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:1215,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1217,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1218,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/out_http.c:1219,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1220,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1221,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1222,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: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1226,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1227,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - udta
    - code
    argTypes:
    - void*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1228
      start: 1212
    functionDepth: 6
    functionLinenumber: 1212
    functionLinenumberEnd: 1228
    functionName: js_sess_close
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - js_dump_error
    - JS_FreeValue
    - JS_Call
    - JS_GetPropertyStr
    - JS_IsException
    - JS_NewInt32
    - gf_js_lock
    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:1233,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1236,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1238,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1240,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/out_http.c:1241,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/out_http.c:1242,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:1243,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/out_http.c:1244,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1246,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1248,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1249,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1251,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1255,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1257,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/out_http.c:1258,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1260,1
    - Dst: JS_GetPropertyUint32
      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_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1264,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/out_http.c:1265,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/out_http.c:1266,1
    - Dst: gf_list_new
      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: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:1270,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:1270,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:1271,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_http.c:1272,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:1273,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:1273,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/out_http.c:1276,1
    - Dst: JS_FreeCString
      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:1280,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1282,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1287,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1289,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1291,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1293,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1295,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1297,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1301,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1302,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1304,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1308,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1310,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1314,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1316,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: 1320
      start: 1230
    functionDepth: 2
    functionLinenumber: 1230
    functionLinenumberEnd: 1320
    functionName: httpout_js_send
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - atoi
    - stricmp
    - JS_IsString
    - JS_FreeValue
    - JS_GetPropertyStr
    - gf_list_add
    - JS_ToInt32
    - JS_FreeCString
    - JS_IsFunction
    - gf_list_new
    - gf_strdup
    - JS_GetAnyOpaque
    - js_throw_err_msg
    - JS_GetPropertyUint32
    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:1329,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:1331,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:1332,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1333,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/out_http.c:1336,1
    - Dst: JS_SetOpaque
      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_NewString
      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_NewInt32
      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_NewCFunction
      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_NewInt32
      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_NewBool
      Src: /src/gpac/src/filters/out_http.c:1343,1
    - Dst: gf_dm_sess_use_tls
      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_NewInt64
      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_NewString
      Src: /src/gpac/src/filters/out_http.c:1345,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1346,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/out_http.c:1346,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/out_http.c:1348,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1349,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/out_http.c:1350,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1351,1
    - Dst: JS_NewObject
      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_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1357,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:1357,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/out_http.c:1358,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/out_http.c:1362,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:1363,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:1364,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1365,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:1366,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1367,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1369,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1373,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1375,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: 1377
      start: 1322
    functionDepth: 6
    functionLinenumber: 1322
    functionLinenumberEnd: 1377
    functionName: httpout_js_on_request
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_NewInt64
    - JS_NewCFunction
    - JS_IsUndefined
    - JS_NewObject
    - JS_NewString
    - JS_SetOpaque
    - js_dump_error
    - JS_FreeValue
    - JS_NewInt32
    - JS_NewArray
    - gf_dm_sess_use_tls
    - JS_Call
    - JS_SetPropertyUint32
    - JS_IsException
    - JS_SetPropertyStr
    - gf_js_lock
    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:1381,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1382,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1386,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:1388,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filters/out_http.c:1390,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_HTTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1379
    functionDepth: 4
    functionLinenumber: 1379
    functionLinenumberEnd: 1393
    functionName: httpout_cleanup_js
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_js_delete_context
    - gf_js_lock
    - JS_FreeValue
    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:1397,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:1398,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:1399,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:1400,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/out_http.c:1401,1
    - Dst: httpout_cleanup_js
      Src: /src/gpac/src/filters/out_http.c:1405,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/out_http.c:1408,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - f
    - jsc
    - obj
    argTypes:
    - GF_Filter*
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1412
      start: 1395
    functionDepth: 5
    functionLinenumber: 1395
    functionLinenumberEnd: 1412
    functionName: httpout_bind_js
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - httpout_cleanup_js
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetPropertyStr
    - JS_DupValue
    - js_throw_err_msg
    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:1418,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:1419,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:1420,1
    - Dst: gf_dm_sess_set_header_ex
      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_free
      Src: /src/gpac/src/filters/out_http.c:1423,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:1425,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1427
      start: 1415
    functionDepth: 2
    functionLinenumber: 1415
    functionLinenumberEnd: 1427
    functionName: httpout_push_headers
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_pop_front
    - gf_list_del
    - gf_dm_sess_set_header_ex
    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:2593,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:2616,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:2618,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: 2635
      start: 2568
    functionDepth: 0
    functionLinenumber: 2568
    functionLinenumberEnd: 2635
    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:2639,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2640
      start: 2637
    functionDepth: 1
    functionLinenumber: 2637
    functionLinenumberEnd: 2640
    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:2643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - usr_cbk
    - parameter
    argTypes:
    - void*
    - GF_NETIO_Parameter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2644
      start: 2641
    functionDepth: 1
    functionLinenumber: 2641
    functionLinenumberEnd: 2644
    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:2652,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_http.c:2655,1
    - Dst: gf_cfg_new
      Src: /src/gpac/src/filters/out_http.c:2656,1
    - Dst: gf_cfg_get_section_count
      Src: /src/gpac/src/filters/out_http.c:2657,1
    - Dst: gf_cfg_get_section_name
      Src: /src/gpac/src/filters/out_http.c:2659,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2660,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2662,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2669,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2670,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2670,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:2671,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2674,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2675,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2676,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2677,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2679,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:2680,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:2682,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2686,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2687,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2688,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2689,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2690,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2691,1
    - Dst: gf_cfg_get_key
      Src: /src/gpac/src/filters/out_http.c:2692,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2693,1
    - Dst: gf_cfg_del
      Src: /src/gpac/src/filters/out_http.c:2698,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2701,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filters/out_http.c:2704,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2705,1
    - Dst: gf_mkdir
      Src: /src/gpac/src/filters/out_http.c:2706,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2708,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2712,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2713,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2714,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2720,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2721,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2722,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2723,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:2727,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:2729,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:2730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:2733,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:2735,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:2737,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:2739,1
    - Dst: gf_fileio_new
      Src: /src/gpac/src/filters/out_http.c:2745,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/out_http.c:2746,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/out_http.c:2753,1
    - Dst: httpio_eof
      Src: /src/gpac/src/filters/out_http.c:2754,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 101
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_HTTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2646
    functionDepth: 6
    functionLinenumber: 2646
    functionLinenumberEnd: 2758
    functionName: httpout_configure_directories
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fileio_new
    - GF_SAFEALLOC
    - gf_list_add
    - gf_cfg_get_section_name
    - strstr
    - gf_dir_exists
    - gf_cfg_new
    - gf_fileio_url
    - gf_cfg_get_key
    - gf_list_get
    - gf_dynstrcat
    - gf_file_exists
    - gf_cfg_del
    - strcmp
    - strlen
    - gf_list_new
    - gf_cfg_get_section_count
    - GF_LOG
    - gf_sys_is_cov_mode
    - httpio_eof
    - gf_mkdir
    - gf_strdup
    - strncmp
    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:2764,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2767,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_http.c:2772,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2781,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2785,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2790,1
    - Dst: gf_filter_pid_get_alias_udta
      Src: /src/gpac/src/filters/out_http.c:2797,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2801,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2805,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2812,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:2814,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:2825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2830,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2836,1
    - Dst: gf_get_default_cache_directory
      Src: /src/gpac/src/filters/out_http.c:2842,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:2843,1
    - Dst: gf_sys_get_process_id
      Src: /src/gpac/src/filters/out_http.c:2843,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:2843,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/out_http.c:2843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2844,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/out_http.c:2848,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2849,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/out_http.c:2850,1
    - Dst: httpout_configure_directories
      Src: /src/gpac/src/filters/out_http.c:2851,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2854,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:2861,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:2862,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2863,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2865,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2868,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/out_http.c:2883,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:2883,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:2885,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:2888,1
    - Dst: gf_dm_sess_set_sock_group
      Src: /src/gpac/src/filters/out_http.c:2889,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2892,1
    - Dst: httpout_set_local_path
      Src: /src/gpac/src/filters/out_http.c:2895,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:2897,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_http.c:2903,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2906,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2909,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:2910,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:2912,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/out_http.c:2915,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:2916,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/out_http.c:2921,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:2922,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_http.c:2926,1
    - Dst: httpout_delete_input
      Src: /src/gpac/src/filters/out_http.c:2927,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: 2935
      start: 2760
    functionDepth: 7
    functionLinenumber: 2760
    functionLinenumberEnd: 2935
    functionName: httpout_configure_pid
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_rand
    - gf_get_default_cache_directory
    - gf_filter_make_sticky
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_list_add
    - strstr
    - strchr
    - gf_malloc
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - httpout_configure_directories
    - gf_dm_sess_new
    - gf_filter_get_download_manager
    - httpout_set_local_path
    - gf_sys_clock_high_res
    - gf_sys_get_process_id
    - gf_dm_sess_set_timeout
    - gf_list_new
    - sprintf
    - gf_free
    - gf_filter_pid_init_play_event
    - gf_filter_pid_get_alias_udta
    - GF_LOG
    - PROP_NAME
    - gf_list_del_item
    - httpout_delete_input
    - gf_strdup
    - gf_dm_sess_set_sock_group
    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:2939,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:2941,1
    - Dst: httpout_mark_session_done
      Src: /src/gpac/src/filters/out_http.c:2942,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2945,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:2946,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2949
      start: 2937
    functionDepth: 4
    functionLinenumber: 2937
    functionLinenumberEnd: 2949
    functionName: httpout_check_connection
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - httpout_mark_session_done
    - gf_sys_clock_high_res
    - httpout_close_session
    - gf_sk_probe
    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:2955,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:2959,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:2961,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:2962,1
    - Dst: httpout_check_connection
      Src: /src/gpac/src/filters/out_http.c:2963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:2968,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: 2973
      start: 2951
    functionDepth: 5
    functionLinenumber: 2951
    functionLinenumberEnd: 2973
    functionName: httpout_accept_connection
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - httpout_check_connection
    - GF_LOG
    - strcmp
    - gf_list_get
    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:2981,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:2984,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:2991,1
    - Dst: gf_dm_sess_set_callback
      Src: /src/gpac/src/filters/out_http.c:2996,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:2998,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:3003,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:3004,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_http.c:3006,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3009,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: 3013
      start: 2977
    functionDepth: 6
    functionLinenumber: 2977
    functionLinenumberEnd: 3013
    functionName: on_h3_accept
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_dm_sess_set_callback
    - gf_dm_sess_set_timeout
    - GF_SAFEALLOC
    - gf_list_add
    - httpout_accept_connection
    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:3032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3038,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3038,1
    - Dst: gf_sk_get_remote_address_port
      Src: /src/gpac/src/filters/out_http.c:3041,1
    - Dst: httpout_accept_connection
      Src: /src/gpac/src/filters/out_http.c:3043,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3044,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/out_http.c:3048,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3050,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:3060,1
    - Dst: gf_ssl_new
      Src: /src/gpac/src/filters/out_http.c:3066,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3068,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3068,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3069,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3070,1
    - Dst: gf_dm_sess_new_server
      Src: /src/gpac/src/filters/out_http.c:3076,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:3076,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3079,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3080,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3080,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3081,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:3086,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:3091,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:3092,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3093,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:3095,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:3096,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_http.c:3097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3100,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 64
    argCount: 2
    argNames:
    - ctx
    - serversock
    argTypes:
    - GF_HTTPOutCtx*
    - GF_Socket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3105
      start: 3016
    functionDepth: 6
    functionLinenumber: 3016
    functionLinenumberEnd: 3105
    functionName: httpout_check_new_session
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_sk_del
    - gf_sk_get_remote_address_port
    - gf_free
    - gf_filter_get_download_manager
    - gf_sk_set_buffer_size
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_sk_accept
    - gf_dm_sess_set_timeout
    - GF_SAFEALLOC
    - gf_ssl_new
    - gf_sk_group_register
    - gf_list_add
    - httpout_accept_connection
    - gf_dm_sess_new_server
    - gf_error_to_string
    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:3115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3118,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3122,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:3131,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:3132,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:3133,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:3134,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:3142,1
    - Dst: MIN
      Src: /src/gpac/src/filters/out_http.c:3143,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:3144,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_http.c:3146,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:3150,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:3152,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filters/out_http.c:3158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3164,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/out_http.c:3168,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_http.c:3173,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/out_http.c:3176,1
    - Dst: strlwr
      Src: /src/gpac/src/filters/out_http.c:3177,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/out_http.c:3179,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/out_http.c:3182,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/out_http.c:3186,1
    - Dst: gf_filter_is_temporary
      Src: /src/gpac/src/filters/out_http.c:3186,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/out_http.c:3191,1
    - Dst: httpout_configure_directories
      Src: /src/gpac/src/filters/out_http.c:3192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3201,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:3205,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:3206,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:3207,1
    - Dst: gf_sk_group_new
      Src: /src/gpac/src/filters/out_http.c:3210,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:3213,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3229,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_http.c:3234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3235,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/out_http.c:3238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3239,1
    - Dst: gf_ssl_init_lib
      Src: /src/gpac/src/filters/out_http.c:3242,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3243,1
    - Dst: gf_ssl_server_context_new
      Src: /src/gpac/src/filters/out_http.c:3246,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3257,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/out_http.c:3264,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:3268,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/out_http.c:3273,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3274,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3275,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3279,1
    - Dst: gf_ssl_server_context_new
      Src: /src/gpac/src/filters/out_http.c:3285,1
    - Dst: gf_dm_quic_server_new
      Src: /src/gpac/src/filters/out_http.c:3290,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:3290,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_http.c:3290,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3295,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3295,1
    - Dst: gf_dm_quic_get_socket
      Src: /src/gpac/src/filters/out_http.c:3298,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3303,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_http.c:3309,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_http.c:3309,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_http.c:3310,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/out_http.c:3311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3313,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3313,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3316,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/out_http.c:3317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3320,1
    - Dst: gf_sk_new_ex
      Src: /src/gpac/src/filters/out_http.c:3324,1
    - Dst: gf_filter_get_netcap_id
      Src: /src/gpac/src/filters/out_http.c:3324,1
    - Dst: gf_sk_bind
      Src: /src/gpac/src/filters/out_http.c:3325,1
    - Dst: gf_sk_listen
      Src: /src/gpac/src/filters/out_http.c:3326,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3328,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:3328,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:3331,1
    - Dst: gf_sk_server_mode
      Src: /src/gpac/src/filters/out_http.c:3332,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3334,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3336,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:3341,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/out_http.c:3352,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filters/out_http.c:3355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3357,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3358,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filters/out_http.c:3361,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/out_http.c:3364,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filters/out_http.c:3365,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:3367,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/out_http.c:3367,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/out_http.c:3367,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/out_http.c:3368,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:3369,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/out_http.c:3371,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filters/out_http.c:3371,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filters/out_http.c:3373,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filters/out_http.c:3377,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3378,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/out_http.c:3380,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3381,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/out_http.c:3382,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3383,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3384,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3387,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3388,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/out_http.c:3390,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/out_http.c:3391,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/out_http.c:3392,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3394,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:3400,1
    CyclomaticComplexity: 80
    EdgeCount: 80
    ICount: 247
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3402
      start: 3107
    functionDepth: 7
    functionLinenumber: 3107
    functionLinenumberEnd: 3402
    functionName: httpout_initialize
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_netcap_id
    - gf_filter_is_alias
    - strlwr
    - gf_ssl_server_context_new
    - gf_file_basename
    - gf_filter_set_blocking
    - gf_filter_make_sticky
    - gf_sk_bind
    - gf_sk_group_register
    - gf_ssl_init_lib
    - gf_filter_is_temporary
    - strstr
    - JS_Eval
    - strchr
    - gf_filter_get_udta
    - js_dump_error
    - gf_filter_post_process_task
    - httpout_configure_directories
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsFunction
    - qjs_init_all_modules
    - JS_IsException
    - memcpy
    - gf_js_create_context
    - js_load_constants
    - gf_strcpy
    - gf_file_ext_start
    - gf_filter_get_download_manager
    - gf_opts_get_bool
    - atoi
    - gf_file_exists
    - JS_NewString
    - JS_NewObject
    - gf_dm_quic_get_socket
    - gf_sk_group_new
    - JS_SetContextOpaque
    - strcmp
    - gf_list_new
    - strlen
    - gf_sk_new_ex
    - JS_SetPropertyStr
    - gf_error_to_string
    - gf_filter_override_caps
    - gf_free
    - JS_GetGlobalObject
    - gf_sk_listen
    - GF_LOG
    - PROP_NAME
    - gf_dm_quic_server_new
    - gf_file_load_data
    - MIN
    - PROP_UINT
    - gf_strdup
    - JS_DetectModule
    - gf_sk_server_mode
    - gf_opts_get_key
    - strncmp
    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:3406,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/out_http.c:3407,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:3409,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3410,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3411,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3412,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3413,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/out_http.c:3414,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:3415,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3416,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/out_http.c:3419,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/out_http.c:3420,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3425,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3426
      start: 3404
    functionDepth: 5
    functionLinenumber: 3404
    functionLinenumberEnd: 3426
    functionName: httpout_del_session
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_fclose
    - JS_IsUndefined
    - JS_SetOpaque
    - gf_list_del_item
    - httpout_close_session
    - gf_filter_pid_remove
    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:3433,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3435,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:3437,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:3438,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3439,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3440,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:3441,1
    - Dst: gf_fileio_url
      Src: /src/gpac/src/filters/out_http.c:3441,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - sess
    - in
    argTypes:
    - GF_HTTPOutSession*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3445
      start: 3428
    functionDepth: 1
    functionLinenumber: 3428
    functionLinenumberEnd: 3445
    functionName: httpout_check_mem_path
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_fileio_resource_url
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_fileio_url
    - strncmp
    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:3451,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:3453,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3460,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:3462,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:3465,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:3467,1
    - Dst: httpout_check_mem_path
      Src: /src/gpac/src/filters/out_http.c:3473,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_http.c:3474,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/out_http.c:3478,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:3479,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3484,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3486,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: 3488
      start: 3447
    functionDepth: 5
    functionLinenumber: 3447
    functionLinenumberEnd: 3488
    functionName: httpout_close_llhas_part
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fclose
    - gf_free
    - GF_LOG
    - gf_fopen
    - gf_assert
    - httpout_check_mem_path
    - gf_fseek
    - gf_fsize
    - strcmp
    - gf_list_get
    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:3492,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3493,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3494,1
    - Dst: httpout_close_llhas_part
      Src: /src/gpac/src/filters/out_http.c:3496,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:3498,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/out_http.c:3499,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3500,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_http.c:3503,1
    - Dst: gf_dm_sess_del
      Src: /src/gpac/src/filters/out_http.c:3504,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3507,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3508,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3509,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3511,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3514,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3515,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:3516,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3518,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3521,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3522,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3523,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3525,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/out_http.c:3527,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/out_http.c:3528,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3529,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3531,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3532
      start: 3490
    functionDepth: 6
    functionLinenumber: 3490
    functionLinenumberEnd: 3532
    functionName: httpout_delete_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_discard
    - gf_list_count
    - gf_free
    - httpout_close_llhas_part
    - gf_fclose
    - gf_list_del
    - httpio_del
    - gf_dm_sess_del
    - gf_sk_group_unregister
    - gf_list_pop_back
    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:3536,1
    - Dst: gf_filter_is_alias
      Src: /src/gpac/src/filters/out_http.c:3539,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3542,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:3543,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:3545,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3547,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3548,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3550,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3551,1
    - Dst: httpout_delete_input
      Src: /src/gpac/src/filters/out_http.c:3552,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3554,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3555,1
    - Dst: gf_sk_del
      Src: /src/gpac/src/filters/out_http.c:3556,1
    - Dst: gf_dm_quic_server_del
      Src: /src/gpac/src/filters/out_http.c:3559,1
    - Dst: gf_sk_group_del
      Src: /src/gpac/src/filters/out_http.c:3563,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3564,1
    - Dst: gf_fileio_del
      Src: /src/gpac/src/filters/out_http.c:3566,1
    - Dst: gf_ssl_server_context_del
      Src: /src/gpac/src/filters/out_http.c:3569,1
    - Dst: gf_ssl_server_context_del
      Src: /src/gpac/src/filters/out_http.c:3573,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:3579,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/out_http.c:3580,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3581,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3582,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3583,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3584,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3585,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3586,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:3587,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:3589,1
    - Dst: httpout_cleanup_js
      Src: /src/gpac/src/filters/out_http.c:3593,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3596
      start: 3534
    functionDepth: 7
    functionLinenumber: 3534
    functionLinenumberEnd: 3596
    functionName: httpout_finalize
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_is_alias
    - httpout_delete_input
    - gf_sk_del
    - gf_free
    - gf_filter_get_udta
    - gf_ssl_server_context_del
    - gf_list_del
    - httpout_cleanup_js
    - httpout_del_session
    - gf_dm_quic_server_del
    - gf_fileio_del
    - gf_list_get
    - gf_list_pop_back
    - gf_sk_group_del
    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:3603,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filters/out_http.c:3615,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/out_http.c:3619,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:3621,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/out_http.c:3622,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/out_http.c:3623,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/out_http.c:3629,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:3633,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:3637,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:3650,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:3654,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:3660,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:3667,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:3670,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3673,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 71
    argCount: 3
    argNames:
    - sess
    - data
    - size
    argTypes:
    - GF_HTTPOutSession*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3677
      start: 3598
    functionDepth: 2
    functionLinenumber: 3598
    functionLinenumberEnd: 3677
    functionName: httpout_sess_data_upload
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_framing
    - GF_HTTPOutSession*::cbk_write
    - GF_LOG
    - gf_fseek
    - gf_filter_pid_raw_new
    - gf_fflush
    - gf_fatal_assert
    - gf_fwrite
    - memcpy
    - 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:3687,1
    - Dst: get_method_name
      Src: /src/gpac/src/filters/out_http.c:3687,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3689,1
    - Dst: get_method_name
      Src: /src/gpac/src/filters/out_http.c:3689,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:3692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:3702,1
    - Dst: get_method_name
      Src: /src/gpac/src/filters/out_http.c:3702,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 1
    argNames:
    - sess
    argTypes:
    - GF_HTTPOutSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3705
      start: 3679
    functionDepth: 2
    functionLinenumber: 3679
    functionLinenumberEnd: 3705
    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:4198,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4205,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4205,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: 4223
      start: 4182
    functionDepth: 4
    functionLinenumber: 4182
    functionLinenumberEnd: 4223
    functionName: httpout_close_upload
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_dm_sess_flush_close
    - gf_dm_sess_process
    - gf_error_to_string
    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:4246,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4248,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:4254,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:4255,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4260,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4263,1
    - Dst: gf_filter_pid_share_origin
      Src: /src/gpac/src/filters/out_http.c:4267,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4270,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/out_http.c:4271,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4275,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4277,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4293,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4299,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4300,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4306,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4316,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4320,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4321,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4323,1
    - Dst: gf_sk_group_unregister
      Src: /src/gpac/src/filters/out_http.c:4335,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/out_http.c:4338,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4349,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4349,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4351,1
    - Dst: gf_dm_sess_is_hmux
      Src: /src/gpac/src/filters/out_http.c:4354,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4357,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4360,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4368,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4374,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:4375,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4376,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4378,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/out_http.c:4380,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4385,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4387,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:4388,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4389,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:4391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4392,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:4394,1
    - Dst: gf_file_delete
      Src: /src/gpac/src/filters/out_http.c:4399,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4400,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4401,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4405,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4408,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4409,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4411,1
    - Dst: httpout_set_local_path
      Src: /src/gpac/src/filters/out_http.c:4413,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:4426,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_http.c:4427,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:4433,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4436,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4438,1
    - Dst: gf_fileio_resource_url
      Src: /src/gpac/src/filters/out_http.c:4439,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4440,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:4445,1
    - Dst: httpio_del
      Src: /src/gpac/src/filters/out_http.c:4446,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:4451,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:4454,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4458,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:4459,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:4460,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:4463,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4463,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: 4466
      start: 4226
    functionDepth: 6
    functionLinenumber: 4226
    functionLinenumberEnd: 4466
    functionName: httpout_open_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_share_origin
    - gf_list_count
    - httpout_close_upload
    - httpio_del
    - gf_assert
    - gf_sk_group_unregister
    - gf_list_add
    - strstr
    - gf_dm_sess_is_hmux
    - strchr
    - gf_list_pop_front
    - gf_fileio_resource_url
    - gf_dm_sess_process
    - gf_list_get
    - gf_dynstrcat
    - httpout_set_local_path
    - strrchr
    - strcmp
    - strlen
    - gf_list_new
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - gf_dm_sess_setup_from_url
    - gf_file_delete
    - gf_fopen_ex
    - gf_strdup
    - gf_fileio_get_udta
    - gf_list_rem
    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:4473,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/out_http.c:4474,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4476,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4476,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/out_http.c:4483,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/out_http.c:4484,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:4485,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - in
    - e
    argTypes:
    - GF_HTTPOutInput*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4487
      start: 4468
    functionDepth: 1
    functionLinenumber: 4468
    functionLinenumberEnd: 4487
    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_sys_clock
    - gf_filter_pid_send_event
    - gf_error_to_string
    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:4495,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4502,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4502,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4506,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4508,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4509
      start: 4490
    functionDepth: 5
    functionLinenumber: 4490
    functionLinenumberEnd: 4509
    functionName: httpout_close_input_llhas
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_error_to_string
    - httpout_close_upload
    - 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:4513,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4519,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4524,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4526,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4526,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:4528,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4535,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4543,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:4547,1
    - Dst: httpout_close_llhas_part
      Src: /src/gpac/src/filters/out_http.c:4549,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4552,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4554,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:4556,1
    - Dst: httpout_check_mem_path
      Src: /src/gpac/src/filters/out_http.c:4559,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filters/out_http.c:4563,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/out_http.c:4570,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:4571,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/out_http.c:4576,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4581,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4583,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4589,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4592,1
    - Dst: httpout_sess_flush_close
      Src: /src/gpac/src/filters/out_http.c:4595,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 72
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4602
      start: 4511
    functionDepth: 6
    functionLinenumber: 4511
    functionLinenumberEnd: 4602
    functionName: httpout_close_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_fclose
    - httpout_input_in_error
    - httpout_close_llhas_part
    - httpout_close_upload
    - gf_dm_sess_send
    - GF_LOG
    - gf_list_get
    - gf_fopen
    - gf_assert
    - httpout_check_mem_path
    - gf_fseek
    - gf_fsize
    - httpout_sess_flush_close
    - httpout_close_input_llhas
    - gf_error_to_string
    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:4608,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4618,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4618,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4625,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:4626,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - in
    - dst
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4630
      start: 4606
    functionDepth: 1
    functionLinenumber: 4606
    functionLinenumberEnd: 4630
    functionName: httpout_open_input_llhas
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_dm_sess_setup_from_url
    - gf_dm_sess_process
    - gf_strdup
    - gf_error_to_string
    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:4647,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4661,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4665,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4666,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4667,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4669,1
    - Dst: httpout_open_input_llhas
      Src: /src/gpac/src/filters/out_http.c:4677,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4680,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_http.c:4682,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:4692,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:4695,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filters/out_http.c:4697,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4711,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:4712,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:4713,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4718,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:4718,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4726,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4731,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:4732,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:4733,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4736,1
    - Dst: gf_fwrite
      Src: /src/gpac/src/filters/out_http.c:4737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4739,1
    - Dst: gf_fflush
      Src: /src/gpac/src/filters/out_http.c:4744,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4751,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:4758,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4759,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4760,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4761,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4762,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4764,1
    - Dst: gf_fsize
      Src: /src/gpac/src/filters/out_http.c:4772,1
    - Dst: gf_fseek
      Src: /src/gpac/src/filters/out_http.c:4773,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/out_http.c:4780,1
    - Dst: strlen
      Src: /src/gpac/src/filters/out_http.c:4781,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4783,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4784,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4785,1
    - Dst: gf_dm_sess_send
      Src: /src/gpac/src/filters/out_http.c:4787,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:4790,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: 4800
      start: 4632
    functionDepth: 7
    functionLinenumber: 4632
    functionLinenumberEnd: 4800
    functionName: httpout_write_input
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - sprintf
    - httpout_open_input
    - gf_sleep
    - httpout_input_in_error
    - gf_list_count
    - gf_dm_sess_send
    - GF_LOG
    - gf_list_get
    - httpout_close_input
    - gf_fwrite
    - gf_fseek
    - gf_fflush
    - httpout_close_session
    - gf_fsize
    - gf_dm_sess_process
    - strlen
    - httpout_open_input_llhas
    - gf_error_to_string
    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:4810,1
    - Dst: gf_sk_group_register
      Src: /src/gpac/src/filters/out_http.c:4812,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/out_http.c:4813,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:4814,1
    - Dst: gf_sk_set_buffer_size
      Src: /src/gpac/src/filters/out_http.c:4815,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:4818,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4821,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4826,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4831,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:4838,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4842,1
    - Dst: gf_dm_sess_async_pending
      Src: /src/gpac/src/filters/out_http.c:4844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:4846,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:4847,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 42
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4854
      start: 4802
    functionDepth: 6
    functionLinenumber: 4802
    functionLinenumberEnd: 4854
    functionName: httpout_input_write_ready
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_sk_group_select
    - gf_sk_set_buffer_size
    - gf_sk_group_sock_is_set
    - gf_list_count
    - gf_dm_sess_async_pending
    - gf_dm_sess_get_socket
    - gf_list_get
    - GF_LOG
    - gf_dm_sess_flush_async
    - httpout_del_session
    - gf_sk_group_register
    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:4860,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:4868,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/out_http.c:4877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - in
    argTypes:
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4880
      start: 4856
    functionDepth: 1
    functionLinenumber: 4856
    functionLinenumberEnd: 4880
    functionName: httpin_send_seg_info
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    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:4886,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/out_http.c:4887,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:4888,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4891,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4893,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:4894,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/out_http.c:4895,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4896,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:4901,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/out_http.c:4905,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - in
    argTypes:
    - GF_HTTPOutCtx*
    - GF_HTTPOutInput*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4908
      start: 4882
    functionDepth: 7
    functionLinenumber: 4882
    functionLinenumberEnd: 4908
    functionName: httpout_prune_files
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - httpout_open_input
    - gf_free
    - gf_list_pop_front
    - gf_list_del
    - strcmp
    - gf_list_get
    - 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:4919,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - in
    - pck
    argTypes:
    - GF_HTTPOutInput*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4921
      start: 4910
    functionDepth: 1
    functionLinenumber: 4910
    functionLinenumberEnd: 4921
    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:4926,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:4937,1
    - Dst: httpout_prune_files
      Src: /src/gpac/src/filters/out_http.c:4940,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4948,1
    - Dst: httpout_close_upload
      Src: /src/gpac/src/filters/out_http.c:4953,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4963,1
    - Dst: gf_dm_sess_flush_async
      Src: /src/gpac/src/filters/out_http.c:4967,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_http.c:4972,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/out_http.c:4975,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/out_http.c:4975,1
    - Dst: httpin_send_seg_info
      Src: /src/gpac/src/filters/out_http.c:4981,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:4983,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/out_http.c:4993,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:4993,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/out_http.c:5003,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5016,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/out_http.c:5027,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5042,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:5050,1
    - Dst: gf_filter_pck_dangling_clone
      Src: /src/gpac/src/filters/out_http.c:5051,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5052,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5056,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/out_http.c:5057,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:5058,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:5063,1
    - Dst: gf_filter_pck_dangling_clone
      Src: /src/gpac/src/filters/out_http.c:5064,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5065,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5069,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/out_http.c:5070,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:5071,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/out_http.c:5074,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5082,1
    - Dst: httpin_send_seg_info
      Src: /src/gpac/src/filters/out_http.c:5084,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5086,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5093,1
    - Dst: httpin_send_seg_info
      Src: /src/gpac/src/filters/out_http.c:5095,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5102,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5105,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5106,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5106,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/out_http.c:5111,1
    - Dst: gf_dm_sess_is_hmux
      Src: /src/gpac/src/filters/out_http.c:5118,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5136,1
    - Dst: httpout_prune_files
      Src: /src/gpac/src/filters/out_http.c:5139,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5145,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5147,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5152,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5158,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5164,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5166,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5167,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5170,1
    - Dst: gf_filter_pid_get_alias_udta
      Src: /src/gpac/src/filters/out_http.c:5177,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5181,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/out_http.c:5181,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5182,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/out_http.c:5191,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:5194,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5195,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5199,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/out_http.c:5204,1
    - Dst: gf_filter_pck_get_carousel_version
      Src: /src/gpac/src/filters/out_http.c:5204,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5205,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/out_http.c:5208,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/out_http.c:5209,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/out_http.c:5222,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_http.c:5224,1
    - Dst: httpout_close_llhas_part
      Src: /src/gpac/src/filters/out_http.c:5226,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/out_http.c:5227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5228,1
    - Dst: gf_fopen_ex
      Src: /src/gpac/src/filters/out_http.c:5230,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_http.c:5233,1
    - Dst: gf_fileio_get_udta
      Src: /src/gpac/src/filters/out_http.c:5238,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5241,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/out_http.c:5251,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/out_http.c:5251,1
    - Dst: gf_dm_sess_set_sock_group
      Src: /src/gpac/src/filters/out_http.c:5254,1
    - Dst: gf_dm_sess_set_timeout
      Src: /src/gpac/src/filters/out_http.c:5255,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5261,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5265,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5265,1
    - Dst: httpout_close_input_llhas
      Src: /src/gpac/src/filters/out_http.c:5272,1
    - Dst: gf_mpd_resolve_subnumber
      Src: /src/gpac/src/filters/out_http.c:5276,1
    - Dst: httpout_open_input_llhas
      Src: /src/gpac/src/filters/out_http.c:5277,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5278,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5287,1
    - Dst: httpout_input_drop
      Src: /src/gpac/src/filters/out_http.c:5289,1
    - Dst: httpout_input_in_error
      Src: /src/gpac/src/filters/out_http.c:5291,1
    - Dst: httpout_input_write_ready
      Src: /src/gpac/src/filters/out_http.c:5298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5301,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/out_http.c:5305,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/out_http.c:5307,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/out_http.c:5310,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/out_http.c:5311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5313,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/out_http.c:5315,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5316,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5325,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5325,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5331,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:5339,1
    - Dst: httpout_write_input
      Src: /src/gpac/src/filters/out_http.c:5343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5345,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5347,1
    - Dst: gf_dm_sess_process
      Src: /src/gpac/src/filters/out_http.c:5357,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5361,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/out_http.c:5361,1
    - Dst: httpout_open_input
      Src: /src/gpac/src/filters/out_http.c:5366,1
    - Dst: httpout_write_input
      Src: /src/gpac/src/filters/out_http.c:5371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5373,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5380,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5382,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/out_http.c:5384,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/out_http.c:5389,1
    - Dst: GF_FilterFrameInterface*::get_plane
      Src: /src/gpac/src/filters/out_http.c:5395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5397,1
    - Dst: httpout_write_input
      Src: /src/gpac/src/filters/out_http.c:5408,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5410,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5419,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5423,1
    - Dst: httpout_input_drop
      Src: /src/gpac/src/filters/out_http.c:5427,1
    - Dst: httpout_close_input
      Src: /src/gpac/src/filters/out_http.c:5429,1
    - Dst: gf_dm_sess_async_pending
      Src: /src/gpac/src/filters/out_http.c:5431,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5439,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:5440,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:5452,1
    CyclomaticComplexity: 189
    EdgeCount: 189
    ICount: 423
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_HTTPOutCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5453
      start: 4923
    functionDepth: 8
    functionLinenumber: 4923
    functionLinenumberEnd: 5453
    functionName: httpout_process_inputs
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pck_get_dependency_flags
    - httpin_send_seg_info
    - gf_filter_pck_get_interlaced
    - httpout_close_upload
    - gf_assert
    - gf_url_concatenate
    - gf_filter_pid_drop_packet
    - httpout_close_input_llhas
    - httpout_input_drop
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_list_add
    - gf_filter_pck_get_frame_interface
    - gf_dm_sess_is_hmux
    - gf_mpd_resolve_subnumber
    - gf_filter_pck_expand
    - httpout_input_in_error
    - httpout_close_llhas_part
    - httpout_close_input
    - gf_filter_post_process_task
    - gf_dm_sess_new
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_dm_sess_process
    - gf_list_get
    - gf_sys_is_test_mode
    - gf_realloc
    - memcpy
    - httpout_open_input_llhas
    - gf_filter_pck_dangling_clone
    - gf_filter_get_download_manager
    - gf_dm_sess_async_pending
    - httpout_write_input
    - gf_filter_pid_get_name
    - gf_dm_sess_flush_async
    - gf_dm_sess_set_timeout
    - gf_filter_pck_get_carousel_version
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pid_is_eos
    - httpout_input_write_ready
    - gf_error_to_string
    - httpout_open_input
    - gf_free
    - gf_filter_pck_get_property
    - gf_filter_pid_get_alias_udta
    - gf_filter_pck_get_byte_offset
    - GF_LOG
    - gf_pixel_get_size_info
    - gf_fopen_ex
    - gf_strdup
    - gf_dm_sess_set_sock_group
    - gf_filter_pid_is_flush_eos
    - gf_fileio_get_udta
    - httpout_prune_files
    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:5459,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:5466,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/out_http.c:5467,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/out_http.c:5468,1
    - Dst: gf_sk_group_select
      Src: /src/gpac/src/filters/out_http.c:5475,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:5478,1
    - Dst: httpout_check_new_session
      Src: /src/gpac/src/filters/out_http.c:5479,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:5481,1
    - Dst: httpout_check_new_session
      Src: /src/gpac/src/filters/out_http.c:5482,1
    - Dst: gf_sk_group_sock_is_set
      Src: /src/gpac/src/filters/out_http.c:5486,1
    - Dst: gf_dm_quic_process
      Src: /src/gpac/src/filters/out_http.c:5487,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5490,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:5492,1
    - Dst: httpout_sess_flush_close
      Src: /src/gpac/src/filters/out_http.c:5493,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/out_http.c:5499,1
    - Dst: memset
      Src: /src/gpac/src/filters/out_http.c:5505,1
    - Dst: httpout_sess_io
      Src: /src/gpac/src/filters/out_http.c:5508,1
    - Dst: httpout_process_session
      Src: /src/gpac/src/filters/out_http.c:5517,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:5521,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5531,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5535,1
    - Dst: gf_dm_quic_verify
      Src: /src/gpac/src/filters/out_http.c:5539,1
    - Dst: httpout_process_inputs
      Src: /src/gpac/src/filters/out_http.c:5543,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5547,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:5550,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/out_http.c:5553,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5555,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:5557,1
    - Dst: httpout_del_session
      Src: /src/gpac/src/filters/out_http.c:5559,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5580,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/out_http.c:5585,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 93
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5589
      start: 5455
    functionDepth: 10
    functionLinenumber: 5455
    functionLinenumberEnd: 5589
    functionName: httpout_process
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_js_lock
    - gf_sk_group_sock_is_set
    - gf_filter_get_udta
    - gf_filter_post_process_task
    - httpout_check_new_session
    - httpout_sess_flush_close
    - gf_list_get
    - httpout_process_session
    - httpout_process_inputs
    - gf_sk_group_select
    - gf_sys_clock_high_res
    - js_std_loop
    - httpout_del_session
    - gf_dm_quic_verify
    - httpout_sess_io
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - httpout_close_session
    - gf_dm_quic_process
    - memset
    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:5594,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/out_http.c:5598,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/out_http.c:5600,1
    - Dst: httpout_close_session
      Src: /src/gpac/src/filters/out_http.c:5602,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/out_http.c:5613,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:5620,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5621,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5621,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5623
      start: 5591
    functionDepth: 4
    functionLinenumber: 5591
    functionLinenumberEnd: 5623
    functionName: httpout_process_event
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_udta
    - gf_filter_pid_get_udta
    - gf_list_new
    - httpout_close_session
    - gf_list_get
    - gf_strdup
    - gf_list_add
    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:5627,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/out_http.c:5628,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5630
      start: 5625
    functionDepth: 0
    functionLinenumber: 5625
    functionLinenumberEnd: 5630
    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:5636,1
    - Dst: strstr
      Src: /src/gpac/src/filters/out_http.c:5639,1
    - Dst: strchr
      Src: /src/gpac/src/filters/out_http.c:5642,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/out_http.c:5644,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/out_http.c:5648,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 3
    argNames:
    - filter
    - url
    - mime
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5650
      start: 5632
    functionDepth: 1
    functionLinenumber: 5632
    functionLinenumberEnd: 5650
    functionName: httpout_use_alias
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_filter_get_udta
    - strcmp
    - strstr
    - strncmp
    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: 5661
      start: 5660
    functionDepth: 0
    functionLinenumber: 5660
    functionLinenumberEnd: 5661
    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:5856,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/out_http.c:5857,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5860
      start: 5854
    functionDepth: 6
    functionLinenumber: 5854
    functionLinenumberEnd: 5860
    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: 5869
      start: 5866
    functionDepth: 0
    functionLinenumber: 5866
    functionLinenumberEnd: 5869
    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:5881,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/out_http.c:5883,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - filter
    - udta
    argTypes:
    - GF_Filter*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5896
      start: 5875
    functionDepth: 1
    functionLinenumber: 5875
    functionLinenumberEnd: 5896
    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:5913,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/out_http.c:5919,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5920,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5930,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5939,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/out_http.c:5944,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5948,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5948,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/out_http.c:5949,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/out_http.c:5949,1
    - Dst: stricmp
      Src: /src/gpac/src/filters/out_http.c:5950,1
    - Dst: atoi
      Src: /src/gpac/src/filters/out_http.c:5951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/out_http.c:5959,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: 5971
      start: 5898
    functionDepth: 1
    functionLinenumber: 5898
    functionLinenumberEnd: 5971
    functionName: gf_httpout_send_request
    functionSourceFile: /src/gpac/src/filters/out_http.c
    functionUses: 1
    functionsReached:
    - gf_free
    - atoi
    - GF_LOG
    - stricmp
    - gf_list_new
    - gf_strdup
    - gf_list_add
    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_list_count
    - gf_free
    - gf_list_pop_front
    - memcmp
    - gf_list_new
    - gf_list_get
    - 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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_copy_properties
    - PROP_DATA_NO_COPY
    - gf_odf_avc_cfg_write
    - bsagg_transfer_avc_params
    - gf_list_new
    - gf_filter_pid_set_property
    - PROP_UINT
    - GF_SAFEALLOC
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_odf_avc_cfg_del
    - gf_filter_pid_set_udta_flags
    - memcpy
    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_list_count
    - gf_free
    - gf_list_pop_front
    - gf_list_del
    - gf_list_get
    - memcmp
    - GF_SAFEALLOC
    - gf_list_new
    - gf_list_add
    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:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_odf_vvc_cfg_read
    - PROP_DATA_NO_COPY
    - gf_odf_vvc_cfg_del
    - gf_odf_vvc_cfg_new
    - gf_odf_hevc_cfg_del
    - gf_odf_hevc_cfg_read
    - gf_odf_hevc_cfg_new
    - gf_list_get
    - gf_realloc
    - memcpy
    - bsagg_transfer_param_array
    - gf_filter_pid_copy_properties
    - gf_odf_hevc_cfg_write
    - gf_filter_pid_set_udta_flags
    - gf_odf_vvc_cfg_write
    - gf_filter_pid_set_property
    - PROP_UINT
    - GOTO_ERR
    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_filter_pid_copy_properties
    - gf_list_get
    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_filter_pck_forward
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    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:
    - PROP_DATA_NO_COPY
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_filter_pid_set_info_str
    - gf_bs_new
    - gf_bs_del
    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_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - gf_timestamp_less_or_equal
    - GF_SAFEALLOC
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_pck_expand
    - bsagg_set_linf
    - gf_filter_pck_merge_properties_filter
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_list_insert
    - gf_realloc
    - memcpy
    - gf_filter_pid_get_udta_flags
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - gf_timestamp_less
    - GF_LOG
    - gf_filter_pck_get_timescale
    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_filter_pid_get_property
    - gf_list_count
    - bs_agg_is_base
    - gf_list_get
    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:
    - bs_agg_is_base
    - gf_list_count
    - gf_list_get
    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_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_new
    - gf_free
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_get_udta
    - gf_list_del_item
    - bs_agg_reset_stream
    - BSAggOut*::rewrite_pid_config
    - GF_SAFEALLOC
    - gf_filter_pid_remove
    - gf_list_new
    - gf_filter_pid_check_caps
    - gf_list_add
    - gf_list_pop_back
    - bs_agg_get_base
    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
    - BSAggOut*::agg_process
    - gf_filter_get_udta
    - gf_list_get
    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_filter_get_udta
    - gf_list_new
    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_count
    - gf_filter_get_udta
    - gf_list_del
    - bs_agg_reset_stream
    - gf_list_pop_back
    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_int
    - gf_bs_write_long_int
    - gf_bs_read_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_bs_get_position
    - gf_bs_read_u8
    - gf_bs_enable_emulation_byte_removal
    - gf_free
    - gf_bs_align
    - gf_media_nalu_emulation_bytes_add_count
    - gf_malloc
    - hevc_write_profile_tier_level
    - gf_bs_get_size
    - gf_bs_write_int
    - gf_bs_get_content
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_bs_read_int
    - gf_bs_del
    - gf_bs_read_ue
    - gf_bs_get_bit_position
    - gf_bs_write_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_bs_get_position
    - gf_bs_read_u8
    - gf_bs_enable_emulation_byte_removal
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_align
    - gf_malloc
    - gf_bs_write_int
    - gf_bs_get_size
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_new
    - gf_bs_read_se
    - gf_bs_read_int
    - gf_bs_get_content_no_truncate
    - gf_bs_read_ue
    - gf_bs_get_bit_position
    - gf_bs_reassign_buffer
    - gf_bs_write_ue
    - gf_bs_write_se
    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_bs_get_position
    - gf_bs_write_int
    - gf_assert
    - gf_media_nalu_remove_emulation_bytes
    - gf_bs_new
    - gf_bs_read_ue
    - gf_bs_get_bit_position
    - gf_bs_reassign_buffer
    - gf_realloc
    - memcpy
    - gf_bs_enable_emulation_byte_removal
    - gf_media_nalu_add_emulation_bytes
    - gf_bs_read_int
    - gf_bs_get_content_no_truncate
    - gf_bs_write_ue
    - gf_media_nalu_emulation_bytes_add_count
    - gf_bs_align
    - GF_LOG
    - gf_bs_available
    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:
    - hevcsplit_get_slice_tile_index
    - hevcsplit_remove_slice_address
    - gf_hevc_parse_nalu
    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_list_count
    - gf_free
    - gf_odf_hevc_cfg_del
    - PROP_DATA_NO_COPY
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_set_property
    - gf_list_get
    - hevcsplit_rewrite_pps_no_grid
    - hevc_rewrite_sps
    - gf_odf_hevc_cfg_write
    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_filter_pid_copy_properties
    - gf_filter_pid_set_udta
    - GF_SAFEALLOC
    - gf_list_get
    - gf_filter_pid_new
    - gf_list_add
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - PROP_VEC2I_INT
    - gf_assert
    - GF_SAFEALLOC
    - gf_filter_get_opid
    - gf_hevc_read_sps
    - gf_list_add
    - gf_filter_get_opid_count
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_crc_32
    - gf_filter_pid_get_udta
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_remove
    - gf_hevc_read_vps
    - gf_list_get
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_hevc_read_pps
    - hevcsplit_get_tile_pixel_coords
    - PROP_BOOL
    - gf_filter_pid_check_caps
    - hevcsplit_rewrite_dsi
    - gf_filter_pid_set_property_str
    - gf_free
    - GF_LOG
    - hevcsplit_config_passthrough
    - gf_filter_pid_set_property
    - PROP_UINT
    - memset
    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_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_get_opid
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - gf_filter_pck_expand
    - gf_filter_get_udta
    - hevcsplit_rewrite_nal
    - gf_filter_pid_get_udta
    - gf_filter_pck_get_data
    - gf_hevc_parse_nalu
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_filter_pid_is_eos
    - hevcsplit_write_nal
    - gf_filter_pck_forward
    - GF_LOG
    - gf_bs_available
    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_filter_get_udta
    - gf_bs_new
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_bs_del
    - gf_list_get
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - gf_crc_32
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_bs_write_int
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_write_u8
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - gf_bs_write_data
    - gf_filter_pck_new_ref
    - gf_filter_pck_has_properties
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_byte_offset
    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_filter_get_udta
    - gf_bs_new
    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_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - gf_timestamp_rescale_signed
    - GF_SAFEALLOC
    - gf_list_add
    - PROP_FRAC64
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_list_pop_front
    - gf_filter_pid_get_udta
    - PROP_FRAC_INT
    - gf_filter_pid_remove
    - gf_fatal_assert
    - PROP_FRAC
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_filter_pck_unref
    - PROP_LONGSINT
    - gf_list_new
    - gf_filter_pid_check_caps
    - gf_filter_pid_negotiate_property
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - PROP_UINT
    - gf_filter_pid_set_property
    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:
    - PROP_LONGSINT
    - gf_filter_pck_get_duration
    - gf_timestamp_rescale
    - gf_filter_pid_set_property
    - gf_timestamp_rescale_signed
    - ABS
    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_count
    - gf_timestamp_rescale
    - gf_filter_pck_get_cts
    - gf_timestamp_rescale_signed
    - gf_filter_pck_is_blocking_ref
    - gf_list_get
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - 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_list_count
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_assert
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_list_get
    - gf_list_insert
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - restamp_config_timing
    - gf_filter_pck_unref
    - restamp_configure_pid
    - gf_filter_pck_ref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - restamp_get_timestamp
    - gf_filter_pck_set_duration
    - gf_filter_pck_new_ref
    - gf_filter_pid_is_eos
    - GF_LOG
    - gf_filter_pck_set_dts
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err restamp_process(GF_Filter *filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/restamp.c:550,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: 553
      start: 548
    functionDepth: 1
    functionLinenumber: 548
    functionLinenumberEnd: 553
    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:570,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/restamp.c:571,1
    - Dst: restamp_update_arg
      Src: /src/gpac/src/filters/restamp.c:574,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/restamp.c:581,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/restamp.c:581,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 568
    functionDepth: 2
    functionLinenumber: 568
    functionLinenumberEnd: 585
    functionName: restamp_initialize
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_filter_override_caps
    - GF_ARRAY_LENGTH
    - gf_filter_get_udta
    - restamp_update_arg
    - gf_list_new
    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:588,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:589,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/restamp.c:590,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:591,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/restamp.c:592,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/restamp.c:593,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/restamp.c:594,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/restamp.c:596,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/restamp.c:597,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/restamp.c:599,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 600
      start: 586
    functionDepth: 3
    functionLinenumber: 586
    functionLinenumberEnd: 600
    functionName: restamp_finalize
    functionSourceFile: /src/gpac/src/filters/restamp.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_list_del
    - gf_list_pop_back
    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: 603
      start: 602
    functionDepth: 0
    functionLinenumber: 602
    functionLinenumberEnd: 603
    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: 675
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 675
    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: 680
      start: 677
    functionDepth: 0
    functionLinenumber: 677
    functionLinenumberEnd: 680
    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_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - gf_odf_av1_cfg_del
    - gf_odf_av1_cfg_read
    - gf_filter_get_udta
    - gf_crc_32
    - gf_av1_leb128_size
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_filter_pid_caps_query
    - gf_list_enum
    - PROP_BOOL
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_filter_pid_check_caps
    - gf_filter_pid_set_property_str
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - 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_filter_pck_new_alloc
    - gf_free
    - gf_filter_pck_merge_properties
    - GF_LOG
    - gf_bs_get_content
    - gf_list_add
    - memcpy
    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_emulation_bytes_add_count
    - gf_malloc
    - gf_media_nalu_add_emulation_bytes
    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_get_position
    - gf_list_count
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_bs_new
    - format_obu_mpeg2ts
    - gf_bs_read_data
    - gf_bs_del
    - obumx_add_packet
    - gf_filter_pid_drop_packet
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - gf_malloc
    - gf_filter_pck_set_dependency_flags
    - gf_list_get
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_write_data
    - gf_filter_pck_set_duration
    - gf_list_new
    - gf_filter_pck_set_sap
    - gf_av1_parse_obu_header
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_av1_leb128_read
    - gf_filter_pck_set_dts
    - gf_bs_available
    - gf_list_rem
    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_get_position
    - obumx_process_mpeg2au
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_get_property
    - gf_av1_leb128_write
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_assert
    - gf_bs_write_u32_le
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_write_u8
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_av1_leb128_size
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_filter_pck_send
    - gf_list_enum
    - gf_filter_pck_get_cts
    - gf_bs_write_u16_le
    - gf_bs_write_data
    - gf_filter_pck_has_properties
    - gf_filter_pid_is_eos
    - gf_av1_parse_obu_header
    - gf_filter_pck_forward
    - GF_LOG
    - GF_4CC
    - gf_filter_pck_get_timescale
    - gf_av1_leb128_read
    - gf_bs_write_u32
    - gf_bs_write_u64_le
    - memset
    - gf_bs_available
    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_odf_av1_cfg_del
    - gf_bs_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:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_pid_set_framing_mode
    - gf_filter_get_udta
    - GF_LOG
    - a52_free
    - a52_init
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - a52_samples
    - gf_filter_pid_check_caps
    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:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - a52_frame
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - float_to_int
    - a52_syncinfo
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - a52dec_check_mc_config
    - gf_filter_pid_is_eos
    - GF_LOG
    - a52_block
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_get_timescale
    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
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property_str
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_fclose
    - gf_bs_align
    - gf_mpegh_escaped_value
    - gf_fileio_is_main_thread
    - gf_bs_available
    - gf_bs_from_file
    - gf_bs_peek_bits
    - gf_filter_pid_set_property
    - gf_bs_read_int
    - gf_bs_del
    - PROP_FRAC64
    - gf_fopen_ex
    - gf_realloc
    - strncmp
    - gf_bs_skip_bytes
    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:
    - gf_filter_pid_copy_properties
    - gf_audio_fmt_get_layout_from_cicp
    - gf_malloc
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_property
    - gf_audio_fmt_get_num_channels_from_layout
    - PROP_UINT
    - gf_filter_pid_set_name
    - PROP_BOOL
    - gf_filter_pid_new
    - mhas_dmx_check_dur
    - memcpy
    - PROP_FRAC64
    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: 15
    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:363,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_mhas.c:386,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_mhas.c:388,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:395,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 55
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 341
    functionDepth: 9
    functionLinenumber: 341
    functionLinenumberEnd: 409
    functionName: mhas_dmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - mhas_dmx_check_dur
    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: 421
      start: 411
    functionDepth: 0
    functionLinenumber: 411
    functionLinenumberEnd: 421
    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: 450
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 450
    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:455,1
    - Dst: mhas_dmx_check_dur
      Src: /src/gpac/src/filters/reframe_mhas.c:470,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_mhas.c:475,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_mhas.c:477,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_mhas.c:480,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:481,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_mhas.c:496,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_mhas.c:499,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_mhas.c:512,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mhas.c:514,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_mhas.c:520,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mhas.c:542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:552,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_mhas.c:559,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_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:575,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:592,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:600,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:605,1
    - Dst: GF_TRUE
      Src: /src/gpac/src/filters/reframe_mhas.c:608,1
    - Dst: gf_bs_peek_bits
      Src: /src/gpac/src/filters/reframe_mhas.c:612,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mhas.c:621,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:622,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:624,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:629,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:633,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:636,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/reframe_mhas.c:638,1
    - Dst: gf_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:640,1
    - Dst: mhas_dmx_check_pid
      Src: /src/gpac/src/filters/reframe_mhas.c:644,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_int
      Src: /src/gpac/src/filters/reframe_mhas.c:654,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_mhas.c:666,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/reframe_mhas.c:676,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:677,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:679,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:681,1
    - Dst: mhas_pck_name
      Src: /src/gpac/src/filters/reframe_mhas.c:681,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_mhas.c:699,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mhas.c:710,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/reframe_mhas.c:710,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/reframe_mhas.c:721,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_mhas.c:724,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_mhas.c:726,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mhas.c:728,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_mhas.c:732,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_mhas.c:734,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mhas.c:735,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_mhas.c:736,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mhas.c:737,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_mhas.c:741,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_mhas.c:743,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mhas.c:744,1
    - Dst: mhas_dmx_update_cts
      Src: /src/gpac/src/filters/reframe_mhas.c:750,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:758,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mhas.c:761,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_mhas.c:772,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_mhas.c:791,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:801,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_mhas.c:805,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_mhas.c:810,1
    CyclomaticComplexity: 96
    EdgeCount: 96
    ICount: 265
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 453
    functionDepth: 10
    functionLinenumber: 453
    functionLinenumberEnd: 814
    functionName: mhas_dmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_bs_skip_bytes
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_mpegh_escaped_value
    - mhas_dmx_check_pid
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - memchr
    - mhas_pck_name
    - gf_filter_pck_unref
    - PROP_LONGSINT
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pck_ref_props
    - memmove
    - gf_filter_pid_is_eos
    - GF_TRUE
    - gf_bs_align
    - gf_filter_pck_get_byte_offset
    - mhas_dmx_update_cts
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_bs_peek_bits
    - gf_filter_pid_set_property
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - mhas_dmx_check_dur
    - gf_bs_available
    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: 820
      start: 816
    functionDepth: 0
    functionLinenumber: 816
    functionLinenumberEnd: 820
    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:824,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_mhas.c:825,1
    - Dst: gf_bs_set_eos_callback
      Src: /src/gpac/src/filters/reframe_mhas.c:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 828
      start: 822
    functionDepth: 1
    functionLinenumber: 822
    functionLinenumberEnd: 828
    functionName: mhas_dmx_initialize
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_set_eos_callback
    - gf_filter_get_udta
    - gf_bs_new
    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:831,1
    - Dst: gf_bs_del
      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_free
      Src: /src/gpac/src/filters/reframe_mhas.c:834,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_mhas.c:835,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 829
    functionDepth: 3
    functionLinenumber: 829
    functionLinenumberEnd: 836
    functionName: mhas_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:849,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_mhas.c:860,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:861,1
    - Dst: gf_bs_available
      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_mpegh_escaped_value
      Src: /src/gpac/src/filters/reframe_mhas.c:866,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_mhas.c:867,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_mhas.c:873,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_mhas.c:875,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 839
    functionDepth: 7
    functionLinenumber: 839
    functionLinenumberEnd: 881
    functionName: mhas_dmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_mhas.c
    functionUses: 0
    functionsReached:
    - memchr
    - gf_mpegh_escaped_value
    - gf_bs_new
    - gf_bs_del
    - gf_bs_available
    - gf_bs_skip_bytes
    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: 901
      start: 900
    functionDepth: 0
    functionLinenumber: 900
    functionLinenumberEnd: 901
    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: 935
      start: 932
    functionDepth: 0
    functionLinenumber: 932
    functionLinenumberEnd: 935
    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: 940
      start: 937
    functionDepth: 0
    functionLinenumber: 937
    functionLinenumberEnd: 940
    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_MarkValue
    - JS_GetOpaque
    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_MarkValue
    - JS_GetOpaque
    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:
    - gf_free
    - JS_FreeValueRT
    - JS_GetOpaque
    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:
    - gf_free
    - jsf_event_reset
    - JS_GetOpaque
    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_DetachArrayBuffer
    - JS_IsUndefined
    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_filter_pck_discard
    - gf_free
    - JS_IsUndefined
    - JS_GetOpaque
    - JS_FreeValueRT
    - memset
    - gf_list_add
    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_MarkValue
    - JS_IsUndefined
    - JS_GetOpaque
    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:
    - gf_filter_get_download_manager
    - JS_GetGlobalObject
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsNull
    - JS_IsException
    - gf_fs_get_download_manager
    - 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
    - gf_fs_get_font_manager
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsNull
    - JS_IsException
    - jsff_get_session
    - gf_filter_get_font_manager
    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
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsNull
    - JS_IsException
    - gf_filter_request_opengl
    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
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsNull
    - gf_filter_set_active_opengl_context
    - JS_IsException
    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:
    - GETPROP
    - JS_GetOpaque
    - gf_filter_pck_get_data
    - GF_FilterFrameInterface*::get_plane
    - 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_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:530,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:530,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:531,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:535,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:536,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:538,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:541,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:543,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:544,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:545,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:546,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:547,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - c
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 549
    functionName: jsf_get_script_filename
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 5
    functionsReached:
    - JS_ToCString
    - JS_GetGlobalObject
    - JS_IsUndefined
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_IsNull
    - JS_FreeCString
    - JS_IsException
    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:559,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:562,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:564,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/jsfilter.c:564,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:566,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:568,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:570,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:570,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:572,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:577,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:579,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:580,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:580,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:581,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:581,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:584,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:585,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:585,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:586,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:586,1
    - Dst: JS_NewObject
      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_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:591,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:591,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:592,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:592,1
    - Dst: JS_NewObject
      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_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:598,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:598,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:599,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:599,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:602,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:603,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:603,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:604,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:604,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:607,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:608,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:608,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:609,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:609,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:612,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:614,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:614,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:618,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:620,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:620,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/jsfilter.c:620,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:624,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:626,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:626,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:630,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:632,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:633,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:633,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:634,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:634,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:635,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:639,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:641,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:641,1
    - Dst: JS_NewArrayBufferCopy
      Src: /src/gpac/src/filters/jsfilter.c:645,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filters/jsfilter.c:648,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filters/jsfilter.c:649,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:651,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 99
    argCount: 2
    argNames:
    - ctx
    - new_val
    argTypes:
    - JSContext*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 551
    functionDepth: 3
    functionLinenumber: 551
    functionLinenumberEnd: 655
    functionName: jsf_NewProp
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_NewInt64
    - JS_NewFloat64
    - FIX2FLT
    - JS_NewString
    - JS_NewObject
    - gf_props_type_is_enum
    - JS_NewArray
    - gf_props_enum_name
    - JS_SetPropertyUint32
    - JS_NewArrayBufferCopy
    - JS_NewInt32
    - gf_4cc_to_str
    - JS_SetPropertyStr
    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:663,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:664,1
    - Dst: strchr
      Src: /src/gpac/src/filters/jsfilter.c:666,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/filters/jsfilter.c:668,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:670,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:674,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/jsfilter.c:674,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:677,1
    - Dst: gf_audio_fmt_get_layout_name
      Src: /src/gpac/src/filters/jsfilter.c:677,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:681,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filters/jsfilter.c:681,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:685,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filters/jsfilter.c:685,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:689,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - prop
    - p4cc
    argTypes:
    - JSContext*
    - GF_PropertyValue*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 657
    functionDepth: 6
    functionLinenumber: 657
    functionLinenumberEnd: 693
    functionName: jsf_NewPropTranslate
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - strchr
    - JS_NewString
    - JS_NewStringLen
    - gf_props_enum_name
    - gf_audio_fmt_get_layout_name
    - jsf_NewProp
    - gf_codecid_file_ext
    - gf_stream_type_name
    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:698,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/jsfilter.c:702,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:704,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:705,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filters/jsfilter.c:708,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/jsfilter.c:711,1
    - Dst: gf_audio_fmt_get_layout_from_name
      Src: /src/gpac/src/filters/jsfilter.c:714,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/jsfilter.c:716,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:716,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:718,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:722,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:724,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:726,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:727,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:729,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/filters/jsfilter.c:733,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:734,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/filters/jsfilter.c:737,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:741,1
    - Dst: JS_ToIndex
      Src: /src/gpac/src/filters/jsfilter.c:742,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:743,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:746,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:748,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:749,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:752,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:755,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:758,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:763,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/jsfilter.c:769,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/jsfilter.c:772,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:776,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:777,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:778,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:781,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:784,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:787,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:798,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:799,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:800,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:803,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:805,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:806,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:807,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:810,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:812,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:813,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:815,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:816,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:820,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:822,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:823,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:825,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:826,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:829,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:831,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:832,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:834,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:835,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:839,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:841,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:842,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:844,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:845,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:851,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:896,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/jsfilter.c:905,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:906,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:911,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:920,1
    - Dst: strlen
      Src: /src/gpac/src/filters/jsfilter.c:928,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: 933
      start: 695
    functionDepth: 2
    functionLinenumber: 695
    functionLinenumberEnd: 933
    functionName: jsf_ToProp_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 5
    functionsReached:
    - gf_props_parse_value
    - JS_ToIndex
    - gf_stream_type_by_name
    - JS_IsString
    - JS_IsNull
    - JS_IsObject
    - JS_GetArrayBuffer
    - JS_ToInt64
    - JS_GetPropertyUint32
    - JS_ToCString
    - gf_malloc
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_IsArray
    - gf_codecid_parse
    - memcpy
    - JS_ToBool
    - JS_ToFloat64
    - gf_audio_fmt_get_layout_from_name
    - JS_IsBool
    - JS_IsNumber
    - JS_FreeCString
    - strlen
    - JS_ToInt32
    - gf_filter_get_sep
    - gf_props_4cc_get_type
    - JS_IsUndefined
    - GF_LOG
    - JS_IsInteger
    - gf_strdup
    - memset
    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:937,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: 939
      start: 935
    functionDepth: 3
    functionLinenumber: 935
    functionLinenumberEnd: 939
    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:944,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:946,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:949,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:949,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:949,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:950,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:951,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:957,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:958,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/jsfilter.c:959,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:963,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:964,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:964,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:965,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:968,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:969,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:969,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:970,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:973,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:974,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:974,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:975,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:978,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:979,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:979,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:980,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:983,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:984,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:984,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:985,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:988,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:989,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:989,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:990,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:993,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:994,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:994,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:995,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:998,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:999,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:999,1
    - Dst: gf_filter_set_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1000,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1005,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1006,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1008,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1011,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1015,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filters/jsfilter.c:1016,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: 1020
      start: 940
    functionDepth: 1
    functionLinenumber: 940
    functionLinenumberEnd: 1020
    functionName: jsf_filter_prop_set
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_ToBool
    - JS_IsUndefined
    - gf_strdup
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetOpaque
    - JS_IsNull
    - JS_FreeCString
    - gf_filter_set_max_extra_input_pids
    - JS_DupValue
    - gf_filter_require_source_id
    - gf_filter_set_session_caps
    - JS_ToInt32
    - gf_filter_get_session_caps
    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:1031,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1033,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1036,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1040,1
    - Dst: gf_filter_get_max_extra_input_pids
      Src: /src/gpac/src/filters/jsfilter.c:1040,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1042,1
    - Dst: gf_filter_block_enabled
      Src: /src/gpac/src/filters/jsfilter.c:1042,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/src/filters/jsfilter.c:1044,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1045,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/src/filters/jsfilter.c:1047,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1048,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1052,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1053,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1056,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1057,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1060,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1061,1
    - Dst: gf_filter_get_src_args
      Src: /src/gpac/src/filters/jsfilter.c:1064,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1065,1
    - Dst: gf_filter_get_dst_args
      Src: /src/gpac/src/filters/jsfilter.c:1067,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1068,1
    - Dst: gf_filter_get_dst_name
      Src: /src/gpac/src/filters/jsfilter.c:1070,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1071,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1072,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1075,1
    - Dst: gf_filter_all_sinks_done
      Src: /src/gpac/src/filters/jsfilter.c:1075,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1077,1
    - Dst: gf_filter_reporting_enabled
      Src: /src/gpac/src/filters/jsfilter.c:1077,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1080,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1081,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1083,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1084,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1086,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1087,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1089,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1090,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1092,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1093,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1095,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1096,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1098,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1099,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/jsfilter.c:1101,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1102,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1105,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/src/filters/jsfilter.c:1105,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/src/filters/jsfilter.c:1107,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:1108,1
    - Dst: gf_filter_get_clock_hint
      Src: /src/gpac/src/filters/jsfilter.c:1112,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:1116,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1118,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/jsfilter.c:1118,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1120,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/filters/jsfilter.c:1125,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/jsfilter.c:1127,1
    - Dst: strrchr
      Src: /src/gpac/src/filters/jsfilter.c:1128,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1130,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1134,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 101
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1022
    functionDepth: 2
    functionLinenumber: 1022
    functionLinenumberEnd: 1141
    functionName: jsf_filter_prop_get
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - gf_filter_block_enabled
    - JS_DupValue
    - gf_filter_reporting_enabled
    - gf_filter_get_session_caps
    - gf_filter_connections_pending
    - JS_NewString
    - gf_filter_get_dst_name
    - gf_filter_get_max_extra_input_pids
    - gf_filter_get_num_events_queued
    - gf_filter_get_output_buffer_max
    - strrchr
    - JS_NewInt32
    - gf_filter_get_clock_hint
    - JS_NewBool
    - gf_filter_get_sep
    - gf_free
    - gf_filter_all_sinks_done
    - jsf_get_script_filename
    - gf_filter_get_src_args
    - JS_GetOpaque
    - 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:1153,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1154,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1156,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1157,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1157,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1158,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1159,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1161,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1167,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1168,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1168,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1169,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1171,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1172,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1175,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1176,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1177,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1178,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1183,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1184,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1185,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1189,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1190,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1190,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1191,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1193,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1194,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1194,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1195,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1197,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1198,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1199,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1200,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1201,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:1202,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1204,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1206,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/jsfilter.c:1208,1
    - Dst: memset
      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_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1212,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1213,1
    - Dst: gf_filter_define_args
      Src: /src/gpac/src/filters/jsfilter.c:1220,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
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1224,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1225,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: 1227
      start: 1143
    functionDepth: 1
    functionLinenumber: 1143
    functionLinenumberEnd: 1227
    functionName: jsf_filter_set_arg
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_IsUndefined
    - gf_strdup
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - JS_FreeCString
    - gf_filter_define_args
    - strcmp
    - gf_realloc
    - memset
    - JS_ToInt32
    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:1240,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1241,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:1244,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1250,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1251,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1251,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1252,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1253,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:1254,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1255,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1257,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filters/jsfilter.c:1258,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1261,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1262,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1262,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1263,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filters/jsfilter.c:1267,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filters/jsfilter.c:1270,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/jsfilter.c:1272,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/jsfilter.c:1272,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1274,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: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1285,1
    - Dst: GETB
      Src: /src/gpac/src/filters/jsfilter.c:1286,1
    - Dst: gf_filter_push_caps
      Src: /src/gpac/src/filters/jsfilter.c:1312,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1313,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/jsfilter.c:1317,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:1318,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/jsfilter.c:1326,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: 1328
      start: 1230
    functionDepth: 2
    functionLinenumber: 1230
    functionLinenumberEnd: 1328
    functionName: jsf_filter_set_cap
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_props_parse_value
    - gf_stream_type_by_name
    - GETB
    - gf_props_get_id
    - JS_ToCString
    - JS_FreeValue
    - JS_GetPropertyStr
    - gf_codecid_parse
    - gf_realloc
    - js_throw_err
    - JS_FreeCString
    - gf_filter_push_caps
    - gf_filter_get_sep
    - gf_props_4cc_get_type
    - gf_filter_override_caps
    - JS_IsUndefined
    - JS_GetOpaque
    - memset
    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: 1281
      start: 1276
    functionDepth: 0
    functionLinenumber: 1276
    functionLinenumberEnd: 1281
    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:1332,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1333,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1334,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1335,1
    - Dst: gf_filter_set_description
      Src: /src/gpac/src/filters/jsfilter.c:1336,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1337,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: 1339
      start: 1330
    functionDepth: 1
    functionLinenumber: 1330
    functionLinenumberEnd: 1339
    functionName: jsf_filter_set_desc
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetOpaque
    - JS_FreeCString
    - gf_filter_set_description
    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:1343,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1344,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1346,1
    - Dst: gf_filter_set_class_hint
      Src: /src/gpac/src/filters/jsfilter.c:1347,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: 1349
      start: 1341
    functionDepth: 1
    functionLinenumber: 1341
    functionLinenumberEnd: 1349
    functionName: jsf_filter_set_class_hint
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_class_hint
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - JS_GetOpaque
    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:1353,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1354,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1355,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1356,1
    - Dst: gf_filter_set_version
      Src: /src/gpac/src/filters/jsfilter.c:1357,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1358,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: 1360
      start: 1351
    functionDepth: 1
    functionLinenumber: 1351
    functionLinenumberEnd: 1360
    functionName: jsf_filter_set_version
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetOpaque
    - JS_FreeCString
    - gf_filter_set_version
    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:1364,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1365,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1366,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1367,1
    - Dst: gf_filter_set_author
      Src: /src/gpac/src/filters/jsfilter.c:1368,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1369,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: 1371
      start: 1362
    functionDepth: 1
    functionLinenumber: 1362
    functionLinenumberEnd: 1371
    functionName: jsf_filter_set_author
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_set_author
    - JS_GetOpaque
    - 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:1376,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1377,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1378,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1379,1
    - Dst: gf_filter_set_help
      Src: /src/gpac/src/filters/jsfilter.c:1380,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1381,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: 1383
      start: 1374
    functionDepth: 1
    functionLinenumber: 1374
    functionLinenumberEnd: 1383
    functionName: jsf_filter_set_help
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_set_help
    - JS_GetOpaque
    - 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:1387,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1388,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1389,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1393,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1394,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:1395,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1396,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/jsfilter.c:1397,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:1399,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1400,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:1400,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1401,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: 1404
      start: 1385
    functionDepth: 1
    functionLinenumber: 1385
    functionLinenumberEnd: 1404
    functionName: jsf_filter_set_name
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_GetGlobalObject
    - JS_NewString
    - JS_FreeValue
    - JS_GetOpaque
    - JS_FreeCString
    - JS_SetPropertyStr
    - gf_strdup
    - 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:1410,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1411,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/jsfilter.c:1412,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1413,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:1416,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1418,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:1419,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:1422,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1424,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1425,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/jsfilter.c:1426,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: 1428
      start: 1407
    functionDepth: 2
    functionLinenumber: 1407
    functionLinenumberEnd: 1428
    functionName: jsf_filter_new_pid
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - gf_filter_pid_set_udta
    - JS_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_filter_pid_new
    - gf_list_add
    - js_throw_err
    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: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_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1436,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1437,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1439,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/jsfilter.c:1443,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/jsfilter.c:1445,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: 1447
      start: 1430
    functionDepth: 1
    functionLinenumber: 1430
    functionLinenumberEnd: 1447
    functionName: jsf_filter_send_event
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_filter_send_event
    - JS_GetOpaque
    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:1456,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1457,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1458,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1459,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1460,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1463,1
    - Dst: gf_filter_get_info_str
      Src: /src/gpac/src/filters/jsfilter.c:1464,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1465,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:1467,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:1468,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1468,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:1470,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1471,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1473,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/jsfilter.c:1474,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:1476,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/jsfilter.c:1478,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: 1480
      start: 1449
    functionDepth: 7
    functionLinenumber: 1449
    functionLinenumberEnd: 1480
    functionName: jsf_filter_get_info
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_get_info_str
    - JS_ToCString
    - JS_ToBool
    - gf_filter_release_property
    - JS_NewInt32
    - JS_GetOpaque
    - JS_FreeCString
    - jsf_NewProp
    - gf_props_get_id
    - JS_SetPropertyStr
    - gf_filter_get_info
    - js_throw_err
    - jsf_NewPropTranslate
    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:1488,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1489,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1490,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1491,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1492,1
    - Dst: gf_filter_is_supported_mime
      Src: /src/gpac/src/filters/jsfilter.c:1492,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1493,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: 1495
      start: 1484
    functionDepth: 1
    functionLinenumber: 1484
    functionLinenumberEnd: 1495
    functionName: jsf_filter_is_supported_mime
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_is_supported_mime
    - JS_GetOpaque
    - 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: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:1504,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1505,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1507,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1509,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1510,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1513,1
    - Dst: gf_filter_is_supported_source
      Src: /src/gpac/src/filters/jsfilter.c:1513,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1514,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1515,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: 1517
      start: 1497
    functionDepth: 1
    functionLinenumber: 1497
    functionLinenumberEnd: 1517
    functionName: jsf_filter_is_supported_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_is_supported_source
    - JS_GetOpaque
    - 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:1523,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1524,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1526,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1528,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/jsfilter.c:1529,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1530,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: 1532
      start: 1519
    functionDepth: 1
    functionLinenumber: 1519
    functionLinenumberEnd: 1532
    functionName: jsf_filter_update_status
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_ToInt32
    - gf_filter_update_status
    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:1537,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1538,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1541,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1542,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/jsfilter.c:1544,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/jsfilter.c:1546,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: 1549
      start: 1534
    functionDepth: 1
    functionLinenumber: 1534
    functionLinenumberEnd: 1549
    functionName: jsf_filter_reschedule_in
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_ask_rt_reschedule
    - gf_filter_post_process_task
    - JS_GetOpaque
    - JS_ToInt32
    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:1563,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1565,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:1566,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:1568,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:1571,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:1572,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:1573,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:1575,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1576,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1578,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:1580,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:1581,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:1587,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1588,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1590,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1591,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 3
    argNames:
    - filter
    - callback
    - reschedule_ms
    argTypes:
    - GF_Filter*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1558
    functionDepth: 6
    functionLinenumber: 1558
    functionLinenumberEnd: 1593
    functionName: jsf_task_exec
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JS_IsUndefined
    - GF_LOG
    - js_dump_error
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_IsInteger
    - JS_IsException
    - JS_ToInt32
    - gf_js_lock
    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:1597,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1598,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:1600,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1601,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:1602,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1603,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:1605,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1607,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1609,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:1612,1
    - Dst: gf_filter_post_task
      Src: /src/gpac/src/filters/jsfilter.c:1614,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: 1616
      start: 1594
    functionDepth: 2
    functionLinenumber: 1594
    functionLinenumberEnd: 1616
    functionName: jsf_filter_post_task
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_post_task
    - JS_IsFunction
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - JS_IsObject
    - js_throw_err
    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: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:1624,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1625,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1629,1
    - Dst: GF_JS_EXCEPTION
      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_notification_failure
      Src: /src/gpac/src/filters/jsfilter.c:1634,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/jsfilter.c:1636,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: 1638
      start: 1618
    functionDepth: 1
    functionLinenumber: 1618
    functionLinenumberEnd: 1638
    functionName: jsf_filter_notify_failure
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_setup_failure
    - JS_GetOpaque
    - JS_ToInt32
    - gf_filter_notification_failure
    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:1644,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1645,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:1646,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1647,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:1650,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1651,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: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:1657,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1658,1
    - Dst: gf_filter_hint_single_clock
      Src: /src/gpac/src/filters/jsfilter.c:1660,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: 1662
      start: 1640
    functionDepth: 1
    functionLinenumber: 1640
    functionLinenumberEnd: 1662
    functionName: jsf_filter_hint_clock
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - gf_filter_hint_single_clock
    - JS_GetOpaque
    - JS_ToInt64
    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:1671,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1672,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1673,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1675,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1676,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1677,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:1678,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1679,1
    - Dst: gf_filter_send_update
      Src: /src/gpac/src/filters/jsfilter.c:1683,1
    - Dst: gf_filter_send_update
      Src: /src/gpac/src/filters/jsfilter.c:1685,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1688,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1689,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1690,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: 1692
      start: 1664
    functionDepth: 1
    functionLinenumber: 1664
    functionLinenumberEnd: 1692
    functionName: jsf_filter_send_update
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetOpaque
    - JS_FreeCString
    - gf_filter_send_update
    - JS_ToInt32
    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: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:1703,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1704,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1707,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1709,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1710,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1713,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:1716,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1718,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1719,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1720,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/jsfilter.c:1725,1
    - Dst: gf_filter_connect_destination
      Src: /src/gpac/src/filters/jsfilter.c:1727,1
    - Dst: gf_filter_load_filter
      Src: /src/gpac/src/filters/jsfilter.c:1729,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1731,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1732,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:1734,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1735,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:1739,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1740,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: 1742
      start: 1694
    functionDepth: 2
    functionLinenumber: 1694
    functionLinenumberEnd: 1742
    functionName: jsf_filter_load_filter
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_free
    - JS_SetOpaque
    - JS_GetOpaque
    - JS_FreeCString
    - GF_SAFEALLOC
    - gf_filter_connect_source
    - gf_filter_connect_destination
    - js_throw_err
    - gf_filter_load_filter
    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:1746,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: 1748
      start: 1744
    functionDepth: 3
    functionLinenumber: 1744
    functionLinenumberEnd: 1748
    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:1751,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: 1752
      start: 1749
    functionDepth: 3
    functionLinenumber: 1749
    functionLinenumberEnd: 1752
    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:1755,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: 1756
      start: 1753
    functionDepth: 3
    functionLinenumber: 1753
    functionLinenumberEnd: 1756
    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:1760,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1762,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1763,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filters/jsfilter.c:1764,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: 1766
      start: 1758
    functionDepth: 1
    functionLinenumber: 1758
    functionLinenumberEnd: 1766
    functionName: jsf_filter_lock
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_lock
    - JS_ToBool
    - JS_GetOpaque
    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:1769,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1771,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1772,1
    - Dst: gf_filter_lock_all
      Src: /src/gpac/src/filters/jsfilter.c:1773,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: 1775
      start: 1767
    functionDepth: 1
    functionLinenumber: 1767
    functionLinenumberEnd: 1775
    functionName: jsf_filter_lock_all
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_filter_lock_all
    - JS_GetOpaque
    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:1778,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1779,1
    - Dst: gf_filter_make_sticky
      Src: /src/gpac/src/filters/jsfilter.c:1780,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: 1782
      start: 1776
    functionDepth: 1
    functionLinenumber: 1776
    functionLinenumberEnd: 1782
    functionName: jsf_filter_make_sticky
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_make_sticky
    - JS_GetOpaque
    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:1785,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1786,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/jsfilter.c:1787,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1787,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: 1789
      start: 1783
    functionDepth: 1
    functionLinenumber: 1783
    functionLinenumberEnd: 1789
    functionName: jsf_filter_prevent_blocking
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_prevent_blocking
    - JS_ToBool
    - JS_GetOpaque
    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:1792,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1793,1
    - Dst: gf_filter_block_eos
      Src: /src/gpac/src/filters/jsfilter.c:1794,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1794,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: 1796
      start: 1790
    functionDepth: 1
    functionLinenumber: 1790
    functionLinenumberEnd: 1796
    functionName: jsf_filter_block_eos
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_block_eos
    - JS_ToBool
    - JS_GetOpaque
    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:1801,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1802,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/jsfilter.c:1803,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: 1805
      start: 1799
    functionDepth: 1
    functionLinenumber: 1799
    functionLinenumberEnd: 1805
    functionName: jsf_filter_abort
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_abort
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:1814,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1815,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1816,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1820,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1824,1
    - Dst: jsff_get_filter
      Src: /src/gpac/src/filters/jsfilter.c:1828,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1831,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:1835,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1837,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/src/filters/jsfilter.c:1843,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/jsfilter.c:1845,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:1847,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:1848,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: 1850
      start: 1810
    functionDepth: 2
    functionLinenumber: 1810
    functionLinenumberEnd: 1850
    functionName: jsf_filter_set_source_internal
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_set_source_restricted
    - JS_GetOpaque
    - JS_FreeCString
    - jsff_get_filter
    - js_throw_err
    - gf_filter_set_source
    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:1854,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: 1855
      start: 1852
    functionDepth: 3
    functionLinenumber: 1852
    functionLinenumberEnd: 1855
    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:1859,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: 1860
      start: 1857
    functionDepth: 3
    functionLinenumber: 1857
    functionLinenumberEnd: 1860
    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:1864,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1865,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1866,1
    - Dst: gf_filter_reset_source
      Src: /src/gpac/src/filters/jsfilter.c:1867,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: 1869
      start: 1862
    functionDepth: 1
    functionLinenumber: 1862
    functionLinenumberEnd: 1869
    functionName: jsf_filter_reset_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_reset_source
    - JS_GetOpaque
    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:1873,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1874,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1875,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/jsfilter.c:1876,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1876,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: 1878
      start: 1871
    functionDepth: 1
    functionLinenumber: 1871
    functionLinenumberEnd: 1878
    functionName: jsf_filter_set_blocking
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_blocking
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_GetOpaque
    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:1958,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1959,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/jsfilter.c:1961,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: 1963
      start: 1956
    functionDepth: 1
    functionLinenumber: 1956
    functionLinenumberEnd: 1963
    functionName: jsf_filter_remove
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_remove_src
    - JS_GetOpaque
    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:1970,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:1971,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:1972,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:1972,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1973,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:1974,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:1980,1
    - Dst: gf_filter_has_pid_connection_pending
      Src: /src/gpac/src/filters/jsfilter.c:1980,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: 1981
      start: 1967
    functionDepth: 1
    functionLinenumber: 1967
    functionLinenumberEnd: 1981
    functionName: jsf_filter_has_pid_connections_pending
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_filter_has_pid_connection_pending
    - JS_GetOpaque
    - JS_IsNull
    - 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:1989,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:1991,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:1993,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:1994,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:1994,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1996,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:1997,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:1998,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:1999,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: 2001
      start: 1983
    functionDepth: 2
    functionLinenumber: 1983
    functionLinenumberEnd: 2001
    functionName: jsf_on_setup_error
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToBool
    - JS_IsBool
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_NewInt32
    - gf_js_lock
    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:2013,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2014,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2018,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filters/jsfilter.c:2018,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2020,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2022,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2025
      start: 2011
    functionDepth: 1
    functionLinenumber: 2011
    functionLinenumberEnd: 2025
    functionName: jsf_filter_inst_prop_get
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_get_name
    - JS_NewString
    - JS_GetOpaque
    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:2030,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2031,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2035,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2035,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2035,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2036,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2036,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/jsfilter.c:2038,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2040,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2041,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2046,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2047,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:2048,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2049,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: 2053
      start: 2027
    functionDepth: 1
    functionLinenumber: 2027
    functionLinenumberEnd: 2053
    functionName: jsf_filter_inst_prop_set
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_IsUndefined
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetOpaque
    - JS_IsNull
    - JS_FreeCString
    - JS_DupValue
    - gf_strdup
    - gf_filter_set_setup_failure_callback
    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:2059,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2060,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2061,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2062,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2063,1
    - Dst: gf_filter_get_arg_str
      Src: /src/gpac/src/filters/jsfilter.c:2065,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2066,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filters/jsfilter.c:2069,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2070,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2074,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: 2076
      start: 2055
    functionDepth: 4
    functionLinenumber: 2055
    functionLinenumberEnd: 2076
    functionName: jsf_filter_inst_get_arg
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_filter_get_arg
    - JS_NewString
    - JS_GetOpaque
    - gf_filter_get_arg_str
    - JS_FreeCString
    - jsf_NewProp
    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:2081,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2082,1
    - Dst: gf_filter_disable_probe
      Src: /src/gpac/src/filters/jsfilter.c:2083,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: 2085
      start: 2079
    functionDepth: 1
    functionLinenumber: 2079
    functionLinenumberEnd: 2085
    functionName: jsf_filter_inst_disable_probe
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_disable_probe
    - JS_GetOpaque
    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:2088,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2089,1
    - Dst: gf_filter_disable_inputs
      Src: /src/gpac/src/filters/jsfilter.c:2090,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: 2092
      start: 2086
    functionDepth: 1
    functionLinenumber: 2086
    functionLinenumberEnd: 2092
    functionName: jsf_filter_inst_disable_inputs
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_disable_inputs
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:2118,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2119,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2122,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/jsfilter.c:2123,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2126,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/jsfilter.c:2127,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2130,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2131,1
    - Dst: gf_filter_pid_set_max_buffer
      Src: /src/gpac/src/filters/jsfilter.c:2132,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2135,1
    - Dst: gf_filter_pid_set_loose_connect
      Src: /src/gpac/src/filters/jsfilter.c:2136,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/jsfilter.c:2139,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2139,1
    - Dst: gf_filter_pid_set_clock_mode
      Src: /src/gpac/src/filters/jsfilter.c:2142,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2142,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/jsfilter.c:2145,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2145,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2148,1
    - Dst: gf_filter_pid_require_source_id
      Src: /src/gpac/src/filters/jsfilter.c:2149,1
    - Dst: gf_filter_pid_recompute_dts
      Src: /src/gpac/src/filters/jsfilter.c:2152,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2152,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2157,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2158,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: 2160
      start: 2113
    functionDepth: 2
    functionLinenumber: 2113
    functionLinenumberEnd: 2160
    functionName: jsf_pid_set_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_filter_pid_set_discard
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_set_max_buffer
    - gf_filter_pid_recompute_dts
    - gf_filter_pid_set_eos
    - gf_filter_pid_require_source_id
    - gf_filter_pid_set_clock_mode
    - gf_filter_pid_set_loose_connect
    - JS_GetOpaque
    - gf_filter_pid_set_name
    - JS_FreeCString
    - JS_ToInt32
    - js_throw_err
    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:2166,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2167,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2170,1
    - Dst: gf_filter_pid_get_name
      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_is_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_has_seen_eos
      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_eos_received
      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_is_flush_eos
      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_would_block
      Src: /src/gpac/src/filters/jsfilter.c:2180,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2182,1
    - Dst: gf_filter_pid_is_sparse
      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_filter_name
      Src: /src/gpac/src/filters/jsfilter.c:2184,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2186,1
    - Dst: gf_filter_pid_get_source_filter_name
      Src: /src/gpac/src/filters/jsfilter.c:2186,1
    - Dst: gf_filter_pid_get_args
      Src: /src/gpac/src/filters/jsfilter.c:2188,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2189,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/jsfilter.c:2191,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2192,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filters/jsfilter.c:2194,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2195,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2197,1
    - Dst: gf_filter_pid_get_max_buffer
      Src: /src/gpac/src/filters/jsfilter.c:2197,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2199,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/jsfilter.c:2199,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filters/jsfilter.c:2201,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2202,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2204,1
    - Dst: gf_filter_pid_first_packet_is_empty
      Src: /src/gpac/src/filters/jsfilter.c:2204,1
    - Dst: gf_filter_pid_get_first_packet_cts
      Src: /src/gpac/src/filters/jsfilter.c:2206,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2207,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2211,1
    - Dst: gf_filter_pid_get_packet_count
      Src: /src/gpac/src/filters/jsfilter.c:2211,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2213,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/jsfilter.c:2213,1
    - Dst: gf_filter_pid_get_source
      Src: /src/gpac/src/filters/jsfilter.c:2215,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2217,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2218,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filters/jsfilter.c:2223,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2225,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2226,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2231,1
    - Dst: gf_filter_pid_get_min_pck_duration
      Src: /src/gpac/src/filters/jsfilter.c:2231,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2233,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/jsfilter.c:2233,1
    - Dst: gf_filter_pid_get_next_ts
      Src: /src/gpac/src/filters/jsfilter.c:2235,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2237,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2240,1
    - Dst: gf_filter_pid_has_decoder
      Src: /src/gpac/src/filters/jsfilter.c:2240,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 75
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2243
      start: 2162
    functionDepth: 1
    functionLinenumber: 2162
    functionLinenumberEnd: 2243
    functionName: jsf_pid_get_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_filter_pid_get_timescale
    - gf_filter_pid_get_destination
    - gf_filter_pid_get_min_pck_duration
    - gf_filter_pid_get_source
    - gf_filter_pid_is_playing
    - gf_filter_pid_get_max_buffer
    - gf_filter_pid_is_sparse
    - gf_filter_pid_would_block
    - gf_filter_pid_first_packet_is_empty
    - gf_filter_pid_has_decoder
    - gf_filter_pid_orig_src_args
    - gf_filter_pid_get_first_packet_cts
    - gf_filter_pid_get_next_ts
    - gf_filter_pid_eos_received
    - JS_NewString
    - gf_filter_pid_get_name
    - gf_filter_pid_get_source_filter_name
    - JS_NewInt32
    - gf_filter_pid_get_args
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet_count
    - gf_filter_pid_query_buffer_duration
    - JS_NewBool
    - gf_free
    - gf_filter_pid_has_seen_eos
    - JS_GetOpaque
    - gf_filter_pid_get_filter_name
    - gf_filter_pid_is_flush_eos
    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:2247,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2248,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2249,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2250,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/jsfilter.c:2254,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/jsfilter.c:2259,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: 2261
      start: 2245
    functionDepth: 1
    functionLinenumber: 2245
    functionLinenumberEnd: 2261
    functionName: jsf_pid_send_event
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_JS_EXCEPTION
    - gf_filter_pid_init_play_event
    - JS_GetOpaque
    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:2270,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2271,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2272,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2273,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2275,1
    - Dst: gf_filter_pid_enum_info
      Src: /src/gpac/src/filters/jsfilter.c:2276,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filters/jsfilter.c:2278,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/jsfilter.c:2281,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2282,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:2284,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2285,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2285,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2286,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2286,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2287,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2287,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: 2289
      start: 2263
    functionDepth: 4
    functionLinenumber: 2263
    functionLinenumberEnd: 2289
    functionName: jsf_pid_enum_properties
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_NewString
    - JS_NewObject
    - gf_filter_pid_enum_properties
    - JS_NewInt32
    - JS_GetOpaque
    - gf_filter_pid_enum_info
    - jsf_NewProp
    - JS_SetPropertyStr
    - gf_props_4cc_get_name
    - JS_ToInt32
    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:2297,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2298,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2299,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2300,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2301,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/jsfilter.c:2303,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/jsfilter.c:2305,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2307,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2309,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2310,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2310,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2312,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2313,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2314,1
    - Dst: gf_filter_pid_get_info
      Src: /src/gpac/src/filters/jsfilter.c:2316,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/jsfilter.c:2318,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/jsfilter.c:2322,1
    - Dst: gf_prop_matrix_decompose
      Src: /src/gpac/src/filters/jsfilter.c:2326,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2327,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2328,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:2335,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/jsfilter.c:2337,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: 2339
      start: 2291
    functionDepth: 7
    functionLinenumber: 2291
    functionLinenumberEnd: 2339
    functionName: jsf_pid_get_property_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_filter_release_property
    - gf_prop_matrix_decompose
    - JS_NewInt32
    - JS_GetOpaque
    - gf_filter_pid_get_info_str
    - JS_FreeCString
    - gf_filter_pid_get_info
    - gf_filter_pid_get_property_str
    - jsf_NewProp
    - gf_props_get_id
    - JS_SetPropertyStr
    - jsf_NewPropTranslate
    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:2342,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: 2343
      start: 2340
    functionDepth: 8
    functionLinenumber: 2340
    functionLinenumberEnd: 2343
    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:2346,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: 2347
      start: 2344
    functionDepth: 8
    functionLinenumber: 2344
    functionLinenumberEnd: 2347
    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:2355,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2356,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:2358,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/jsfilter.c:2360,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/jsfilter.c:2365,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2366,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:2369,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:2370,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:2372,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2373,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:2375,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2378,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2383,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: 2385
      start: 2350
    functionDepth: 3
    functionLinenumber: 2350
    functionLinenumberEnd: 2385
    functionName: jsf_pid_get_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - gf_assert
    - js_throw_err
    - JS_GetOpaque
    - memset
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_filter_pid_get_packet
    - gf_list_pop_back
    - js_throw_err_msg
    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:2389,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2390,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:2392,1
    - Dst: gf_filter_pid_get_packet_count
      Src: /src/gpac/src/filters/jsfilter.c:2395,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/jsfilter.c:2396,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2404,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/jsfilter.c:2406,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: 2408
      start: 2386
    functionDepth: 2
    functionLinenumber: 2386
    functionLinenumberEnd: 2408
    functionName: jsf_pid_drop_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_FreeValue
    - JS_GetOpaque
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet_count
    - js_throw_err_msg
    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:2412,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2413,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2414,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2415,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2416,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2417,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/jsfilter.c:2417,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: 2418
      start: 2410
    functionDepth: 1
    functionLinenumber: 2410
    functionLinenumberEnd: 2418
    functionName: jsf_pid_is_filter_in_parents
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_filter_pid_is_filter_in_parents
    - JS_GetOpaque
    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:2425,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2426,1
    - Dst: gf_filter_pid_get_buffer_occupancy
      Src: /src/gpac/src/filters/jsfilter.c:2428,1
    - Dst: JS_NewObject
      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_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2432,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2433,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2433,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2434,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2434,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: 2436
      start: 2420
    functionDepth: 1
    functionLinenumber: 2420
    functionLinenumberEnd: 2436
    functionName: jsf_pid_get_buffer_occupancy
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_filter_pid_get_buffer_occupancy
    - JS_NewObject
    - JS_NewInt32
    - JS_GetOpaque
    - JS_SetPropertyStr
    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:2439,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2440,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/jsfilter.c:2441,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2441,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: 2443
      start: 2437
    functionDepth: 1
    functionLinenumber: 2437
    functionLinenumberEnd: 2443
    functionName: jsf_pid_clear_eos
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_filter_pid_clear_eos
    - JS_GetOpaque
    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:2446,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2447,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:2448,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/jsfilter.c:2448,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: 2449
      start: 2444
    functionDepth: 1
    functionLinenumber: 2444
    functionLinenumberEnd: 2449
    functionName: jsf_pid_check_caps
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_filter_pid_check_caps
    - JS_GetOpaque
    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:2452,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2453,1
    - Dst: gf_filter_pid_discard_block
      Src: /src/gpac/src/filters/jsfilter.c:2454,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: 2456
      start: 2450
    functionDepth: 1
    functionLinenumber: 2450
    functionLinenumberEnd: 2456
    functionName: jsf_pid_discard_block
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pid_discard_block
    - JS_GetOpaque
    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:2459,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2460,1
    - Dst: gf_filter_pid_allow_direct_dispatch
      Src: /src/gpac/src/filters/jsfilter.c:2461,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: 2463
      start: 2457
    functionDepth: 1
    functionLinenumber: 2457
    functionLinenumberEnd: 2463
    functionName: jsf_pid_allow_direct_dispatch
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pid_allow_direct_dispatch
    - JS_GetOpaque
    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:2470,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2471,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2473,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2475,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2477,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2478,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2479,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2483,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/jsfilter.c:2485,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2486,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2489,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:2490,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: 2491
      start: 2464
    functionDepth: 2
    functionLinenumber: 2464
    functionLinenumberEnd: 2491
    functionName: jsf_pid_resolve_file_template
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewString
    - JS_GetOpaque
    - gf_filter_pid_resolve_file_template
    - JS_FreeCString
    - JS_ToInt32
    - js_throw_err
    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:2497,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2498,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2500,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2501,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2503,1
    - Dst: gf_filter_pid_caps_query_str
      Src: /src/gpac/src/filters/jsfilter.c:2505,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2506,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:2508,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2509,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2509,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2511,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2512,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2514,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filters/jsfilter.c:2516,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:2518,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: 2521
      start: 2493
    functionDepth: 7
    functionLinenumber: 2493
    functionLinenumberEnd: 2521
    functionName: jsf_pid_query_caps
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_filter_pid_caps_query
    - JS_NewInt32
    - JS_GetOpaque
    - JS_FreeCString
    - jsf_NewProp
    - gf_props_get_id
    - JS_SetPropertyStr
    - gf_filter_pid_caps_query_str
    - js_throw_err
    - jsf_NewPropTranslate
    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:2529,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2530,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2531,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2532,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/jsfilter.c:2534,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2536,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:2538,1
    - Dst: SET_PROPB
      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_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2551,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2552,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2553,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2554,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2555,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2556,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2557,1
    - Dst: SET_PROP32
      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_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2562,1
    - Dst: SET_PROP64
      Src: /src/gpac/src/filters/jsfilter.c:2563,1
    - Dst: SET_PROP32
      Src: /src/gpac/src/filters/jsfilter.c:2564,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: 2566
      start: 2523
    functionDepth: 2
    functionLinenumber: 2523
    functionLinenumberEnd: 2566
    functionName: jsf_pid_get_statistics
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - SET_PROP64
    - SET_PROPB
    - SET_PROP32
    - gf_filter_pid_get_statistics
    - JS_NewObject
    - JS_GetOpaque
    - JS_ToInt32
    - js_throw_err
    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: 2541
      start: 2539
    functionDepth: 0
    functionLinenumber: 2539
    functionLinenumberEnd: 2541
    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: 2543
      start: 2541
    functionDepth: 0
    functionLinenumber: 2541
    functionLinenumberEnd: 2543
    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: 2545
      start: 2543
    functionDepth: 0
    functionLinenumber: 2543
    functionLinenumberEnd: 2545
    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:2571,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2573,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:2575,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/jsfilter.c:2577,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:2579,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2581,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2582,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:2583,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2584,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2585,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2587,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2588,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2589,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2592,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:2594,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:2595,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2596,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/jsfilter.c:2597,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2601,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: 2602
      start: 2568
    functionDepth: 2
    functionLinenumber: 2568
    functionLinenumberEnd: 2602
    functionName: jsf_pck_shared_del
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_rem
    - JS_IsUndefined
    - gf_filter_pid_get_udta
    - JS_FreeValue
    - JS_Call
    - JS_DupValue
    - gf_list_get
    - memset
    - gf_list_add
    - gf_js_lock
    - jsf_pck_detach_ab
    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:2614,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2615,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2616,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2619,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2620,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:2621,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2623,1
    - Dst: jsf_pck_shared_del
      Src: /src/gpac/src/filters/jsfilter.c:2625,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: 2626
      start: 2612
    functionDepth: 3
    functionLinenumber: 2612
    functionLinenumberEnd: 2626
    functionName: jsf_pck_gl_ifce_del
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_filter_pid_get_udta
    - gf_filter_pck_get_frame_interface
    - JS_FreeValue
    - gf_js_lock
    - jsf_pck_shared_del
    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:2641,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2643,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2644,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2645,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:2646,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:2647,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:2648,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2650,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:2650,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2653,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:2654,1
    - Dst: wgl_texture_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2656,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2659,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2662,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2663,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2664,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2666,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2670,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2671,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2672,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:2673,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: 2675
      start: 2632
    functionDepth: 6
    functionLinenumber: 2632
    functionLinenumberEnd: 2675
    functionName: jsf_pck_gl_get_texture
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - js_dump_error
    - JS_FreeValue
    - JS_Call
    - JS_GetPropertyStr
    - JS_IsNull
    - JS_DupValue
    - JS_IsException
    - JS_NewInt32
    - JS_IsObject
    - JS_ToInt32
    - gf_js_lock
    - wgl_texture_get_id
    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:2690,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2692,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:2694,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:2697,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:2699,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2701,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:2703,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:2704,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2705,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2706,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2708,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2716,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2719,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/jsfilter.c:2724,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:2728,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:2728,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:2731,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2733,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:2734,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2735,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2736,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2739,1
    - Dst: strlen
      Src: /src/gpac/src/filters/jsfilter.c:2740,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/jsfilter.c:2743,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2744,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2745,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:2746,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2747,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2749,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2750,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2752,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/jsfilter.c:2756,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:2758,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2759,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2765,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/jsfilter.c:2768,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2769,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2770,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2773,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/jsfilter.c:2774,1
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/jsfilter.c:2776,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:2783,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2784,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2785,1
    - Dst: JS_IsArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:2787,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:2787,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/jsfilter.c:2791,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2792,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:2793,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2794,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2796,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2797,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2799,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/jsfilter.c:2802,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2804,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2805,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:2807,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:2814,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2817,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2821,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:2822,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:2823,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2825,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:2826,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2827,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:2829,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2830,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:2834,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2834,1
    - Dst: webgl_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2843,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2844,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:2845,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2846,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/jsfilter.c:2849,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:2850,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2855,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2856,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:2861,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2862,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: 2866
      start: 2682
    functionDepth: 3
    functionLinenumber: 2682
    functionLinenumberEnd: 2866
    functionName: jsf_pid_new_packet
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pck_new_alloc
    - gf_filter_pck_new_copy
    - JS_IsString
    - gf_assert
    - JS_IsNull
    - GF_SAFEALLOC
    - gf_filter_pck_new_shared
    - JS_IsObject
    - JS_GetArrayBuffer
    - gf_filter_pck_new_frame_interface
    - gf_list_add
    - JS_NewObjectClass
    - JS_ToCString
    - JS_FreeValue
    - JS_IsFunction
    - JS_DupValue
    - JS_IsException
    - memcpy
    - js_throw_err
    - JS_IsArrayBuffer
    - JS_ToBool
    - JS_IsBool
    - webgl_get_frame_interface
    - gf_filter_pck_new_clone
    - JS_FreeCString
    - strlen
    - gf_list_new
    - gf_filter_pck_new_ref
    - JS_ToInt32
    - gf_list_pop_back
    - JS_SetOpaque
    - JS_GetOpaque
    - JS_IsInteger
    - js_throw_err_msg
    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:2874,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2875,1
    - Dst: gf_filter_pid_get_clock_info
      Src: /src/gpac/src/filters/jsfilter.c:2876,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:2877,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2878,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2878,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2879,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:2879,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:2880,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:2880,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: 2882
      start: 2868
    functionDepth: 1
    functionLinenumber: 2868
    functionLinenumberEnd: 2882
    functionName: jsf_pid_get_clock_info
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - JS_NewObject
    - gf_filter_pid_get_clock_info
    - JS_NewInt32
    - JS_GetOpaque
    - 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:2891,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2892,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:2893,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2894,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:2896,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2897,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2902,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:2903,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2904,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2906,1
    - Dst: gf_filter_pid_set_info_dyn
      Src: /src/gpac/src/filters/jsfilter.c:2910,1
    - Dst: gf_filter_pid_negotiate_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:2912,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:2914,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:2917,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2918,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:2919,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:2920,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2922,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/jsfilter.c:2927,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/jsfilter.c:2929,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/jsfilter.c:2931,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/jsfilter.c:2936,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2938,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: 2940
      start: 2885
    functionDepth: 4
    functionLinenumber: 2885
    functionLinenumberEnd: 2940
    functionName: jsf_pid_set_property_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property_dyn
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_filter_pid_set_info
    - gf_props_reset_single
    - gf_filter_pid_negotiate_property_dyn
    - JS_GetOpaque
    - gf_filter_pid_set_property
    - JS_IsNull
    - JS_FreeCString
    - gf_props_get_id
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_set_info_dyn
    - js_throw_err
    - jsf_ToProp
    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:2943,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: 2944
      start: 2941
    functionDepth: 5
    functionLinenumber: 2941
    functionLinenumberEnd: 2944
    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:2947,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: 2948
      start: 2945
    functionDepth: 5
    functionLinenumber: 2945
    functionLinenumberEnd: 2948
    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:2951,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: 2952
      start: 2949
    functionDepth: 5
    functionLinenumber: 2949
    functionLinenumberEnd: 2952
    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:2957,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2958,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:2959,1
    - Dst: gf_filter_pid_ignore_blocking
      Src: /src/gpac/src/filters/jsfilter.c:2960,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: 2963
      start: 2954
    functionDepth: 1
    functionLinenumber: 2954
    functionLinenumberEnd: 2963
    functionName: jsf_pid_ignore_blocking
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pid_ignore_blocking
    - JS_ToBool
    - JS_GetOpaque
    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:2967,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2968,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/jsfilter.c:2970,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2973,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: 2975
      start: 2965
    functionDepth: 1
    functionLinenumber: 2965
    functionLinenumberEnd: 2975
    functionName: jsf_pid_remove
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - gf_filter_pid_remove
    - JS_GetOpaque
    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:2980,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2981,1
    - Dst: gf_filter_pid_reset_properties
      Src: /src/gpac/src/filters/jsfilter.c:2982,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2983,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: 2985
      start: 2977
    functionDepth: 2
    functionLinenumber: 2977
    functionLinenumberEnd: 2985
    functionName: jsf_pid_reset_props
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pid_reset_properties
    - js_throw_err
    - JS_GetOpaque
    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:2990,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2991,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:2992,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:2993,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/jsfilter.c:2994,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:2995,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: 2997
      start: 2987
    functionDepth: 2
    functionLinenumber: 2987
    functionLinenumberEnd: 2997
    functionName: jsf_pid_copy_props
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - GF_JS_EXCEPTION
    - js_throw_err
    - JS_GetOpaque
    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:3003,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3004,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:3005,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3005,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3006,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3007,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/jsfilter.c:3008,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:3009,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: 3011
      start: 2999
    functionDepth: 2
    functionLinenumber: 2999
    functionLinenumberEnd: 3011
    functionName: jsf_pid_forward
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pck_forward
    - JS_GetOpaque
    - JS_IsObject
    - js_throw_err
    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:3016,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3017,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3018,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:3019,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/jsfilter.c:3023,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filters/jsfilter.c:3027,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filters/jsfilter.c:3030,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filters/jsfilter.c:3031,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:3035,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: 3037
      start: 3013
    functionDepth: 1
    functionLinenumber: 3013
    functionLinenumberEnd: 3037
    functionName: jsf_pid_match_source
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_GetOpaque
    - filter_source_id_match
    - JS_FreeCString
    - gf_filter_last_id_in_chain
    - strncmp
    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: 3385
      start: 3176
    functionDepth: 0
    functionLinenumber: 3176
    functionLinenumberEnd: 3385
    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:3389,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:3390,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:3391,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:3392,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - value
    - ptr
    argTypes:
    - JSContext*
    - JSValue
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3387
    functionDepth: 1
    functionLinenumber: 3387
    functionLinenumberEnd: 3394
    functionName: to_event_string
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - JS_ToCString
    - JS_FreeCString
    - gf_free
    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:3401,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3402,1
    - Dst: jsf_check_evt
      Src: /src/gpac/src/filters/jsfilter.c:3403,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3404,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3408,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_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3413,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3413,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3415,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3418,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3421,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3421,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3425,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3428,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3431,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3431,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: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3436,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3436,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3438,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3441,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3444,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3444,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3447,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3450,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_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3459,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3459,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3462,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: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_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3475,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3475,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3476,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3476,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3478,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_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3482,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3482,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3483,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3483,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3485,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3488,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3488,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3490,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3492,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3492,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3494,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3496,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3496,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3499,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3499,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3506,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3506,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3507,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3510,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3510,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3513,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3513,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3514,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3517,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3517,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3520,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3520,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3521,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_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3525,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3525,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3526,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3526,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3529,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3529,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3530,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3533,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3533,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filters/jsfilter.c:3534,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3537,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3537,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3540,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:3547,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3547,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3548,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3548,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3551,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3551,1
    - Dst: to_event_string
      Src: /src/gpac/src/filters/jsfilter.c:3559,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:3562,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: 3564
      start: 3396
    functionDepth: 2
    functionLinenumber: 3396
    functionLinenumberEnd: 3564
    functionName: jsf_event_set_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToFloat64
    - JS_ToBool
    - FLT2FIX
    - jsf_check_evt
    - JS_GetOpaque
    - to_event_string
    - JS_ToInt64
    - JS_ToInt32
    - js_throw_err
    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:3568,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3569,1
    - Dst: jsf_check_evt
      Src: /src/gpac/src/filters/jsfilter.c:3570,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3571,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3573,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3605,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3607,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filters/jsfilter.c:3607,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3609,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3610,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3611,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3612,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3613,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3614,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3615,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3616,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3618,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3619,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3620,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3621,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3622,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3624,1
    - Dst: JS_NewBool
      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_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3628,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:3629,1
    - Dst: JS_NewBool
      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:3634,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3635,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_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3639,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3640,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3641,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3643,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3644,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3645,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:3646,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_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3651,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3652,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3655,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3656,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3658,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3661,1
    - Dst: gf_dom_get_key_name
      Src: /src/gpac/src/filters/jsfilter.c:3661,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:3670,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3686,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3691,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3691,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3692,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_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3697,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3697,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3698,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3699,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/jsfilter.c:3703,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/jsfilter.c:3707,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3707,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3714,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_NewFloat64
      Src: /src/gpac/src/filters/jsfilter.c:3719,1
    - Dst: FIX2FLT
      Src: /src/gpac/src/filters/jsfilter.c:3719,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:3723,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3724,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_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3729,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3730,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:3733,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3738,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3743,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3747,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3749,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3752,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3754,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
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:3761,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 276
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3765
      start: 3566
    functionDepth: 1
    functionLinenumber: 3566
    functionLinenumberEnd: 3765
    functionName: jsf_event_get_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_NewFloat64
    - JS_NewInt64
    - FIX2FLT
    - JS_NewString
    - gf_filter_event_name
    - JS_NewArray
    - jsf_check_evt
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - gf_dom_get_key_name
    - JS_NewInt32
    - memset
    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:3769,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3771
      start: 3767
    functionDepth: 1
    functionLinenumber: 3767
    functionLinenumberEnd: 3771
    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:3861,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3862,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3863,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3865,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:3866,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:3867,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:3869,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:3871,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:3872,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:3877,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: 3879
      start: 3855
    functionDepth: 2
    functionLinenumber: 3855
    functionLinenumberEnd: 3879
    functionName: jsf_event_constructor
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_SetOpaque
    - JS_FreeValue
    - GF_SAFEALLOC
    - JS_IsException
    - JS_ToInt32
    - js_throw_err
    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:3919,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3920,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:3925,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/jsfilter.c:3926,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3926,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:3929,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/jsfilter.c:3930,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3930,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:3933,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/jsfilter.c:3934,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3936,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3936,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/jsfilter.c:3937,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:3941,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/jsfilter.c:3942,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3944,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3944,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/jsfilter.c:3945,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3949,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3949,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/jsfilter.c:3950,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3953,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3953,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/jsfilter.c:3954,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3957,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3957,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/jsfilter.c:3958,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/jsfilter.c:3961,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3961,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/jsfilter.c:3964,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:3964,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:3967,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/jsfilter.c:3968,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filters/jsfilter.c:3970,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3970,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/jsfilter.c:3971,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3975,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3975,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/jsfilter.c:3976,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3979,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3979,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/jsfilter.c:3980,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3983,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3983,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filters/jsfilter.c:3984,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3987,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3987,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/jsfilter.c:3988,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3991,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3991,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:3992,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:3995,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:3995,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:3996,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:3999,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4002,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4002,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4003,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4006,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4009,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4009,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4010,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4013,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4016,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4016,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4017,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4020,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4024,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4025,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: 4027
      start: 3911
    functionDepth: 2
    functionLinenumber: 3911
    functionLinenumberEnd: 4027
    functionName: jsf_pck_set_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pck_get_dependency_flags
    - JS_IsNull
    - JS_ToInt64
    - gf_filter_pck_get_framing
    - gf_filter_pck_set_roll_info
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_set_clock_type
    - gf_filter_pck_set_interlaced
    - js_throw_err
    - JS_ToBool
    - gf_filter_pck_set_cts
    - JS_FreeCString
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - JS_ToInt32
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_seq_num
    - gf_filter_pck_set_crypt_flags
    - JS_GetOpaque
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_set_corrupted
    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:4035,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4036,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:4041,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4042,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/jsfilter.c:4044,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4045,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/jsfilter.c:4047,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/jsfilter.c:4049,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/jsfilter.c:4051,1
    - Dst: JS_NewInt64
      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_duration
      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_sap
      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_timescale
      Src: /src/gpac/src/filters/jsfilter.c:4059,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4061,1
    - Dst: gf_filter_pck_get_interlaced
      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_seek_flag
      Src: /src/gpac/src/filters/jsfilter.c:4063,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4065,1
    - Dst: gf_filter_pck_get_corrupted
      Src: /src/gpac/src/filters/jsfilter.c:4065,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/jsfilter.c:4067,1
    - Dst: JS_NewInt64
      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_roll_info
      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_crypt_flags
      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_clock_type
      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_carousel_version
      Src: /src/gpac/src/filters/jsfilter.c:4077,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4079,1
    - Dst: gf_filter_pck_get_seq_num
      Src: /src/gpac/src/filters/jsfilter.c:4079,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4081,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filters/jsfilter.c:4081,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4083,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4084,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4086,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4087,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4089,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4090,1
    - Dst: gf_filter_pck_get_dependency_flags
      Src: /src/gpac/src/filters/jsfilter.c:4092,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4093,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/jsfilter.c:4095,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4096,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:4098,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/jsfilter.c:4099,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4101,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:4103,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:4105,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4106,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4107,1
    - Dst: gf_filter_pck_get_frame_interface
      Src: /src/gpac/src/filters/jsfilter.c:4110,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4112,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4113,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/jsfilter.c:4117,1
    - Dst: gf_filter_pck_has_properties
      Src: /src/gpac/src/filters/jsfilter.c:4117,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 85
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4120
      start: 4029
    functionDepth: 1
    functionLinenumber: 4029
    functionLinenumberEnd: 4120
    functionName: jsf_pck_get_prop
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_filter_pck_get_dependency_flags
    - gf_filter_pck_get_interlaced
    - gf_filter_pck_get_clock_type
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_crypt_flags
    - gf_filter_pck_get_framing
    - gf_filter_pck_get_frame_interface
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - JS_DupValue
    - gf_filter_pck_get_seq_num
    - gf_filter_pck_get_dts
    - JS_NewArrayBuffer
    - gf_filter_pck_get_cts
    - gf_filter_pck_is_blocking_ref
    - gf_filter_pck_get_carousel_version
    - gf_filter_pck_get_roll_info
    - JS_NewInt32
    - gf_filter_pck_has_properties
    - JS_NewBool
    - gf_filter_pck_get_byte_offset
    - JS_IsUndefined
    - JS_GetOpaque
    - gf_filter_pck_get_timescale
    - gf_filter_pck_get_corrupted
    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:4125,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4126,1
    - Dst: gf_filter_pck_set_readonly
      Src: /src/gpac/src/filters/jsfilter.c:4129,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: 4131
      start: 4122
    functionDepth: 1
    functionLinenumber: 4122
    functionLinenumberEnd: 4131
    functionName: jsf_pck_set_readonly
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_readonly
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:4140,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4141,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4144,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4145,1
    - Dst: gf_filter_pck_enum_properties
      Src: /src/gpac/src/filters/jsfilter.c:4147,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filters/jsfilter.c:4149,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4150,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/jsfilter.c:4152,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4153,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:4153,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4154,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4154,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4155,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:4155,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: 4157
      start: 4132
    functionDepth: 4
    functionLinenumber: 4132
    functionLinenumberEnd: 4157
    functionName: jsf_pck_enum_properties
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pck_enum_properties
    - JS_NewString
    - JS_NewObject
    - JS_NewInt32
    - JS_GetOpaque
    - jsf_NewProp
    - JS_SetPropertyStr
    - gf_props_4cc_get_name
    - JS_ToInt32
    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:4165,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4166,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:4169,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4170,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4171,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/jsfilter.c:4172,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4173,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:4175,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4176,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/jsfilter.c:4176,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:4178,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4179,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4181,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/jsfilter.c:4183,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filters/jsfilter.c:4185,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: 4188
      start: 4159
    functionDepth: 7
    functionLinenumber: 4159
    functionLinenumberEnd: 4188
    functionName: jsf_pck_get_property
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property_str
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_filter_pck_get_property
    - JS_NewInt32
    - JS_GetOpaque
    - JS_FreeCString
    - jsf_NewProp
    - gf_props_get_id
    - JS_SetPropertyStr
    - js_throw_err
    - jsf_NewPropTranslate
    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:4194,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4195,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4197,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:4199,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4201,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4203,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:4205,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/jsfilter.c:4207,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/jsfilter.c:4209,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4212,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4215,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:4216,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: 4217
      start: 4190
    functionDepth: 3
    functionLinenumber: 4190
    functionLinenumberEnd: 4217
    functionName: jsf_pck_ref
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_filter_pck_ref
    - JS_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - gf_filter_pck_ref_props
    - gf_list_pop_back
    - js_throw_err
    - memcpy
    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:4222,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4223,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:4225,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/jsfilter.c:4227,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4229,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4230,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4231,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:4233,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:4234,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: 4236
      start: 4219
    functionDepth: 2
    functionLinenumber: 4219
    functionLinenumberEnd: 4236
    functionName: jsf_pck_unref
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pck_unref
    - JS_SetOpaque
    - JS_FreeValue
    - JS_GetOpaque
    - memset
    - gf_list_add
    - js_throw_err_msg
    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:4241,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4242,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:4244,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:4247,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4248,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/jsfilter.c:4251,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4252,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:4255,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:4256,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: 4260
      start: 4238
    functionDepth: 2
    functionLinenumber: 4238
    functionLinenumberEnd: 4260
    functionName: jsf_pck_send
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_FreeValue
    - JS_GetOpaque
    - memset
    - gf_list_add
    - js_throw_err_msg
    - 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:4264,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4265,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/jsfilter.c:4268,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: 4270
      start: 4261
    functionDepth: 1
    functionLinenumber: 4261
    functionLinenumberEnd: 4270
    functionName: jsf_pck_discard
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    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:4278,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4279,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:4282,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4283,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4285,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:4286,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:4287,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4288,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4289,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:4290,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/jsfilter.c:4291,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/jsfilter.c:4293,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filters/jsfilter.c:4296,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4299,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/jsfilter.c:4300,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4303,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filters/jsfilter.c:4305,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:4305,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/jsfilter.c:4307,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/jsfilter.c:4307,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/jsfilter.c:4307,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filters/jsfilter.c:4309,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/jsfilter.c:4310,1
    - Dst: jsf_ToProp
      Src: /src/gpac/src/filters/jsfilter.c:4313,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4314,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/jsfilter.c:4323,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/jsfilter.c:4324,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4327,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: 4329
      start: 4272
    functionDepth: 4
    functionLinenumber: 4272
    functionLinenumberEnd: 4329
    functionName: jsf_pck_set_property
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - gf_props_reset_single
    - JS_IsBool
    - PROP_LONGUINT
    - js_throw_err_msg
    - JS_GetOpaque
    - JS_IsNull
    - JS_FreeCString
    - gf_filter_pck_set_property_dyn
    - gf_filter_pck_set_property
    - gf_net_get_ntp_ts
    - gf_props_get_id
    - js_throw_err
    - jsf_ToProp
    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:4338,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4339,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filters/jsfilter.c:4342,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4342,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4346,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4347,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filters/jsfilter.c:4349,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4350,1
    - Dst: strlen
      Src: /src/gpac/src/filters/jsfilter.c:4351,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/jsfilter.c:4354,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4356,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4357,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:4360,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filters/jsfilter.c:4361,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4364,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4365,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filters/jsfilter.c:4368,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4368,1
    - Dst: JS_GetArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4371,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4373,1
    - Dst: gf_filter_pck_expand
      Src: /src/gpac/src/filters/jsfilter.c:4375,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4377,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/jsfilter.c:4379,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4381,1
    - Dst: JS_NewArrayBuffer
      Src: /src/gpac/src/filters/jsfilter.c:4383,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: 4384
      start: 4331
    functionDepth: 2
    functionLinenumber: 4331
    functionLinenumberEnd: 4384
    functionName: jsf_pck_append_data
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_pck_expand
    - JS_NewArrayBuffer
    - JS_GetArrayBuffer
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - JS_IsInteger
    - JS_IsObject
    - strlen
    - JS_ToInt32
    - memcpy
    - js_throw_err
    - jsf_pck_detach_ab
    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:4391,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4392,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4395,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/jsfilter.c:4397,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4398,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4400,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: 4402
      start: 4386
    functionDepth: 2
    functionLinenumber: 4386
    functionLinenumberEnd: 4402
    functionName: jsf_pck_truncate
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - JS_ToInt32
    - js_throw_err
    - gf_filter_pck_truncate
    - jsf_pck_detach_ab
    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:4406,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4408,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4409,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4411,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/jsfilter.c:4412,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4413,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: 4415
      start: 4403
    functionDepth: 2
    functionLinenumber: 4403
    functionLinenumberEnd: 4415
    functionName: jsf_pck_copy_props
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pck_merge_properties
    - js_throw_err
    - JS_GetOpaque
    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:4422,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4424,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4426,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filters/jsfilter.c:4428,1
    - Dst: gf_filter_pck_dangling_copy
      Src: /src/gpac/src/filters/jsfilter.c:4430,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4431,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:4435,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4437,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:4438,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4440,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:4441,1
    - Dst: memset
      Src: /src/gpac/src/filters/jsfilter.c:4443,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4450,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: 4452
      start: 4417
    functionDepth: 3
    functionLinenumber: 4417
    functionLinenumberEnd: 4452
    functionName: jsf_pck_clone
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - GF_JS_EXCEPTION
    - gf_filter_pck_dangling_copy
    - JS_SetOpaque
    - JS_GetOpaque
    - GF_SAFEALLOC
    - JS_DupValue
    - memset
    - gf_list_pop_back
    - js_throw_err
    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:4503,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4506,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:4507,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4508,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4509,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4510,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4513,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4514,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4516,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4517,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4519,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4521
      start: 4499
    functionDepth: 6
    functionLinenumber: 4499
    functionLinenumberEnd: 4521
    functionName: jsfilter_process
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - GF_LOG
    - js_dump_error
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_IsInteger
    - JS_IsException
    - JS_ToInt32
    - gf_js_lock
    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:4528,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:4534,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4539,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:4540,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:4543,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4544,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4545,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4546,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4549,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4550,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4552,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4557,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/filters/jsfilter.c:4565,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4567,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4568,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/jsfilter.c:4569,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/jsfilter.c:4570,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4571,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4572,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4573,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4577,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4580,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4585,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/jsfilter.c:4586,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/jsfilter.c:4587,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4588,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:4591,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4593,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4594,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/jsfilter.c:4596,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:4598,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:4599,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4600,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4602,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4603,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: 4605
      start: 4525
    functionDepth: 6
    functionLinenumber: 4525
    functionLinenumberEnd: 4605
    functionName: jsfilter_configure_pid
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - GF_SAFEALLOC
    - gf_list_add
    - gf_js_lock
    - JS_NewObjectClass
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - JS_IsException
    - gf_filter_abort
    - js_std_loop
    - JS_ToInt32
    - gf_free
    - gf_js_call_gc
    - GF_LOG
    - JS_SetOpaque
    - gf_list_del_item
    - JS_IsInteger
    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: 4609
      start: 4607
    functionDepth: 0
    functionLinenumber: 4607
    functionLinenumberEnd: 4609
    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:4614,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4615,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filters/jsfilter.c:4615,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4616,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:4620,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4621,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:4648,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4649,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:4655,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4656,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:4671,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: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:4681,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4682,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4684,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4685,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4686,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:4692,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4693,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:4700,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4701,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:4740,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4741,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4743,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4744,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4745,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4747,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4748,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:4773,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4774,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:4780,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4781,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: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4793,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filters/jsfilter.c:4794,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4797,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filters/jsfilter.c:4797,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4798,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filters/jsfilter.c:4798,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4802,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4803,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/filters/jsfilter.c:4803,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4804,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4805,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4805,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4806,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/filters/jsfilter.c:4808,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 174
    argCount: 2
    argNames:
    - ctx
    - global_obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4810
      start: 4610
    functionDepth: 1
    functionLinenumber: 4610
    functionLinenumberEnd: 4810
    functionName: js_load_constants
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 2
    functionsReached:
    - JS_GetRuntime
    - JS_NewObjectClass
    - JS_NewCFunction
    - JS_NewCFunction2
    - countof
    - JS_NewObject
    - JS_NewClass
    - JS_NewClassID
    - DEF_CONST
    - JS_SetClassProto
    - JS_SetPropertyStr
    - JS_SetPropertyFunctionList
    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:4821,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/jsfilter.c:4824,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:4829,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/jsfilter.c:4830,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/jsfilter.c:4831,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:4836,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4839,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/jsfilter.c:4842,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4843,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filters/jsfilter.c:4848,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4850,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4853,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:4854,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filters/jsfilter.c:4855,1
    - Dst: JS_GetRuntime
      Src: /src/gpac/src/filters/jsfilter.c:4857,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4862,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4863,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4865,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4866,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4866,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4867,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4869,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4872,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4873,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4874,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4875,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4875,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4876,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4879,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4880,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4881,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4882,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4882,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4883,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filters/jsfilter.c:4887,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filters/jsfilter.c:4888,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filters/jsfilter.c:4889,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filters/jsfilter.c:4890,1
    - Dst: countof
      Src: /src/gpac/src/filters/jsfilter.c:4890,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filters/jsfilter.c:4891,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:4894,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:4894,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/jsfilter.c:4894,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4896,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filters/jsfilter.c:4902,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4904,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/jsfilter.c:4904,1
    - Dst: strstr
      Src: /src/gpac/src/filters/jsfilter.c:4907,1
    - Dst: strstr
      Src: /src/gpac/src/filters/jsfilter.c:4907,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4908,1
    - Dst: strstr
      Src: /src/gpac/src/filters/jsfilter.c:4912,1
    - Dst: gf_fs_load_js_api
      Src: /src/gpac/src/filters/jsfilter.c:4916,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4918,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/jsfilter.c:4918,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4919,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/jsfilter.c:4931,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filters/jsfilter.c:4931,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filters/jsfilter.c:4932,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filters/jsfilter.c:4941,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:4942,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:4946,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:4947,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:4948,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4949,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4952,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:4953,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 100
    argCount: 2
    argNames:
    - filter
    - custom_ctx
    argTypes:
    - GF_Filter*
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4955
      start: 4812
    functionDepth: 6
    functionLinenumber: 4812
    functionLinenumberEnd: 4955
    functionName: jsfilter_initialize_ex
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_GetRuntime
    - gf_file_basename
    - JS_NewClassID
    - GF_SAFEALLOC
    - gf_fs_load_js_api
    - JS_SetPropertyFunctionList
    - strstr
    - JS_Eval
    - JS_NewObjectClass
    - gf_filter_get_udta
    - countof
    - js_dump_error
    - JS_FreeValue
    - qjs_init_all_modules
    - JS_IsException
    - gf_js_create_context
    - js_load_constants
    - gf_opts_get_bool
    - gf_file_exists
    - JS_NewString
    - js_std_loop
    - JS_SetContextOpaque
    - gf_list_new
    - JS_SetPropertyStr
    - gf_error_to_string
    - gf_free
    - JS_GetGlobalObject
    - gf_file_load_data
    - GF_LOG
    - JS_SetOpaque
    - JS_NewClass
    - JS_SetClassProto
    - gf_strdup
    - JS_DetectModule
    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:4960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4961
      start: 4958
    functionDepth: 7
    functionLinenumber: 4958
    functionLinenumberEnd: 4961
    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:4966,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4969,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:4972,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/jsfilter.c:4974,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4975,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:4977,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:4978,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4979,1
    - Dst: jsf_pck_detach_ab
      Src: /src/gpac/src/filters/jsfilter.c:4981,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4989,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:4992,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:4995,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:4997,1
    - Dst: gf_fs_unload_script
      Src: /src/gpac/src/filters/jsfilter.c:5000,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/jsfilter.c:5004,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:5005,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/jsfilter.c:5007,1
    - Dst: jsfs_on_filter_destroyed
      Src: /src/gpac/src/filters/jsfilter.c:5009,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filters/jsfilter.c:5011,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5012,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/jsfilter.c:5015,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filters/jsfilter.c:5016,1
    - Dst: gf_js_call_gc
      Src: /src/gpac/src/filters/jsfilter.c:5018,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:5022,1
    - Dst: gf_list_pop_back
      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:5026,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/jsfilter.c:5028,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/jsfilter.c:5032,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/jsfilter.c:5033,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5034,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/jsfilter.c:5036,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5041,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5043,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5045,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5047,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5049,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/jsfilter.c:5052,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 68
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5053
      start: 4963
    functionDepth: 4
    functionLinenumber: 4963
    functionLinenumberEnd: 5053
    functionName: jsfilter_finalize
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_js_call_gc
    - gf_filter_get_udta
    - JS_IsUndefined
    - gf_list_del
    - gf_js_delete_context
    - gf_list_pop_back
    - JS_SetOpaque
    - JS_FreeValue
    - gf_mx_v
    - gf_fs_unload_script
    - gf_mx_p
    - jsfs_on_filter_destroyed
    - gf_list_get
    - gf_js_lock
    - jsf_pck_detach_ab
    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:5059,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5068,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:5069,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:5070,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:5071,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:5072,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:5073,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5074,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5075,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:5078,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:5079,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5081,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/jsfilter.c:5085,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/jsfilter.c:5088,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/jsfilter.c:5088,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:5089,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/jsfilter.c:5095,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/filters/jsfilter.c:5096,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/filters/jsfilter.c:5097,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5098,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/filters/jsfilter.c:5099,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5103,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/jsfilter.c:5110,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5117,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filters/jsfilter.c:5119,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/jsfilter.c:5121,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5122,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/jsfilter.c:5127,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:5129,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:5130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:5131,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:5132,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filters/jsfilter.c:5135,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/jsfilter.c:5136,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5137,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5138,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5139,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5140,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: 5142
      start: 5057
    functionDepth: 6
    functionLinenumber: 5057
    functionLinenumberEnd: 5142
    functionName: jsfilter_update_arg
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_Call
    - JS_FreeAtom
    - gf_js_lock
    - gf_filter_get_udta
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - jsf_NewProp
    - JS_IsException
    - JS_NewString
    - js_std_loop
    - strcmp
    - JS_SetPropertyStr
    - JS_ToInt32
    - JS_GetGlobalObject
    - GF_LOG
    - JS_NewAtom
    - JS_IsInteger
    - JS_DeleteProperty
    - gf_opts_get_bool
    - gf_opts_get_key
    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:5146,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:5147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - evt
    argTypes:
    - JSContext*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5149
      start: 5144
    functionDepth: 1
    functionLinenumber: 5144
    functionLinenumberEnd: 5149
    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:5156,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/jsfilter.c:5159,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5162,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5164,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:5165,1
    - Dst: js_init_evt_obj
      Src: /src/gpac/src/filters/jsfilter.c:5169,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/jsfilter.c:5171,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/jsfilter.c:5172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/jsfilter.c:5173,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/jsfilter.c:5174,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filters/jsfilter.c:5177,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5179,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5180,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filters/jsfilter.c:5181,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/jsfilter.c:5182,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/jsfilter.c:5183,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filters/jsfilter.c:5185,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5187
      start: 5151
    functionDepth: 6
    functionLinenumber: 5151
    functionLinenumberEnd: 5187
    functionName: jsfilter_process_event
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_ToBool
    - gf_filter_get_udta
    - GF_LOG
    - js_init_evt_obj
    - gf_filter_pid_get_udta
    - js_dump_error
    - JS_SetOpaque
    - JS_FreeValue
    - JS_IsFunction
    - JS_Call
    - js_std_loop
    - JS_DupValue
    - JS_IsException
    - gf_js_lock
    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: 5206
      start: 5205
    functionDepth: 0
    functionLinenumber: 5205
    functionLinenumberEnd: 5206
    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: 5245
      start: 5242
    functionDepth: 0
    functionLinenumber: 5242
    functionLinenumberEnd: 5245
    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:5251,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filters/jsfilter.c:5252,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/jsfilter.c:5253,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/jsfilter.c:5262,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5263
      start: 5248
    functionDepth: 7
    functionLinenumber: 5248
    functionLinenumberEnd: 5263
    functionName: jsfilter_initialize_custom
    functionSourceFile: /src/gpac/src/filters/jsfilter.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - js_throw_err
    - gf_filter_get_udta
    - jsfilter_initialize_ex
    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:5267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5270
      start: 5265
    functionDepth: 1
    functionLinenumber: 5265
    functionLinenumberEnd: 5270
    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:5273,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5276
      start: 5271
    functionDepth: 1
    functionLinenumber: 5271
    functionLinenumberEnd: 5276
    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:5279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - f
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5282
      start: 5277
    functionDepth: 1
    functionLinenumber: 5277
    functionLinenumberEnd: 5282
    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: 5290
      start: 5287
    functionDepth: 0
    functionLinenumber: 5287
    functionLinenumberEnd: 5290
    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_list_count
    - mpeg2ps_get_video_stream_aspect_ratio
    - mpeg2ps_get_first_cts
    - mpeg2ps_get_video_stream_bitrate
    - gf_filter_pid_set_name
    - mpeg2ps_get_audio_stream_bitrate
    - GF_SAFEALLOC
    - mpeg2ps_get_video_stream_count
    - gf_list_add
    - PROP_FRAC64
    - mpeg2ps_get_max_time_msec
    - PROP_FRAC
    - gf_list_get
    - gf_filter_pid_new
    - mpeg2ps_get_audio_stream_type
    - gf_filter_pid_copy_properties
    - mpeg2ps_get_video_stream_type
    - mpeg2ps_get_audio_stream_sample_freq
    - mpeg2ps_get_video_stream_height
    - mpeg2ps_get_video_stream_id
    - mpeg2ps_get_audio_stream_id
    - PROP_BOOL
    - mpeg2ps_get_audio_stream_channels
    - mpeg2ps_get_audio_stream_count
    - gf_filter_pid_set_property_str
    - sprintf
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - mpeg2ps_get_video_stream_width
    - gf_media_get_video_timing
    - mpeg2ps_get_video_stream_framerate
    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_filter_pid_get_property
    - gf_list_count
    - gf_free
    - mpeg2ps_close
    - gf_filter_get_udta
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_pid_remove
    - strcmp
    - gf_list_get
    - gf_filter_pid_check_caps
    - gf_list_pop_back
    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_count
    - gf_filter_get_udta
    - mpeg2ps_seek_video_frame
    - gf_filter_post_process_task
    - mpeg2ps_seek_audio_frame
    - gf_list_get
    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_list_count
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - mpeg2ps_seek_video_frame
    - mpeg2ps_init
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - m2psdmx_setup
    - mpeg2ps_seek_audio_frame
    - gf_list_get
    - memcpy
    - mpeg2ps_get_video_frame
    - gf_filter_pck_send
    - gf_file_exists
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_framing
    - gf_filter_setup_failure
    - mpeg2ps_get_audio_frame
    - gf_filter_pck_set_dts
    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_filter_get_udta
    - gf_list_new
    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_list_count
    - gf_free
    - mpeg2ps_close
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    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
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - gf_filter_pid_get_property_str
    - gf_filter_pid_remove
    - gf_m4v_parser_del_no_bs
    - gf_filter_pid_check_caps
    - strstr
    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_filter_pid_get_property
    - gf_bs_get_position
    - strncmp
    - gf_m4v_get_object_start
    - gf_m4v_parse_config
    - PROP_FRAC64
    - gf_bs_from_file
    - gf_realloc
    - gf_m4v_parser_del
    - gf_m4v_parse_frame
    - gf_fileio_is_main_thread
    - PROP_BOOL
    - gf_fclose
    - GF_LOG
    - gf_filter_pid_set_property
    - gf_fopen_ex
    - gf_opts_get_bool
    - gf_m4v_parser_bs_new
    - gf_bs_available
    linkageType: ''
    returnType: void
    signature: void mpgviddmx_check_dur(GF_Filter *filter, GF_MPGVidDmxCtx *ctx)
  - BBCount: 11
    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_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_mpgvid.c:329,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:334,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_mpgvid.c:335,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_mpgvid.c:337,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/reframe_mpgvid.c:339,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/reframe_mpgvid.c:343,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/reframe_mpgvid.c:344,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 4
    argNames:
    - ctx
    - pck
    - flush_ref
    - is_eos
    argTypes:
    - GF_MPGVidDmxCtx*
    - GF_FilterPacket*
    - Bool
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 296
    functionDepth: 2
    functionLinenumber: 296
    functionLinenumberEnd: 345
    functionName: mpgviddmx_enqueue_or_dispatch
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - gf_list_count
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_list_new
    - gf_list_add
    - gf_filter_pck_get_carousel_version
    - gf_list_get
    - gf_filter_pck_get_framing
    - gf_list_reset
    - 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:351,1
    - Dst: mpgviddmx_check_dur
      Src: /src/gpac/src/filters/reframe_mpgvid.c:352,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/reframe_mpgvid.c:358,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:361,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_mpgvid.c:361,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:363,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mpgvid.c:363,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:364,1
    - Dst: PROP_UINT
      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_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:368,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:369,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_mpgvid.c:369,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:371,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:374,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:381,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:381,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_FRAC_INT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:383,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:386,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:411,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:411,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:413,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:413,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:415,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:415,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:418,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:418,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_mpgvid.c:425,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_mpgvid.c:426,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_mpgvid.c:435,1
    - Dst: memchr
      Src: /src/gpac/src/filters/reframe_mpgvid.c:439,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:446,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/reframe_mpgvid.c:446,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:450,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:450,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:453,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_mpgvid.c:453,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_mpgvid.c:456,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_mpgvid.c:456,1
    - Dst: mpgviddmx_enqueue_or_dispatch
      Src: /src/gpac/src/filters/reframe_mpgvid.c:459,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: 461
      start: 347
    functionDepth: 7
    functionLinenumber: 347
    functionLinenumberEnd: 461
    functionName: mpgviddmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - mpgviddmx_check_dur
    - gf_filter_pid_get_property
    - mpgviddmx_enqueue_or_dispatch
    - gf_malloc
    - memchr
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_FRAC_INT
    - PROP_BOOL
    - PROP_FRAC
    - gf_filter_pid_new
    - strncmp
    - memcpy
    - PROP_FRAC64
    linkageType: ''
    returnType: void
    signature: void mpgviddmx_check_pid(GF_Filter *filter, GF_MPGVidDmxCtx *ctx, u32
      vosh_size, u8 *data)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/reframe_mpgvid.c:468,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: 18
    EdgeCount: 18
    ICount: 65
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 463
    functionDepth: 7
    functionLinenumber: 463
    functionLinenumberEnd: 543
    functionName: mpgviddmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_mpgvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_discard
    - mpgviddmx_check_dur
    - gf_list_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_pop_front
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    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:
    - gf_bs_read_u8
    - mpgviddmx_check_dur
    - mpgviddmx_enqueue_or_dispatch
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_assert
    - gf_bs_new
    - gf_m4v_get_object_start
    - gf_filter_pid_drop_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_m4v_parse_config
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_carousel_version
    - gf_filter_pck_get_data
    - mpgviddmx_check_pid
    - gf_realloc
    - memcpy
    - gf_m4v_parser_reset
    - gf_filter_pck_get_dts
    - gf_m4v_parse_frame
    - gf_filter_pck_unref
    - mpgviddmx_update_time
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_read_int
    - gf_filter_pck_ref_props
    - memmove
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_duration
    - gf_filter_pid_is_eos
    - gf_error_to_string
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_m4v_parser_bs_new
    - mpgviddmx_next_start_code
    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_filter_pck_discard
    - gf_list_count
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - GF_LOG
    - gf_bs_del
    - gf_m4v_parser_del_no_bs
    - gf_list_pop_back
    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:
    - memset
    - gf_m4v_parser_new
    - gf_m4v_parser_get_obj_type
    - gf_m4v_parser_del
    - gf_m4v_parse_frame
    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_initialize
    - gf_sk_group_unregister
    - gf_rtp_depacketizer_reset
    - gf_rtp_reset_buffers
    - gf_sk_group_register
    - gf_rtp_set_ssm
    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_filter_pck_discard
    - gf_list_count
    - 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_list_del
    - rtpin_find_stream
    - rtpin_rtsp_teardown
    - rtpin_stream_reset_queue
    - rtpin_remove_stream
    - gf_rtp_depacketizer_del
    - gf_rtp_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_count
    - gf_list_pop_front
    - gf_filter_pck_get_cts
    - gf_list_get
    - gf_list_add
    - gf_filter_pck_send
    - gf_list_rem
    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_filter_pck_new_alloc
    - rtpin_stream_queue_pck
    - PROP_LONGUINT
    - gf_net_ntp_to_utc
    - gf_rtp_get_current_time
    - PROP_DOUBLE
    - gf_assert
    - gf_timestamp_rescale_signed
    - gf_filter_pck_set_property
    - gf_filter_pck_set_seek_flag
    - gf_timestamp_rescale
    - memcpy
    - gf_filter_pck_send
    - gf_sys_clock
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - PROP_DATA
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_corrupted
    - gf_rtp_is_disc
    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_filter_get_netcap_id
    - gf_rtp_new_ex
    - gf_sk_is_multicast_address
    - gf_malloc
    - rtpin_stream_del
    - gf_rtp_enable_nat_keepalive
    - GF_SAFEALLOC
    - gf_rtp_setup_transport
    - gf_strdup
    - memset
    - gf_rtp_setup_payload
    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_list_count
    - gf_filter_get_netcap_id
    - gf_rtp_enable_nat_keepalive
    - gf_rtsp_range_parse
    - GF_SAFEALLOC
    - gf_gz_decompress_payload_ex
    - gf_rtp_depacketizer_new
    - gf_rtsp_range_del
    - strstr
    - strchr
    - gf_rtp_new_ex
    - gf_malloc
    - rtpin_stream_del
    - gf_rtp_setup_transport
    - gf_list_get
    - gf_sk_is_multicast_address
    - atoi
    - rtpin_find_stream
    - gf_list_enum
    - strnicmp
    - strcmp
    - strlen
    - gf_list_new
    - gf_rtp_setup_payload
    - sscanf
    - gf_free
    - GF_LOG
    - stricmp
    - gf_base64_decode
    - gf_strdup
    - memset
    - strncmp
    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_sys_clock
    - gf_filter_pid_set_info_str
    - PROP_UINT
    - gf_rtp_get_tcp_bytes_sent
    - gf_rtp_get_low_interleave_id
    - gf_rtsp_get_session_port
    - gf_rtp_get_loss
    - PROP_FLOAT
    - gf_rtp_get_hight_interleave_id
    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:
    - gf_rtp_depacketizer_process
    - rtpin_declare_pid
    - GF_LOG
    - gf_rtp_get_current_time
    - gf_rtp_get_clockrate
    - gf_filter_pid_set_eos
    - gf_sys_clock
    - gf_rtp_decode_rtp
    - gf_rtp_depacketizer_new
    - rtpin_stream_update_stats
    - ABSDIFF
    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_timestamp_rescale
    - gf_list_get
    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_sys_clock
    - gf_timestamp_rescale
    - 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:
    - gf_sk_group_sock_is_set
    - gf_rtp_set_loss_rate
    - gf_rtp_read_rtcp
    - rtpin_stream_on_rtp_pck
    - GF_LOG
    - gf_sys_clock
    - gf_rtp_send_rtcp_report
    - gf_rtp_read_rtp
    - rtpin_stream_on_rtcp_pck
    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_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - gf_bs_get_content
    - memset
    - gf_bs_new
    - gf_bs_del
    - gf_filter_get_udta
    - gf_crc_32
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_m4a_get_config
    - PROP_BOOL
    - gf_filter_pid_check_caps
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_m4a_write_program_config_element_bs
    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_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_bs_write_int
    - gf_filter_pck_get_sap
    - gf_bs_new
    - gf_filter_pid_drop_packet
    - gf_m4a_write_config_bs
    - gf_bs_reassign_buffer
    - gf_filter_pid_get_packet
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - gf_timestamp_greater_or_equal
    - gf_filter_pck_get_cts
    - gf_bs_write_data
    - gf_filter_pck_has_properties
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - gf_bs_align
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_byte_offset
    - gf_filter_pck_truncate
    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_bs_del
    - gf_free
    - 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_get_scene_size_info
    - gf_scene_force_size
    - gf_filter_pid_get_property
    - sprintf
    - gf_node_get_attribute_by_tag
    - gf_svg_parse_attribute
    - gf_sg_get_root_node
    - gf_sg_set_scene_size_info
    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: gf_strcpy
      Src: /src/gpac/src/filters/dec_ttml.c:150,1
    - Dst: gf_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:
    - ttmldec_update_size_info
    - gf_strcpy
    - gf_node_list_add_child
    - gf_sg_set_root_node
    - gf_node_get_attribute_by_tag
    - gf_svg_parse_attribute
    - gf_node_init
    - gf_strcat
    - gf_node_get_attribute_by_name
    - gf_sg_add_namespace
    - gf_node_new
    - gf_node_register
    - gf_sg_new_subscene
    - strstr
    - gf_sg_set_scene_size_info
    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_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_assert
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_setup_scene
    - ttmldec_toggle_display
    - gf_sg_del
    - 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_NewFloat64
    - JS_GetGlobalObject
    - JS_NewString
    - svg_script_get_context
    - JS_NewInt32
    - JS_FreeValue
    - MAX
    - JS_SetPropertyStr
    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:
    - JS_NewInt64
    - gf_clock_time_absolute
    - gf_bs_read_u8
    - gf_xml_dom_parse_string
    - JS_NewFloat64
    - gf_sg_init_from_xml_node
    - gf_xml_dom_del
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_clock_time
    - gf_timestamp_rescale_signed
    - JS_Call
    - gf_sg_new
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_bs_reassign_buffer
    - gf_js_lock
    - ttmldec_get_js_context
    - gf_sc_check_sys_frame
    - gf_malloc
    - gf_filter_get_udta
    - js_dump_error
    - gf_timestamp_to_clocktime
    - gf_filter_post_process_task
    - gf_timestamp_rescale
    - JS_IsFunction
    - gf_odm_check_buffering
    - JS_GetPropertyStr
    - JS_FreeValue
    - gf_filter_pck_get_data
    - JS_IsException
    - memcpy
    - dom_document_construct_external
    - JS_IsNumber
    - gf_filter_pck_get_cts
    - gf_xml_dom_new
    - gf_bs_read_u32
    - gf_filter_pid_is_eos
    - JS_ToInt32
    - gf_xml_dom_get_root
    - gf_free
    - JS_GetGlobalObject
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - gf_bs_available
    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:
    - gf_filter_get_udta
    - gf_file_exists
    - GF_LOG
    - gf_bs_new
    - ttmldec_update_arg
    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:
    - gf_bs_del
    - ttmldec_toggle_display
    - gf_sg_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: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:191,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_vtb.c:198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:202,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:204,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:208,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_vtb.c:211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:212,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:222,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:223,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:224,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:226,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_vtb.c:229,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:232,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_vtb.c:232,1
    - Dst: CVPixelBufferRetain
      Src: /src/gpac/src/filters/dec_vtb.c:235,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_vtb.c:237,1
    - Dst: gf_filter_pck_set_mark
      Src: /src/gpac/src/filters/dec_vtb.c:239,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:243,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:244,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:247,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_vtb.c:249,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:250,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:252,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:253,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:255,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:260,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:261,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:262,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/dec_vtb.c:276,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_vtb.c:281,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:283,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 75
    argCount: 7
    argNames:
    - opaque
    - sourceFrameRefCon
    - status
    - flags
    - image
    - pts
    - duration
    argTypes:
    - void*
    - void*
    - OSStatus
    - VTDecodeInfoFlags
    - CVImageBufferRef
    - CMTime
    - CMTime
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 185
    functionDepth: 3
    functionLinenumber: 185
    functionLinenumberEnd: 286
    functionName: vtbdec_on_frame
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_assert
    - gf_filter_pck_get_sap
    - GF_SAFEALLOC
    - gf_timestamp_greater
    - gf_filter_pck_set_mark
    - gf_filter_pck_get_seek_flag
    - gf_list_get
    - gf_mx_v
    - gf_list_insert
    - gf_filter_pck_get_dts
    - gf_filter_pck_get_cts
    - gf_mx_p
    - gf_filter_pck_ref_props
    - CVPixelBufferRetain
    - gf_list_pop_back
    - GF_LOG
    - gf_filter_pck_get_timescale
    - if
    - memset
    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:300,1
    - Dst: CFNumberCreate
      Src: /src/gpac/src/filters/dec_vtb.c:301,1
    - Dst: CFNumberCreate
      Src: /src/gpac/src/filters/dec_vtb.c:302,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:304,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:305,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:309,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:310,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:311,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:312,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:316,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:319,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:320,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - pix_fmt
    argTypes:
    - GF_VTBDecCtx*
    - OSType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 323
    functionName: vtbdec_create_buffer_attributes
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - CFDictionaryCreateMutable
    - CFRelease
    - CFDictionarySetValue
    - 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:342,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:362,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:363,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:365,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:372,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:376,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:383,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:384,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:388,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:394,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:395,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:399,1
    - Dst: gf_avc_read_sps
      Src: /src/gpac/src/filters/dec_vtb.c:410,1
    - Dst: gf_avc_read_pps
      Src: /src/gpac/src/filters/dec_vtb.c:412,1
    - Dst: gf_odf_avc_cfg_new
      Src: /src/gpac/src/filters/dec_vtb.c:464,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:475,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:476,1
    - Dst: gf_odf_avc_cfg_write
      Src: /src/gpac/src/filters/dec_vtb.c:477,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:478,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:479,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:480,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:482,1
    - Dst: CFDataCreate
      Src: /src/gpac/src/filters/dec_vtb.c:483,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:485,1
    - Dst: CFSTR
      Src: /src/gpac/src/filters/dec_vtb.c:485,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:486,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:487,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:489,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:491,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:496,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:496,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:496,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:507,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:508,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:516,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:517,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:524,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:525,1
    - Dst: gf_odf_hevc_cfg_new
      Src: /src/gpac/src/filters/dec_vtb.c:578,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:599,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:603,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:604,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:605,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:607,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:611,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:612,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:613,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:615,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:622,1
    - Dst: gf_odf_hevc_cfg_write
      Src: /src/gpac/src/filters/dec_vtb.c:624,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:625,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filters/dec_vtb.c:626,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:628,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:630,1
    - Dst: CFDataCreate
      Src: /src/gpac/src/filters/dec_vtb.c:631,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:633,1
    - Dst: CFSTR
      Src: /src/gpac/src/filters/dec_vtb.c:633,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:634,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:635,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:637,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:639,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dec_vtb.c:691,1
    - Dst: gf_odf_desc_esd_new
      Src: /src/gpac/src/filters/dec_vtb.c:694,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:697,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_vtb.c:698,1
    - Dst: gf_odf_desc_write_bs
      Src: /src/gpac/src/filters/dec_vtb.c:699,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/dec_vtb.c:700,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:701,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/dec_vtb.c:704,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:706,1
    - Dst: CFDataCreate
      Src: /src/gpac/src/filters/dec_vtb.c:707,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:708,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:711,1
    - Dst: CFSTR
      Src: /src/gpac/src/filters/dec_vtb.c:711,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:712,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:713,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:715,1
    - Dst: CMVideoFormatDescriptionCreate
      Src: /src/gpac/src/filters/dec_vtb.c:763,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:766,1
    - Dst: vtbdec_create_buffer_attributes
      Src: /src/gpac/src/filters/dec_vtb.c:769,1
    - Dst: CFDictionaryCreateMutable
      Src: /src/gpac/src/filters/dec_vtb.c:776,1
    - Dst: CFDictionarySetValue
      Src: /src/gpac/src/filters/dec_vtb.c:777,1
    - Dst: VTDecompressionSessionCreate
      Src: /src/gpac/src/filters/dec_vtb.c:780,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:783,1
    - Dst: VTDecompressionSessionCreate
      Src: /src/gpac/src/filters/dec_vtb.c:788,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:793,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:795,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:833,1
    - Dst: PROP_UINT
      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_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:835,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:835,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:836,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:837,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_vtb.c:837,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:838,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:838,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dec_vtb.c:840,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_vtb.c:844,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filters/dec_vtb.c:846,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 437
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 325
    functionDepth: 9
    functionLinenumber: 325
    functionLinenumberEnd: 849
    functionName: vtbdec_init_decoder
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - CFDictionaryCreateMutable
    - gf_bs_get_content
    - CMVideoFormatDescriptionCreate
    - CFDataCreate
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - snprintf
    - CFRelease
    - gf_list_add
    - gf_odf_avc_cfg_new
    - gf_avc_read_pps
    - gf_m4v_get_config
    - CFDictionarySetValue
    - gf_odf_hevc_cfg_del
    - gf_crc_32
    - gf_odf_hevc_cfg_new
    - PROP_FRAC
    - gf_list_get
    - gf_odf_hevc_cfg_write
    - gf_odf_desc_write_bs
    - gf_odf_avc_cfg_del
    - gf_list_new
    - gf_avc_read_sps
    - vtbdec_create_buffer_attributes
    - gf_filter_set_name
    - gf_odf_desc_del
    - gf_free
    - gf_odf_avc_cfg_write
    - gf_odf_desc_esd_new
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_write_u32
    - VTDecompressionSessionCreate
    - gf_opts_get_bool
    - gf_list_reset
    - CFSTR
    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:858,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:859,1
    - Dst: gf_hevc_read_sps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:864,1
    - Dst: gf_hevc_read_pps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:869,1
    - Dst: gf_hevc_read_vps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:874,1
    - Dst: gf_avc_read_sps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:881,1
    - Dst: gf_avc_read_pps_bs
      Src: /src/gpac/src/filters/dec_vtb.c:884,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:891,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:893,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dec_vtb.c:896,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:897,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:898,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_vtb.c:899,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_vtb.c:908,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_vtb.c:910,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:912,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:915,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:918,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:919,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: 921
      start: 851
    functionDepth: 7
    functionLinenumber: 851
    functionLinenumberEnd: 921
    functionName: vtbdec_register_param_sets
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_malloc
    - gf_avc_read_sps_bs
    - gf_list_get
    - gf_crc_32
    - memcmp
    - gf_bs_new
    - gf_list_add
    - gf_hevc_read_pps_bs
    - GF_SAFEALLOC
    - gf_hevc_read_vps_bs
    - gf_bs_reassign_buffer
    - gf_hevc_read_sps_bs
    - memcpy
    - gf_avc_read_pps_bs
    - gf_list_rem
    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:929,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:931,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:936,1
    - Dst: memcmp
      Src: /src/gpac/src/filters/dec_vtb.c:939,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:941,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:942,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_vtb.c:943,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - is_sps
    - idx
    argTypes:
    - GF_VTBDecCtx*
    - Bool
    - s32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 923
    functionDepth: 1
    functionLinenumber: 923
    functionLinenumberEnd: 951
    functionName: vtbdec_purge_param_sets
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - memcmp
    - gf_list_get
    - 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:955,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:956,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:957,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:958,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/dec_vtb.c:959,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:961,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - list
    argTypes:
    - GF_List*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 953
    functionDepth: 2
    functionLinenumber: 953
    functionLinenumberEnd: 962
    functionName: vtbdec_del_param_list
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_list_del
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void vtbdec_del_param_list(GF_List *list)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_copy_properties_from_packet
      Src: /src/gpac/src/filters/dec_vtb.c:967,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_vtb.c:969,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:970,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:970,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:971,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:972,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:973,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:973,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:974,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:974,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:975,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:975,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:976,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dec_vtb.c:976,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:977,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:977,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:980,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_vtb.c:980,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:982,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:982,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - pid
    - from_packet
    argTypes:
    - GF_VTBDecCtx*
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 964
    functionDepth: 1
    functionLinenumber: 964
    functionLinenumberEnd: 983
    functionName: vtbdec_copy_props
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - PROP_UINT
    - gf_filter_pid_set_property
    - PROP_BOOL
    - PROP_FRAC
    - gf_filter_pid_copy_properties_from_packet
    linkageType: ''
    returnType: void
    signature: void vtbdec_copy_props(GF_VTBDecCtx *ctx, GF_FilterPid *pid, GF_FilterPacket
      *from_packet)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:991,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filters/dec_vtb.c:994,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:995,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_vtb.c:996,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_vtb.c:1001,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1002,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1003,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1009,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1014,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1015,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1023,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1024,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1028,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dec_vtb.c:1038,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_vtb.c:1039,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1042,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1043,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_vtb.c:1048,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:1049,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1051,1
    - Dst: vtbdec_copy_props
      Src: /src/gpac/src/filters/dec_vtb.c:1052,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1062,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1063,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/dec_vtb.c:1066,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_vtb.c:1067,1
    - Dst: gf_filter_set_max_extra_input_pids
      Src: /src/gpac/src/filters/dec_vtb.c:1071,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_vtb.c:1074,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_vtb.c:1075,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_vtb.c:1079,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1080,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1080,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1081,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1082,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1091,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1092,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1093,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1094,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filters/dec_vtb.c:1112,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1113,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1114,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1116,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1119,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1120,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1122,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1125,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:1128,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1131,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/dec_vtb.c:1134,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1138,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1138,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1139,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:1143,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1148,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_vtb.c:1148,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1149,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1149,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1151,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1152,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1162,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1163,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1164,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1165,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1166,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:1167,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filters/dec_vtb.c:1182,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1184,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1185,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1188,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1189,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1192,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1199,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1202,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1206,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1206,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1207,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/dec_vtb.c:1211,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1216,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_vtb.c:1216,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1217,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_vtb.c:1217,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1219,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_vtb.c:1220,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1229,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1240,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1244,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 213
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 985
    functionDepth: 10
    functionLinenumber: 985
    functionLinenumberEnd: 1245
    functionName: vtbdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_framing_mode
    - vtbdec_register_param_sets
    - gf_assert
    - vtbdec_flush_frame
    - vtbdec_init_decoder
    - gf_odf_hevc_cfg_del
    - gf_filter_get_udta
    - gf_crc_32
    - gf_list_find
    - gf_odf_hevc_cfg_read
    - gf_filter_pid_remove
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_filter_pid_new
    - gf_list_insert
    - gf_filter_pid_copy_properties
    - gf_filter_set_max_extra_input_pids
    - PROP_BOOL
    - gf_odf_avc_cfg_del
    - gf_list_new
    - gf_filter_pid_check_caps
    - GF_LOG
    - gf_list_del_item
    - gf_filter_pid_set_property
    - PROP_UINT
    - vtbdec_del_param_list
    - vtbdec_copy_props
    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:1251,1
    - Dst: VTDecompressionSessionInvalidate
      Src: /src/gpac/src/filters/dec_vtb.c:1255,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1258,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1260,1
    - Dst: vtbdec_del_param_list
      Src: /src/gpac/src/filters/dec_vtb.c:1262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1264
      start: 1248
    functionDepth: 3
    functionLinenumber: 1248
    functionLinenumberEnd: 1264
    functionName: vtbdec_delete_decoder
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - VTDecompressionSessionInvalidate
    - CFRelease
    - vtbdec_del_param_list
    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:1282,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1286,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1307,1
    - Dst: gf_media_nalu_next_start_code
      Src: /src/gpac/src/filters/dec_vtb.c:1312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1319,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:1334,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:1335,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1341,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1345,1
    - Dst: gf_avc_parse_nalu
      Src: /src/gpac/src/filters/dec_vtb.c:1358,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:1371,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:1372,1
    - Dst: gf_hevc_parse_nalu_bs
      Src: /src/gpac/src/filters/dec_vtb.c:1374,1
    - Dst: vtbdec_register_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1380,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1406,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1406,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1407,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_vtb.c:1418,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_vtb.c:1420,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/dec_vtb.c:1428,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/dec_vtb.c:1429,1
    - Dst: vtbdec_purge_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1445,1
    - Dst: vtbdec_purge_param_sets
      Src: /src/gpac/src/filters/dec_vtb.c:1446,1
    - Dst: gf_bs_get_content_no_truncate
      Src: /src/gpac/src/filters/dec_vtb.c:1459,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: 1463
      start: 1266
    functionDepth: 10
    functionLinenumber: 1266
    functionLinenumberEnd: 1463
    functionName: vtbdec_parse_nal_units
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - vtbdec_init_decoder
    - GF_LOG
    - vtbdec_register_param_sets
    - gf_assert
    - gf_bs_new
    - gf_avc_parse_nalu
    - gf_hevc_parse_nalu_bs
    - gf_media_nalu_next_start_code
    - gf_bs_write_u32
    - gf_bs_write_data
    - gf_bs_get_content_no_truncate
    - gf_bs_reassign_buffer
    - vtbdec_purge_param_sets
    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: 10
    BranchProfiles: []
    Callsites:
    - Dst: vtbdec_send_output_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1474,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1476,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_vtb.c:1477,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1478,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1479,1
    - Dst: CVPixelBufferLockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1482,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1484,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1485,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:1486,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1487,1
    - Dst: CVPixelBufferGetPixelFormatType
      Src: /src/gpac/src/filters/dec_vtb.c:1491,1
    - Dst: CVPixelBufferGetPlaneCount
      Src: /src/gpac/src/filters/dec_vtb.c:1501,1
    - Dst: gf_filter_pck_get_mark
      Src: /src/gpac/src/filters/dec_vtb.c:1505,1
    - Dst: vtbdec_copy_props
      Src: /src/gpac/src/filters/dec_vtb.c:1506,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_vtb.c:1508,1
    - Dst: CVPixelBufferGetBaseAddressOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1513,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:1514,1
    - Dst: CVPixelBufferGetBaseAddressOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1517,1
    - Dst: CVPixelBufferGetBytesPerRowOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1518,1
    - Dst: CVPixelBufferGetHeightOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1519,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:1533,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_vtb.c:1538,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_vtb.c:1544,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_vtb.c:1545,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:1546,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1547,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:1548,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:1549,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_vtb.c:1551,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 45
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1552
      start: 1468
    functionDepth: 2
    functionLinenumber: 1468
    functionLinenumberEnd: 1552
    functionName: vtbdec_flush_frame
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - CVPixelBufferGetBytesPerRowOfPlane
    - gf_list_add
    - gf_list_pop_front
    - CVPixelBufferGetHeightOfPlane
    - gf_filter_pck_set_dependency_flags
    - gf_mx_v
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - vtbdec_send_output_frame
    - gf_filter_pck_get_cts
    - gf_mx_p
    - CVPixelBufferGetPlaneCount
    - CVPixelBufferLockBaseAddress
    - CVPixelBufferGetBaseAddressOfPlane
    - gf_filter_pck_get_mark
    - GF_LOG
    - gf_filter_pck_get_timescale
    - gf_filter_pck_set_dts
    - CVPixelBufferGetPixelFormatType
    - vtbdec_copy_props
    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:1571,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1576,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_vtb.c:1581,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1583,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_vtb.c:1585,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dec_vtb.c:1592,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1592,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:1592,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1600,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1601,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_vtb.c:1603,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1606,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1607,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_vtb.c:1608,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_vtb.c:1610,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1611,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/dec_vtb.c:1614,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1615,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_vtb.c:1619,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1623,1
    - Dst: gf_m4v_get_config
      Src: /src/gpac/src/filters/dec_vtb.c:1631,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1637,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1639,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1648,1
    - Dst: gf_mpegv12_get_config
      Src: /src/gpac/src/filters/dec_vtb.c:1657,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1664,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1666,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1672,1
    - Dst: vtbdec_parse_nal_units
      Src: /src/gpac/src/filters/dec_vtb.c:1688,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1688,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1690,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1704,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1705,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dec_vtb.c:1710,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1714,1
    - Dst: VTDecompressionSessionInvalidate
      Src: /src/gpac/src/filters/dec_vtb.c:1718,1
    - Dst: vtbdec_init_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:1721,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1725,1
    - Dst: CMBlockBufferCreateWithMemoryBlock
      Src: /src/gpac/src/filters/dec_vtb.c:1730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1734,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1736,1
    - Dst: CMSampleBufferCreate
      Src: /src/gpac/src/filters/dec_vtb.c:1740,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1744,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1746,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1747,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1750,1
    - Dst: VTDecompressionSessionDecodeFrame
      Src: /src/gpac/src/filters/dec_vtb.c:1753,1
    - Dst: VTDecompressionSessionWaitForAsynchronousFrames
      Src: /src/gpac/src/filters/dec_vtb.c:1755,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1758,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1759,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_vtb.c:1767,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:1775,1
    - Dst: vtbdec_flush_frame
      Src: /src/gpac/src/filters/dec_vtb.c:1787,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 174
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1788
      start: 1560
    functionDepth: 11
    functionLinenumber: 1560
    functionLinenumberEnd: 1788
    functionName: vtbdec_process
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_set_eos
    - vtbdec_parse_nal_units
    - gf_assert
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - CFRelease
    - VTDecompressionSessionDecodeFrame
    - vtbdec_flush_frame
    - gf_m4v_get_config
    - vtbdec_init_decoder
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_filter_pck_get_dts
    - VTDecompressionSessionWaitForAsynchronousFrames
    - CMBlockBufferCreateWithMemoryBlock
    - gf_filter_pid_is_eos
    - CMSampleBufferCreate
    - VTDecompressionSessionInvalidate
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_mpegv12_get_config
    - gf_filter_pck_get_timescale
    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:1792,1
    - Dst: CVPixelBufferUnlockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1795,1
    - Dst: CVBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1798,1
    - Dst: CVBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1799,1
    - Dst: CVBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1800,1
    - Dst: GF_CVOpenGLTextureCacheFlush
      Src: /src/gpac/src/filters/dec_vtb.c:1802,1
    - Dst: CVPixelBufferRelease
      Src: /src/gpac/src/filters/dec_vtb.c:1806,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filters/dec_vtb.c:1810,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:1811,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:1812,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1813,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: 1814
      start: 1790
    functionDepth: 1
    functionLinenumber: 1790
    functionLinenumberEnd: 1814
    functionName: vtbframe_release
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - CVPixelBufferUnlockBaseAddress
    - CVPixelBufferRelease
    - safe_int_dec
    - GF_CVOpenGLTextureCacheFlush
    - gf_mx_p
    - gf_mx_v
    - CVBufferRelease
    - gf_list_add
    - 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:1823,1
    - Dst: CVPixelBufferLockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1827,1
    - Dst: CVPixelBufferIsPlanar
      Src: /src/gpac/src/filters/dec_vtb.c:1834,1
    - Dst: CVPixelBufferGetBaseAddressOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1835,1
    - Dst: CVPixelBufferGetBytesPerRowOfPlane
      Src: /src/gpac/src/filters/dec_vtb.c:1837,1
    - Dst: CVPixelBufferGetBytesPerRow
      Src: /src/gpac/src/filters/dec_vtb.c:1841,1
    - Dst: CVPixelBufferGetBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1842,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: 1847
      start: 1816
    functionDepth: 1
    functionLinenumber: 1816
    functionLinenumberEnd: 1847
    functionName: vtbframe_get_plane
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - CVPixelBufferGetBaseAddressOfPlane
    - CVPixelBufferGetBytesPerRow
    - GF_LOG
    - CVPixelBufferIsPlanar
    - gf_assert
    - CVPixelBufferGetBytesPerRowOfPlane
    - 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:1861,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1862
      start: 1859
    functionDepth: 0
    functionLinenumber: 1859
    functionLinenumberEnd: 1862
    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:1878,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1880,1
    - Dst: CVOpenGLESTextureCacheCreate
      Src: /src/gpac/src/filters/dec_vtb.c:1888,1
    - Dst: CVOpenGLTextureCacheCreate
      Src: /src/gpac/src/filters/dec_vtb.c:1890,1
    - Dst: CGLGetPixelFormat
      Src: /src/gpac/src/filters/dec_vtb.c:1890,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1893,1
    - Dst: CVPixelBufferLockBaseAddress
      Src: /src/gpac/src/filters/dec_vtb.c:1899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1901,1
    - Dst: CVPixelBufferIsPlanar
      Src: /src/gpac/src/filters/dec_vtb.c:1907,1
    - Dst: CVPixelBufferGetPlaneCount
      Src: /src/gpac/src/filters/dec_vtb.c:1908,1
    - Dst: CVPixelBufferGetPlaneCount
      Src: /src/gpac/src/filters/dec_vtb.c:1909,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1910,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1914,1
    - Dst: CVOpenGLESTextureCacheCreateTextureFromImage
      Src: /src/gpac/src/filters/dec_vtb.c:1935,1
    - Dst: CVOpenGLTextureCacheCreateTextureFromImage
      Src: /src/gpac/src/filters/dec_vtb.c:1937,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1941,1
    - Dst: GF_CVOpenGLTextureGetTarget
      Src: /src/gpac/src/filters/dec_vtb.c:1945,1
    - Dst: GF_CVOpenGLTextureGetName
      Src: /src/gpac/src/filters/dec_vtb.c:1946,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: 1949
      start: 1866
    functionDepth: 1
    functionLinenumber: 1866
    functionLinenumberEnd: 1949
    functionName: vtbframe_get_gl_texture
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - GF_CVOpenGLTextureGetTarget
    - CVOpenGLTextureCacheCreateTextureFromImage
    - CVPixelBufferLockBaseAddress
    - CVOpenGLESTextureCacheCreateTextureFromImage
    - GF_LOG
    - CVPixelBufferIsPlanar
    - GF_CVOpenGLTextureGetName
    - myGetGLContext
    - CGLGetPixelFormat
    - CVOpenGLTextureCacheCreate
    - CVPixelBufferGetPlaneCount
    - CVOpenGLESTextureCacheCreate
    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:1957,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_vtb.c:1958,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:1959,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_vtb.c:1962,1
    - Dst: if
      Src: /src/gpac/src/filters/dec_vtb.c:1967,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filters/dec_vtb.c:1974,1
    - Dst: gf_filter_pck_get_mark
      Src: /src/gpac/src/filters/dec_vtb.c:1976,1
    - Dst: vtbdec_copy_props
      Src: /src/gpac/src/filters/dec_vtb.c:1977,1
    - Dst: gf_filter_pck_new_frame_interface
      Src: /src/gpac/src/filters/dec_vtb.c:1979,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_vtb.c:1982,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_vtb.c:1983,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_vtb.c:1985,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_vtb.c:1986,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_vtb.c:1987,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:1988,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_vtb.c:1991,1
    - Dst: vtbdec_process_event
      Src: /src/gpac/src/filters/dec_vtb.c:1998,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:2000,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filters/dec_vtb.c:2002,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:2003,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:2004,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:2005,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_vtb.c:2007,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filters/dec_vtb.c:2009,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_vtb.c:2020,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:2026,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:2027,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_vtb.c:2028,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filters/dec_vtb.c:2029,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filters/dec_vtb.c:2031,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GF_VTBDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2034
      start: 1952
    functionDepth: 3
    functionLinenumber: 1952
    functionLinenumberEnd: 2034
    functionName: vtbdec_send_output_frame
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_filter_pck_merge_properties
    - gf_filter_pck_new_frame_interface
    - gf_list_add
    - gf_list_pop_front
    - gf_filter_get_udta
    - gf_filter_pck_set_dependency_flags
    - gf_mx_v
    - gf_filter_force_main_thread
    - gf_filter_pck_send
    - safe_int_inc
    - gf_filter_pck_unref
    - gf_mx_new
    - vtbdec_process_event
    - gf_filter_pck_get_cts
    - gf_mx_p
    - gf_list_new
    - gf_list_pop_back
    - gf_filter_pck_get_mark
    - GF_LOG
    - gf_filter_pck_get_timescale
    - gf_filter_pck_set_dts
    - if
    - vtbdec_copy_props
    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:2038,1
    - Dst: vtbdec_delete_decoder
      Src: /src/gpac/src/filters/dec_vtb.c:2039,1
    - Dst: CFRelease
      Src: /src/gpac/src/filters/dec_vtb.c:2043,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:2048,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:2049,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:2050,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:2051,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:2053,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_vtb.c:2057,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dec_vtb.c:2058,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_vtb.c:2059,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:2060,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:2062,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_vtb.c:2064,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:2066,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:2067,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_vtb.c:2068,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_vtb.c:2069,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filters/dec_vtb.c:2070,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 2036
    functionDepth: 4
    functionLinenumber: 2036
    functionLinenumberEnd: 2071
    functionName: vtbdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_vtb.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    - gf_bs_del
    - gf_mx_del
    - CFRelease
    - vtbdec_delete_decoder
    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: 2104
      start: 2103
    functionDepth: 0
    functionLinenumber: 2103
    functionLinenumberEnd: 2104
    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: 2145
      start: 2138
    functionDepth: 0
    functionLinenumber: 2138
    functionLinenumberEnd: 2145
    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_get_scene_size_info
    - gf_scene_force_size
    - gf_filter_pid_get_property
    - sprintf
    - gf_node_get_attribute_by_tag
    - gf_svg_parse_attribute
    - gf_sg_get_root_node
    - gf_sg_set_scene_size_info
    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: gf_strcpy
      Src: /src/gpac/src/filters/dec_webvtt.c:159,1
    - Dst: gf_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_strcpy
    - gf_node_list_add_child
    - gf_sg_set_root_node
    - gf_node_get_attribute_by_tag
    - gf_svg_parse_attribute
    - gf_node_init
    - gf_strcat
    - gf_node_get_attribute_by_name
    - gf_sg_add_namespace
    - gf_node_new
    - gf_node_register
    - gf_sg_new_subscene
    - strstr
    - vttd_update_size_info
    - gf_sg_set_scene_size_info
    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_filter_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_isom_box_del
    - gf_malloc
    - gf_filter_get_udta
    - gf_crc_32
    - gf_isom_box_parse
    - gf_assert
    - gf_bs_new
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_del
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_bs_read_u32
    - memcpy
    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:
    - vttd_setup_scene
    - vttd_toggle_display
    - gf_sg_del
    - 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_NewFloat64
    - JS_GetGlobalObject
    - JS_NewString
    - svg_script_get_context
    - JS_FreeValue
    - MAX
    - JS_SetPropertyStr
    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_NewString
    - js_dump_error
    - vtt_script_get_context
    - JS_IsFunction
    - JS_GetPropertyStr
    - JS_Call
    - JS_FreeValue
    - JS_IsException
    - gf_js_lock
    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_dump_error
    - vtt_script_get_context
    - JS_IsFunction
    - JS_GetPropertyStr
    - JS_Call
    - JS_FreeValue
    - JS_IsException
    - gf_js_lock
    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_list_count
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_clock_time
    - gf_timestamp_rescale_signed
    - gf_webvtt_cue_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_sc_check_sys_frame
    - gf_filter_get_udta
    - gf_clock_diff
    - gf_timestamp_to_clocktime
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_list_get
    - vttd_js_remove_cues
    - vttd_js_add_cue
    - gf_webvtt_parse_cues_from_data
    - gf_sc_sys_frame_pending
    - gf_filter_pck_get_cts
    - gf_filter_pid_is_eos
    - sprintf
    - gf_list_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:
    - vtt_update_arg
    - gf_filter_get_udta
    - gf_file_exists
    - GF_LOG
    - gf_list_new
    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_filter_get_udta
    - gf_list_del
    - gf_scene_register_extra_graph
    - gf_sg_del
    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_filter_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - PROP_LONGUINT
    - PROP_FRAC64_INT
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_audio_fmt_parse
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    - gf_audio_fmt_bit_depth
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pcmreframe_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/reframe_rawpcm.c:144,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:183,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawpcm.c:185,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawpcm.c:194,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 207
    functionName: pcmreframe_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - gf_filter_pck_discard
    - GF_FEVT_INIT
    - 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:216,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:217,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:218,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_rawpcm.c:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_PCMReframeCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 209
    functionDepth: 1
    functionLinenumber: 209
    functionLinenumberEnd: 223
    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:226,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:236,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:238,1
    - Dst: gf_filter_pck_truncate
      Src: /src/gpac/src/filters/reframe_rawpcm.c:240,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_rawpcm.c:241,1
    - Dst: pcmreframe_flush_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:242,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:245,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_rawpcm.c:251,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_rawpcm.c:252,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_rawpcm.c:259,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:260,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_rawpcm.c:262,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_rawpcm.c:264,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:266,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:267,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:270,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:271,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:272,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_rawpcm.c:275,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:276,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:277,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:278,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:282,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_rawpcm.c:283,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:288,1
    - Dst: gf_bs_read_u16_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_u32_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:293,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:321,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:322,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_rawpcm.c:323,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_rawpcm.c:345,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/reframe_rawpcm.c:347,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/reframe_rawpcm.c:349,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:350,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:355,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:368,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:372,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_rawpcm.c:376,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:378,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:380,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:382,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframe_rawpcm.c:383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawpcm.c:384,1
    - Dst: pcmreframe_configure_pid
      Src: /src/gpac/src/filters/reframe_rawpcm.c:389,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_rawpcm.c:411,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_rawpcm.c:414,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_rawpcm.c:415,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_rawpcm.c:416,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_rawpcm.c:417,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:421,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawpcm.c:426,1
    - Dst: pcmreframe_flush_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:428,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawpcm.c:442,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:443,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawpcm.c:444,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:450,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawpcm.c:452,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawpcm.c:454,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawpcm.c:460,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_rawpcm.c:463,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 234
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 224
    functionDepth: 7
    functionLinenumber: 224
    functionLinenumberEnd: 468
    functionName: pcmreframe_process
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_bs_read_u16_le
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_filter_get_udta
    - pcmreframe_configure_pid
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - gf_filter_pid_set_discard
    - gf_bs_is_overflow
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - pcmreframe_flush_packet
    - gf_filter_pck_set_sap
    - gf_bs_read_u32
    - gf_filter_pid_is_eos
    - gf_free
    - gf_filter_pck_get_byte_offset
    - GF_LOG
    - GF_4CC
    - gf_bs_read_u32_le
    - gf_filter_pck_set_byte_offset
    - gf_bs_available
    - gf_filter_pck_truncate
    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:474,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:475,1
    - Dst: GF_4CC
      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_bs_read_u32
      Src: /src/gpac/src/filters/reframe_rawpcm.c:478,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_rawpcm.c:479,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:481,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_rawpcm.c:485,1
    - Dst: gf_audio_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawpcm.c:487,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 470
    functionDepth: 4
    functionLinenumber: 470
    functionLinenumberEnd: 488
    functionName: pcmreframe_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_all_shortnames
    - GF_4CC
    - gf_bs_new
    - gf_bs_del
    - gf_bs_read_u32
    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:493,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawpcm.c:494,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_rawpcm.c:495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 496
    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: 513
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 513
    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:541,1
    - Dst: gf_audio_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawpcm.c:542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 539
    functionDepth: 2
    functionLinenumber: 539
    functionLinenumberEnd: 544
    functionName: rfpcm_register
    functionSourceFile: /src/gpac/src/filters/reframe_rawpcm.c
    functionUses: 0
    functionsReached:
    - gf_audio_fmt_all_names
    - gf_audio_fmt_all_shortnames
    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: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    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_init
    - xvid_global
    - gf_filter_get_udta
    - gf_list_new
    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_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_m4v_get_config
    - gf_filter_pid_set_framing_mode
    - gf_filter_get_udta
    - gf_crc_32
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - PROP_FRAC
    - gf_filter_pid_check_caps
    - memset
    - xvid_decore
    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_count
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_list_del
    - xvid_decore
    - gf_list_pop_back
    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
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_get_udta
    - gf_list_pop_front
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - gf_list_get
    - gf_list_insert
    - xvid_decore
    - gf_filter_pck_send
    - gf_filter_pck_unref
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - gf_filter_pck_discard
    - gf_filter_pck_set_dts
    - memset
    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: gf_strcpy
      Src: /src/gpac/src/filters/mux_avi.c:165,1
    - Dst: gf_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: gf_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: gf_strlcpy
      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: gf_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_filter_pid_get_property
    - gf_list_count
    - gf_4cc_parse
    - gf_codecid_name
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - GF_SAFEALLOC
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_malloc
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_get_udta
    - gf_filter_pid_resolve_file_template
    - memcpy
    - gf_strcpy
    - gf_filter_pid_get_property_str
    - gf_filter_pid_negotiate_property
    - gf_filter_pid_check_caps
    - avimux_open_close
    - gf_filter_pid_is_eos
    - gf_strlcpy
    - gf_free
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_list_del_item
    - PROP_UINT
    - gf_4cc_to_str
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - avimux_open_close
    - gf_list_pop_back
    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:
    - gf_list_count
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - AVI_get_audio_track
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - gf_filter_get_udta
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - gf_list_get
    - gf_realloc
    - memcpy
    - gf_filter_pck_get_cts
    - AVI_set_video
    - GF_FilterFrameInterface*::get_plane
    - AVI_set_audio_track
    - gf_filter_pid_is_eos
    - avimux_open_close
    - AVI_set_audio
    - gf_filter_pck_get_property
    - AVI_write_frame
    - avimux_configure_pid
    - GF_LOG
    - gf_pixel_get_size_info
    - AVI_write_audio
    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:
    - strchr
    - gf_filter_override_caps
    - gf_filter_get_udta
    - gf_filter_setup_failure
    - strnicmp
    - gf_list_new
    - gf_filter_is_temporary
    - avimux_open_close
    - strstr
    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:
    - _to_webgrab
    - _on_wgrab_error
    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:
    - _to_webgrab
    - _on_wgrab_error
    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_count
    - gf_list_pop_front
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - 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_new_alloc
    - PROP_LONGUINT
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - PROP_UINT
    - webcodec_pixfmt_to_gpac
    - gf_pixel_get_size_info
    - gf_filter_pid_set_property
    - gf_filter_pck_set_property
    - gf_net_get_ntp_ts
    - gf_filter_pid_new
    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:
    - webcodec_audiofmt_to_gpac
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - GF_LOG
    - gf_filter_post_process_task
    - webgrab_next_audio
    - gf_filter_pck_set_cts
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_list_add
    - gf_filter_pck_set_property
    - gf_net_get_ntp_ts
    - gf_filter_pid_new
    - gf_audio_fmt_bit_depth
    - gf_audio_fmt_is_planar
    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:
    - for
    - if
    - cwrap
    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_filter_get_udta
    - gf_filter_prevent_blocking
    - strcmp
    - gf_list_new
    - strncmp
    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_filter_pck_discard
    - gf_list_count
    - gf_list_pop_front
    - gf_filter_get_udta
    - gf_list_del
    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:
    - EM_ASM_INT
    - gf_opts_get_bool
    - GF_LOG
    linkageType: ''
    returnType: GF_FilterRegister
    signature: GF_FilterRegister *webgrab_register(GF_FilterSession *session)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dec_scte35.c:93,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/dec_scte35.c:99,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/filters/dec_scte35.c:101,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_scte35.c:103,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/filters/dec_scte35.c:108,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:111,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:112,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 91
    functionDepth: 4
    functionLinenumber: 91
    functionLinenumberEnd: 114
    functionName: scte35dec_initialize_internal
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_size
    - gf_isom_box_write
    - gf_bs_new
    - gf_isom_box_new
    - gf_bs_del
    - gf_list_new
    - gf_isom_box_del
    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:118,1
    - Dst: scte35dec_initialize_internal
      Src: /src/gpac/src/filters/dec_scte35.c:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 116
    functionDepth: 5
    functionLinenumber: 116
    functionLinenumberEnd: 123
    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:127,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:128,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:129,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:130,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dec_scte35.c:132,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_scte35.c:134,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 125
    functionDepth: 4
    functionLinenumber: 125
    functionLinenumberEnd: 137
    functionName: scte35dec_finalize_internal
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_pck_unref
    - gf_list_del
    - gf_list_get
    - gf_isom_box_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:141,1
    - Dst: scte35dec_finalize_internal
      Src: /src/gpac/src/filters/dec_scte35.c:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 139
    functionDepth: 5
    functionLinenumber: 139
    functionLinenumberEnd: 143
    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: 14
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:147,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:150,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_scte35.c:154,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_scte35.c:158,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_scte35.c:162,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dec_scte35.c:164,1
    - Dst: gf_rand
      Src: /src/gpac/src/filters/dec_scte35.c:165,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dec_scte35.c:168,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_scte35.c:171,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:182,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_scte35.c:182,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:184,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_scte35.c:184,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:186,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_scte35.c:186,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:188,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_scte35.c:188,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:190,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:193,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 42
    argCount: 3
    argNames:
    - filter
    - pid
    - is_remove
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 145
    functionDepth: 1
    functionLinenumber: 145
    functionLinenumberEnd: 199
    functionName: scte35dec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_rand
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_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/dec_scte35.c:209,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dec_scte35.c:219,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 201
    functionDepth: 1
    functionLinenumber: 201
    functionLinenumberEnd: 223
    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:229,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_scte35.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:233,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dec_scte35.c:238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:240,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dec_scte35.c:241,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dec_scte35.c:244,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/dec_scte35.c:245,1
    - Dst: SCTE35DecCtx*::pck_send
      Src: /src/gpac/src/filters/dec_scte35.c:246,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: 248
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 248
    functionName: scte35dec_send_pck
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_unref
    - gf_filter_pck_merge_properties
    - gf_filter_pck_set_framing
    - GF_LOG
    - SCTE35DecCtx*::pck_send
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_duration
    - 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:252,1
    - Dst: scte35dec_send_pck
      Src: /src/gpac/src/filters/dec_scte35.c:255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 250
    functionDepth: 2
    functionLinenumber: 250
    functionLinenumberEnd: 257
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_scte35.c:262,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:267,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:268,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/dec_scte35.c:270,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dec_scte35.c:274,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ctx
    - dts
    - emib
    argTypes:
    - SCTE35DecCtx*
    - u64
    - GF_EventMessageBox*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 276
    functionName: scte35dec_schedule
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - gf_list_add
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_schedule(SCTE35DecCtx *ctx, u64 dts, GF_EventMessageBox
      *emib)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_scte35.c:281,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: 287
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 287
    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: 10
    BranchProfiles: []
    Callsites:
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filters/dec_scte35.c:291,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:291,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_scte35.c:295,1
    - Dst: SCTE35DecCtx*::pck_new_alloc
      Src: /src/gpac/src/filters/dec_scte35.c:299,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_scte35.c:305,1
    - Dst: gf_isom_box_write
      Src: /src/gpac/src/filters/dec_scte35.c:306,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:307,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dec_scte35.c:311,1
    - Dst: PROP_CONST_DATA
      Src: /src/gpac/src/filters/dec_scte35.c:311,1
    - Dst: compute_emib_duration
      Src: /src/gpac/src/filters/dec_scte35.c:313,1
    - Dst: scte35dec_send_pck
      Src: /src/gpac/src/filters/dec_scte35.c:315,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:329,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:330,1
    - Dst: scte35dec_schedule
      Src: /src/gpac/src/filters/dec_scte35.c:333,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:336,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:347,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:348,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 47
    argCount: 3
    argNames:
    - ctx
    - dts
    - max_dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 289
    functionDepth: 4
    functionLinenumber: 289
    functionLinenumberEnd: 351
    functionName: scte35dec_flush_emib
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - scte35dec_send_pck
    - gf_free
    - scte35dec_schedule
    - gf_list_pop_front
    - gf_isom_box_write
    - compute_emib_duration
    - SCTE35DecCtx*::pck_new_alloc
    - gf_bs_new
    - PROP_CONST_DATA
    - gf_bs_del
    - gf_fatal_assert
    - gf_isom_box_del
    - gf_filter_pck_set_property_dyn
    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:356,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_scte35.c:356,1
    - Dst: scte35dec_flush_emeb
      Src: /src/gpac/src/filters/dec_scte35.c:357,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - first_evt
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - Event*
    - u64
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 353
    functionDepth: 3
    functionLinenumber: 353
    functionLinenumberEnd: 360
    functionName: scte35_insert_emeb_before_emib
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_is_eos
    - gf_assert
    - scte35dec_flush_emeb
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35_insert_emeb_before_emib(SCTE35DecCtx *ctx, Event *first_evt,
      u64 dts, u64 dur)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:364,1
    - Dst: scte35dec_flush_emeb
      Src: /src/gpac/src/filters/dec_scte35.c:365,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:368,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:373,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_scte35.c:376,1
    - Dst: scte35_insert_emeb_before_emib
      Src: /src/gpac/src/filters/dec_scte35.c:377,1
    - Dst: scte35_insert_emeb_before_emib
      Src: /src/gpac/src/filters/dec_scte35.c:386,1
    - Dst: scte35dec_flush_emib
      Src: /src/gpac/src/filters/dec_scte35.c:393,1
    - Dst: scte35dec_flush_emeb
      Src: /src/gpac/src/filters/dec_scte35.c:398,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 3
    argNames:
    - ctx
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 362
    functionDepth: 5
    functionLinenumber: 362
    functionLinenumberEnd: 402
    functionName: scte35dec_push_box
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - scte35_insert_emeb_before_emib
    - MIN
    - gf_assert
    - gf_list_get
    - scte35dec_flush_emib
    - scte35dec_flush_emeb
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_push_box(SCTE35DecCtx *ctx, const u64 dts, const u32
      dur)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:410,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:413,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:416,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 404
    functionDepth: 6
    functionLinenumber: 404
    functionLinenumberEnd: 418
    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:422,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:430,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - SCTE35DecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 420
    functionDepth: 6
    functionLinenumber: 420
    functionLinenumberEnd: 431
    functionName: new_segment
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - scte35dec_push_box
    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:435,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:437,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:438,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:440,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - bs
    argTypes:
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 433
    functionDepth: 6
    functionLinenumber: 433
    functionLinenumberEnd: 443
    functionName: scte35dec_parse_splice_time
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_int
    - gf_bs_read_long_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:448,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:453,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:456,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:457,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:458,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:459,1
    - Dst: gf_bs_get_size
      Src: /src/gpac/src/filters/dec_scte35.c:460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:461,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:465,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:466,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:467,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:471,1
    - Dst: gf_bs_read_u8
      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: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:478,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:480,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:481,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:485,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_scte35.c:490,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:491,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:492,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:494,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:495,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:496,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: scte35dec_parse_splice_time
      Src: /src/gpac/src/filters/dec_scte35.c:501,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:507,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:509,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:511,1
    - Dst: scte35dec_parse_splice_time
      Src: /src/gpac/src/filters/dec_scte35.c:512,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:519,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:520,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:528,1
    - Dst: scte35dec_parse_splice_time
      Src: /src/gpac/src/filters/dec_scte35.c:538,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:546,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:547,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_scte35.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:551,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_scte35.c:556,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_scte35.c:557,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_scte35.c:558,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:560,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:561,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:563,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:564,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_scte35.c:568,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_scte35.c:572,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:573,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:574,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:575,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:578,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:579,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:580,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:583,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:584,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:585,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:586,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_scte35.c:588,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:592,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:594,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_scte35.c:598,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:601,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:602,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:603,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:604,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:605,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:606,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:622,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_scte35.c:623,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:629,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_scte35.c:634,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dec_scte35.c:634,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_scte35.c:639,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:645,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: 647
      start: 445
    functionDepth: 7
    functionLinenumber: 445
    functionLinenumberEnd: 647
    functionName: scte35dec_get_timing
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 2
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_get_position
    - gf_bs_align
    - gf_bs_seek
    - GF_LOG
    - gf_bs_get_size
    - gf_assert
    - gf_bs_new
    - gf_bs_read_long_int
    - scte35dec_parse_splice_time
    - gf_bs_read_int
    - gf_bs_del
    - MAX
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_available
    - 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: 7
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:657,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:661,1
    - Dst: MIN
      Src: /src/gpac/src/filters/dec_scte35.c:677,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:678,1
    - Dst: MAX
      Src: /src/gpac/src/filters/dec_scte35.c:682,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 4
    argNames:
    - ctx
    - dts
    - timescale
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 649
    functionDepth: 6
    functionLinenumber: 649
    functionLinenumberEnd: 683
    functionName: scte35dec_process_internal_timing
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - scte35dec_push_box
    - MIN
    - MAX
    linkageType: ''
    returnType: void
    signature: void scte35dec_process_internal_timing(SCTE35DecCtx *ctx, u64 dts,
      u32 timescale, u32 dur)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: scte35dec_get_timing
      Src: /src/gpac/src/filters/dec_scte35.c:691,1
    - Dst: gf_isom_box_new
      Src: /src/gpac/src/filters/dec_scte35.c:699,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:705,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:707,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_scte35.c:709,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dec_scte35.c:710,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_scte35.c:712,1
    - Dst: gf_isom_box_size
      Src: /src/gpac/src/filters/dec_scte35.c:716,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:718,1
    - Dst: scte35dec_schedule
      Src: /src/gpac/src/filters/dec_scte35.c:723,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:726,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - data
    - size
    - dts
    argTypes:
    - SCTE35DecCtx*
    - u8*
    - u32
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 685
    functionDepth: 8
    functionLinenumber: 685
    functionLinenumberEnd: 730
    functionName: scte35dec_process_emsg
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del
    - gf_isom_box_size
    - gf_malloc
    - scte35dec_schedule
    - GF_LOG
    - gf_isom_box_new
    - scte35dec_get_timing
    - gf_strdup
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_process_emsg(SCTE35DecCtx *ctx, const u8 *data, u32
      size, u64 dts)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dec_scte35.c:735,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:740,1
    - Dst: scte35dec_push_box
      Src: /src/gpac/src/filters/dec_scte35.c:741,1
    - Dst: gf_list_rem_last
      Src: /src/gpac/src/filters/dec_scte35.c:744,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:755,1
    - Dst: new_segment
      Src: /src/gpac/src/filters/dec_scte35.c:761,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 766
      start: 732
    functionDepth: 7
    functionLinenumber: 732
    functionLinenumberEnd: 766
    functionName: scte35dec_process_dispatch
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - scte35dec_push_box
    - GF_LOG
    - gf_assert
    - gf_list_rem_last
    - new_segment
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_process_dispatch(SCTE35DecCtx *ctx, u64 dts, u32 dur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dec_scte35.c:770,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dec_scte35.c:774,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:775,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:776,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - cts
    argTypes:
    - SCTE35DecCtx*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 768
    functionDepth: 4
    functionLinenumber: 768
    functionLinenumberEnd: 779
    functionName: scte35dec_is_splice_point
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_isom_box_del
    - gf_free
    - gf_list_pop_front
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool scte35dec_is_splice_point(SCTE35DecCtx *ctx, u64 cts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SCTE35DecCtx*::pck_new_alloc
      Src: /src/gpac/src/filters/dec_scte35.c:784,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dec_scte35.c:786,1
    - Dst: gf_filter_pck_set_property_dyn
      Src: /src/gpac/src/filters/dec_scte35.c:788,1
    - Dst: PROP_CONST_DATA
      Src: /src/gpac/src/filters/dec_scte35.c:788,1
    - Dst: scte35dec_send_pck
      Src: /src/gpac/src/filters/dec_scte35.c:789,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 5
    argNames:
    - ctx
    - data
    - size
    - dts
    - dur
    argTypes:
    - SCTE35DecCtx*
    - u8*
    - u32
    - u64
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 781
    functionDepth: 2
    functionLinenumber: 781
    functionLinenumberEnd: 791
    functionName: scte35dec_process_m2tssec
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_send_pck
    - SCTE35DecCtx*::pck_new_alloc
    - PROP_CONST_DATA
    - memcpy
    - gf_filter_pck_set_property_dyn
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err scte35dec_process_m2tssec(SCTE35DecCtx *ctx, const u8 *data,
      u32 size, u64 dts, u32 dur)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_clone
      Src: /src/gpac/src/filters/dec_scte35.c:795,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dec_scte35.c:799,1
    - Dst: scte35dec_is_splice_point
      Src: /src/gpac/src/filters/dec_scte35.c:800,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:801,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dec_scte35.c:802,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dec_scte35.c:802,1
    - Dst: SCTE35DecCtx*::pck_send
      Src: /src/gpac/src/filters/dec_scte35.c:805,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - pck
    argTypes:
    - SCTE35DecCtx*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 793
    functionDepth: 5
    functionLinenumber: 793
    functionLinenumberEnd: 806
    functionName: scte35dec_process_passthrough
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - SCTE35DecCtx*::pck_send
    - GF_LOG
    - gf_filter_pck_get_cts
    - gf_filter_pck_new_clone
    - PROP_BOOL
    - gf_filter_pck_set_property
    - scte35dec_is_splice_point
    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:813,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_scte35.c:816,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dec_scte35.c:823,1
    - Dst: gf_isom_box_parse
      Src: /src/gpac/src/filters/dec_scte35.c:825,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:827,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:832,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:842,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dec_scte35.c:844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:845,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:847,1
    - Dst: gf_isom_box_del
      Src: /src/gpac/src/filters/dec_scte35.c:856,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_scte35.c:858,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/dec_scte35.c:861,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: 869
      start: 808
    functionDepth: 4
    functionLinenumber: 808
    functionLinenumberEnd: 869
    functionName: scte35dec_pck_get_data
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property_str
    - GF_LOG
    - gf_isom_box_parse
    - gf_bs_new
    - gf_filter_pck_get_data
    - gf_bs_del
    - strcmp
    - gf_isom_box_del
    - gf_bs_available
    linkageType: ''
    returnType: u8
    signature: u8 *scte35dec_pck_get_data(SCTE35DecCtx *ctx, GF_FilterPacket *pck,
      u32 *size, Bool *own)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dec_scte35.c:873,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_scte35.c:875,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_scte35.c:877,1
    - Dst: scte35dec_flush
      Src: /src/gpac/src/filters/dec_scte35.c:878,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_scte35.c:879,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dec_scte35.c:885,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_scte35.c:888,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:890,1
    - Dst: scte35dec_process_dispatch
      Src: /src/gpac/src/filters/dec_scte35.c:892,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/dec_scte35.c:893,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_scte35.c:894,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:900,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/dec_scte35.c:902,1
    - Dst: scte35dec_process_internal_timing
      Src: /src/gpac/src/filters/dec_scte35.c:904,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dec_scte35.c:904,1
    - Dst: scte35dec_pck_get_data
      Src: /src/gpac/src/filters/dec_scte35.c:908,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:910,1
    - Dst: scte35dec_process_emsg
      Src: /src/gpac/src/filters/dec_scte35.c:913,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_scte35.c:915,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dec_scte35.c:921,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dec_scte35.c:924,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/dec_scte35.c:927,1
    - Dst: scte35dec_process_dispatch
      Src: /src/gpac/src/filters/dec_scte35.c:930,1
    - Dst: scte35dec_process_m2tssec
      Src: /src/gpac/src/filters/dec_scte35.c:932,1
    - Dst: scte35dec_process_passthrough
      Src: /src/gpac/src/filters/dec_scte35.c:934,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_scte35.c:936,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_scte35.c:940,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_scte35.c:942,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 51
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 945
      start: 871
    functionDepth: 9
    functionLinenumber: 871
    functionLinenumberEnd: 945
    functionName: scte35dec_process
    functionSourceFile: /src/gpac/src/filters/dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_assert
    - scte35dec_pck_get_data
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - scte35dec_process_emsg
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - scte35dec_process_dispatch
    - gf_filter_pck_get_dts
    - gf_filter_pck_unref
    - scte35dec_process_passthrough
    - gf_filter_pck_ref_props
    - gf_filter_pid_is_eos
    - scte35dec_flush
    - scte35dec_process_m2tssec
    - gf_filter_pck_forward
    - scte35dec_process_internal_timing
    - gf_free
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_filter_pck_get_timescale
    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: 971
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 971
    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: 1003
      start: 1000
    functionDepth: 0
    functionLinenumber: 1000
    functionLinenumberEnd: 1003
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_property
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_filter_pid_get_property
    - gf_bs_get_position
    - gf_fclose
    - gf_bs_seek
    - GF_LOG
    - gf_fileio_is_main_thread
    - gf_bs_available
    - GF_4CC
    - gf_bs_from_file
    - gf_filter_pid_set_property
    - gf_bs_del
    - PROP_FRAC64
    - PROP_BOOL
    - gf_fopen_ex
    - gf_opts_get_bool
    - gf_realloc
    - gf_bs_read_u32
    - strncmp
    linkageType: ''
    returnType: void
    signature: void proresdmx_check_dur(GF_Filter *filter, GF_ProResDmxCtx *ctx)
  - BBCount: 15
    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:231,1
    - Dst: proresdmx_check_dur
      Src: /src/gpac/src/filters/reframe_prores.c:232,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_prores.c:264,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_prores.c:266,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 60
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 204
    functionDepth: 8
    functionLinenumber: 204
    functionLinenumberEnd: 285
    functionName: proresdmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - GF_LOG
    - proresdmx_check_dur
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    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:290,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_prores.c:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_ProResDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 304
    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: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: CHECK_CFG
      Src: /src/gpac/src/filters/reframe_prores.c:324,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_prores.c:355,1
    - Dst: proresdmx_check_dur
      Src: /src/gpac/src/filters/reframe_prores.c:356,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:365,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframe_prores.c:366,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/reframe_prores.c:367,1
    - Dst: gf_filter_pid_copy_properties
      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:378,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:378,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:380,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:380,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_prores.c:383,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:384,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_prores.c:384,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:387,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:387,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:391,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_prores.c:391,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:394,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:400,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:403,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/reframe_prores.c:403,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:406,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/reframe_prores.c:406,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:409,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/reframe_prores.c:409,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:412,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:417,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/reframe_prores.c:417,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:419,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_prores.c:419,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:422,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:422,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:427,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:427,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:430,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:430,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:434,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_prores.c:434,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_prores.c:437,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/reframe_prores.c:437,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: 438
      start: 306
    functionDepth: 8
    functionLinenumber: 306
    functionLinenumberEnd: 438
    functionName: proresdmx_check_pid
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - proresdmx_check_dur
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - CHECK_CFG
    - PROP_FRAC_INT
    - PROP_BOOL
    - PROP_FRAC
    - strlen
    - gf_filter_pid_new
    - memcpy
    - PROP_FRAC64
    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: 314
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 314
    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:447,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:448,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_prores.c:450,1
    - Dst: gf_media_prores_parse_bs
      Src: /src/gpac/src/filters/reframe_prores.c:454,1
    - Dst: proresdmx_check_pid
      Src: /src/gpac/src/filters/reframe_prores.c:459,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/reframe_prores.c:464,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_prores.c:468,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_prores.c:470,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/reframe_prores.c:472,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/reframe_prores.c:474,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_prores.c:475,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_prores.c:476,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_prores.c:477,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_prores.c:479,1
    - Dst: proresdmx_update_cts
      Src: /src/gpac/src/filters/reframe_prores.c:480,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/reframe_prores.c:481,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_prores.c:489,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_prores.c:494,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_prores.c:496,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_prores.c:505,1
    - Dst: memmove
      Src: /src/gpac/src/filters/reframe_prores.c:506,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: 512
      start: 442
    functionDepth: 9
    functionLinenumber: 442
    functionLinenumberEnd: 512
    functionName: proresdmx_process_buffer
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_assert
    - gf_bs_new
    - gf_bs_read_data
    - gf_filter_pid_send_event
    - gf_bs_reassign_buffer
    - gf_media_prores_parse_bs
    - proresdmx_check_pid
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - proresdmx_update_cts
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - memmove
    - gf_bs_available
    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:517,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/reframe_prores.c:526,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_prores.c:530,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_prores.c:532,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:536,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_prores.c:545,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_prores.c:546,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_prores.c:554,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_prores.c:558,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/reframe_prores.c:567,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_prores.c:572,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:574,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:579,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:582,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:587,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/reframe_prores.c:593,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/reframe_prores.c:596,1
    - Dst: gf_filter_pck_ref_props
      Src: /src/gpac/src/filters/reframe_prores.c:598,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_prores.c:604,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:606,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:608,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_prores.c:611,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:613,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:615,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_prores.c:622,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_prores.c:624,1
    - Dst: proresdmx_process_buffer
      Src: /src/gpac/src/filters/reframe_prores.c:626,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_prores.c:627,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 88
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 514
    functionDepth: 10
    functionLinenumber: 514
    functionLinenumberEnd: 629
    functionName: proresdmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - gf_filter_pid_would_block
    - gf_filter_pck_unref
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - proresdmx_process_buffer
    - gf_assert
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_data
    - gf_filter_pid_drop_packet
    - gf_filter_pck_ref_props
    - gf_realloc
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_framing
    - memcpy
    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:633,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_prores.c:634,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_prores.c:635,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_prores.c:636,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 631
    functionDepth: 3
    functionLinenumber: 631
    functionLinenumberEnd: 637
    functionName: proresdmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_prores.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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: 648
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 648
    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: 675
      start: 674
    functionDepth: 0
    functionLinenumber: 674
    functionLinenumberEnd: 675
    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: 704
      start: 701
    functionDepth: 0
    functionLinenumber: 701
    functionLinenumberEnd: 704
    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: 709
      start: 706
    functionDepth: 0
    functionLinenumber: 706
    functionLinenumberEnd: 709
    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: 14
    argCount: 4
    argNames:
    - sess
    - stream
    - com
    - needs_sess_id
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTPInStream*
    - GF_RTSPCommand*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 71
    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:84,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:85,1
    - Dst: gf_rtp_is_unicast
      Src: /src/gpac/src/filters/in_rtp_signaling.c:88,1
    - Dst: gf_rtp_is_interleaved
      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:89,1
    - Dst: gf_rtp_set_ports
      Src: /src/gpac/src/filters/in_rtp_signaling.c:91,1
    - Dst: gf_rtsp_transport_clone
      Src: /src/gpac/src/filters/in_rtp_signaling.c:94,1
    - Dst: gf_rtp_get_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:94,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:104,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:106,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:107,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:115,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:119,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:120,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filters/in_rtp_signaling.c:123,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:125,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:129,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_signaling.c:136,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_signaling.c:137,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:138,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:143,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 79
    functionDepth: 3
    functionLinenumber: 79
    functionLinenumberEnd: 144
    functionName: rtpin_rtsp_setup_send
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 0
    functionsReached:
    - gf_rtp_is_interleaved
    - gf_free
    - gf_rtsp_command_new
    - gf_list_find
    - gf_rtp_is_unicast
    - gf_list_add
    - rtpin_rtsp_queue_command
    - gf_rtp_get_transport
    - gf_rtp_set_ports
    - gf_rtp_setup_transport
    - strlen
    - gf_strdup
    - gf_rtsp_transport_clone
    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:158,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:160,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:161,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:169,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:171,1
    - Dst: rtpin_rtsp_setup_send
      Src: /src/gpac/src/filters/in_rtp_signaling.c:173,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 2
    argNames:
    - stream
    - ch_desc
    argTypes:
    - GF_RTPInStream*
    - RTPIn_StreamDescribe*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 147
    functionDepth: 4
    functionLinenumber: 147
    functionLinenumberEnd: 176
    functionName: rtpin_stream_setup
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 2
    functionsReached:
    - rtpin_stream_ack_connect
    - rtpin_rtsp_setup_send
    - gf_assert
    - 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: 181
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 181
    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:202,1
    - Dst: strstr
      Src: /src/gpac/src/filters/in_rtp_signaling.c:210,1
    - Dst: rtpin_do_authenticate
      Src: /src/gpac/src/filters/in_rtp_signaling.c:213,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:233,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:236,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:237,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filters/in_rtp_signaling.c:242,1
    - Dst: gf_rtp_get_ports
      Src: /src/gpac/src/filters/in_rtp_signaling.c:245,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:247,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:248,1
    - Dst: gf_rtp_setup_transport
      Src: /src/gpac/src/filters/in_rtp_signaling.c:253,1
    - Dst: gf_rtsp_get_server_name
      Src: /src/gpac/src/filters/in_rtp_signaling.c:253,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:258,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:264,1
    - Dst: gf_rtsp_set_interleave_callback
      Src: /src/gpac/src/filters/in_rtp_signaling.c:266,1
    - Dst: gf_rtp_set_interleave_callbacks
      Src: /src/gpac/src/filters/in_rtp_signaling.c:268,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/in_rtp_signaling.c:271,1
    - Dst: rtpin_rtsp_tcp_send_report
      Src: /src/gpac/src/filters/in_rtp_signaling.c:272,1
    - Dst: rtpin_satip_get_server_ip
      Src: /src/gpac/src/filters/in_rtp_signaling.c:273,1
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:280,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:281,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_signaling.c:282,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:287,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:295,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: 298
      start: 183
    functionDepth: 3
    functionLinenumber: 183
    functionLinenumberEnd: 298
    functionName: rtpin_rtsp_setup_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_rtp_set_interleave_callbacks
    - gf_assert
    - rtpin_rtsp_queue_command
    - rtpin_stream_ack_connect
    - GF_SAFEALLOC
    - strstr
    - rtpin_do_authenticate
    - gf_rtp_is_interleaved
    - gf_rtp_setup_transport
    - rtpin_rtsp_tcp_send_report
    - gf_rtp_get_ports
    - gf_list_enum
    - rtpin_satip_get_server_ip
    - gf_rtsp_set_interleave_callback
    - gf_rtsp_get_server_name
    - gf_rtsp_command_new
    - rtpin_stream_init
    - GF_LOG
    - gf_sys_is_cov_mode
    - gf_strdup
    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:311,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:316,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:320,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:322,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:323,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - sess
    - com
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 305
    functionDepth: 5
    functionLinenumber: 305
    functionLinenumberEnd: 325
    functionName: rtpin_rtsp_describe_preprocess
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - rtpin_find_stream
    - gf_free
    - rtpin_stream_setup
    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:348,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:365,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:367,1
    - Dst: rtpin_load_sdp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:371,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:378,1
    - Dst: rtpin_do_authenticate
      Src: /src/gpac/src/filters/in_rtp_signaling.c:385,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:391,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:394,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/in_rtp_signaling.c:395,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:398,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: 400
      start: 328
    functionDepth: 8
    functionLinenumber: 328
    functionLinenumberEnd: 400
    functionName: rtpin_rtsp_describe_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - rtpin_load_sdp
    - gf_free
    - GF_LOG
    - rtpin_find_stream
    - gf_filter_setup_failure
    - rtpin_stream_ack_connect
    - strstr
    - rtpin_stream_setup
    - rtpin_do_authenticate
    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:411,1
    - Dst: rtpin_stream_ack_connect
      Src: /src/gpac/src/filters/in_rtp_signaling.c:417,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_signaling.c:422,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:423,1
    - Dst: rtpin_stream_setup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:425,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:427,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:428,1
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:435,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:437,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:443,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/in_rtp_signaling.c:446,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:451,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/in_rtp_signaling.c:452,1
    - Dst: rtpin_stream_new_standalone
      Src: /src/gpac/src/filters/in_rtp_signaling.c:456,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:458,1
    - Dst: rtpin_add_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:461,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:463,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:470,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:471,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_signaling.c:473,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:474,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:480,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:488,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: 489
      start: 403
    functionDepth: 6
    functionLinenumber: 403
    functionLinenumberEnd: 489
    functionName: rtpin_rtsp_describe_send
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 2
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_rtsp_command_new
    - GF_LOG
    - rtpin_find_stream
    - rtpin_stream_new_standalone
    - rtpin_rtsp_queue_command
    - rtpin_stream_ack_connect
    - GF_SAFEALLOC
    - rtpin_add_stream
    - gf_strdup
    - gf_list_add
    - rtpin_stream_setup
    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:498,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 10
    argCount: 1
    argNames:
    - stream
    argTypes:
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 492
    functionDepth: 2
    functionLinenumber: 492
    functionLinenumberEnd: 503
    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:518,1
    - Dst: rtpin_stream_is_valid
      Src: /src/gpac/src/filters/in_rtp_signaling.c:523,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:524,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:529,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:530,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:544,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:544,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:551,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:557,1
    - Dst: gf_rtsp_reset_aggregation
      Src: /src/gpac/src/filters/in_rtp_signaling.c:564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:568,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filters/in_rtp_signaling.c:568,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp_signaling.c:568,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:570,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 50
    argCount: 2
    argNames:
    - sess
    - com
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTSPCommand*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 510
    functionDepth: 3
    functionLinenumber: 510
    functionLinenumberEnd: 573
    functionName: rtpin_rtsp_usercom_preprocess
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_rtsp_reset_aggregation
    - gf_free
    - rtpin_stream_is_valid
    - GF_LOG
    - gf_assert
    - gf_filter_event_name
    - strcmp
    - rtpin_rtsp_skip_command
    - 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:586,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:587,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/in_rtp_signaling.c:592,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:598,1
    - Dst: gf_rtsp_session_reset
      Src: /src/gpac/src/filters/in_rtp_signaling.c:624,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:642,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:647,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:651,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:652,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/in_rtp_signaling.c:655,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:662,1
    - Dst: rtpin_find_stream
      Src: /src/gpac/src/filters/in_rtp_signaling.c:663,1
    - Dst: gf_rtp_set_info_rtp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:668,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:682,1
    - Dst: gf_rtp_set_info_rtp
      Src: /src/gpac/src/filters/in_rtp_signaling.c:684,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/in_rtp_signaling.c:686,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:695,1
    - Dst: gf_rtsp_register_interleave
      Src: /src/gpac/src/filters/in_rtp_signaling.c:696,1
    - Dst: gf_rtp_get_low_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:698,1
    - Dst: gf_rtp_get_hight_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:699,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:706,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:708,1
    - Dst: gf_rtsp_register_interleave
      Src: /src/gpac/src/filters/in_rtp_signaling.c:709,1
    - Dst: gf_rtp_get_low_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:710,1
    - Dst: gf_rtp_get_hight_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:710,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:716,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:721,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:724,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:726,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:734,1
    - Dst: gf_rtsp_reset_aggregation
      Src: /src/gpac/src/filters/in_rtp_signaling.c:743,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:747,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/in_rtp_signaling.c:747,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:749,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:752,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: 754
      start: 575
    functionDepth: 3
    functionLinenumber: 575
    functionLinenumberEnd: 754
    functionName: rtpin_rtsp_usercom_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - rtpin_stream_is_valid
    - gf_assert
    - gf_rtp_get_low_interleave_id
    - gf_rtp_is_interleaved
    - gf_timestamp_rescale
    - gf_list_get
    - gf_rtp_get_hight_interleave_id
    - gf_rtsp_reset_aggregation
    - rtpin_find_stream
    - gf_sys_clock
    - strcmp
    - rtpin_rtsp_skip_command
    - gf_timestamp_less
    - gf_error_to_string
    - gf_free
    - rtpin_stream_init
    - gf_rtp_set_info_rtp
    - GF_LOG
    - gf_rtsp_session_reset
    - gf_rtsp_register_interleave
    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:786,1
    - Dst: rtpin_rtsp_setup_send
      Src: /src/gpac/src/filters/in_rtp_signaling.c:789,1
    - Dst: rtpin_rtsp_setup_send
      Src: /src/gpac/src/filters/in_rtp_signaling.c:792,1
    - Dst: gf_rtsp_command_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:797,1
    - Dst: gf_rtsp_range_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:802,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:806,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:816,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:827,1
    - Dst: gf_rtsp_range_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:842,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:849,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_signaling.c:851,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:852,1
    - Dst: rtpin_rtsp_is_active
      Src: /src/gpac/src/filters/in_rtp_signaling.c:854,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:856,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:860,1
    - Dst: gf_rtsp_range_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:862,1
    - Dst: gf_rtp_get_current_time
      Src: /src/gpac/src/filters/in_rtp_signaling.c:864,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:865,1
    - Dst: rtpin_rtsp_skip_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:871,1
    - Dst: strlen
      Src: /src/gpac/src/filters/in_rtp_signaling.c:872,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:873,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/in_rtp_signaling.c:880,1
    - Dst: rtpin_stream_init
      Src: /src/gpac/src/filters/in_rtp_signaling.c:883,1
    - Dst: gf_rtp_is_interleaved
      Src: /src/gpac/src/filters/in_rtp_signaling.c:890,1
    - Dst: gf_rtsp_unregister_interleave
      Src: /src/gpac/src/filters/in_rtp_signaling.c:891,1
    - Dst: gf_rtp_get_low_interleave_id
      Src: /src/gpac/src/filters/in_rtp_signaling.c:891,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:894,1
    - Dst: rtpin_rtsp_is_active
      Src: /src/gpac/src/filters/in_rtp_signaling.c:895,1
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp_signaling.c:896,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:903,1
    - Dst: rtpin_rtsp_is_active
      Src: /src/gpac/src/filters/in_rtp_signaling.c:905,1
    - Dst: rtpin_rtsp_teardown
      Src: /src/gpac/src/filters/in_rtp_signaling.c:906,1
    - Dst: gf_rtsp_range_new
      Src: /src/gpac/src/filters/in_rtp_signaling.c:912,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:915,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:919,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/in_rtp_signaling.c:922,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filters/in_rtp_signaling.c:922,1
    - Dst: gf_rtsp_command_del
      Src: /src/gpac/src/filters/in_rtp_signaling.c:923,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/in_rtp_signaling.c:927,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/in_rtp_signaling.c:929,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:932,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: 934
      start: 757
    functionDepth: 4
    functionLinenumber: 757
    functionLinenumberEnd: 934
    functionName: rtpin_rtsp_usercom_send
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 2
    functionsReached:
    - gf_rtsp_unregister_interleave
    - gf_rtp_get_current_time
    - rtpin_rtsp_queue_command
    - gf_rtp_get_low_interleave_id
    - gf_rtsp_range_del
    - gf_rtp_is_interleaved
    - gf_malloc
    - rtpin_rtsp_setup_send
    - gf_rtsp_range_new
    - memcpy
    - rtpin_rtsp_is_active
    - gf_list_enum
    - gf_sys_clock
    - rtpin_rtsp_teardown
    - strlen
    - rtpin_rtsp_skip_command
    - gf_rtsp_command_new
    - rtpin_stream_init
    - GF_LOG
    - gf_filter_event_name
    - gf_rtsp_command_del
    - gf_strdup
    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:944,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_rtp_signaling.c:947,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/in_rtp_signaling.c:951,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/in_rtp_signaling.c:953,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: 956
      start: 940
    functionDepth: 1
    functionLinenumber: 940
    functionLinenumberEnd: 956
    functionName: rtpin_rtsp_teardown_process
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - 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:967,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:968,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_rtp_signaling.c:971,1
    - Dst: rtpin_rtsp_queue_command
      Src: /src/gpac/src/filters/in_rtp_signaling.c:975,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - sess
    - stream
    argTypes:
    - GF_RTPInRTSP*
    - GF_RTPInStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 958
    functionDepth: 3
    functionLinenumber: 958
    functionLinenumberEnd: 976
    functionName: rtpin_rtsp_teardown
    functionSourceFile: /src/gpac/src/filters/in_rtp_signaling.c
    functionUses: 4
    functionsReached:
    - gf_strdup
    - gf_rtsp_command_new
    - rtpin_rtsp_queue_command
    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_UINT
    - PROP_LONGUINT
    - gf_filter_pid_set_property
    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_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - gf_bs_available
    - gf_bs_new
    - vorbis_comment_clear
    - gf_bs_read_data
    - gf_bs_del
    - vorbis_block_init
    - vorbis_dsp_clear
    - gf_malloc
    - vorbis_synthesis_init
    - gf_filter_get_udta
    - gf_crc_32
    - vorbis_comment_init
    - vorbisdec_set_props
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - vorbis_synthesis_headerin
    - gf_filter_pid_copy_properties
    - vorbis_block_clear
    - vorbis_info_init
    - gf_filter_pid_check_caps
    - gf_bs_read_u16
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - vorbis_info_clear
    - strncmp
    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:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - vorbis_to_intern
    - gf_filter_pid_set_eos
    - gf_assert
    - vorbis_synthesis
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - vorbis_synthesis_blockin
    - gf_filter_get_udta
    - vorbis_synthesis_read
    - gf_timestamp_rescale
    - vorbisdec_set_props
    - gf_filter_pck_get_data
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_filter_pck_set_duration
    - gf_filter_pid_is_eos
    - vorbis_synthesis_pcmout
    - gf_filter_pck_get_timescale
    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
    - gf_filter_get_udta
    - vorbis_comment_clear
    - vorbis_info_clear
    - vorbis_dsp_clear
    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_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - gf_filter_get_udta
    - gf_evg_stencil_set_texture_planes
    - gf_evg_surface_clear
    - gf_filter_pck_get_data
    - gf_evg_surface_attach_to_buffer
    - gf_filter_pck_send
    - gf_evg_enable_threading
    - gf_evg_surface_set_path
    - GF_FilterFrameInterface*::get_plane
    - gf_evg_surface_fill
    - gf_filter_pid_is_eos
    - gf_color_parse
    - gf_filter_pck_forward
    - GF_LOG
    - CHK_EXIT
    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_filter_pid_get_property
    - INT2FIX
    - gf_evg_surface_format_ok
    - gf_path_add_rect_center
    - gf_filter_get_udta
    - gf_evg_texture_format_ok
    - gf_filter_pid_remove
    - PROP_FRAC
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_path_reset
    - gf_filter_pid_check_caps
    - gf_filter_is_dynamic
    - gf_pixel_fmt_name
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_pixel_fmt_is_transparent
    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_filter_get_udta
    - gf_evg_stencil_new
    - gf_path_new
    - gf_evg_surface_new
    - gf_evg_stencil_set_filter
    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_path_del
    - gf_evg_stencil_delete
    - gf_filter_get_udta
    - gf_evg_surface_delete
    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:215,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:216,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filters/dmx_dash.c:218,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_dash.c:220,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:222,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: 223
      start: 207
    functionDepth: 2
    functionLinenumber: 207
    functionLinenumberEnd: 223
    functionName: dashdmx_set_string_list_prop
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_malloc
    - gf_list_pop_front
    - gf_list_del
    - gf_filter_pck_set_property
    linkageType: ''
    returnType: void
    signature: void dashdmx_set_string_list_prop(GF_FilterPacket *ref, u32 prop_name,
      GF_List **str_list)
  - BBCount: 51
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:241,1
    - Dst: gf_filter_pck_new_copy
      Src: /src/gpac/src/filters/dmx_dash.c:244,1
    - Dst: gf_filter_pck_get_framing
      Src: /src/gpac/src/filters/dmx_dash.c:249,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:250,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:251,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_dash.c:254,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_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:258,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:258,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dmx_dash.c:258,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:264,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:267,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:268,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:273,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:280,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:282,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:282,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:283,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:283,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:291,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:293,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:296,1
    - Dst: PROP_STRING
      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_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:297,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:298,1
    - Dst: PROP_FRAC64
      Src: /src/gpac/src/filters/dmx_dash.c:298,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:301,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:302,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:302,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/dmx_dash.c:308,1
    - Dst: gf_filter_pck_set_carousel_version
      Src: /src/gpac/src/filters/dmx_dash.c:310,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:312,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_dash.c:316,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:322,1
    - Dst: PROP_STRING_NO_COPY
      Src: /src/gpac/src/filters/dmx_dash.c:322,1
    - Dst: dashdmx_set_string_list_prop
      Src: /src/gpac/src/filters/dmx_dash.c:325,1
    - Dst: dashdmx_set_string_list_prop
      Src: /src/gpac/src/filters/dmx_dash.c:326,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:329,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:331,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:332,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:332,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:334,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:340,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:340,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:343,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:345,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:347,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:350,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/dmx_dash.c:350,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:355,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:355,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:358,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:360,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:362,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dmx_dash.c:367,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dmx_dash.c:368,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dmx_dash.c:369,1
    - Dst: gf_filter_pck_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:375,1
    - Dst: gf_dash_group_get_presentation_time_offset
      Src: /src/gpac/src/filters/dmx_dash.c:382,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:392,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/src/filters/dmx_dash.c:402,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:410,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:412,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:415,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:418,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:425,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:426,1
    - Dst: gf_dash_get_period_start
      Src: /src/gpac/src/filters/dmx_dash.c:429,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:438,1
    - Dst: gf_timestamp_rescale_signed
      Src: /src/gpac/src/filters/dmx_dash.c:439,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:440,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:447,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:469,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:470,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:496,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_dash.c:508,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:512,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/dmx_dash.c:513,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/dmx_dash.c:514,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/dmx_dash.c:515,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:518,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:521,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:523,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/dmx_dash.c:523,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:526,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:526,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:529,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:530,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 225
    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: 531
      start: 226
    functionDepth: 5
    functionLinenumber: 226
    functionLinenumberEnd: 531
    functionName: dashdmx_forward_packet
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_group_next_seg_info
    - gf_filter_pid_get_property
    - PROP_LONGUINT
    - gf_filter_pck_merge_properties
    - PROP_DOUBLE
    - gf_filter_pck_new_copy
    - gf_timestamp_rescale_signed
    - gf_filter_pid_drop_packet
    - gf_filter_pck_set_property
    - gf_filter_pck_get_framing
    - PROP_FRAC64
    - gf_dash_get_period_duration
    - gf_filter_pck_set_seek_flag
    - gf_filter_pck_set_carousel_version
    - gf_timestamp_rescale
    - gf_filter_pck_get_seek_flag
    - gf_net_get_ntp_ts
    - gf_filter_pid_get_udta_flags
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - gf_dash_is_dynamic_mpd
    - gf_dash_get_period_start
    - gf_dash_group_get_presentation_time_offset
    - gf_filter_pck_set_cts
    - gf_dash_is_m3u8
    - gf_filter_pck_get_cts
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pck_set_duration
    - gf_filter_pck_new_ref
    - gf_filter_pid_is_eos
    - PROP_STRING_NO_COPY
    - gf_filter_pid_set_udta_flags
    - dashdmx_set_string_list_prop
    - gf_filter_pck_get_property
    - gf_filter_pck_set_framing
    - GF_LOG
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_filter_pck_get_timescale
    - gf_filter_pck_set_dts
    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:539,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:539,1
    - Dst: gf_dash_set_group_download_state
      Src: /src/gpac/src/filters/dmx_dash.c:541,1
    - Dst: gf_dash_get_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:543,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:546,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: 564
      start: 534
    functionDepth: 7
    functionLinenumber: 534
    functionLinenumberEnd: 564
    functionName: dashdmx_on_filter_setup_error
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_post_process_task
    - gf_dash_get_group_done
    - gf_dash_set_group_download_state
    - gf_error_to_string
    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:584,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_dash.c:588,1
    - Dst: gf_dash_set_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:592,1
    - Dst: gf_dash_get_url
      Src: /src/gpac/src/filters/dmx_dash.c:594,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_dash.c:595,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/dmx_dash.c:596,1
    - Dst: gf_dash_group_get_segment_init_keys
      Src: /src/gpac/src/filters/dmx_dash.c:599,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:601,1
    - Dst: strncmp
      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_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:611,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:613,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_dash.c:615,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_dash.c:621,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:623,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:625,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:626,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:628,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:629,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:630,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:636,1
    - Dst: snprintf
      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_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:641,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:642,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/dmx_dash.c:645,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:647,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:647,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:648,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:649,1
    - Dst: gf_dash_set_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:650,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:653,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dmx_dash.c:655,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/dmx_dash.c:657,1
    - Dst: gf_dash_group_init_segment_is_media
      Src: /src/gpac/src/filters/dmx_dash.c:659,1
    - Dst: gf_cryptfin_set_kms
      Src: /src/gpac/src/filters/dmx_dash.c:675,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:677,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_dash.c:683,1
    - Dst: gf_dash_group_discard_segment
      Src: /src/gpac/src/filters/dmx_dash.c:687,1
    - Dst: gf_dash_group_get_num_groups_depending_on
      Src: /src/gpac/src/filters/dmx_dash.c:688,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:690,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: 693
      start: 571
    functionDepth: 6
    functionLinenumber: 571
    functionLinenumberEnd: 693
    functionName: dashdmx_load_source
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_url
    - GF_SAFEALLOC
    - snprintf
    - gf_dash_set_group_udta
    - gf_dash_group_get_num_groups_depending_on
    - gf_dash_group_get_segment_init_keys
    - gf_filter_connect_source
    - gf_dynstrcat
    - memcpy
    - gf_filter_set_source
    - gf_dash_group_discard_segment
    - strnicmp
    - gf_filter_set_setup_failure_callback
    - gf_cryptfin_set_kms
    - gf_filter_get_sep
    - sprintf
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - gf_dash_group_init_segment_is_media
    - strncmp
    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:701,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: 703
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 703
    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:727,1
    - Dst: gf_dm_sess_detach_async
      Src: /src/gpac/src/filters/dmx_dash.c:731,1
    - Dst: gf_dm_sess_force_memory_mode
      Src: /src/gpac/src/filters/dmx_dash.c:733,1
    - Dst: gf_dm_sess_setup_from_url
      Src: /src/gpac/src/filters/dmx_dash.c:736,1
    - Dst: gf_dm_sess_new
      Src: /src/gpac/src/filters/dmx_dash.c:748,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: 754
      start: 709
    functionDepth: 0
    functionLinenumber: 709
    functionLinenumberEnd: 754
    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_force_memory_mode
    - gf_dm_sess_new
    - gf_dm_sess_detach_async
    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:761,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 756
    functionDepth: 0
    functionLinenumber: 756
    functionLinenumberEnd: 763
    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:769,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 764
    functionDepth: 0
    functionLinenumber: 764
    functionLinenumberEnd: 773
    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:779,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 774
    functionDepth: 0
    functionLinenumber: 774
    functionLinenumberEnd: 783
    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:787,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 784
    functionDepth: 0
    functionLinenumber: 784
    functionLinenumberEnd: 791
    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:801,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/dmx_dash.c:803,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 807
      start: 792
    functionDepth: 1
    functionLinenumber: 792
    functionLinenumberEnd: 807
    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:811,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 808
    functionDepth: 0
    functionLinenumber: 808
    functionLinenumberEnd: 815
    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:820,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:824,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:827,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:828,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: 831
      start: 816
    functionDepth: 1
    functionLinenumber: 816
    functionLinenumberEnd: 831
    functionName: dashdmx_io_get_header_value
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_info_str
    - gf_dm_sess_get_header
    - gf_filter_release_property
    - gf_filter_pid_get_property_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:835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 832
    functionDepth: 0
    functionLinenumber: 832
    functionLinenumberEnd: 839
    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:843,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: 847
      start: 840
    functionDepth: 0
    functionLinenumber: 840
    functionLinenumberEnd: 847
    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:851,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: 855
      start: 848
    functionDepth: 0
    functionLinenumber: 848
    functionLinenumberEnd: 855
    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:862,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/src/filters/dmx_dash.c:865,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 857
    functionDepth: 0
    functionLinenumber: 857
    functionLinenumberEnd: 870
    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:876,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 872
    functionDepth: 0
    functionLinenumber: 872
    functionLinenumberEnd: 889
    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:895,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 896
    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:900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 897
    functionDepth: 0
    functionLinenumber: 897
    functionLinenumberEnd: 902
    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:906,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dashio
    - session
    argTypes:
    - GF_DASHFileIO*
    - GF_DASHFileIOSession
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 903
    functionDepth: 0
    functionLinenumber: 903
    functionLinenumberEnd: 908
    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:918,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:920,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:920,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:921,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:921,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/src/filters/dmx_dash.c:921,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/src/filters/dmx_dash.c:924,1
    - Dst: JS_NewObject
      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_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:931,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:932,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:932,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:933,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:933,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:934,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:934,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:935,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:937,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/dmx_dash.c:940,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:942,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:948,1
    - Dst: JS_NewObject
      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_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:955,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:956,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:956,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:957,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:957,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_NewBool
      Src: /src/gpac/src/filters/dmx_dash.c:959,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_NewBool
      Src: /src/gpac/src/filters/dmx_dash.c:964,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:965,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:966,1
    - Dst: JS_NewInt32
      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_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:970,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:971,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:971,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_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:976,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:976,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:977,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:977,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:979,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dmx_dash.c:979,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:980,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/filters/dmx_dash.c:980,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_dash.c:983,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filters/dmx_dash.c:984,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_dash.c:986,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/dmx_dash.c:988,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:988,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:990,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:992,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filters/dmx_dash.c:994,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:997,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:999,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:1000,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:1001,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 68
    argCount: 2
    argNames:
    - ctx
    - group_idx
    argTypes:
    - GF_DASHDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 913
    functionDepth: 4
    functionLinenumber: 913
    functionLinenumberEnd: 1002
    functionName: dashdmx_js_declare_group
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_period_duration
    - JS_NewInt64
    - JS_NewBool
    - JS_NewFloat64
    - gf_list_count
    - JS_NewString
    - JS_NewObject
    - gf_list_get
    - JS_NewArray
    - JS_FreeValue
    - JS_Call
    - gf_dash_group_get_num_qualities
    - JS_SetPropertyUint32
    - JS_NewInt32
    - gf_dash_group_get_srd_info
    - gf_dash_group_get_quality_info
    - JS_SetPropertyStr
    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:1008,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:1010,1
    - Dst: dashdmx_js_declare_group
      Src: /src/gpac/src/filters/dmx_dash.c:1011,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - group_idx
    argTypes:
    - GF_DASHDmxCtx*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 1005
    functionDepth: 5
    functionLinenumber: 1005
    functionLinenumberEnd: 1014
    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:1025,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1027,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1032,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1033,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_dash.c:1034,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_dash.c:1035,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1043,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1044,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1046,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:1051,1
    - Dst: memmove
      Src: /src/gpac/src/filters/dmx_dash.c:1052,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: 1057
      start: 1016
    functionDepth: 0
    functionLinenumber: 1016
    functionLinenumberEnd: 1057
    functionName: process_base_url
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - memmove
    - memcpy
    - strstr
    - strlen
    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:1066,1
    - Dst: process_base_url
      Src: /src/gpac/src/filters/dmx_dash.c:1071,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:1075,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1076,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1079,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1079,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dmx_dash.c:1081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:1083,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_dash.c:1084,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/dmx_dash.c:1085,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1086,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1086,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1088,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:1088,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_dash.c:1090,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_dash.c:1094,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_dash.c:1095,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_dash.c:1096,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_dash.c:1097,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_dash.c:1099,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:1099,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1102,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1108,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: 1110
      start: 1060
    functionDepth: 3
    functionLinenumber: 1060
    functionLinenumberEnd: 1110
    functionName: dashdmx_io_manifest_updated
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - PROP_LONGUINT
    - process_base_url
    - gf_assert
    - gf_filter_pck_set_property
    - gf_list_add
    - memcpy
    - gf_filter_pck_send
    - gf_dash_is_dynamic_mpd
    - gf_dash_is_m3u8
    - PROP_STRING
    - gf_list_new
    - gf_free
    - gf_file_load_data
    - GF_LOG
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_strdup
    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:1122,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1130,1
    - Dst: gf_dash_groups_set_language
      Src: /src/gpac/src/filters/dmx_dash.c:1131,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dmx_dash.c:1131,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1133,1
    - Dst: gf_dash_switch_quality
      Src: /src/gpac/src/filters/dmx_dash.c:1134,1
    - Dst: dashin_abort
      Src: /src/gpac/src/filters/dmx_dash.c:1136,1
    - Dst: gf_dash_groups_set_language
      Src: /src/gpac/src/filters/dmx_dash.c:1141,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filters/dmx_dash.c:1141,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1152,1
    - Dst: gf_dash_is_group_selected
      Src: /src/gpac/src/filters/dmx_dash.c:1153,1
    - Dst: gf_dash_get_url
      Src: /src/gpac/src/filters/dmx_dash.c:1154,1
    - Dst: gf_dash_group_loop_detected
      Src: /src/gpac/src/filters/dmx_dash.c:1155,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1156,1
    - Dst: gf_dash_group_get_language
      Src: /src/gpac/src/filters/dmx_dash.c:1157,1
    - Dst: gf_dash_group_get_num_components
      Src: /src/gpac/src/filters/dmx_dash.c:1158,1
    - Dst: gf_dash_get_utc_drift_estimate
      Src: /src/gpac/src/filters/dmx_dash.c:1159,1
    - Dst: gf_dash_group_set_codec_stat
      Src: /src/gpac/src/filters/dmx_dash.c:1163,1
    - Dst: gf_dash_group_set_buffer_levels
      Src: /src/gpac/src/filters/dmx_dash.c:1164,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1167,1
    - Dst: gf_dash_set_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:1168,1
    - Dst: gf_dash_group_select_quality
      Src: /src/gpac/src/filters/dmx_dash.c:1169,1
    - Dst: gf_dash_override_ntp
      Src: /src/gpac/src/filters/dmx_dash.c:1172,1
    - Dst: gf_dash_group_set_quality_degradation_hint
      Src: /src/gpac/src/filters/dmx_dash.c:1175,1
    - Dst: GF_DASHDmxCtx*::on_period_reset
      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_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:1182,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:1184,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1184,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:1185,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:1186,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:1192,1
    - Dst: gf_dash_is_group_selectable
      Src: /src/gpac/src/filters/dmx_dash.c:1198,1
    - Dst: gf_dash_is_group_selected
      Src: /src/gpac/src/filters/dmx_dash.c:1201,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1207,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: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1212,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1213,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1214,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1215,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:1222,1
    - Dst: gf_dash_group_has_dependent_group
      Src: /src/gpac/src/filters/dmx_dash.c:1228,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:1229,1
    - Dst: dashdmx_declare_group
      Src: /src/gpac/src/filters/dmx_dash.c:1230,1
    - Dst: gf_dash_group_get_segment_init_url
      Src: /src/gpac/src/filters/dmx_dash.c:1234,1
    - Dst: dashdmx_load_source
      Src: /src/gpac/src/filters/dmx_dash.c:1236,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:1238,1
    - Dst: gf_dash_group_get_video_info
      Src: /src/gpac/src/filters/dmx_dash.c:1243,1
    - Dst: gf_dash_group_get_srd_max_size_info
      Src: /src/gpac/src/filters/dmx_dash.c:1248,1
    - Dst: dashdmx_declare_group
      Src: /src/gpac/src/filters/dmx_dash.c:1252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:1261,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:1269,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1270,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/dmx_dash.c:1273,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1276,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1277,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:1278,1
    - Dst: gf_dash_set_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1279,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1281,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1282,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1283,1
    - Dst: GF_DASHDmxCtx*::on_period_reset
      Src: /src/gpac/src/filters/dmx_dash.c:1287,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:1289,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:1290,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:1291,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:1292,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1299,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:1302,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:1305,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1313,1
    - Dst: gf_dash_group_has_dependent_group
      Src: /src/gpac/src/filters/dmx_dash.c:1316,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1317,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:1325,1
    - Dst: gf_dash_group_get_as_id
      Src: /src/gpac/src/filters/dmx_dash.c:1327,1
    - Dst: gf_dash_get_period_id
      Src: /src/gpac/src/filters/dmx_dash.c:1328,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:1330,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:1333,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:1336,1
    - Dst: gf_dash_get_timeshift_buffer_pos
      Src: /src/gpac/src/filters/dmx_dash.c:1341,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1342,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1343,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1344,1
    - Dst: PROP_DOUBLE
      Src: /src/gpac/src/filters/dmx_dash.c:1344,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1350,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1351,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1352,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1352,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1357,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1358,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1359,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1360,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/dmx_dash.c:1364,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filters/dmx_dash.c:1366,1
    - Dst: gf_dash_group_set_codec_stat
      Src: /src/gpac/src/filters/dmx_dash.c:1376,1
    - Dst: gf_dash_group_set_buffer_levels
      Src: /src/gpac/src/filters/dmx_dash.c:1379,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1391,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1392,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:1396,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:1399,1
    - Dst: gf_filter_pid_get_next_ts
      Src: /src/gpac/src/filters/dmx_dash.c:1400,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/dmx_dash.c:1403,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:1409,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: 1415
      start: 1114
    functionDepth: 9
    functionLinenumber: 1114
    functionLinenumberEnd: 1415
    functionName: dashdmx_io_on_dash_event
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_groups_set_language
    - dashdmx_load_source
    - gf_dash_get_group_udta
    - gf_dash_get_period_id
    - gf_filter_pid_get_timescale
    - gf_dash_get_timeshift_buffer_pos
    - PROP_DOUBLE
    - dashin_abort
    - gf_dash_group_enum_descriptor
    - gf_dash_get_utc_drift_estimate
    - GF_FEVT_INIT
    - JS_Call
    - gf_dash_get_url
    - gf_filter_get_opid
    - gf_filter_pid_send_event
    - gf_filter_get_opid_count
    - gf_timestamp_greater
    - gf_filter_pid_set_info
    - gf_dash_group_set_codec_stat
    - gf_dash_is_group_selectable
    - gf_filter_pid_set_udta
    - gf_dash_set_group_udta
    - gf_filter_pid_get_udta
    - gf_filter_remove_src
    - gf_filter_post_process_task
    - JS_FreeValue
    - JS_IsFunction
    - gf_filter_send_event
    - gf_dash_group_get_as_id
    - gf_dash_group_get_num_qualities
    - gf_dash_group_select
    - gf_filter_pid_get_next_ts
    - gf_dash_group_get_segment_init_url
    - gf_dash_is_dynamic_mpd
    - GF_DASHDmxCtx*::on_period_reset
    - strcmp
    - gf_dash_is_group_selected
    - JS_NewInt32
    - gf_dash_override_ntp
    - gf_dash_set_automatic_switching
    - gf_dash_group_set_quality_degradation_hint
    - gf_dash_get_group_count
    - gf_dash_group_get_quality_info
    - gf_filter_pid_set_udta_flags
    - gf_dash_group_select_quality
    - gf_free
    - gf_dash_group_set_buffer_levels
    - gf_dash_group_get_language
    - gf_filter_setup_failure
    - GF_LOG
    - gf_filter_pid_get_statistics
    - gf_sys_is_cov_mode
    - PROP_UINT
    - dashdmx_declare_group
    - gf_dash_switch_quality
    - gf_dash_group_loop_detected
    - gf_dash_group_get_num_components
    - gf_dash_group_get_video_info
    - gf_opts_get_key
    - gf_dash_group_has_dependent_group
    - gf_dash_group_get_srd_max_size_info
    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:1420,1
    - Dst: gf_dash_get_min_buffer_time
      Src: /src/gpac/src/filters/dmx_dash.c:1426,1
    - Dst: gf_dash_set_user_buffer
      Src: /src/gpac/src/filters/dmx_dash.c:1431,1
    - Dst: gf_dash_group_set_max_buffer_playout
      Src: /src/gpac/src/filters/dmx_dash.c:1433,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1417
    functionDepth: 3
    functionLinenumber: 1417
    functionLinenumberEnd: 1434
    functionName: dashdmx_setup_buffer
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_output_buffer_max
    - gf_dash_get_min_buffer_time
    - gf_dash_set_user_buffer
    - gf_dash_group_set_max_buffer_playout
    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:1439,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:1443,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1446,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DASHDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1451
      start: 1437
    functionDepth: 1
    functionLinenumber: 1437
    functionLinenumberEnd: 1451
    functionName: dashdmx_dash_playback_mode
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_get_ipid_count
    - gf_filter_get_ipid
    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:1458,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1459,1
    - Dst: gf_filter_pid_is_filter_in_parents
      Src: /src/gpac/src/filters/dmx_dash.c:1461,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - src_pid
    argTypes:
    - GF_DASHDmxCtx*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1465
      start: 1454
    functionDepth: 2
    functionLinenumber: 1454
    functionLinenumberEnd: 1465
    functionName: dashdmx_group_idx_from_pid
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_is_filter_in_parents
    - gf_dash_get_group_udta
    - gf_dash_get_group_count
    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:1471,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1472,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1473,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1477
      start: 1467
    functionDepth: 1
    functionLinenumber: 1467
    functionLinenumberEnd: 1477
    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_count
    - gf_filter_get_opid
    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:1483,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:1490,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1492,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1493,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1494,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1499,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1501,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:1506,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1508,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1509,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1510,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1512,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1517,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1519,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filters/dmx_dash.c:1522,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/dmx_dash.c:1530,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_dash.c:1535,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: 1536
      start: 1479
    functionDepth: 1
    functionLinenumber: 1479
    functionLinenumberEnd: 1536
    functionName: dashdmx_create_output_pid
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_get_udta
    - gf_filter_get_opid
    - gf_filter_pid_is_playing
    - gf_props_equal
    - gf_filter_pid_new
    - gf_filter_get_opid_count
    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:1543,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:1544,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: 1547
      start: 1538
    functionDepth: 0
    functionLinenumber: 1538
    functionLinenumberEnd: 1547
    functionName: dashdmx_merge_prop
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_get_property_str
    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:1558,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: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1571,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1572,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1576,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: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1585,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1586,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1590,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1594,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1596,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1598,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1602,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1603,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:1612,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1613,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1617,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_dash.c:1618,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 73
    argCount: 2
    argNames:
    - q_desc
    - qinfo
    argTypes:
    - char**
    - GF_DASHQualityInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1621
      start: 1550
    functionDepth: 1
    functionLinenumber: 1550
    functionLinenumberEnd: 1621
    functionName: dashdm_format_qinfo
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - snprintf
    - gf_dynstrcat
    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:1634,1
    - Dst: gf_dash_group_get_as_id
      Src: /src/gpac/src/filters/dmx_dash.c:1639,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1642,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1644,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1646,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_dash.c:1648,1
    - Dst: dashdmx_dash_playback_mode
      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_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1654,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1655,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1655,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1656,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1656,1
    - Dst: gf_dash_group_get_sar
      Src: /src/gpac/src/filters/dmx_dash.c:1660,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1662,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/dmx_dash.c:1662,1
    - Dst: gf_dash_get_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1666,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1668,1
    - Dst: PROP_FRAC64_INT
      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: gf_dash_group_get_time_shift_buffer_depth
      Src: /src/gpac/src/filters/dmx_dash.c:1672,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1674,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_dash.c:1674,1
    - Dst: gf_dash_get_min_buffer_time
      Src: /src/gpac/src/filters/dmx_dash.c:1678,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1679,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1679,1
    - Dst: gf_dash_get_max_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1684,1
    - Dst: gf_dash_is_low_latency
      Src: /src/gpac/src/filters/dmx_dash.c:1686,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:1691,1
    - Dst: gf_dash_set_low_latency_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1694,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1698,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1699,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1700,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1700,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1705,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:1708,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:1712,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: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1724,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1725,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1726,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:1727,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:1731,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:1733,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:1735,1
    - Dst: dashdm_format_qinfo
      Src: /src/gpac/src/filters/dmx_dash.c:1738,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/dmx_dash.c:1740,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1746,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1750,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1750,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1751,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:1754,1
    - Dst: gf_dash_get_dependent_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:1760,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/src/filters/dmx_dash.c:1762,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1770,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:1772,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1774,1
    - Dst: gf_dash_group_get_num_qualities
      Src: /src/gpac/src/filters/dmx_dash.c:1776,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:1778,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:1782,1
    - Dst: dashdm_format_qinfo
      Src: /src/gpac/src/filters/dmx_dash.c:1785,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_dash.c:1788,1
    - Dst: gf_filter_pid_set_info_dyn
      Src: /src/gpac/src/filters/dmx_dash.c:1789,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1791,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1796,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1796,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1798,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:1798,1
    - Dst: gf_dash_group_has_init_segment
      Src: /src/gpac/src/filters/dmx_dash.c:1800,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1801,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:1801,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:1806,1
    - Dst: gf_dash_group_get_time_shift_buffer_depth
      Src: /src/gpac/src/filters/dmx_dash.c:1808,1
    - Dst: gf_dash_group_get_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1809,1
    - Dst: gf_dash_get_max_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1814,1
    - Dst: gf_dash_get_max_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1815,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1820,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1820,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1822,1
    - Dst: gf_dash_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:1827,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1828,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1828,1
    - Dst: gf_filter_pid_set_info
      Src: /src/gpac/src/filters/dmx_dash.c:1829,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1829,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1832,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1838,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1842,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:1844,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1844,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1847,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:1849,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1849,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/dmx_dash.c:1852,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:1853,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/dmx_dash.c:1853,1
    - Dst: gf_dash_get_utc_drift_estimate
      Src: /src/gpac/src/filters/dmx_dash.c:1853,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1856,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:1857,1
    - Dst: gf_dash_group_get_srd_info
      Src: /src/gpac/src/filters/dmx_dash.c:1860,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1868,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1869,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:1873,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1876,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1877,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dmx_dash.c:1879,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1883,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1886,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1887,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1887,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1888,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1888,1
    - Dst: atoi
      Src: /src/gpac/src/filters/dmx_dash.c:1888,1
    - Dst: dashdmx_notify_group_quality
      Src: /src/gpac/src/filters/dmx_dash.c:1900,1
    - Dst: gf_filter_pid_merge_properties
      Src: /src/gpac/src/filters/dmx_dash.c:1906,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1910,1
    - Dst: PROP_NAME
      Src: /src/gpac/src/filters/dmx_dash.c:1910,1
    - Dst: gf_dash_group_enum_descriptor
      Src: /src/gpac/src/filters/dmx_dash.c:1918,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:1921,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1927,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:1927,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1931,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1931,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1932,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_dash.c:1932,1
    - Dst: gf_dash_group_get_clearkey_uri
      Src: /src/gpac/src/filters/dmx_dash.c:1935,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1937,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1937,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1938,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/dmx_dash.c:1938,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1945,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1945,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1946,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1946,1
    - Dst: gf_dash_group_get_segment_duration
      Src: /src/gpac/src/filters/dmx_dash.c:1948,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1949,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/dmx_dash.c:1949,1
    - Dst: gf_dash_group_next_seg_info
      Src: /src/gpac/src/filters/dmx_dash.c:1951,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1953,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1953,1
    - Dst: gf_dash_group_get_representation_id
      Src: /src/gpac/src/filters/dmx_dash.c:1957,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1959,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1959,1
    - Dst: gf_dash_get_period_start
      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_LONGUINT
      Src: /src/gpac/src/filters/dmx_dash.c:1962,1
    - Dst: gf_dash_group_get_representation_id
      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_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1966,1
    - Dst: gf_dash_get_base_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:1969,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1970,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1970,1
    - Dst: gf_dash_get_period_id
      Src: /src/gpac/src/filters/dmx_dash.c:1972,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1973,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:1973,1
    - Dst: gf_dash_group_get_as_id
      Src: /src/gpac/src/filters/dmx_dash.c:1975,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:1976,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:1976,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: 1977
      start: 1625
    functionDepth: 6
    functionLinenumber: 1625
    functionLinenumberEnd: 1977
    functionName: dashdmx_declare_properties
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_dash_group_next_seg_info
    - PROP_LONGUINT
    - gf_dash_group_get_representation_id
    - gf_dash_get_period_id
    - dashdmx_dash_playback_mode
    - gf_dash_group_get_sar
    - gf_dash_get_duration
    - gf_dash_group_enum_descriptor
    - gf_dash_get_utc_drift_estimate
    - gf_filter_pid_set_name
    - gf_filter_get_opid
    - gf_dash_group_has_init_segment
    - gf_filter_get_opid_count
    - strstr
    - gf_filter_pid_set_info
    - gf_dash_is_low_latency
    - gf_malloc
    - gf_dash_get_max_segment_duration
    - gf_filter_pid_set_info_str
    - dashdm_format_qinfo
    - PROP_FRAC_INT
    - gf_filter_pid_merge_properties
    - gf_dash_group_get_as_id
    - PROP_FRAC
    - gf_dash_group_get_num_qualities
    - gf_sys_is_test_mode
    - gf_realloc
    - gf_filter_pid_copy_properties
    - gf_dash_group_get_time_shift_buffer_depth
    - gf_dash_get_dependent_group_index
    - gf_opts_get_bool
    - atoi
    - gf_dash_is_dynamic_mpd
    - gf_dash_get_period_start
    - gf_dash_get_min_buffer_time
    - PROP_BOOL
    - gf_dash_set_low_latency_mode
    - gf_dash_get_info
    - PROP_STRING
    - strcmp
    - gf_dash_group_get_srd_info
    - gf_dash_group_get_quality_info
    - gf_filter_pid_set_info_dyn
    - gf_dash_group_get_segment_duration
    - gf_filter_pid_set_property_str
    - PROP_DATA
    - sprintf
    - PROP_FRAC64_INT
    - GF_LOG
    - PROP_SINT
    - PROP_NAME
    - gf_dash_get_base_group_index
    - gf_filter_pid_set_property
    - PROP_UINT
    - dashdmx_notify_group_quality
    - gf_strdup
    - memset
    - gf_dash_group_get_clearkey_uri
    - strncmp
    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:1985,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:1992,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:1993,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:1994,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filters/dmx_dash.c:1996,1
    - Dst: gf_dash_close
      Src: /src/gpac/src/filters/dmx_dash.c:1999,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2002,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_dash.c:2005,1
    - Dst: gf_dash_all_groups_done
      Src: /src/gpac/src/filters/dmx_dash.c:2006,1
    - Dst: gf_dash_in_last_period
      Src: /src/gpac/src/filters/dmx_dash.c:2006,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dmx_dash.c:2007,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2009,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2010,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2016,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2017,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2027,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2029,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2032,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_dash.c:2034,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_dash.c:2043,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_dash.c:2045,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dmx_dash.c:2046,1
    - Dst: gf_filter_pck_ref
      Src: /src/gpac/src/filters/dmx_dash.c:2049,1
    - Dst: gf_fileio_from_mem
      Src: /src/gpac/src/filters/dmx_dash.c:2050,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:2053,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2056,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2058,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dmx_dash.c:2067,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_dash.c:2068,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filters/dmx_dash.c:2069,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2070,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2072,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2072,1
    - Dst: gf_dash_open
      Src: /src/gpac/src/filters/dmx_dash.c:2076,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2078,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:2078,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_dash.c:2079,1
    - Dst: strchr
      Src: /src/gpac/src/filters/dmx_dash.c:2083,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2085,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:2086,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:2088,1
    - Dst: gf_dash_is_smooth_streaming
      Src: /src/gpac/src/filters/dmx_dash.c:2088,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2095,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2098,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2099,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:2100,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2102,1
    - Dst: dashdmx_group_idx_from_pid
      Src: /src/gpac/src/filters/dmx_dash.c:2110,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2112,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_dash.c:2115,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2116,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2118,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2121,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2124,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2127,1
    - Dst: dashdmx_create_output_pid
      Src: /src/gpac/src/filters/dmx_dash.c:2130,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2131,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2132,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:2134,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2139,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2140,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2142,1
    - Dst: gf_dash_set_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:2145,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2146,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2148,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2149,1
    - Dst: dashdmx_declare_properties
      Src: /src/gpac/src/filters/dmx_dash.c:2156,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2160,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: 2163
      start: 1979
    functionDepth: 15
    functionLinenumber: 1979
    functionLinenumberEnd: 2163
    functionName: dashdmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_dash_get_group_udta
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_set_name
    - gf_filter_get_opid
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_dash_open
    - gf_filter_get_opid_count
    - strstr
    - strchr
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_dash_is_smooth_streaming
    - gf_filter_pid_get_udta
    - gf_filter_remove_src
    - gf_filter_post_process_task
    - gf_filter_pck_get_data
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_dash_group_select
    - gf_filter_pid_copy_properties
    - gf_filter_pck_unref
    - gf_filter_pck_ref
    - dashdmx_create_output_pid
    - gf_dash_is_m3u8
    - gf_fileio_from_mem
    - gf_dash_set_group_done
    - gf_filter_pid_check_caps
    - gf_dash_all_groups_done
    - dashdmx_declare_properties
    - gf_filter_pid_set_udta_flags
    - gf_error_to_string
    - gf_fclose
    - gf_free
    - GF_LOG
    - gf_filter_setup_failure
    - dashdmx_group_idx_from_pid
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_dash_close
    - gf_strdup
    - gf_dash_in_last_period
    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:2173,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2174,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2175,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filters/dmx_dash.c:2176,1
    - Dst: JS_NewObject
      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_NewFloat64
      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_NewFloat64
      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_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2186,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2186,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2187,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2187,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2188,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2188,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2189,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2189,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:2190,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2191,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dmx_dash.c:2193,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dmx_dash.c:2194,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2196,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2199,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2200,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: 2202
      start: 2167
    functionDepth: 6
    functionLinenumber: 2167
    functionLinenumberEnd: 2202
    functionName: dashdmx_algo_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_NewFloat64
    - JS_NewObject
    - js_dump_error
    - JS_FreeValue
    - JS_NewInt32
    - JS_Call
    - JS_IsException
    - JS_SetPropertyStr
    - JS_ToInt32
    - gf_js_lock
    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:2210,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2212,1
    - Dst: JS_NewObject
      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_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:2215,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2216,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:2216,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2217,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filters/dmx_dash.c:2217,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2218,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2218,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2219,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2219,1
    - Dst: JS_Call
      Src: /src/gpac/src/filters/dmx_dash.c:2220,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2221,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filters/dmx_dash.c:2222,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2224,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2226,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: 2228
      start: 2204
    functionDepth: 2
    functionLinenumber: 2204
    functionLinenumberEnd: 2228
    functionName: dashdmx_download_monitor_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_NewObject
    - JS_FreeValue
    - JS_NewInt32
    - JS_Call
    - JS_SetPropertyStr
    - JS_ToInt32
    - gf_js_lock
    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:2232,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2233,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2234,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2235,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2236,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2239,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filters/dmx_dash.c:2241,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filters/dmx_dash.c:2243,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DASHDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2248
      start: 2229
    functionDepth: 4
    functionLinenumber: 2229
    functionLinenumberEnd: 2248
    functionName: dashdmx_cleanup_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_js_delete_context
    - gf_js_lock
    - JS_FreeValue
    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: 2256
      start: 2250
    functionDepth: 0
    functionLinenumber: 2250
    functionLinenumberEnd: 2256
    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:2260,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2263,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2264,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2265,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filters/dmx_dash.c:2266,1
    - Dst: dashdmx_cleanup_js
      Src: /src/gpac/src/filters/dmx_dash.c:2270,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filters/dmx_dash.c:2273,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2276,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2277,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2278,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2280,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2281,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2284,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - f
    - ctx
    - obj
    argTypes:
    - GF_Filter*
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2288
      start: 2258
    functionDepth: 5
    functionLinenumber: 2258
    functionLinenumberEnd: 2288
    functionName: dashdmx_bind_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetPropertyStr
    - dashdmx_cleanup_js
    - JS_DupValue
    - gf_dash_set_algo_custom
    - js_throw_err_msg
    - GET_FUN
    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:2300,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filters/dmx_dash.c:2303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2305,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2306,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filters/dmx_dash.c:2309,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filters/dmx_dash.c:2312,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filters/dmx_dash.c:2313,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2316,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filters/dmx_dash.c:2316,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filters/dmx_dash.c:2316,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filters/dmx_dash.c:2317,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2318,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/dmx_dash.c:2320,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filters/dmx_dash.c:2320,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filters/dmx_dash.c:2322,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filters/dmx_dash.c:2326,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2327,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filters/dmx_dash.c:2329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2330,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filters/dmx_dash.c:2331,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_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2336,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2337,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filters/dmx_dash.c:2339,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2340,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filters/dmx_dash.c:2341,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2343,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2348,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2349,1
    - Dst: GET_FUN
      Src: /src/gpac/src/filters/dmx_dash.c:2350,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - dashctx
    - jsfile
    argTypes:
    - GF_DASHDmxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2352
      start: 2291
    functionDepth: 6
    functionLinenumber: 2291
    functionLinenumberEnd: 2352
    functionName: dashdmx_initialize_js
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_file_basename
    - JS_Eval
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetPropertyStr
    - qjs_init_all_modules
    - JS_IsException
    - gf_js_create_context
    - js_load_constants
    - JS_NewString
    - JS_NewObject
    - JS_SetContextOpaque
    - JS_SetPropertyStr
    - GET_FUN
    - gf_free
    - JS_GetGlobalObject
    - gf_file_load_data
    - GF_LOG
    - gf_opts_get_bool
    - JS_DetectModule
    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:2372,1
    - Dst: gf_filter_get_download_manager
      Src: /src/gpac/src/filters/dmx_dash.c:2376,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: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2427,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2428,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2429,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2433,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_dash.c:2441,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_dash.c:2442,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2444,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filters/dmx_dash.c:2445,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dmx_dash.c:2446,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_dash.c:2447,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/filters/dmx_dash.c:2452,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dmx_dash.c:2453,1
    - Dst: gf_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: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:2457,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filters/dmx_dash.c:2458,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filters/dmx_dash.c:2459,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2464,1
    - Dst: dashdmx_initialize_js
      Src: /src/gpac/src/filters/dmx_dash.c:2467,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2469,1
    - Dst: gf_dash_new
      Src: /src/gpac/src/filters/dmx_dash.c:2476,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2479,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2485,1
    - Dst: gf_dash_set_max_resolution
      Src: /src/gpac/src/filters/dmx_dash.c:2486,1
    - Dst: gf_dash_set_algo
      Src: /src/gpac/src/filters/dmx_dash.c:2489,1
    - Dst: gf_dash_set_utc_shift
      Src: /src/gpac/src/filters/dmx_dash.c:2490,1
    - Dst: gf_dash_set_suggested_presentation_delay
      Src: /src/gpac/src/filters/dmx_dash.c:2491,1
    - Dst: gf_dash_set_mcast_ast_shift
      Src: /src/gpac/src/filters/dmx_dash.c:2492,1
    - Dst: gf_dash_enable_utc_drift_compensation
      Src: /src/gpac/src/filters/dmx_dash.c:2493,1
    - Dst: gf_dash_set_tile_adaptation_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2494,1
    - Dst: gf_dash_set_min_timeout_between_404
      Src: /src/gpac/src/filters/dmx_dash.c:2496,1
    - Dst: gf_dash_set_segment_expiration_threshold
      Src: /src/gpac/src/filters/dmx_dash.c:2497,1
    - Dst: gf_dash_set_switching_probe_count
      Src: /src/gpac/src/filters/dmx_dash.c:2498,1
    - Dst: gf_dash_set_agressive_adaptation
      Src: /src/gpac/src/filters/dmx_dash.c:2499,1
    - Dst: gf_dash_enable_single_range_llhls
      Src: /src/gpac/src/filters/dmx_dash.c:2500,1
    - Dst: gf_dash_debug_groups
      Src: /src/gpac/src/filters/dmx_dash.c:2501,1
    - Dst: gf_dash_disable_speed_adaptation
      Src: /src/gpac/src/filters/dmx_dash.c:2502,1
    - Dst: gf_dash_ignore_xlink
      Src: /src/gpac/src/filters/dmx_dash.c:2503,1
    - Dst: gf_dash_set_period_xlink_query_string
      Src: /src/gpac/src/filters/dmx_dash.c:2504,1
    - Dst: gf_dash_set_low_latency_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2505,1
    - Dst: gf_dash_split_adaptation_sets
      Src: /src/gpac/src/filters/dmx_dash.c:2507,1
    - Dst: gf_dash_disable_low_quality_tiles
      Src: /src/gpac/src/filters/dmx_dash.c:2508,1
    - Dst: gf_dash_set_chaining_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2509,1
    - Dst: gf_dash_set_auto_switch
      Src: /src/gpac/src/filters/dmx_dash.c:2510,1
    - Dst: gf_dash_enable_cross_as_switch
      Src: /src/gpac/src/filters/dmx_dash.c:2511,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2515,1
    - Dst: gf_filter_block_eos
      Src: /src/gpac/src/filters/dmx_dash.c:2519,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filters/dmx_dash.c:2523,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2524,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:2527,1
    - Dst: gf_filter_override_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2535,1
    - Dst: GF_ARRAY_LENGTH
      Src: /src/gpac/src/filters/dmx_dash.c:2535,1
    - Dst: gf_sys_is_cov_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2540,1
    - Dst: dashdmx_on_filter_setup_error
      Src: /src/gpac/src/filters/dmx_dash.c:2541,1
    - Dst: gf_filter_set_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:2546,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 147
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2549
      start: 2369
    functionDepth: 9
    functionLinenumber: 2369
    functionLinenumberEnd: 2549
    functionName: dashdmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - GF_ARRAY_LENGTH
    - gf_dash_set_utc_shift
    - gf_dash_enable_single_range_llhls
    - gf_filter_set_blocking
    - gf_dash_ignore_xlink
    - dashdmx_on_filter_setup_error
    - gf_dash_set_suggested_presentation_delay
    - gf_dash_set_algo_custom
    - strstr
    - gf_dash_set_agressive_adaptation
    - gf_filter_get_udta
    - gf_dash_set_max_resolution
    - gf_dash_set_segment_expiration_threshold
    - JS_IsFunction
    - gf_dash_set_period_xlink_query_string
    - gf_sys_is_test_mode
    - gf_filter_get_session_caps
    - gf_dash_set_mcast_ast_shift
    - gf_strcpy
    - gf_filter_get_download_manager
    - gf_file_exists
    - gf_opts_default_shared_directory
    - gf_dash_enable_utc_drift_compensation
    - gf_dash_set_low_latency_mode
    - strcmp
    - gf_dash_set_chaining_mode
    - gf_filter_block_eos
    - gf_dash_set_min_timeout_between_404
    - gf_dash_disable_speed_adaptation
    - gf_filter_override_caps
    - gf_dash_enable_cross_as_switch
    - GF_LOG
    - gf_strcat
    - gf_dash_set_tile_adaptation_mode
    - gf_dash_debug_groups
    - gf_sys_is_cov_mode
    - gf_dash_set_auto_switch
    - gf_dash_disable_low_quality_tiles
    - gf_dash_set_algo
    - gf_dash_new
    - gf_dash_split_adaptation_sets
    - gf_dash_set_switching_probe_count
    - dashdmx_initialize_js
    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:2553,1
    - Dst: gf_dash_del
      Src: /src/gpac/src/filters/dmx_dash.c:2556,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2559,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2562,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_dash.c:2565,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2566,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_dash.c:2566,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_dash.c:2567,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_dash.c:2570,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2571,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_dash.c:2571,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_dash.c:2572,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/dmx_dash.c:2576,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/dmx_dash.c:2577,1
    - Dst: dashdmx_cleanup_js
      Src: /src/gpac/src/filters/dmx_dash.c:2581,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2583
      start: 2551
    functionDepth: 7
    functionLinenumber: 2551
    functionLinenumberEnd: 2583
    functionName: dashdmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_dash_del
    - gf_fclose
    - gf_filter_get_udta
    - gf_filter_pck_unref
    - gf_list_del
    - gf_list_pop_back
    - dashdmx_cleanup_js
    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:2592,1
    - Dst: gf_dash_set_tile_adaptation_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2600,1
    - Dst: gf_dash_set_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:2602,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2605,1
    - Dst: gf_dash_group_set_quality_degradation_hint
      Src: /src/gpac/src/filters/dmx_dash.c:2609,1
    - Dst: gf_dash_group_get_num_groups_depending_on
      Src: /src/gpac/src/filters/dmx_dash.c:2612,1
    - Dst: gf_dash_get_dependent_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:2615,1
    - Dst: gf_dash_set_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:2619,1
    - Dst: gf_dash_group_select_quality
      Src: /src/gpac/src/filters/dmx_dash.c:2620,1
    - Dst: gf_dash_switch_quality
      Src: /src/gpac/src/filters/dmx_dash.c:2622,1
    - Dst: gf_dash_override_ntp
      Src: /src/gpac/src/filters/dmx_dash.c:2627,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:2633,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2634,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/dmx_dash.c:2637,1
    - Dst: strlen
      Src: /src/gpac/src/filters/dmx_dash.c:2637,1
    - Dst: dashdmx_opid_from_group
      Src: /src/gpac/src/filters/dmx_dash.c:2638,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:2641,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2643,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2660,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dmx_dash.c:2662,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:2665,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2666,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2672,1
    - Dst: gf_dash_group_set_visible_rect
      Src: /src/gpac/src/filters/dmx_dash.c:2675,1
    - Dst: gf_dash_group_get_presentation_time_offset
      Src: /src/gpac/src/filters/dmx_dash.c:2689,1
    - Dst: gf_dash_is_m3u8
      Src: /src/gpac/src/filters/dmx_dash.c:2704,1
    - Dst: gf_dash_in_period_setup
      Src: /src/gpac/src/filters/dmx_dash.c:2710,1
    - Dst: gf_dash_get_period_duration
      Src: /src/gpac/src/filters/dmx_dash.c:2711,1
    - Dst: gf_dash_get_period_start
      Src: /src/gpac/src/filters/dmx_dash.c:2713,1
    - Dst: gf_dash_set_speed
      Src: /src/gpac/src/filters/dmx_dash.c:2722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2732,1
    - Dst: gf_dash_set_timeshift
      Src: /src/gpac/src/filters/dmx_dash.c:2737,1
    - Dst: gf_dash_seek
      Src: /src/gpac/src/filters/dmx_dash.c:2739,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:2743,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:2750,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:2752,1
    - Dst: gf_dash_group_seek
      Src: /src/gpac/src/filters/dmx_dash.c:2758,1
    - Dst: gf_dash_group_segment_switch_forced
      Src: /src/gpac/src/filters/dmx_dash.c:2762,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2764,1
    - Dst: gf_dash_set_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:2765,1
    - Dst: gf_dash_is_dynamic_mpd
      Src: /src/gpac/src/filters/dmx_dash.c:2768,1
    - Dst: gf_dash_group_get_start_range
      Src: /src/gpac/src/filters/dmx_dash.c:2773,1
    - Dst: gf_dash_group_get_presentation_time_offset
      Src: /src/gpac/src/filters/dmx_dash.c:2774,1
    - Dst: dashdmx_setup_buffer
      Src: /src/gpac/src/filters/dmx_dash.c:2778,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:2780,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2788,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:2789,1
    - Dst: gf_dash_set_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:2800,1
    - Dst: gf_dash_group_select
      Src: /src/gpac/src/filters/dmx_dash.c:2801,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2807,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:2823,1
    - Dst: gf_dash_set_speed
      Src: /src/gpac/src/filters/dmx_dash.c:2828,1
    - Dst: gf_filter_get_session_caps
      Src: /src/gpac/src/filters/dmx_dash.c:2834,1
    - Dst: gf_dash_set_max_resolution
      Src: /src/gpac/src/filters/dmx_dash.c:2835,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 194
    argCount: 2
    argNames:
    - filter
    - fevt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2847
      start: 2585
    functionDepth: 14
    functionLinenumber: 2585
    functionLinenumberEnd: 2847
    functionName: dashdmx_process_event
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_group_udta
    - GF_FEVT_INIT
    - gf_dash_get_period_switch_status
    - gf_filter_prevent_blocking
    - gf_filter_pid_send_event
    - dashdmx_opid_from_group
    - gf_dash_get_period_duration
    - gf_filter_get_udta
    - gf_dash_group_get_num_groups_depending_on
    - gf_filter_pid_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_post_process_task
    - gf_dash_set_max_resolution
    - gf_filter_send_event
    - gf_filter_get_ipid
    - gf_dash_group_select
    - gf_filter_get_session_caps
    - gf_dash_get_dependent_group_index
    - gf_dash_in_period_setup
    - gf_dash_is_dynamic_mpd
    - gf_dash_get_period_start
    - gf_dash_group_get_presentation_time_offset
    - gf_dash_is_m3u8
    - gf_dash_set_speed
    - gf_dash_group_get_start_range
    - gf_dash_seek
    - gf_dash_set_group_done
    - gf_dash_group_seek
    - strlen
    - gf_dash_override_ntp
    - gf_dash_get_group_count
    - gf_dash_set_automatic_switching
    - gf_dash_group_set_quality_degradation_hint
    - gf_dash_group_set_visible_rect
    - gf_dash_group_select_quality
    - dashdmx_setup_buffer
    - GF_LOG
    - gf_dash_set_tile_adaptation_mode
    - gf_dash_group_segment_switch_forced
    - gf_dash_set_timeshift
    - gf_dash_switch_quality
    - strncmp
    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:2856,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:2858,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:2859,1
    - Dst: gf_dash_group_get_active_quality
      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:2863,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2863,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2865,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2865,1
    - Dst: gf_dash_get_automatic_switching
      Src: /src/gpac/src/filters/dmx_dash.c:2865,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2866,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2866,1
    - Dst: gf_dash_get_tile_adaptation_mode
      Src: /src/gpac/src/filters/dmx_dash.c:2866,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:2872,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_dash.c:2875,1
    - Dst: gf_dash_get_dependent_group_index
      Src: /src/gpac/src/filters/dmx_dash.c:2878,1
    - Dst: gf_dash_group_get_active_quality
      Src: /src/gpac/src/filters/dmx_dash.c:2879,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2882,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2883,1
    - Dst: gf_dash_get_url
      Src: /src/gpac/src/filters/dmx_dash.c:2891,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2896,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2896,1
    - Dst: gf_dash_group_get_quality_info
      Src: /src/gpac/src/filters/dmx_dash.c:2899,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2901,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2901,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2903,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2903,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:2905,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:2908,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2909,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2911,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2911,1
    - Dst: strchr
      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:2914,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_dash.c:2914,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2915,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_dash.c:2915,1
    - Dst: gf_filter_pid_set_property_str
      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_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2917,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2917,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/dmx_dash.c:2918,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2918,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2920,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2920,1
    - Dst: gf_dash_group_get_segment_duration
      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_FRAC_INT
      Src: /src/gpac/src/filters/dmx_dash.c:2928,1
    - Dst: gf_dash_group_get_representation_id
      Src: /src/gpac/src/filters/dmx_dash.c:2931,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_dash.c:2932,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/dmx_dash.c:2932,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2934
      start: 2850
    functionDepth: 4
    functionLinenumber: 2850
    functionLinenumberEnd: 2934
    functionName: dashdmx_notify_group_quality
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 1
    functionsReached:
    - gf_dash_group_get_representation_id
    - gf_dash_get_url
    - gf_filter_get_opid
    - gf_filter_get_opid_count
    - strchr
    - gf_malloc
    - gf_filter_pid_get_udta
    - gf_dash_get_automatic_switching
    - gf_dash_get_tile_adaptation_mode
    - PROP_FRAC_INT
    - gf_dash_get_dependent_group_index
    - PROP_BOOL
    - PROP_STRING
    - gf_dash_group_get_quality_info
    - gf_dash_group_get_segment_duration
    - gf_filter_pid_set_property_str
    - gf_free
    - GF_LOG
    - gf_dash_group_get_active_quality
    - PROP_UINT
    - gf_filter_pid_set_property
    - memset
    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:2950,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/dmx_dash.c:2955,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:2958,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2964,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2967,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2970,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dmx_dash.c:2973,1
    - Dst: gf_dash_group_check_bandwidth
      Src: /src/gpac/src/filters/dmx_dash.c:2974,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:2976,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2981,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2984,1
    - Dst: gf_filter_get_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:2987,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:2988,1
    - Dst: gf_dash_group_store_stats
      Src: /src/gpac/src/filters/dmx_dash.c:2996,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dmx_dash.c:2996,1
    - Dst: gf_filter_get_info
      Src: /src/gpac/src/filters/dmx_dash.c:2998,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:3002,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 47
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3003
      start: 2938
    functionDepth: 10
    functionLinenumber: 2938
    functionLinenumberEnd: 3003
    functionName: dashdmx_update_group_stats
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_info_str
    - gf_dash_group_check_bandwidth
    - gf_filter_release_property
    - gf_sys_clock
    - gf_sys_clock_high_res
    - strcmp
    - gf_filter_get_info
    - gf_dash_group_store_stats
    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:3018,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_dash.c:3025,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3029,1
    - Dst: gf_dash_group_discard_segment
      Src: /src/gpac/src/filters/dmx_dash.c:3031,1
    - Dst: dashdmx_opid_from_group
      Src: /src/gpac/src/filters/dmx_dash.c:3036,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3038,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3040,1
    - Dst: gf_dash_process
      Src: /src/gpac/src/filters/dmx_dash.c:3049,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:3054,1
    - Dst: gf_dash_in_last_period
      Src: /src/gpac/src/filters/dmx_dash.c:3054,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3065,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:3066,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3067,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_dash.c:3069,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3076,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3086,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3089,1
    - Dst: gf_dash_group_get_next_segment_location
      Src: /src/gpac/src/filters/dmx_dash.c:3095,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3114,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3118,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_dash.c:3118,1
    - Dst: dashdmx_notify_group_quality
      Src: /src/gpac/src/filters/dmx_dash.c:3136,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dmx_dash.c:3139,1
    - Dst: gf_cryptfin_set_kms
      Src: /src/gpac/src/filters/dmx_dash.c:3147,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3150,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:3157,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:3158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3163,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dmx_dash.c:3168,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3172,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filters/dmx_dash.c:3179,1
    - Dst: gf_dash_group_store_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3188,1
    - Dst: gf_cryptfin_set_kms
      Src: /src/gpac/src/filters/dmx_dash.c:3196,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_dash.c:3201,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_dash.c:3202,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_dash.c:3206,1
    - Dst: gf_net_get_ntp_ts
      Src: /src/gpac/src/filters/dmx_dash.c:3209,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3212,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3217,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 159
    argCount: 2
    argNames:
    - ctx
    - group
    argTypes:
    - GF_DASHDmxCtx*
    - GF_DASHGroup*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3005
    functionDepth: 16
    functionLinenumber: 3005
    functionLinenumberEnd: 3218
    functionName: dashdmx_switch_segment
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - GF_FEVT_INIT
    - gf_assert
    - gf_dash_get_period_switch_status
    - gf_filter_get_opid
    - gf_dash_group_get_next_segment_location
    - gf_filter_pid_send_event
    - gf_filter_get_opid_count
    - dashdmx_opid_from_group
    - dashdmx_update_group_stats
    - gf_filter_pid_would_block
    - gf_dash_is_smooth_streaming
    - gf_filter_pid_get_udta
    - gf_filter_send_event
    - gf_net_get_ntp_ts
    - gf_dash_process
    - gf_dash_group_discard_segment
    - gf_sys_clock_high_res
    - strcmp
    - gf_error_to_string
    - gf_cryptfin_set_kms
    - gf_free
    - GF_LOG
    - gf_filter_ask_rt_reschedule
    - dashdmx_notify_group_quality
    - gf_strdup
    - gf_dash_in_last_period
    - gf_dash_group_store_stats
    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:3225,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3227,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_dash.c:3228,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3229,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3230,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3232,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:3233,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3236,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GF_DASHDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3239
      start: 3220
    functionDepth: 1
    functionLinenumber: 3220
    functionLinenumberEnd: 3239
    functionName: dashin_abort
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_set_discard
    - GF_LOG
    - gf_filter_get_ipid_count
    - GF_FEVT_INIT
    - gf_filter_pid_set_eos
    - gf_filter_get_opid
    - gf_filter_pid_send_event
    - gf_filter_get_ipid
    - gf_filter_get_opid_count
    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:3248,1
    - Dst: dashdmx_configure_pid
      Src: /src/gpac/src/filters/dmx_dash.c:3257,1
    - Dst: gf_dash_get_group_count
      Src: /src/gpac/src/filters/dmx_dash.c:3262,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3264,1
    - Dst: memset
      Src: /src/gpac/src/filters/dmx_dash.c:3279,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3281,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filters/dmx_dash.c:3283,1
    - Dst: dashdmx_process_event
      Src: /src/gpac/src/filters/dmx_dash.c:3285,1
    - Dst: dashdmx_process_event
      Src: /src/gpac/src/filters/dmx_dash.c:3289,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3297,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3299,1
    - Dst: gf_dash_process
      Src: /src/gpac/src/filters/dmx_dash.c:3301,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3303,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:3307,1
    - Dst: dashin_abort
      Src: /src/gpac/src/filters/dmx_dash.c:3311,1
    - Dst: gf_dash_get_min_wait_ms
      Src: /src/gpac/src/filters/dmx_dash.c:3316,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/dmx_dash.c:3320,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3327,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3331,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3332,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3340,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3345,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3355,1
    - Dst: gf_filter_pid_is_playing
      Src: /src/gpac/src/filters/dmx_dash.c:3355,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3363,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3364,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3367,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/dmx_dash.c:3370,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3381,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3385,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3386,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3389,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3392,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3393,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3394,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/dmx_dash.c:3397,1
    - Dst: gf_dash_group_push_tfrf
      Src: /src/gpac/src/filters/dmx_dash.c:3399,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:3399,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/dmx_dash.c:3401,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3403,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3404,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3406,1
    - Dst: dashdmx_switch_segment
      Src: /src/gpac/src/filters/dmx_dash.c:3409,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:3411,1
    - Dst: dashdmx_update_group_stats
      Src: /src/gpac/src/filters/dmx_dash.c:3419,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3426,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3427,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3430,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3433,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_dash.c:3434,1
    - Dst: gf_filter_pid_get_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3436,1
    - Dst: gf_filter_pid_set_udta_flags
      Src: /src/gpac/src/filters/dmx_dash.c:3437,1
    - Dst: dashdmx_switch_segment
      Src: /src/gpac/src/filters/dmx_dash.c:3439,1
    - Dst: gf_filter_prevent_blocking
      Src: /src/gpac/src/filters/dmx_dash.c:3440,1
    - Dst: gf_filter_pid_get_timescale
      Src: /src/gpac/src/filters/dmx_dash.c:3448,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dmx_dash.c:3449,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/dmx_dash.c:3451,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/dmx_dash.c:3454,1
    - Dst: dashdmx_forward_packet
      Src: /src/gpac/src/filters/dmx_dash.c:3460,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3469,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3475,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/src/filters/dmx_dash.c:3481,1
    - Dst: gf_dash_in_last_period
      Src: /src/gpac/src/filters/dmx_dash.c:3487,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3493,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3497,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3498,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/dmx_dash.c:3508,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3512,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3513,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3525,1
    - Dst: gf_dash_get_group_done
      Src: /src/gpac/src/filters/dmx_dash.c:3525,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_dash.c:3526,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_dash.c:3536,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_dash.c:3537,1
    - Dst: gf_dash_get_period_switch_status
      Src: /src/gpac/src/filters/dmx_dash.c:3541,1
    - Dst: gf_dash_get_group_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3543,1
    - Dst: gf_dash_request_period_switch
      Src: /src/gpac/src/filters/dmx_dash.c:3549,1
    - Dst: gf_dash_is_in_setup
      Src: /src/gpac/src/filters/dmx_dash.c:3554,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/dmx_dash.c:3555,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/dmx_dash.c:3557,1
    CyclomaticComplexity: 116
    EdgeCount: 116
    ICount: 237
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3560
      start: 3241
    functionDepth: 17
    functionLinenumber: 3241
    functionLinenumberEnd: 3560
    functionName: dashdmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 0
    functionsReached:
    - gf_dash_get_group_udta
    - gf_filter_pid_get_timescale
    - gf_filter_pid_set_eos
    - dashin_abort
    - GF_FEVT_INIT
    - gf_dash_get_period_switch_status
    - dashdmx_process_event
    - gf_filter_prevent_blocking
    - dashdmx_configure_pid
    - gf_filter_get_opid
    - gf_filter_pid_drop_packet
    - gf_filter_pid_is_playing
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_filter_get_opid_count
    - dashdmx_update_group_stats
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_post_process_task
    - gf_filter_pid_clear_eos
    - gf_timestamp_rescale
    - gf_dash_get_group_done
    - gf_filter_get_ipid
    - gf_dash_process
    - gf_filter_pid_get_udta_flags
    - gf_dash_is_in_setup
    - gf_filter_pck_get_dts
    - dashdmx_switch_segment
    - gf_filter_get_num_events_queued
    - gf_filter_pck_get_cts
    - gf_filter_pid_get_info_str
    - gf_filter_pid_is_eos
    - gf_dash_get_group_count
    - gf_filter_pid_set_udta_flags
    - gf_dash_in_last_period
    - dashdmx_forward_packet
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_filter_release_property
    - gf_dash_group_push_tfrf
    - memset
    - gf_dash_get_min_wait_ms
    - gf_dash_request_period_switch
    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:3568,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3569,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3570,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3571,1
    - Dst: strstr
      Src: /src/gpac/src/filters/dmx_dash.c:3572,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3593
      start: 3562
    functionDepth: 0
    functionLinenumber: 3562
    functionLinenumberEnd: 3593
    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: 3596
      start: 3595
    functionDepth: 0
    functionLinenumber: 3595
    functionLinenumberEnd: 3596
    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: 3804
      start: 3797
    functionDepth: 0
    functionLinenumber: 3797
    functionLinenumberEnd: 3804
    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:3811,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: 3812
      start: 3808
    functionDepth: 0
    functionLinenumber: 3808
    functionLinenumberEnd: 3812
    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:3829,1
    - Dst: GF_DASHDmxCtx*::on_download_monitor
      Src: /src/gpac/src/filters/dmx_dash.c:3836,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: 3837
      start: 3825
    functionDepth: 0
    functionLinenumber: 3825
    functionLinenumberEnd: 3837
    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:3850,1
    - Dst: gf_filter_get_udta
      Src: /src/gpac/src/filters/dmx_dash.c:3852,1
    - Dst: gf_dash_set_algo_custom
      Src: /src/gpac/src/filters/dmx_dash.c:3861,1
    - Dst: gf_dash_set_algo
      Src: /src/gpac/src/filters/dmx_dash.c:3869,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 2
    argNames:
    - filter
    - udta
    argTypes:
    - GF_Filter*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3875
      start: 3841
    functionDepth: 1
    functionLinenumber: 3841
    functionLinenumberEnd: 3875
    functionName: gf_filter_bind_dash_algo_callbacks
    functionSourceFile: /src/gpac/src/filters/dmx_dash.c
    functionUses: 1
    functionsReached:
    - gf_filter_is_instance_of
    - gf_dash_set_algo_custom
    - gf_dash_set_algo
    - 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_count
    - gf_sg_command_del
    - gf_list_del
    - gf_node_get_graph
    - gf_list_get
    - gf_scene_get_time
    - gf_sg_command_apply_list
    - 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:
    - gf_node_get_private
    - CTXLoad_ExecuteConditional
    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:
    - gf_node_get_private
    - CTXLoad_ExecuteConditional
    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_filter_pid_get_property
    - gf_get_default_cache_directory
    - gf_sm_new
    - strcmp
    - gf_list_new
    - memset
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_pid_set_framing_mode
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_BOOL
    - gf_filter_pid_remove
    - strcmp
    - gf_filter_pid_check_caps
    - gf_filter_set_name
    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_sm_load_done
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - CTXLoad_Setup
    - gf_sg_set_node_callback
    - gf_filter_get_ipid
    - gf_sm_del
    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:
    - gf_list_count
    - CTXLoad_StreamInRootOD
    - gf_filter_pid_set_eos
    - gf_list_enum
    - gf_filter_pid_set_property
    - PROP_STRING
    - gf_scene_set_duration
    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_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_strdup
      Src: /src/gpac/src/filters/load_bt_xmt.c:744,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/load_bt_xmt.c:745,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/load_bt_xmt.c:748,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/load_bt_xmt.c:748,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:752,1
    - Dst: gf_odf_desc_new
      Src: /src/gpac/src/filters/load_bt_xmt.c:753,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:754,1
    - Dst: ODS_SetupOD
      Src: /src/gpac/src/filters/load_bt_xmt.c:759,1
    - Dst: gf_odf_desc_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:760,1
    - Dst: gf_scene_find_odm
      Src: /src/gpac/src/filters/load_bt_xmt.c:769,1
    - Dst: gf_odm_disconnect
      Src: /src/gpac/src/filters/load_bt_xmt.c:770,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filters/load_bt_xmt.c:778,1
    - Dst: gf_odf_com_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:781,1
    - Dst: gf_scene_attach_to_compositor
      Src: /src/gpac/src/filters/load_bt_xmt.c:790,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/load_bt_xmt.c:794,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/load_bt_xmt.c:796,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/load_bt_xmt.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/load_bt_xmt.c:798,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/load_bt_xmt.c:805,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/load_bt_xmt.c:808,1
    - Dst: gf_filter_pck_unref
      Src: /src/gpac/src/filters/load_bt_xmt.c:810,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/load_bt_xmt.c:820,1
    CyclomaticComplexity: 128
    EdgeCount: 128
    ICount: 356
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 368
    functionDepth: 16
    functionLinenumber: 368
    functionLinenumberEnd: 822
    functionName: ctxload_process
    functionSourceFile: /src/gpac/src/filters/load_bt_xmt.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_odm_disconnect
    - gf_sm_load_string
    - CTXLoad_StreamInRootOD
    - gf_filter_pid_set_eos
    - CTXLoad_Setup
    - CTXLoad_CheckStreams
    - gf_url_concatenate
    - gf_clock_time
    - gf_sg_command_apply
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_list_add
    - ctxload_configure_pid
    - gf_filter_get_udta
    - gf_clock_diff
    - gf_fopen
    - gf_sm_import_bifs_subtitle
    - gf_timestamp_to_clocktime
    - gf_timestamp_rescale
    - gf_odm_check_buffering
    - gf_filter_pck_get_data
    - gf_fileio_url
    - gf_list_get
    - gf_dynstrcat
    - gf_clock_set_time
    - gf_list_insert
    - gf_scene_find_odm
    - gf_filter_pck_unref
    - gf_filter_pck_ref
    - gf_list_enum
    - gf_sys_clock
    - gf_sc_sys_frame_pending
    - gf_fileio_from_mem
    - ODS_SetupOD
    - gf_sg_set_scene_size_info
    - gf_sg_set_scene_time_callback
    - gf_error_to_string
    - gf_sg_command_del
    - gf_odf_desc_del
    - gf_fclose
    - gf_free
    - gf_odf_com_del
    - gf_sm_load_done
    - GF_LOG
    - gf_list_del
    - gf_filter_ask_rt_reschedule
    - gf_fseek
    - gf_odf_encode_ui_config
    - gf_scene_attach_to_compositor
    - gf_odf_desc_new
    - gf_sm_load_init
    - gf_fread
    - gf_sm_load_run
    - gf_strdup
    - gf_sm_del
    - 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:827,1
    - Dst: gf_sm_load_done
      Src: /src/gpac/src/filters/load_bt_xmt.c:829,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: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 837
      start: 825
    functionDepth: 13
    functionLinenumber: 825
    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_load_done
    - gf_filter_get_udta
    - gf_list_del
    - gf_sm_del
    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:
    - strchr
    - gf_free
    - gf_strmemstr
    - gf_utf_get_string_from_bom
    - strlen
    - strncmp
    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_list_add
    - gf_filter_pck_get_frame_interface
    - gf_filter_pck_unref
    - gf_assert
    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_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - GF_SAFEALLOC
    - gf_filter_pid_drop_packet
    - gf_filter_pck_new_frame_interface
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pck_ref
    - GF_FilterFrameInterface*::get_plane
    - gf_filter_pid_is_eos
    - gf_list_pop_back
    - gf_filter_pck_forward
    - GF_LOG
    - memset
    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:
    - strchr
    - atoi
    - GF_LOG
    - GET_DIM
    - memset
    - ROUND_IT
    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_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - parse_crop_props
    - PROP_VEC2I
    - gf_filter_get_udta
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_filter_pid_remove
    - PROP_FRAC
    - gf_list_new
    - gf_filter_pid_check_caps
    - memset
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    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_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - PROP_FRAC64_INT
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_pixel_fmt_parse
    - PROP_BOOL
    - gf_filter_pid_remove
    - strcmp
    - PROP_FRAC
    - gf_filter_pid_check_caps
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err rawvidreframe_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_rawvid.c:180,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawvid.c:216,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawvid.c:219,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawvid.c:228,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 50
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 241
    functionName: rawvidreframe_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - gf_filter_pck_discard
    - GF_FEVT_INIT
    - 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:245,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_rawvid.c:255,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_rawvid.c:257,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_rawvid.c:259,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawvid.c:263,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_rawvid.c:269,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_rawvid.c:270,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframe_rawvid.c:280,1
    - Dst: strchr
      Src: /src/gpac/src/filters/reframe_rawvid.c:281,1
    - Dst: strlen
      Src: /src/gpac/src/filters/reframe_rawvid.c:286,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:288,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:291,1
    - Dst: atoi
      Src: /src/gpac/src/filters/reframe_rawvid.c:293,1
    - Dst: atoi
      Src: /src/gpac/src/filters/reframe_rawvid.c:294,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframe_rawvid.c:295,1
    - Dst: sscanf
      Src: /src/gpac/src/filters/reframe_rawvid.c:298,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:299,1
    - Dst: PROP_FRAC
      Src: /src/gpac/src/filters/reframe_rawvid.c:299,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: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawvid.c:311,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:319,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/reframe_rawvid.c:319,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_rawvid.c:321,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/reframe_rawvid.c:327,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/reframe_rawvid.c:327,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_UINT
      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_FRAC
      Src: /src/gpac/src/filters/reframe_rawvid.c:347,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_rawvid.c:348,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_rawvid.c:348,1
    - Dst: gf_pixel_get_size_info
      Src: /src/gpac/src/filters/reframe_rawvid.c:350,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_rawvid.c:363,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/reframe_rawvid.c:365,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_rawvid.c:368,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_rawvid.c:372,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_rawvid.c:373,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_rawvid.c:374,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_rawvid.c:375,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawvid.c:379,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_rawvid.c:385,1
    - Dst: gf_filter_pck_set_interlaced
      Src: /src/gpac/src/filters/reframe_rawvid.c:388,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawvid.c:391,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_rawvid.c:394,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_rawvid.c:411,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawvid.c:417,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_rawvid.c:419,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_rawvid.c:421,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_rawvid.c:427,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 167
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 243
    functionDepth: 5
    functionLinenumber: 243
    functionLinenumberEnd: 429
    functionName: rawvidreframe_process
    functionSourceFile: /src/gpac/src/filters/reframe_rawvid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_assert
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - strchr
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_filter_pck_set_interlaced
    - PROP_FRAC
    - memcpy
    - gf_filter_pck_send
    - atoi
    - gf_filter_pck_set_cts
    - PROP_STRING
    - gf_filter_pck_set_duration
    - strcmp
    - strlen
    - gf_filter_pck_set_sap
    - gf_filter_pck_new_ref
    - gf_filter_pid_is_eos
    - sscanf
    - gf_filter_pid_set_property_str
    - gf_filter_pck_discard
    - gf_filter_pck_get_byte_offset
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_filter_pck_set_byte_offset
    - strncmp
    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:433,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/reframe_rawvid.c:434,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 431
    functionDepth: 1
    functionLinenumber: 431
    functionLinenumberEnd: 435
    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:439,1
    - Dst: gf_pixel_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawvid.c:444,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 437
    functionDepth: 2
    functionLinenumber: 437
    functionLinenumberEnd: 445
    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: 465
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 465
    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:496,1
    - Dst: gf_pixel_fmt_all_shortnames
      Src: /src/gpac/src/filters/reframe_rawvid.c:497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 494
    functionDepth: 2
    functionLinenumber: 494
    functionLinenumberEnd: 499
    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: 504
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 504
    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_LOG
    - stricmp
    - gf_filter_pid_get_name
    - gf_fseek
    - gf_fread
    - gf_opts_get_key
    - gf_utf8_is_legal
    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:
    - strchr
    - gf_fclose
    - gf_file_ext_start
    - gf_fopen
    - strnicmp
    - gf_utf8_wcstombs
    - gf_fread
    - gf_text_get_utf_type
    - gf_fgets
    - REM_TRAIL_MARKS
    - strstr
    - strncmp
    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: gf_strlcpy
      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: gf_strlcpy
      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_ARRAY_LENGTH
    - GF_LOG
    - gf_fgetc
    - gf_fseek
    - gf_ftell
    - gf_utf8_wcstombs
    - strlen
    - gf_fgets
    - memset
    - gf_strlcpy
    linkageType: ''
    returnType: char
    signature: char *gf_text_get_utf8_line(char szLine[2048], 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:
    - atof
    - gf_swf_get_duration
    - strstr
    - PROP_FRAC64
    - gf_feof
    - strchr
    - gf_text_get_utf8_line
    - atoi
    - gf_list_enum
    - gf_ftell
    - strcmp
    - sscanf
    - gf_xml_dom_get_root
    - GF_LOG
    - gf_fseek
    - PROP_UINT
    - gf_filter_pid_set_property
    - REM_TRAIL_MARKS
    - strncmp
    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:
    - PROP_LONGUINT
    - PROP_DATA_NO_COPY
    - gf_isom_new_text_sample
    - gf_malloc
    - gf_fopen
    - gf_fsize
    - gf_odf_tx3g_write
    - gf_filter_pid_new
    - txtin_probe_duration
    - PROP_STRING
    - gf_odf_desc_del
    - gf_fclose
    - GF_LOG
    - PROP_SINT
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_odf_desc_new
    - gf_text_get_utf_type
    - gf_strdup
    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_write_bs
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_isom_text_sample_size
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_bs_reassign_buffer
    - memcpy
    - 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: 65
    EdgeCount: 65
    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:
    - strchr
    - gf_free
    - gf_malloc
    - strlwr
    - GF_LOG
    - gf_isom_text_add_style
    - gf_assert
    - gf_isom_text_set_forced
    - gf_utf8_mbstowcs
    - gf_utf8_wcstombs
    - strlen
    - gf_isom_text_add_text
    - strstr
    - strncmp
    - gf_color_parse
    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:
    - PROP_LONGUINT
    - gf_isom_new_text_sample
    - txtin_process_send_text_sample
    - strstr
    - gf_feof
    - gf_filter_pid_set_info
    - txtin_setup_srt
    - gf_text_get_utf8_line
    - gf_ftell
    - strlen
    - gf_isom_delete_text_sample
    - gf_isom_text_add_text
    - sscanf
    - txtin_check_blocking
    - GF_LOG
    - gf_fseek
    - REM_TRAIL_MARKS
    - gf_isom_text_reset
    - parse_srt_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:
    - PROP_DATA
    - gf_webvtt_parser_suspend
    - gf_filter_pid_set_property
    - strlen
    - strncmp
    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_isom_webvtt_to_sample
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_info
    - txtin_check_blocking
    - gf_webvtt_sample_get_start
    - PROP_LONGUINT
    - gf_webvtt_parser_suspend
    - gf_filter_pck_set_cts
    - gf_ftell
    - gf_isom_sample_del
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_isom_webvtt_cues_count
    - memcpy
    - gf_webvtt_sample_del
    - gf_filter_pck_send
    - gf_webvtt_sample_get_end
    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:
    - gf_webvtt_parser_new
    - gf_webvtt_parser_del
    - PROP_LONGUINT
    - gf_fopen
    - gf_webvtt_parser_parse_ext
    - gf_fsize
    - gf_filter_pid_new
    - txtin_probe_duration
    - gf_file_ext_start
    - strnicmp
    - PROP_STRING
    - gf_error_to_string
    - gf_fclose
    - GF_LOG
    - PROP_SINT
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_text_get_utf_type
    - gf_webvtt_parser_init
    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:
    - gf_filter_pck_get_property_str
    - gf_webvtt_parser_not_done
    - txtin_webvtt_setup
    - gf_webvtt_parser_parse_payload
    - GF_LOG
    - gf_error_to_string
    - gf_timestamp_rescale
    - gf_webvtt_parser_parse_ext
    - gf_webvtt_parser_restart
    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_count
    - gf_list_enum
    - gf_assert
    - gf_list_find
    - strcmp
    - gf_list_get
    - gf_xml_dom_node_del
    - 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:
    - atof
    - strchr
    - atoi
    - GF_LOG
    - strlen
    - sscanf
    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_list_count
    - gf_free
    - GF_LOG
    - ttml_push_interval
    - GF_SAFEALLOC
    - gf_list_get
    - gf_list_insert
    - 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_del
    - gf_list_count
    - gf_list_pop_back
    - gf_free
    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_SAFEALLOC
    - gf_list_new
    - gf_list_add
    - gf_list_clone
    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_list_count
    - gf_url_concatenate
    - GF_SAFEALLOC
    - gf_list_add
    - ttml_push_resources
    - strstr
    - gf_malloc
    - gf_list_enum
    - gf_xml_dom_node_reset
    - strcmp
    - gf_list_new
    - strlen
    - sprintf
    - gf_free
    - gf_file_load_data
    - gf_list_del_item
    - gf_base64_decode
    - ttml_push_res
    - gf_strdup
    - strncmp
    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:
    - gf_strdup
    - ttml_get_timestamp
    - gf_free
    - 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:
    - strchr
    - atoi
    - GF_LOG
    - gf_list_enum
    - strcmp
    - 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:
    - gf_xml_dom_node_check_namespace
    - PROP_LONGUINT
    - ebu_ttd_remove_samples
    - gf_list_add
    - gf_xml_dom_get_error
    - gf_xml_dom_parse
    - gf_xml_dom_get_line
    - gf_filter_pid_new
    - ttml_setup_intervals
    - txtin_probe_duration
    - gf_xml_dom_enable_passthrough
    - gf_list_enum
    - ttml_parse_root
    - gf_xml_dom_new
    - PROP_STRING
    - gf_list_new
    - gf_filter_pid_set_property_str
    - gf_xml_dom_get_root
    - GF_LOG
    - PROP_SINT
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_xml_dom_node_clone
    - gf_list_reset
    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_filter_pck_new_alloc
    - gf_free
    - gf_list_del
    - gf_timestamp_rescale
    - gf_list_new
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - strlen
    - gf_xml_dom_serialize_root
    - ttxt_parse_string
    - memcpy
    - 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_list_count
    - gf_filter_pck_new_alloc
    - gf_xml_dom_node_check_namespace
    - PROP_DATA_NO_COPY
    - gf_filter_pid_set_eos
    - gf_bs_get_content
    - gf_assert
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pck_set_property
    - gf_bs_write_u8
    - ttml_get_timestamp
    - gf_timestamp_rescale
    - gf_list_get
    - ttml_check_range
    - gf_list_last
    - memcpy
    - gf_filter_pck_send
    - gf_list_enum
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_duration
    - strcmp
    - strlen
    - gf_xml_dom_append_child
    - gf_xml_dom_serialize_root
    - ttxt_parse_string
    - gf_filter_pck_set_sap
    - gf_xml_dom_get_root
    - ttml_send_empty_sample
    - GF_LOG
    - PROP_UINT
    - gf_text_ttml_setup
    - gf_bs_write_u32
    - gf_list_reset
    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
    - txtin_check_blocking
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_sap
    - memcpy
    - 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:
    - PROP_DATA
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_framing
    - gf_filter_pid_set_property
    - strlen
    - memcpy
    - 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_read_header
    - gf_swf_reader_new
    - GF_LOG
    - PROP_SINT
    - gf_filter_pid_set_property
    - PROP_UINT
    - swf_to_svg_init
    - PROP_STRING
    - FIX2INT
    - gf_swf_reader_set_user_mode
    - gf_filter_pid_new
    - txtin_probe_duration
    - gf_filter_pid_set_property_str
    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_read_header
    - gf_swf_reader_set_user_mode
    - swf_parse_tag
    - gf_text_swf_setup
    - gf_swf_reader_del
    - gf_swf_reader_new
    - GF_TXTIn*::swf_parse::finalize
    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:
    - PROP_LONGUINT
    - GF_ARRAY_LENGTH
    - gf_isom_new_text_sample
    - txtin_process_send_text_sample
    - gf_filter_pid_set_info
    - txtin_setup_srt
    - gf_text_get_utf8_line
    - gf_filter_pid_set_info_str
    - atoi
    - gf_ftell
    - strlen
    - gf_isom_delete_text_sample
    - gf_isom_text_add_text
    - txtin_check_blocking
    - GF_LOG
    - MIN
    - gf_fseek
    - PROP_UINT
    - REM_TRAIL_MARKS
    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:
    - LINE_CAT
    - PROP_LONGUINT
    - gf_isom_new_text_sample
    - txtin_process_send_text_sample
    - strstr
    - gf_filter_pid_set_info
    - strchr
    - txtin_setup_srt
    - gf_text_get_utf8_line
    - gf_filter_pid_set_info_str
    - REM_TRAIL_MARKS
    - GF_COL_ARGB
    - gf_ftell
    - strlen
    - gf_isom_delete_text_sample
    - gf_isom_text_add_text
    - sscanf
    - sprintf
    - txtin_check_blocking
    - GF_LOG
    - gf_fseek
    - PROP_UINT
    - memset
    - gf_isom_text_reset
    - strncmp
    - parse_srt_line
    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:
    - stricmp
    - memset
    - gf_list_enum
    - atoi
    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:
    - atoi
    - stricmp
    - gf_list_enum
    - memset
    - ttxt_get_color
    - strstr
    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_list_count
    - PROP_LONGUINT
    - GF_SAFEALLOC
    - gf_list_add
    - gf_xml_dom_get_error
    - gf_xml_dom_parse
    - gf_malloc
    - gf_xml_dom_get_line
    - ttxt_parse_text_box
    - gf_odf_tx3g_write
    - gf_list_get
    - gf_filter_pid_new
    - gf_realloc
    - txtin_probe_duration
    - atoi
    - gf_list_enum
    - gf_xml_dom_new
    - PROP_STRING
    - strcmp
    - gf_list_new
    - gf_filter_pid_set_property_str
    - gf_xml_dom_get_root
    - gf_free
    - GF_LOG
    - PROP_SINT
    - stricmp
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_strdup
    - memset
    - ttxt_get_color
    - 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:
    - atof
    - gf_isom_text_set_scroll_delay
    - gf_isom_text_set_forced
    - gf_isom_new_text_sample
    - txtin_process_send_text_sample
    - gf_isom_text_set_wrap
    - gf_isom_text_add_style
    - gf_isom_text_set_highlight_color
    - gf_filter_pid_set_info_str
    - gf_isom_text_add_hyperlink
    - ttxt_parse_text_box
    - gf_isom_text_add_highlight
    - gf_list_get
    - txtin_setup_ttxt
    - atoi
    - gf_isom_text_set_box
    - gf_list_enum
    - PROP_BOOL
    - strcmp
    - strlen
    - gf_isom_text_add_blink
    - gf_isom_text_add_text
    - ttxt_parse_string
    - gf_isom_delete_text_sample
    - sscanf
    - gf_xml_dom_get_root
    - txtin_check_blocking
    - gf_free
    - gf_isom_text_set_karaoke_segment
    - stricmp
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_isom_text_add_karaoke
    - gf_strdup
    - ttxt_get_color
    - ttxt_parse_text_style
    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:
    - stricmp
    - memset
    - gf_list_enum
    - atoi
    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:
    - gf_list_count
    - gf_xml_dom_del
    - PROP_LONGUINT
    - gf_xml_dom_get_error
    - gf_xml_dom_parse
    - gf_xml_dom_get_line
    - gf_filter_pid_new
    - txtin_probe_duration
    - atoi
    - gf_list_enum
    - gf_xml_dom_new
    - PROP_STRING
    - strcmp
    - sscanf
    - gf_xml_dom_get_root
    - GF_LOG
    - PROP_SINT
    - gf_filter_pid_set_property
    - PROP_UINT
    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_list_count
    - GF_ARRAY_LENGTH
    - gf_isom_text_set_scroll_delay
    - GET_MARKER_POS
    - tx3g_get_color
    - GF_SAFEALLOC
    - gf_isom_new_text_sample
    - txtin_process_send_text_sample
    - gf_list_add
    - strstr
    - gf_isom_text_add_style
    - strchr
    - gf_malloc
    - gf_isom_text_set_highlight_color
    - txtin_texml_setup
    - gf_isom_text_add_hyperlink
    - gf_isom_text_add_highlight
    - gf_odf_tx3g_write
    - gf_list_get
    - gf_realloc
    - atoi
    - gf_isom_text_set_box
    - memcmp
    - gf_list_enum
    - strcmp
    - gf_list_new
    - strlen
    - gf_isom_text_add_text
    - gf_isom_text_add_blink
    - tx3g_parse_text_box
    - gf_isom_delete_text_sample
    - gf_xml_dom_get_root
    - txtin_check_blocking
    - gf_token_get_strip
    - gf_free
    - GF_LOG
    - gf_isom_text_set_karaoke_segment
    - stricmp
    - gf_filter_pid_set_property
    - gf_isom_text_add_karaoke
    - gf_strdup
    - memset
    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_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_pck_get_duration
    - gf_bs_new
    - gf_timestamp_rescale_signed
    - gf_bs_del
    - gf_timestamp_rescale
    - gf_filter_pck_get_data
    - memcpy
    - gf_filter_pck_send
    - gf_filter_pck_set_cts
    - gf_filter_pck_get_cts
    - gf_bs_write_data
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_duration
    - gf_filter_pck_new_ref
    - gf_filter_pck_set_framing
    - gf_filter_pck_set_dts
    - gf_bs_write_u32
    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_filter_pid_set_eos
    - gf_filter_pck_get_duration
    - gf_filter_pid_drop_packet
    - txtin_process_send_text_sample
    - gf_fwrite
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_framing
    - gf_text_guess_format
    - gf_filter_pid_set_info
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_file_temp
    - gf_realloc
    - txtin_configure_pid_ex
    - memcpy
    - GF_TXTIn*::text_process
    - gf_filter_pck_get_cts
    - gf_ftell
    - gf_blob_register
    - gf_blob_unregister
    - memmove
    - gf_filter_pid_is_eos
    - gf_webvtt_parser_flush
    - gf_free
    - gf_fclose
    - gf_filter_setup_failure
    - gf_fseek
    - PROP_UINT
    - memset
    - gf_isom_text_reset
    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_webvtt_parser_del
    - gf_fclose
    - gf_xml_dom_del
    - gf_xml_dom_node_del
    - gf_isom_delete_text_sample
    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_filter_pid_get_property
    - gf_filter_pid_set_framing_mode
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - strstr
    - gf_text_guess_format
    - gf_filter_get_udta
    - txtin_setup_srt
    - gf_filter_pid_new
    - ttxtin_reset
    - gf_filter_pid_copy_properties
    - strcmp
    - gf_filter_pid_check_caps
    - PROP_DATA
    - gf_free
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_strdup
    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:
    - gf_filter_post_process_task
    - ttxtin_reset
    - 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_filter_get_udta
    - gf_bs_new
    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:
    - gf_list_count
    - gf_free
    - ttml_reset_intervals
    - gf_filter_get_udta
    - gf_list_del
    - gf_swf_reader_del
    - gf_bs_del
    - ttxtin_reset
    - gf_list_pop_back
    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:
    - strchr
    - PROBE_OK
    - gf_free
    - gf_strmemstr
    - gf_utf_get_string_from_bom
    - strncmp
    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:
    - gf_filter_get_udta
    - txtin_initialize
    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:
    - gf_filter_get_udta
    - txtin_initialize
    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_filter_pid_get_property
    - gf_bs_read_data
    - gf_bs_del
    - PROP_FRAC64
    - gf_bs_skip_bytes
    - gf_bs_from_file
    - gf_realloc
    - gf_fileio_is_main_thread
    - gf_fgetc
    - gf_ftell
    - PROP_BOOL
    - gf_error_to_string
    - gf_fclose
    - GF_LOG
    - gf_bs_read_u32_le
    - gf_fseek
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_fopen_ex
    - strncmp
    - gf_bs_available
    - qcpdmx_process_header
    linkageType: ''
    returnType: void
    signature: void qcpdmx_check_dur(GF_Filter *filter, GF_QCPDmxCtx *ctx)
  - BBCount: 13
    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:243,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/reframe_qcp.c:269,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/reframe_qcp.c:271,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 225
    functionDepth: 8
    functionLinenumber: 225
    functionLinenumberEnd: 289
    functionName: qcpdmx_process_event
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_send_event
    - GF_FEVT_INIT
    - qcpdmx_check_dur
    - 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:305,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:307,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:308,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:309,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:310,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:313,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:314,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/reframe_qcp.c:315,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:316,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:318,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:319,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/reframe_qcp.c:322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:324,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:327,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:329,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:330,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:333,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:335,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:336,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:339,1
    - Dst: gf_bs_read_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:341,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:343,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_u16_le
      Src: /src/gpac/src/filters/reframe_qcp.c:350,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:351,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:353,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:359,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:360,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:363,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:365,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:366,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:368,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:368,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:370,1
    - Dst: strncmp
      Src: /src/gpac/src/filters/reframe_qcp.c:372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:375,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:376,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:380,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/reframe_qcp.c:382,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:383,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:386,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:388,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:389,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/reframe_qcp.c:391,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/reframe_qcp.c:392,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:396,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/reframe_qcp.c:399,1
    - Dst: gf_filter_pid_copy_properties
      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: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/reframe_qcp.c:408,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/reframe_qcp.c:408,1
    - Dst: qcpdmx_check_dur
      Src: /src/gpac/src/filters/reframe_qcp.c:410,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: 414
      start: 297
    functionDepth: 8
    functionLinenumber: 297
    functionLinenumberEnd: 414
    functionName: qcpdmx_process_header
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_read_u8
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - qcpdmx_check_dur
    - GF_LOG
    - gf_bs_read_u32_le
    - gf_bs_new
    - strnicmp
    - gf_filter_pid_set_property
    - gf_bs_read_data
    - gf_bs_del
    - PROP_UINT
    - gf_bs_seek
    - gf_bs_read_u16_le
    - strncmp
    - 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:418,1
    - Dst: qcpdmx_check_dur
      Src: /src/gpac/src/filters/reframe_qcp.c:426,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:433,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:435,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:437,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/reframe_qcp.c:438,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/reframe_qcp.c:444,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:445,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_qcp.c:460,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:462,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_qcp.c:464,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_qcp.c:465,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_qcp.c:466,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:468,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_qcp.c:470,1
    - Dst: assert
      Src: /src/gpac/src/filters/reframe_qcp.c:472,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:476,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:486,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_qcp.c:510,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:512,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:514,1
    - Dst: qcpdmx_process_header
      Src: /src/gpac/src/filters/reframe_qcp.c:519,1
    - Dst: qcpdmx_process_header
      Src: /src/gpac/src/filters/reframe_qcp.c:521,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/reframe_qcp.c:528,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:530,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:539,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/reframe_qcp.c:554,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:556,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:558,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_qcp.c:563,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_qcp.c:565,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/reframe_qcp.c:569,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/reframe_qcp.c:571,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:575,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:576,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:583,1
    - Dst: gf_filter_pck_get_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:598,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/reframe_qcp.c:633,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/reframe_qcp.c:635,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filters/reframe_qcp.c:637,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/reframe_qcp.c:638,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/reframe_qcp.c:639,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/reframe_qcp.c:640,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/reframe_qcp.c:642,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/reframe_qcp.c:644,1
    - Dst: assert
      Src: /src/gpac/src/filters/reframe_qcp.c:647,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/reframe_qcp.c:652,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/reframe_qcp.c:664,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/reframe_qcp.c:669,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 201
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts:
    - condition: (ctx->data_chunk_remain >= size)
      pos:
        line_end: 646
        line_start: 646
        source_file: /src/gpac/src/filters/reframe_qcp.c
    - condition: (ctx->data_chunk_remain >= to_send)
      pos:
        line_end: 471
        line_start: 471
        source_file: /src/gpac/src/filters/reframe_qcp.c
    constantsTouched: []
    func_position:
      end: 672
      start: 416
    functionDepth: 9
    functionLinenumber: 416
    functionLinenumberEnd: 672
    functionName: qcpdmx_process
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pid_set_eos
    - gf_assert
    - gf_bs_new
    - gf_bs_read_data
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_bs_reassign_buffer
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_filter_pck_get_data
    - gf_realloc
    - memcpy
    - gf_filter_pck_send
    - qcpdmx_check_dur
    - gf_filter_pck_set_cts
    - strnicmp
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_filter_pid_is_eos
    - gf_filter_pck_get_byte_offset
    - gf_filter_pck_set_framing
    - gf_filter_setup_failure
    - gf_bs_read_u32_le
    - gf_filter_pck_set_byte_offset
    - assert
    - qcpdmx_process_header
    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:676,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_qcp.c:677,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:678,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/reframe_qcp.c:679,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 674
    functionDepth: 3
    functionLinenumber: 674
    functionLinenumberEnd: 680
    functionName: qcpdmx_finalize
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - 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:689,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:692,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:696,1
    - Dst: gf_bs_read_u32_le
      Src: /src/gpac/src/filters/reframe_qcp.c:699,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/reframe_qcp.c:700,1
    - Dst: strnicmp
      Src: /src/gpac/src/filters/reframe_qcp.c:701,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/reframe_qcp.c:706,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 682
    functionDepth: 6
    functionLinenumber: 682
    functionLinenumberEnd: 710
    functionName: qcpdmx_probe_data
    functionSourceFile: /src/gpac/src/filters/reframe_qcp.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u32_le
    - gf_bs_new
    - strnicmp
    - gf_bs_read_data
    - gf_bs_del
    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: 727
      start: 726
    functionDepth: 0
    functionLinenumber: 726
    functionLinenumberEnd: 727
    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: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    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: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    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: 8
    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
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:183,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 20
    argCount: 1
    argNames:
    - cfg
    argTypes:
    - UNCVConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 184
    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:190,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:191,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:192,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:198,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:200,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:208,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:210,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 44
    argCount: 1
    argNames:
    - uncv
    argTypes:
    - UNCVConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 223
    functionName: uncv_load_profile
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_4CC
    - gf_malloc
    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:237,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:241,1
    - Dst: gf_bs_available
      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_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:244,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:245,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:247,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:250,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:256,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:257,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:263,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dec_uncv.c:265,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:269,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:271,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:272,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:273,1
    - Dst: uncv_load_profile
      Src: /src/gpac/src/filters/dec_uncv.c:275,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:281,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:287,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:292,1
    - Dst: gf_bs_read_u16
      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:297,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_u8
      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_int
      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_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:312,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:317,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:322,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:326,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:327,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dec_uncv.c:333,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:340,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:345,1
    - Dst: gf_bs_read_u32
      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_u8
      Src: /src/gpac/src/filters/dec_uncv.c:350,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:357,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:364,1
    - Dst: uncv_get_val
      Src: /src/gpac/src/filters/dec_uncv.c:373,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:374,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/dec_uncv.c:377,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:379,1
    - Dst: gf_bs_read_int
      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_bs_read_u16
      Src: /src/gpac/src/filters/dec_uncv.c:387,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:393,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dec_uncv.c:401,1
    - Dst: gf_bs_read_float
      Src: /src/gpac/src/filters/dec_uncv.c:402,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:406,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/dec_uncv.c:408,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_uncv.c:411,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:413,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:417,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:422,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:436,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:441,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:445,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:452,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:457,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:463,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:468,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:472,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:485,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:496,1
    - Dst: uncv_del
      Src: /src/gpac/src/filters/dec_uncv.c:501,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: 505
      start: 225
    functionDepth: 7
    functionLinenumber: 225
    functionLinenumberEnd: 505
    functionName: uncv_parse_config
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_new
    - GF_SAFEALLOC
    - gf_bs_del
    - gf_bs_read_float
    - gf_bs_skip_bytes
    - gf_malloc
    - uncv_del
    - gf_bs_read_utf8
    - uncv_get_val
    - gf_bs_is_overflow
    - gf_bs_read_int
    - gf_bs_read_u32
    - gf_bs_read_u16
    - gf_bs_align
    - GF_LOG
    - GF_4CC
    - uncv_load_profile
    - memset
    - gf_bs_available
    linkageType: ''
    returnType: UNCVConfig
    signature: UNCVConfig *uncv_parse_config(u8 *dsi, u32 dsi_size, GF_Err *out_err)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_uncv.c:513,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:513,1
    - Dst: uncv_parse_config
      Src: /src/gpac/src/filters/dec_uncv.c:517,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_uncv.c:521,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:521,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dec_uncv.c:527,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filters/dec_uncv.c:528,1
    - Dst: snprintf
      Src: /src/gpac/src/filters/dec_uncv.c:531,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:531,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:531,1
    - Dst: uncv_del
      Src: /src/gpac/src/filters/dec_uncv.c:533,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 4
    argNames:
    - szCodec
    - subtype
    - dsi
    - dsi_size
    argTypes:
    - char*
    - u32
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 508
    functionDepth: 8
    functionLinenumber: 508
    functionLinenumberEnd: 535
    functionName: rfc_6381_get_codec_uncv
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 1
    functionsReached:
    - sprintf
    - uncv_parse_config
    - uncv_del
    - snprintf
    - gf_strlcat
    - gf_4cc_to_str
    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: 559
      start: 538
    functionDepth: 0
    functionLinenumber: 538
    functionLinenumberEnd: 559
    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:564,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: 567
      start: 560
    functionDepth: 1
    functionLinenumber: 560
    functionLinenumberEnd: 567
    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: 54
    BranchProfiles: []
    Callsites:
    - Dst: uncv_check_comps_type
      Src: /src/gpac/src/filters/dec_uncv.c:576,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/dec_uncv.c:579,1
    - Dst: uncv_check_comps_type
      Src: /src/gpac/src/filters/dec_uncv.c:580,1
    - Dst: uncv_check_comp_type
      Src: /src/gpac/src/filters/dec_uncv.c:586,1
    CyclomaticComplexity: 181
    EdgeCount: 181
    ICount: 130
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - UNCVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 569
    functionDepth: 2
    functionLinenumber: 569
    functionLinenumberEnd: 727
    functionName: uncv_get_compat
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_check_comp_type
    - gf_assert
    - uncv_check_comps_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: 785
      start: 729
    functionDepth: 0
    functionLinenumber: 729
    functionLinenumberEnd: 785
    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:789,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:795,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:796,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:797,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:798,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:800,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:804,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dec_uncv.c:808,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:812,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - UNCVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 787
    functionDepth: 3
    functionLinenumber: 787
    functionLinenumberEnd: 815
    functionName: uncv_reset
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_del
    - gf_free
    - uncv_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:821,1
    - Dst: uncv_parse_config
      Src: /src/gpac/src/filters/dec_uncv.c:823,1
    - Dst: uncv_get_compat
      Src: /src/gpac/src/filters/dec_uncv.c:834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:852,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:855,1
    - Dst: gf_pixel_fmt_name
      Src: /src/gpac/src/filters/dec_uncv.c:855,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:875,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:888,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:894,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:898,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:903,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:909,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:917,1
    - Dst: uncv_get_line_size
      Src: /src/gpac/src/filters/dec_uncv.c:989,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1001,1
    - Dst: uncv_get_line_size
      Src: /src/gpac/src/filters/dec_uncv.c:1008,1
    - Dst: uncv_get_line_size
      Src: /src/gpac/src/filters/dec_uncv.c:1060,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dec_uncv.c:1061,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1068,1
    - Dst: gf_floor
      Src: /src/gpac/src/filters/dec_uncv.c:1091,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1103,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:1104,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:1107,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1110,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:1111,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1115,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1124,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:1125,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dec_uncv.c:1128,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dec_uncv.c:1129,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 253
    argCount: 3
    argNames:
    - ctx
    - dsi
    - dsi_size
    argTypes:
    - UNCVDecCtx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 817
    functionDepth: 8
    functionLinenumber: 817
    functionLinenumberEnd: 1132
    functionName: uncv_config
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - uncv_get_line_size
    - uncv_parse_config
    - gf_floor
    - GF_LOG
    - gf_bs_new
    - uncv_reset
    - uncv_get_compat
    - memset
    - gf_pixel_fmt_name
    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:1137,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/dec_uncv.c:1142,1
    - Dst: gf_filter_pid_check_caps
      Src: /src/gpac/src/filters/dec_uncv.c:1148,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1151,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1155,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1158,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dec_uncv.c:1162,1
    - Dst: uncv_config
      Src: /src/gpac/src/filters/dec_uncv.c:1166,1
    - Dst: gf_filter_pid_new
      Src: /src/gpac/src/filters/dec_uncv.c:1170,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dec_uncv.c:1172,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_uncv.c:1173,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_uncv.c:1173,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_uncv.c:1174,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_uncv.c:1174,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_uncv.c:1175,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: 1177
      start: 1134
    functionDepth: 9
    functionLinenumber: 1134
    functionLinenumberEnd: 1177
    functionName: uncvdec_configure_pid
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_filter_get_udta
    - uncv_config
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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:1187,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - bsr
    argTypes:
    - UNCVDecCtx*
    - BSRead*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1180
    functionDepth: 1
    functionLinenumber: 1180
    functionLinenumberEnd: 1193
    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:1206,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1207,1
    - Dst: uncv_setup_block
      Src: /src/gpac/src/filters/dec_uncv.c:1212,1
    - Dst: gf_bs_reassign_buffer
      Src: /src/gpac/src/filters/dec_uncv.c:1244,1
    - Dst: uncv_setup_block
      Src: /src/gpac/src/filters/dec_uncv.c:1245,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 43
    argCount: 3
    argNames:
    - ctx
    - data
    - size
    argTypes:
    - UNCVDecCtx*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1251
      start: 1196
    functionDepth: 7
    functionLinenumber: 1196
    functionLinenumberEnd: 1251
    functionName: uncv_start_frame
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_reassign_buffer
    - uncv_setup_block
    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:1260,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: 1267
      start: 1254
    functionDepth: 7
    functionLinenumber: 1254
    functionLinenumberEnd: 1267
    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: 1271
      start: 1269
    functionDepth: 0
    functionLinenumber: 1269
    functionLinenumberEnd: 1271
    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:1278,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1284,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dec_uncv.c:1286,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1292,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1294,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - config
    argTypes:
    - UNCVDecCtx*
    - UNCVConfig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1296
      start: 1273
    functionDepth: 7
    functionLinenumber: 1273
    functionLinenumberEnd: 1296
    functionName: uncv_end_line
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_align
    - gf_bs_seek
    - gf_bs_skip_bytes
    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:1304,1
    - Dst: gf_bs_read_double
      Src: /src/gpac/src/filters/dec_uncv.c:1306,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:1316,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1320,1
    - Dst: gf_bs_seek
      Src: /src/gpac/src/filters/dec_uncv.c:1322,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_uncv.c:1323,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_uncv.c:1325,1
    - Dst: gf_bs_read_long_int
      Src: /src/gpac/src/filters/dec_uncv.c:1328,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 3
    argNames:
    - bs
    - comp
    - ctx
    argTypes:
    - GF_BitStream*
    - UNCVComponentInfo*
    - UNCVDecCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1299
    functionDepth: 7
    functionLinenumber: 1299
    functionLinenumberEnd: 1336
    functionName: uncv_get_val
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 1
    functionsReached:
    - gf_bs_read_u8
    - gf_bs_align
    - gf_bs_read_double
    - gf_bs_read_long_int
    - gf_bs_read_float
    - gf_bs_seek
    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:1378,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1381,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:1385,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:1394,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:1397,1
    - Dst: uncv_get_val
      Src: /src/gpac/src/filters/dec_uncv.c:1402,1
    - Dst: gf_bs_read_int
      Src: /src/gpac/src/filters/dec_uncv.c:1406,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: 1410
      start: 1338
    functionDepth: 8
    functionLinenumber: 1338
    functionLinenumberEnd: 1410
    functionName: uncv_pull_block
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_seek
    - gf_bs_read_int
    - gf_bs_read_u8
    - uncv_get_val
    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:1418,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1425,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: 1439
      start: 1412
    functionDepth: 1
    functionLinenumber: 1412
    functionLinenumberEnd: 1439
    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:1448,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1456,1
    - Dst: uncv_get_val
      Src: /src/gpac/src/filters/dec_uncv.c:1461,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1466,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: 1469
      start: 1441
    functionDepth: 9
    functionLinenumber: 1441
    functionLinenumberEnd: 1469
    functionName: uncv_pull_val
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - uncv_pull_block
    - uncv_get_val
    - uncv_set_pix_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:1474,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1476,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:1482,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1484,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1486,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1489,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: 1493
      start: 1471
    functionDepth: 10
    functionLinenumber: 1471
    functionLinenumberEnd: 1493
    functionName: read_pixel_interleave_pixel
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - gf_bs_align
    - GF_LOG
    - 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:1498,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1503,1
    - Dst: gf_bs_align
      Src: /src/gpac/src/filters/dec_uncv.c:1508,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dec_uncv.c:1509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dec_uncv.c:1511,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dec_uncv.c:1514,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1527,1
    - Dst: uncv_set_pix_val
      Src: /src/gpac/src/filters/dec_uncv.c:1532,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: 1536
      start: 1495
    functionDepth: 10
    functionLinenumber: 1495
    functionLinenumberEnd: 1536
    functionName: read_pixel_interleave_multiy
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - uncv_set_pix_val
    - gf_bs_align
    - GF_LOG
    - 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:1542,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: 1544
      start: 1539
    functionDepth: 10
    functionLinenumber: 1539
    functionLinenumberEnd: 1544
    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:1552,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: 1554
      start: 1546
    functionDepth: 10
    functionLinenumber: 1546
    functionLinenumberEnd: 1554
    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:1568,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: 1570
      start: 1556
    functionDepth: 10
    functionLinenumber: 1556
    functionLinenumberEnd: 1570
    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:1584,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1588,1
    - Dst: uncv_pull_val
      Src: /src/gpac/src/filters/dec_uncv.c:1590,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: 1594
      start: 1572
    functionDepth: 10
    functionLinenumber: 1572
    functionLinenumberEnd: 1594
    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:1601,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1603,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dec_uncv.c:1605,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dec_uncv.c:1606,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/dec_uncv.c:1612,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1613,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dec_uncv.c:1618,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1620,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_uncv.c:1625,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_uncv.c:1626,1
    - Dst: memset
      Src: /src/gpac/src/filters/dec_uncv.c:1628,1
    - Dst: uncv_start_frame
      Src: /src/gpac/src/filters/dec_uncv.c:1630,1
    - Dst: uncv_start_tile
      Src: /src/gpac/src/filters/dec_uncv.c:1637,1
    - Dst: UNCVDecCtx*::read_pixel
      Src: /src/gpac/src/filters/dec_uncv.c:1643,1
    - Dst: uncv_end_line
      Src: /src/gpac/src/filters/dec_uncv.c:1656,1
    - Dst: uncv_end_tile
      Src: /src/gpac/src/filters/dec_uncv.c:1658,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_uncv.c:1661,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_uncv.c:1662,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1664
      start: 1598
    functionDepth: 8
    functionLinenumber: 1598
    functionLinenumberEnd: 1664
    functionName: uncvdec_process
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_forward
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - uncv_start_frame
    - gf_filter_pid_set_eos
    - memset
    - uncv_end_line
    - gf_filter_pck_get_data
    - UNCVDecCtx*::read_pixel
    - gf_filter_pid_drop_packet
    - uncv_start_tile
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - uncv_end_tile
    - gf_filter_pck_send
    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:1668,1
    - Dst: uncv_reset
      Src: /src/gpac/src/filters/dec_uncv.c:1669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1670
      start: 1666
    functionDepth: 4
    functionLinenumber: 1666
    functionLinenumberEnd: 1670
    functionName: uncvdec_finalize
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 0
    functionsReached:
    - gf_filter_get_udta
    - uncv_reset
    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: 1682
      start: 1681
    functionDepth: 0
    functionLinenumber: 1681
    functionLinenumberEnd: 1682
    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: 1708
      start: 1705
    functionDepth: 0
    functionLinenumber: 1705
    functionLinenumberEnd: 1708
    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: 1713
      start: 1710
    functionDepth: 0
    functionLinenumber: 1710
    functionLinenumberEnd: 1713
    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:1717,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filters/dec_uncv.c:1717,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: 1719
      start: 1715
    functionDepth: 3
    functionLinenumber: 1715
    functionLinenumberEnd: 1719
    functionName: rfc_6381_get_codec_uncv
    functionSourceFile: /src/gpac/src/filters/dec_uncv.c
    functionUses: 1
    functionsReached:
    - snprintf
    - gf_4cc_to_str
    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_filter_pid_get_property
    - gf_bs_read_u8
    - gf_filter_pid_set_framing_mode
    - gf_bs_new
    - gf_bs_del
    - gf_bs_skip_bytes
    - gf_filter_get_udta
    - gf_crc_32
    - gf_filter_pid_remove
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - PROP_BOOL
    - gf_filter_pid_check_caps
    - gf_bs_read_u32
    - gf_bs_read_u16
    - GF_4CC
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_bs_available
    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: 42
    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:421,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:433,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:433,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:438,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:438,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:443,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:443,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dec_j2k.c:452,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dec_j2k.c:452,1
    - Dst: opj_end_decompress
      Src: /src/gpac/src/filters/dec_j2k.c:456,1
    - Dst: opj_stream_destroy
      Src: /src/gpac/src/filters/dec_j2k.c:457,1
    - Dst: opj_destroy_codec
      Src: /src/gpac/src/filters/dec_j2k.c:459,1
    - Dst: opj_cio_close
      Src: /src/gpac/src/filters/dec_j2k.c:463,1
    - Dst: opj_destroy_decompress
      Src: /src/gpac/src/filters/dec_j2k.c:468,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/dec_j2k.c:473,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:477,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:479,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:504,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:506,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:521,1
    - Dst: int_ceildivpow2
      Src: /src/gpac/src/filters/dec_j2k.c:523,1
    - Dst: opj_image_destroy
      Src: /src/gpac/src/filters/dec_j2k.c:578,1
    - Dst: gf_filter_pck_get_seek_flag
      Src: /src/gpac/src/filters/dec_j2k.c:581,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/dec_j2k.c:582,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dec_j2k.c:584,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/dec_j2k.c:585,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dec_j2k.c:586,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dec_j2k.c:588,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 236
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 590
    functionName: j2kdec_process
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - opj_setup_decoder
    - gf_filter_pid_set_eos
    - opj_stream_set_user_data
    - opj_stream_set_seek_function
    - opj_cio_close
    - GF_SAFEALLOC
    - opj_decode_with_info
    - opj_set_event_mgr
    - gf_filter_pid_drop_packet
    - opj_stream_set_read_function
    - gf_filter_pid_get_packet
    - opj_set_default_decoder_parameters
    - gf_filter_get_udta
    - opj_set_info_handler
    - opj_create_decompress
    - gf_filter_pck_set_dependency_flags
    - opj_image_destroy
    - gf_filter_pck_get_data
    - gf_filter_pck_get_seek_flag
    - opj_set_decode_area
    - opj_read_header
    - opj_stream_default_create
    - gf_filter_pck_send
    - opj_stream_set_skip_function
    - opj_destroy_decompress
    - opj_stream_set_user_data_length
    - opj_cio_open
    - opj_decode
    - opj_stream_destroy
    - int_ceildivpow2
    - gf_filter_pid_is_eos
    - gf_filter_pck_discard
    - gf_free
    - opj_set_error_handler
    - GF_LOG
    - opj_set_warning_handler
    - gf_filter_pid_set_property
    - PROP_UINT
    - opj_destroy_codec
    - memset
    - opj_end_decompress
    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:595,1
    - Dst: error_callback
      Src: /src/gpac/src/filters/dec_j2k.c:596,1
    - Dst: warning_callback
      Src: /src/gpac/src/filters/dec_j2k.c:597,1
    - Dst: info_callback
      Src: /src/gpac/src/filters/dec_j2k.c:598,1
    - Dst: j2kdec_stream_skip
      Src: /src/gpac/src/filters/dec_j2k.c:600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 592
    functionDepth: 2
    functionLinenumber: 592
    functionLinenumberEnd: 605
    functionName: j2kdec_initialize
    functionSourceFile: /src/gpac/src/filters/dec_j2k.c
    functionUses: 0
    functionsReached:
    - info_callback
    - j2kdec_stream_skip
    - error_callback
    - gf_sys_is_cov_mode
    - warning_callback
    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: 645
      start: 638
    functionDepth: 0
    functionLinenumber: 638
    functionLinenumberEnd: 645
    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_setup_failure
    - gf_filter_notification_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_get_netcap_id
    - gf_filter_get_download_manager
    - gf_malloc
    - httpin_notify_error
    - gf_filter_get_udta
    - gf_filter_setup_failure
    - gf_sys_clock
    - gf_sys_is_cov_mode
    - gf_dm_sess_new
    - gf_filter_set_blocking
    - gf_filter_pid_raw_new
    - gf_dm_sess_set_netcap_id
    - gf_filter_pid_raw_gmem
    - gf_dm_sess_set_range
    - strstr
    - strncmp
    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_free
    - gf_dm_sess_del
    - gf_filter_get_udta
    - gf_fclose
    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:
    - gf_dm_can_handle_url
    - strnicmp
    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_pid_set_eos
    - gf_filter_post_process_task
    - 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_filter_get_netcap_id
    - gf_dm_sess_get_cache_name
    - gf_filter_pid_set_eos
    - gf_file_basename
    - gf_filter_pid_raw_new
    - gf_filter_pck_new_shared
    - gf_filter_get_udta
    - gf_fopen
    - gf_filter_post_process_task
    - gf_filter_pid_set_info_str
    - gf_dm_sess_new
    - gf_dm_delete_cached_file_entry_session
    - gf_filter_pck_send
    - gf_dm_sess_abort
    - gf_dm_sess_del
    - gf_dm_sess_force_memory_mode
    - PROP_BOOL
    - gf_dm_sess_set_netcap_id
    - gf_filter_notification_failure
    - gf_dm_sess_set_range
    - gf_error_to_string
    - gf_free
    - httpin_set_eos
    - gf_fclose
    - httpin_notify_error
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_dm_sess_setup_from_url
    - gf_fseek
    - gf_filter_pid_set_property
    - gf_strdup
    - strncmp
    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: sprintf
      Src: /src/gpac/src/filters/in_http.c:670,1
    - Dst: gf_filter_update_status
      Src: /src/gpac/src/filters/in_http.c:671,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/in_http.c:675,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/in_http.c:677,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/in_http.c:677,1
    - Dst: httpin_set_eos
      Src: /src/gpac/src/filters/in_http.c:679,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 201
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 405
    functionDepth: 5
    functionLinenumber: 405
    functionLinenumberEnd: 684
    functionName: httpin_process
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_property_dyn
    - PROP_LONGUINT
    - gf_dm_sess_get_cache_name
    - gf_dm_sess_is_regulated
    - PROP_POINTER
    - gf_filter_pid_set_eos
    - gf_filter_pid_enum_properties
    - gf_assert
    - gf_filter_pid_raw_new
    - gf_dm_sess_mime_type
    - gf_filter_pck_new_shared
    - gf_blob_get
    - gf_blob_release
    - gf_filter_pid_set_info
    - gf_filter_pid_would_block
    - gf_filter_get_udta
    - gf_fopen
    - gf_sys_is_test_mode
    - gf_filter_reporting_enabled
    - memcpy
    - gf_filter_pck_send
    - gf_dm_sess_abort
    - gf_sys_clock
    - gf_filter_pck_set_cts
    - strnicmp
    - gf_dm_sess_fetch_data
    - PROP_BOOL
    - PROP_STRING
    - gf_filter_pck_set_sap
    - gf_filter_pid_set_property_str
    - sprintf
    - httpin_set_eos
    - httpin_notify_error
    - gf_filter_pck_set_framing
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_dm_sess_enum_headers
    - gf_filter_pck_set_byte_offset
    - gf_fread
    - gf_filter_update_status
    - gf_dm_sess_get_stats
    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: 689
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 689
    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:747,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - session
    - freg
    argTypes:
    - GF_FilterSession*
    - struct __gf_filter_register*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    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:754,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_http.c:755,1
    - Dst: curl_version_info
      Src: /src/gpac/src/filters/in_http.c:757,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/in_http.c:760,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: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:764,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filters/in_http.c:769,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/in_http.c:770,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filters/in_http.c:775,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/in_http.c:778,1
    - Dst: gf_dynstrcat
      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:782,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: curl_version_info
      Src: /src/gpac/src/filters/in_http.c:785,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:786,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:787,1
    - Dst: curl_easy_option_next
      Src: /src/gpac/src/filters/in_http.c:788,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/in_http.c:799,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: curl_easy_option_next
      Src: /src/gpac/src/filters/in_http.c:803,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 52
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 752
    functionDepth: 6
    functionLinenumber: 752
    functionLinenumberEnd: 810
    functionName: httpin_register
    functionSourceFile: /src/gpac/src/filters/in_http.c
    functionUses: 0
    functionsReached:
    - curl_version_info
    - gf_free
    - gf_strdup
    - curl_easy_option_next
    - strcmp
    - gf_dynstrcat
    - gf_opts_get_bool
    - gf_opts_set_key
    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: 815
      start: 812
    functionDepth: 0
    functionLinenumber: 812
    functionLinenumberEnd: 815
    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_filter_pid_copy_properties
    - gf_filter_pid_get_property
    - gf_filter_pid_new
    - gf_filter_get_udta
    - gf_filter_pid_set_framing_mode
    - gf_crc_32
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_remove
    - gf_filter_pid_check_caps
    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_get_dependency_flags
    - gf_filter_pck_forward
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - gf_filter_pck_get_sap
    - gf_filter_pck_get_data
    - gf_filter_pck_set_byte_offset
    - gf_filter_pid_drop_packet
    - gf_filter_pck_has_properties
    - gf_filter_pid_get_packet
    - gf_filter_pid_is_eos
    - memcpy
    - gf_filter_pck_send
    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_filter_pid_get_property
    - gf_free
    - gf_malloc
    - PROP_DATA_NO_COPY
    - gf_m4v_rewrite_pl
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_FRAC
    - memcpy
    - gf_m4v_rewrite_par
    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_LOG
    - gf_net_ntp_to_utc
    - gf_filter_pck_get_duration
    - gf_gmtime
    - gf_timestamp_rescale
    - gf_assert
    - gf_filter_pck_get_cts
    - gf_filter_pck_get_timescale
    - gf_timecode_greater
    - gf_net_get_utc
    - gf_ceil
    - memset
    - memcpy
    - strstr
    - gf_timecode_less
    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_get_position
    - gf_bs_read_u8
    - gf_avc_reformat_sei
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_filter_pck_set_property
    - gf_bs_seek
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_filter_pck_get_data
    - bsrw_manipulate_tc
    - gf_realloc
    - gf_filter_pck_send
    - gf_hevc_reformat_sei
    - gf_bs_read_int
    - gf_bs_write_data
    - PROP_DATA
    - gf_filter_pck_forward
    - gf_free
    - gf_bs_align
    - gf_filter_pck_get_property
    - gf_vvc_reformat_sei
    - GF_LOG
    - gf_avc_parse_nalu
    - gf_bs_available
    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_filter_pid_get_property
    - gf_list_count
    - gf_avc_read_pps
    - GF_LOG
    - GF_SAFEALLOC
    - nalu_rewrite_packet
    - gf_odf_avc_cfg_read
    - gf_list_get
    - gf_odf_avc_cfg_del
    - gf_avc_read_sps
    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_get_position
    - gf_bs_read_u8
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - gf_media_probe_iamf
    - gf_av1_leb128_write
    - gf_bs_write_int
    - gf_bs_new
    - gf_bs_read_data
    - gf_bs_del
    - gf_filter_pck_set_property
    - gf_bs_seek
    - gf_bs_write_u8
    - gf_filter_pck_get_data
    - bsrw_manipulate_tc
    - gf_media_probe_ivf
    - gf_filter_pck_send
    - gf_av1_parse_obu_header
    - PROP_DATA
    - gf_filter_pck_forward
    - gf_bs_align
    - gf_filter_pck_get_property
    - GF_LOG
    - gf_media_aom_probe_annexb
    - gf_av1_leb128_read
    - gf_bs_available
    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:
    - PROP_FRAC_INT
    - PROP_BOOL
    - PROP_UINT
    - gf_filter_pid_set_property
    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_filter_pid_get_property
    - gf_list_count
    - gf_avc_change_vui
    - PROP_DATA_NO_COPY
    - gf_odf_avc_cfg_write
    - gf_list_get
    - update_props
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_odf_avc_cfg_read
    - gf_filter_pid_negotiate_property
    - gf_odf_avc_cfg_del
    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_get_property
    - gf_filter_pid_set_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_filter_pid_get_property
    - gf_odf_hevc_cfg_del
    - PROP_DATA_NO_COPY
    - gf_hevc_change_vui
    - gf_odf_hevc_cfg_read
    - update_props
    - gf_filter_pid_set_property
    - PROP_BOOL
    - gf_filter_pid_negotiate_property
    - reconfigure_alternative_transfer_characteristic
    - gf_odf_hevc_cfg_write
    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_filter_pid_get_property
    - reconfigure_alternative_transfer_characteristic
    - gf_odf_vvc_cfg_read
    - PROP_DATA_NO_COPY
    - gf_odf_vvc_cfg_write
    - update_props
    - gf_filter_pid_set_property
    - gf_vvc_change_vui
    - gf_odf_vvc_cfg_del
    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_get_property
    - PROP_BOOL
    - gf_filter_pid_negotiate_property
    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:
    - GF_LOG
    - PROP_UINT
    - gf_filter_pck_new_clone
    - gf_filter_pid_set_property
    - PROP_FRAC
    - 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_filter_pid_get_property
    - gf_filter_pid_copy_properties
    - gf_filter_pid_new
    - gf_free
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - GF_LOG
    - gf_filter_pid_set_framing_mode
    - gf_filter_pid_get_udta
    - rewrite_pid_config
    - gf_list_del_item
    - init_vui
    - GF_SAFEALLOC
    - gf_filter_pid_remove
    - gf_fatal_assert
    - gf_ceil
    - gf_filter_pid_check_caps
    - gf_list_add
    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_get_udta
    - BSRWPid*::rewrite_packet
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_eos
    - init_vui
    - gf_filter_pid_drop_packet
    - rewrite_pid_config
    - gf_filter_get_ipid
    - gf_filter_pid_is_eos
    - gf_filter_pid_get_packet
    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_filter_get_udta
    - GF_LOG
    - bsrw_parse_date
    - gf_list_new
    - strstr
    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_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_list_pop_back
    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_transfer_all_names
    - gf_cicp_color_primaries_all_names
    - gf_cicp_color_matrix_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_filter_pck_new_alloc
    - gf_evg_stencil_get_pixel_fast
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - GF_COL_R
    - GF_COL_G
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - gf_filter_pck_get_frame_interface
    - AV_RL32
    - gf_filter_get_udta
    - gf_evg_stencil_set_texture_planes
    - GF_COLW_G
    - gf_evg_surface_clear
    - gf_filter_pck_get_data
    - gf_evg_surface_attach_to_buffer
    - GF_COLW_B
    - gf_filter_pck_send
    - GF_COLW_A
    - gf_evg_surface_set_path
    - gf_evg_stencil_get_pixel_wide_fast
    - GF_FilterFrameInterface*::get_plane
    - gf_evg_surface_fill
    - gf_filter_pid_is_eos
    - sws_scale
    - gf_color_parse
    - gf_filter_pck_discard
    - gf_filter_pck_forward
    - gf_evg_stencil_set_texture
    - GF_LOG
    - GF_COL_A
    - GF_COLW_R
    - memset
    - GF_COL_B
    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_filter_pid_get_property
    - sws_getColorspaceDetails
    - INT2FIX
    - gf_pixel_fmt_is_yuv
    - ffmpeg_pixfmt_from_gpac
    - gf_path_add_rect_center
    - sws_setColorspaceDetails
    - gf_filter_get_udta
    - gf_pixel_get_downsampling
    - gf_filter_pid_remove
    - gf_evg_surface_attach_to_buffer
    - sws_getCachedContext
    - gf_filter_pid_new
    - PROP_FRAC
    - gf_realloc
    - gf_pixel_get_bytes_per_pixel
    - gf_filter_pid_copy_properties
    - get_sws_mode
    - gf_path_reset
    - gf_pixel_is_wide_depth
    - gf_filter_pid_check_caps
    - gf_filter_is_dynamic
    - gf_pixel_fmt_name
    - sws_isSupportedInput
    - gf_evg_stencil_set_texture
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_pixel_get_size_info
    - gf_pixel_fmt_is_transparent
    - memset
    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_filter_get_udta
    - ffmpeg_setup_logs
    - gf_evg_stencil_new
    - gf_path_new
    - gf_evg_surface_new
    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_filter_get_udta
    - gf_evg_surface_delete
    - gf_path_del
    - gf_evg_stencil_delete
    - sws_freeContext
    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_filter_pid_copy_properties
    - gf_list_count
    - PROP_LONGUINT
    - PROP_FRAC64_INT
    - gf_file_basename
    - gf_filter_pid_set_property
    - PROP_UINT
    - PROP_FRAC_INT
    - gf_filter_pid_set_name
    - PROP_STRING
    - gf_list_get
    - gf_filter_pid_set_property_str
    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_count
    - gf_filter_pck_new_alloc
    - gf_filter_pck_set_seek_flag
    - gf_filter_pid_set_eos
    - gf_filter_pck_set_cts
    - gf_timestamp_rescale
    - gf_filter_pck_set_dts
    - PROP_BOOL
    - gf_filter_pck_set_duration
    - gf_filter_pck_set_sap
    - gf_list_get
    - gf_filter_pck_set_property
    - 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_get_property
    - gf_list_count
    - gf_filter_pid_set_discard
    - gf_filter_pid_new
    - gf_filter_pid_set_framing_mode
    - gf_filter_get_udta
    - gf_filter_pid_is_filter_in_parents
    - GF_LOG
    - GF_FEVT_INIT
    - gf_filter_pid_get_udta
    - gf_filter_pid_set_udta
    - gf_filter_pid_send_event
    - gf_filter_pid_get_name
    - set_opids_props
    - strcmp
    - gf_list_get
    - gf_filter_pid_check_caps
    - gf_list_add
    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_filter_pck_new_alloc
    - gf_filter_get_udta
    - gf_filter_pid_set_eos
    - gf_filter_pid_get_udta
    - GF_FEVT_INIT
    - gf_filter_pck_set_cts
    - gf_timestamp_rescale
    - gf_filter_pid_send_event
    - gf_filter_pck_set_dts
    - PROP_BOOL
    - gf_filter_pck_set_property
    - gf_filter_pck_set_sap
    - gf_list_get
    - gf_filter_pck_set_duration
    - gf_filter_pck_send
    - ghi_dmx_send_seg_times
    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_filter_pid_set_property_dyn
    - gf_list_count
    - gf_props_parse_value
    - gf_stream_type_by_name
    - gf_props_get_id
    - gf_list_add
    - gf_filter_pid_set_udta
    - gf_codecid_parse
    - gf_list_get
    - gf_filter_pid_new
    - gf_realloc
    - gf_filter_pid_copy_properties
    - gf_props_reset_single
    - gf_list_enum
    - strcmp
    - strlen
    - gf_props_parse_type
    - gf_props_4cc_get_type
    - gf_free
    - set_opids_props
    - gf_filter_pid_set_property
    - gf_base64_decode
    - gf_props_4cc_get_name
    linkageType: ''
    returnType: void
    signature: void ghi_dmx_declare_opid_xml(GF_Filter *filter, GHIDmxCtx *ctx, GHIStream
      *st)
  - BBCount: 39
    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:584,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:587,1
    - Dst: gf_bs_read_data
      Src: /src/gpac/src/filters/dmx_ghi.c:588,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:595,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_ghi.c:596,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:599,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:602,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:604,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:612,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_ghi.c:613,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:616,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:619,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:621,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:625,1
    - Dst: gf_bs_available
      Src: /src/gpac/src/filters/dmx_ghi.c:626,1
    - Dst: gf_bs_mark_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:629,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:632,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:634,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:635,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:643,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filters/dmx_ghi.c:645,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:646,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_ghi.c:648,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:650,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:650,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:657,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:658,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filters/dmx_ghi.c:659,1
    - Dst: set_opids_props
      Src: /src/gpac/src/filters/dmx_ghi.c:661,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 155
    argCount: 4
    argNames:
    - filter
    - ctx
    - st
    - bs
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    - GHIStream*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 483
    functionDepth: 7
    functionLinenumber: 483
    functionLinenumberEnd: 662
    functionName: ghi_dmx_declare_opid_bin
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u8
    - gf_list_count
    - gf_filter_pid_set_property_dyn
    - gf_bs_get_position
    - gf_bs_read_u64
    - gf_bs_read_data
    - gf_bs_read_float
    - gf_bs_seek
    - gf_list_add
    - gf_bs_skip_bytes
    - gf_malloc
    - gf_filter_pid_set_udta
    - gf_list_get
    - gf_bs_read_utf8
    - gf_filter_pid_new
    - gf_filter_pid_copy_properties
    - gf_props_reset_single
    - gf_bs_is_overflow
    - gf_bs_read_double
    - gf_bs_read_u32
    - gf_props_4cc_get_type
    - FLT2FIX
    - gf_free
    - set_opids_props
    - gf_bs_mark_overflow
    - gf_filter_pid_set_property
    - gf_bs_available
    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:678,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:679,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:685,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - GHIDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 692
    functionName: ghi_dmx_unmark_muxed
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:699,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:702,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filters/dmx_ghi.c:709,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:719,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:726,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - ctx
    - st
    argTypes:
    - GHIDmxCtx*
    - GHIStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 731
    functionName: ghi_dmx_check_mux
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_props_parse_value
    - strcmp
    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:736,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ghi.c:742,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:743,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:745,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:746,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:748,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:749,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:751,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:754,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:755,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:758,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:759,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:762,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:763,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: 771
      start: 733
    functionDepth: 7
    functionLinenumber: 733
    functionLinenumberEnd: 771
    functionName: ghi_dmx_parse_seg
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_bs_read_u64
    - GF_SAFEALLOC
    - gf_bs_seek
    - gf_list_add
    - gf_bs_read_u32
    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:775,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:776,1
    - Dst: gf_bs_read_u32
      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_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:779,1
    - Dst: gf_bs_read_u64
      Src: /src/gpac/src/filters/dmx_ghi.c:780,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:781,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:783,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ghi.c:788,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:790,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:792,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:794,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:797,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:798,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:800,1
    - Dst: gf_bs_read_utf8
      Src: /src/gpac/src/filters/dmx_ghi.c:802,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:805,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:806,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:808,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:809,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:810,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:811,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:812,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:813,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:814,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_ghi.c:815,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/dmx_ghi.c:816,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/dmx_ghi.c:817,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:820,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/dmx_ghi.c:821,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:822,1
    - Dst: ghi_dmx_check_mux
      Src: /src/gpac/src/filters/dmx_ghi.c:824,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:827,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:828,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:842,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:852,1
    - Dst: ghi_dmx_parse_seg
      Src: /src/gpac/src/filters/dmx_ghi.c:853,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:855,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:865,1
    - Dst: gf_bs_get_position
      Src: /src/gpac/src/filters/dmx_ghi.c:883,1
    - Dst: gf_bs_skip_bytes
      Src: /src/gpac/src/filters/dmx_ghi.c:884,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 95
    argCount: 3
    argNames:
    - filter
    - ctx
    - bs
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    - GF_BitStream*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 887
      start: 773
    functionDepth: 8
    functionLinenumber: 773
    functionLinenumberEnd: 887
    functionName: ghi_dmx_init_bin
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_bs_get_position
    - gf_bs_read_u8
    - ghi_dmx_check_mux
    - gf_bs_read_u64
    - GF_LOG
    - ghi_dmx_parse_seg
    - gf_list_get
    - gf_list_add
    - GF_SAFEALLOC
    - gf_list_new
    - gf_bs_read_u32
    - gf_bs_read_utf8
    - gf_bs_read_u16
    - gf_bs_skip_bytes
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err ghi_dmx_init_bin(GF_Filter *filter, GHIDmxCtx *ctx, GF_BitStream
      *bs)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filters/dmx_ghi.c:893,1
    - Dst: gf_xml_dom_parse_string
      Src: /src/gpac/src/filters/dmx_ghi.c:894,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_ghi.c:897,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:898,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ghi.c:898,1
    - Dst: gf_mpd_new
      Src: /src/gpac/src/filters/dmx_ghi.c:901,1
    - Dst: gf_mpd_init_from_dom
      Src: /src/gpac/src/filters/dmx_ghi.c:902,1
    - Dst: gf_xml_dom_get_root
      Src: /src/gpac/src/filters/dmx_ghi.c:902,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filters/dmx_ghi.c:903,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:905,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ghi.c:905,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:906,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:915,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:917,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:918,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:924,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:926,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:927,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:928,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/dmx_ghi.c:931,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:954,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/dmx_ghi.c:955,1
    - Dst: ghi_dmx_check_mux
      Src: /src/gpac/src/filters/dmx_ghi.c:957,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:961,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:963,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:963,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:964,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:968,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:974,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:993,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1007,1
    - Dst: gf_mpd_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1011,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 95
    argCount: 3
    argNames:
    - filter
    - ctx
    - data
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    - u8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 889
    functionDepth: 11
    functionLinenumber: 889
    functionLinenumberEnd: 1016
    functionName: ghi_dmx_init_xml
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_xml_dom_get_root
    - gf_xml_dom_parse_string
    - gf_list_count
    - ghi_dmx_check_mux
    - gf_xml_dom_del
    - GF_LOG
    - gf_mpd_new
    - gf_mpd_init_from_dom
    - gf_list_new
    - gf_xml_dom_new
    - GF_SAFEALLOC
    - gf_mpd_del
    - gf_list_get
    - gf_list_add
    - gf_error_to_string
    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:1022,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/dmx_ghi.c:1025,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/dmx_ghi.c:1030,1
    - Dst: ghi_dmx_init_bin
      Src: /src/gpac/src/filters/dmx_ghi.c:1031,1
    - Dst: gf_bs_is_overflow
      Src: /src/gpac/src/filters/dmx_ghi.c:1032,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filters/dmx_ghi.c:1033,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filters/dmx_ghi.c:1034,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/dmx_ghi.c:1036,1
    - Dst: ghi_dmx_init_xml
      Src: /src/gpac/src/filters/dmx_ghi.c:1038,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1039,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1047,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1048,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_ghi.c:1049,1
    - Dst: ghi_dmx_unmark_muxed
      Src: /src/gpac/src/filters/dmx_ghi.c:1054,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1057,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1058,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1061,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1062,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/dmx_ghi.c:1063,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1069,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filters/dmx_ghi.c:1070,1
    - Dst: ghi_dmx_parse_seg
      Src: /src/gpac/src/filters/dmx_ghi.c:1079,1
    - Dst: ghi_dmx_declare_opid_bin
      Src: /src/gpac/src/filters/dmx_ghi.c:1083,1
    - Dst: ghi_dmx_declare_opid_xml
      Src: /src/gpac/src/filters/dmx_ghi.c:1085,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_ghi.c:1090,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filters/dmx_ghi.c:1093,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_ghi.c:1097,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_ghi.c:1098,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_ghi.c:1099,1
    - Dst: gf_filter_get_sep
      Src: /src/gpac/src/filters/dmx_ghi.c:1104,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/dmx_ghi.c:1105,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filters/dmx_ghi.c:1106,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filters/dmx_ghi.c:1109,1
    - Dst: gf_filter_connect_source
      Src: /src/gpac/src/filters/dmx_ghi.c:1121,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1122,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1124,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1125,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1127,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/dmx_ghi.c:1127,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/dmx_ghi.c:1128,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filters/dmx_ghi.c:1131,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filters/dmx_ghi.c:1133,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1136,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1137,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/dmx_ghi.c:1138,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1141,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 97
    argCount: 2
    argNames:
    - filter
    - ctx
    argTypes:
    - GF_Filter*
    - GHIDmxCtx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1143
      start: 1017
    functionDepth: 12
    functionLinenumber: 1017
    functionLinenumberEnd: 1143
    functionName: ghi_dmx_init
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - ghi_dmx_init_xml
    - gf_bs_new
    - gf_url_concatenate
    - gf_bs_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - ghi_dmx_declare_opid_xml
    - ghi_dmx_init_bin
    - gf_malloc
    - gf_filter_pck_get_data
    - gf_filter_connect_source
    - gf_list_get
    - gf_dynstrcat
    - memcpy
    - gf_filter_set_source
    - gf_filter_pid_set_discard
    - gf_bs_is_overflow
    - strcmp
    - ghi_dmx_declare_opid_bin
    - gf_filter_set_setup_failure_callback
    - ghi_dmx_unmark_muxed
    - gf_timestamp_less
    - gf_filter_get_sep
    - sprintf
    - gf_error_to_string
    - gf_free
    - gf_filter_setup_failure
    - ghi_dmx_parse_seg
    - GF_LOG
    - gf_strdup
    - gf_utf8_is_legal
    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:1147,1
    - Dst: ghi_dmx_init
      Src: /src/gpac/src/filters/dmx_ghi.c:1152,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1155,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/dmx_ghi.c:1162,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1163,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:1165,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:1167,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/dmx_ghi.c:1171,1
    - Dst: gf_filter_pck_new_ref
      Src: /src/gpac/src/filters/dmx_ghi.c:1176,1
    - Dst: gf_filter_pck_merge_properties
      Src: /src/gpac/src/filters/dmx_ghi.c:1178,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1180,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/dmx_ghi.c:1180,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1182,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:1182,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/dmx_ghi.c:1187,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/dmx_ghi.c:1187,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/dmx_ghi.c:1190,1
    - Dst: gf_filter_pck_forward
      Src: /src/gpac/src/filters/dmx_ghi.c:1194,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/dmx_ghi.c:1198,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/dmx_ghi.c:1199,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/dmx_ghi.c:1200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1206,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/dmx_ghi.c:1208,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1145
    functionDepth: 13
    functionLinenumber: 1145
    functionLinenumberEnd: 1212
    functionName: ghi_dmx_process
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_merge_properties
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_pck_set_property
    - gf_filter_pid_drop_packet
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - ghi_dmx_init
    - gf_filter_get_udta
    - gf_list_get
    - gf_filter_pck_send
    - gf_filter_pck_get_dts
    - PROP_BOOL
    - gf_filter_pck_new_ref
    - gf_filter_pid_is_eos
    - gf_filter_pck_forward
    - GF_LOG
    - PROP_UINT
    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:1216,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/dmx_ghi.c:1217,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/dmx_ghi.c:1227,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1214
    functionDepth: 1
    functionLinenumber: 1214
    functionLinenumberEnd: 1231
    functionName: ghi_dmx_initialize
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_get_udta
    - gf_list_new
    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:1235,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1237,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_ghi.c:1238,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filters/dmx_ghi.c:1242,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1245,1
    - Dst: gf_list_pop_back
      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_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1253,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_ghi.c:1254,1
    - Dst: gf_mpd_segment_url_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1255,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1257,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/dmx_ghi.c:1260,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/dmx_ghi.c:1261,1
    - Dst: gf_xml_dom_node_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1262,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1264,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1267,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1268,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1269,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1270,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1271,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/dmx_ghi.c:1273,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/dmx_ghi.c:1274,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1233
    functionDepth: 4
    functionLinenumber: 1233
    functionLinenumberEnd: 1276
    functionName: ghi_dmx_finalize
    functionSourceFile: /src/gpac/src/filters/dmx_ghi.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_props_reset_single
    - gf_filter_get_udta
    - gf_list_del
    - gf_xml_dom_node_del
    - gf_list_pop_back
    - gf_mpd_segment_url_free
    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: 1287
      start: 1279
    functionDepth: 0
    functionLinenumber: 1279
    functionLinenumberEnd: 1287
    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: 1290
      start: 1289
    functionDepth: 0
    functionLinenumber: 1289
    functionLinenumberEnd: 1290
    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: 1406
      start: 1403
    functionDepth: 0
    functionLinenumber: 1403
    functionLinenumberEnd: 1406
    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: 1411
      start: 1408
    functionDepth: 0
    functionLinenumber: 1408
    functionLinenumberEnd: 1411
    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:
    - gf_filter_pid_get_property
    - av_err2str
    - gf_assert
    - gf_filter_pid_get_packet
    - gf_timestamp_greater
    - ffmpeg_report_options
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - avformat_init_output
    - gf_timestamp_rescale
    - av_dict_set
    - gf_filter_get_ipid
    - gf_filter_pck_get_dts
    - av_dict_copy
    - gf_filter_abort
    - gf_filter_pck_get_cts
    - avformat_write_header
    - av_malloc
    - GF_LOG
    - av_dict_free
    - memset
    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_ftell
    - gf_fsize
    - gf_fseek
    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: memcpy
      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:
    - avio_alloc_context
    - gf_fclose
    - avio_open2
    - av_freep
    - gf_fopen
    - GF_LOG
    - av_err2str
    - gf_url_is_local
    - av_strdup
    - av_malloc
    - memcpy
    - strncmp
    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: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:407,1
    - Dst: strncmp
      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: strncmp
      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:
    - avio_open2
    - gf_filter_is_temporary
    - strstr
    - strchr
    - gf_filter_get_udta
    - gf_fileio_translate_url
    - av_packet_alloc
    - memcpy
    - ffmpeg_setup_logs
    - gf_filter_set_max_extra_input_pids
    - PROP_STRING
    - gf_filter_meta_set_instances
    - avformat_alloc_context
    - gf_list_new
    - gf_filter_override_caps
    - GF_LOG
    - av_guess_format
    - ffmx_open_url
    - PROP_UINT
    - av_dict_free
    - strncmp
    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: 15
    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: memcpy
      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:552,1
    - Dst: av_dict_copy
      Src: /src/gpac/src/filters/ff_mx.c:556,1
    - Dst: av_dict_set
      Src: /src/gpac/src/filters/ff_mx.c:557,1
    - Dst: avformat_write_header
      Src: /src/gpac/src/filters/ff_mx.c:558,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_mx.c:559,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:561,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:561,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 79
    argCount: 3
    argNames:
    - filter
    - ctx
    - seg_name
    argTypes:
    - GF_Filter*
    - GF_FFMuxCtx*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 450
    functionDepth: 5
    functionLinenumber: 450
    functionLinenumberEnd: 567
    functionName: ffmx_start_seg
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_FFMuxCtx*::muxer::io_open
    - av_freep
    - av_err2str
    - avformat_alloc_output_context2
    - GF_FFMuxCtx*::muxer::io_close
    - avformat_new_stream
    - av_codec_get_tag
    - avcodec_parameters_copy
    - av_codec_get_id
    - gf_fopen
    - av_opt_set
    - gf_list_get
    - av_dict_set
    - memcpy
    - avformat_free_context
    - MKTAG
    - av_dict_copy
    - GF_FFMuxCtx*::muxer::io_close2
    - gf_url_is_local
    - av_strdup
    - avformat_write_header
    - gf_fclose
    - GF_LOG
    - av_dict_free
    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:575,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:582,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:584,1
    - Dst: AVFMT_URL
      Src: /src/gpac/src/filters/ff_mx.c:584,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:590,1
    - Dst: AVFMT_URL
      Src: /src/gpac/src/filters/ff_mx.c:590,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:590,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:597,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/ff_mx.c:598,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_mx.c:616,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: 618
      start: 570
    functionDepth: 1
    functionLinenumber: 570
    functionLinenumberEnd: 618
    functionName: ffmx_close_seg
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - av_write_trailer
    - GF_LOG
    - av_err2str
    - GF_FEVT_INIT
    - gf_filter_pid_send_event
    - AVFMT_URL
    - gf_filter_get_ipid
    - av_write_frame
    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:625,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:629,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:637,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:640,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:642,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:643,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:645,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:652,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:654,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:657,1
    - Dst: gf_bs_new
      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_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:662,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:663,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:675,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:678,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:681,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:683,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:693,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:695,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:696,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:698,1
    - Dst: gf_bs_write_u64_le
      Src: /src/gpac/src/filters/ff_mx.c:700,1
    - Dst: gf_bs_write_u32_le
      Src: /src/gpac/src/filters/ff_mx.c:702,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:703,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 65
    argCount: 3
    argNames:
    - pid
    - st
    - pkt
    argTypes:
    - GF_FilterPid*
    - GF_FFMuxStream*
    - AVPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 620
    functionDepth: 6
    functionLinenumber: 620
    functionLinenumberEnd: 706
    functionName: ffmx_inject_config
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - ffmpeg_channel_layout_from_gpac
    - gf_bs_new
    - av_packet_new_side_data
    - gf_bs_write_u32_le
    - gf_bs_del
    - gf_bs_write_u64_le
    - memcpy
    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:713,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/ff_mx.c:715,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filters/ff_mx.c:717,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_mx.c:721,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:722,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:723,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_mx.c:726,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:727,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:728,1
    - Dst: strlen
      Src: /src/gpac/src/filters/ff_mx.c:731,1
    - Dst: av_packet_new_side_data
      Src: /src/gpac/src/filters/ff_mx.c:732,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_mx.c:735,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:737,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 2
    argNames:
    - ipck
    - pkt
    argTypes:
    - GF_FilterPacket*
    - AVPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 740
      start: 707
    functionDepth: 0
    functionLinenumber: 707
    functionLinenumberEnd: 740
    functionName: ffmx_inject_webvtt
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_property_str
    - av_packet_new_side_data
    - strlen
    - memset
    - memcpy
    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:745,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filters/ff_mx.c:746,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:751,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:753,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_mx.c:755,1
    - Dst: avio_flush
      Src: /src/gpac/src/filters/ff_mx.c:756,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/ff_mx.c:758,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_mx.c:768,1
    - Dst: avio_write
      Src: /src/gpac/src/filters/ff_mx.c:773,1
    - Dst: AVERROR
      Src: /src/gpac/src/filters/ff_mx.c:775,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/ff_mx.c:778,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:782,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:783,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:787,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:787,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:788,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:797,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filters/ff_mx.c:809,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/ff_mx.c:812,1
    - Dst: gf_sys_clock
      Src: /src/gpac/src/filters/ff_mx.c:813,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:815,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filters/ff_mx.c:816,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:818,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:823,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:824,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:825,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:829,1
    - Dst: ffmx_configure_pid
      Src: /src/gpac/src/filters/ff_mx.c:834,1
    - Dst: gf_filter_pck_get_interlaced
      Src: /src/gpac/src/filters/ff_mx.c:848,1
    - Dst: gf_filter_pck_get_roll_info
      Src: /src/gpac/src/filters/ff_mx.c:854,1
    - Dst: ffmx_init_mux
      Src: /src/gpac/src/filters/ff_mx.c:860,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:870,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:871,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:888,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_mx.c:890,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/ff_mx.c:890,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_mx.c:895,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:898,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:903,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:906,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:907,1
    - Dst: gf_timestamp_greater
      Src: /src/gpac/src/filters/ff_mx.c:912,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:917,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:928,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:930,1
    - Dst: ffmx_start_seg
      Src: /src/gpac/src/filters/ff_mx.c:931,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:935,1
    - Dst: FF_INIT_PCK
      Src: /src/gpac/src/filters/ff_mx.c:946,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/ff_mx.c:949,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filters/ff_mx.c:950,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:955,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/ff_mx.c:958,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/ff_mx.c:959,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/ff_mx.c:961,1
    - Dst: av_packet_rescale_ts
      Src: /src/gpac/src/filters/ff_mx.c:968,1
    - Dst: ffmx_inject_config
      Src: /src/gpac/src/filters/ff_mx.c:972,1
    - Dst: ffmx_inject_webvtt
      Src: /src/gpac/src/filters/ff_mx.c:974,1
    - Dst: av_interleaved_write_frame
      Src: /src/gpac/src/filters/ff_mx.c:978,1
    - Dst: av_write_frame
      Src: /src/gpac/src/filters/ff_mx.c:980,1
    - Dst: av_packet_free_side_data
      Src: /src/gpac/src/filters/ff_mx.c:983,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/ff_mx.c:986,1
    - Dst: FF_RELEASE_PCK
      Src: /src/gpac/src/filters/ff_mx.c:988,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:991,1
    - Dst: AVFMT_URL
      Src: /src/gpac/src/filters/ff_mx.c:991,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:991,1
    - Dst: gf_filter_abort
      Src: /src/gpac/src/filters/ff_mx.c:994,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:1005,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1007,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:1007,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_mx.c:1011,1
    - Dst: ffmx_initialize_ex
      Src: /src/gpac/src/filters/ff_mx.c:1014,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:1016,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1017,1
    - Dst: ffmx_configure_pid
      Src: /src/gpac/src/filters/ff_mx.c:1021,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filters/ff_mx.c:1030,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1031,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:1042,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:1044,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1046,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:1046,1
    CyclomaticComplexity: 95
    EdgeCount: 95
    ICount: 252
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1055
      start: 742
    functionDepth: 7
    functionLinenumber: 742
    functionLinenumberEnd: 1055
    functionName: ffmx_process
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pck_get_interlaced
    - FF_RELEASE_PCK
    - ffmx_close_seg
    - av_err2str
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_filter_pid_drop_packet
    - avio_flush
    - av_interleaved_write_frame
    - gf_filter_pid_get_packet
    - FF_INIT_PCK
    - gf_timestamp_greater
    - ffmx_inject_config
    - av_write_frame
    - gf_filter_get_udta
    - gf_filter_get_ipid_count
    - gf_filter_pid_get_udta
    - ffmx_inject_webvtt
    - gf_filter_pck_get_data
    - gf_filter_get_ipid
    - ffmx_init_mux
    - gf_filter_pck_get_dts
    - avformat_free_context
    - gf_filter_pid_set_discard
    - ffmx_start_seg
    - gf_filter_connections_pending
    - av_packet_rescale_ts
    - av_write_trailer
    - gf_filter_abort
    - gf_sys_clock
    - gf_filter_pck_get_cts
    - AVERROR
    - gf_filter_pck_get_roll_info
    - AVFMT_URL
    - gf_filter_pid_is_eos
    - avio_write
    - gf_filter_pck_get_property
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - ffmx_configure_pid
    - av_packet_free_side_data
    - ffmx_initialize_ex
    - gf_filter_pid_is_flush_eos
    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:1080,1
    - Dst: gf_filter_pid_get_udta
      Src: /src/gpac/src/filters/ff_mx.c:1087,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1093,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1113,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filters/ff_mx.c:1113,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1122,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1127,1
    - Dst: ffmpeg_stream_type_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1158,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1162,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1170,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1214,1
    - Dst: gf_audio_fmt_name
      Src: /src/gpac/src/filters/ff_mx.c:1214,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1219,1
    - Dst: ffmpeg_codecid_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1222,1
    - Dst: GF_FFMuxCtx*::muxer::oformat::query_codec
      Src: /src/gpac/src/filters/ff_mx.c:1229,1
    - Dst: avformat_query_codec
      Src: /src/gpac/src/filters/ff_mx.c:1232,1
    - Dst: ffmpeg_codecid_to_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1250,1
    - Dst: gf_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_mx.c:1252,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_mx.c:1252,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_filter_pid_negotiate_property
      Src: /src/gpac/src/filters/ff_mx.c:1256,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/ff_mx.c:1256,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1263,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filters/ff_mx.c:1263,1
    - Dst: avcodec_find_decoder
      Src: /src/gpac/src/filters/ff_mx.c:1267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1276,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filters/ff_mx.c:1280,1
    - Dst: gf_filter_pid_set_udta
      Src: /src/gpac/src/filters/ff_mx.c:1282,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/ff_mx.c:1283,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filters/ff_mx.c:1285,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/ff_mx.c:1286,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/ff_mx.c:1299,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/ff_mx.c:1301,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1305,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1308,1
    - Dst: gf_filter_pid_resolve_file_template
      Src: /src/gpac/src/filters/ff_mx.c:1311,1
    - Dst: ffmx_open_url
      Src: /src/gpac/src/filters/ff_mx.c:1312,1
    - Dst: avformat_new_stream
      Src: /src/gpac/src/filters/ff_mx.c:1317,1
    - Dst: strcmp
      Src: /src/gpac/src/filters/ff_mx.c:1322,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1325,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1330,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_mx.c:1335,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/ff_mx.c:1336,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1343,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1345,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1352,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1355,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1358,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1361,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1371,1
    - Dst: ffmpeg_extradata_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1384,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1387,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1390,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1400,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1407,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1410,1
    - Dst: ffmpeg_codec_par_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1413,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1417,1
    - Dst: av_channel_layout_uninit
      Src: /src/gpac/src/filters/ff_mx.c:1429,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1432,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1434,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1442,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1444,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1447,1
    - Dst: ffmpeg_audio_fmt_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1448,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1452,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1461,1
    - Dst: ffmpeg_channel_layout_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1463,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1466,1
    - Dst: ffmpeg_tags_from_gpac
      Src: /src/gpac/src/filters/ff_mx.c:1481,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1484,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1486,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:1488,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1490,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1492,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1501,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1503,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/ff_mx.c:1505,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1507,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1509,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1517,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:1519,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1520,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1522,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1523,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1525,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1527,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:1533,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1536,1
    - Dst: memset
      Src: /src/gpac/src/filters/ff_mx.c:1541,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1542,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:1543,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1545,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1547,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1549,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1551,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1553,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1555,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1557,1
    - Dst: gf_bs_read_u16
      Src: /src/gpac/src/filters/ff_mx.c:1559,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/ff_mx.c:1561,1
    - Dst: gf_bs_read_u32
      Src: /src/gpac/src/filters/ff_mx.c:1563,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1566,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1568,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:1574,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1577,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filters/ff_mx.c:1579,1
    - Dst: av_malloc
      Src: /src/gpac/src/filters/ff_mx.c:1580,1
    - Dst: gf_bs_read_u8
      Src: /src/gpac/src/filters/ff_mx.c:1582,1
    - Dst: gf_bs_read_u8
      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: gf_bs_read_int
      Src: /src/gpac/src/filters/ff_mx.c:1589,1
    - Dst: av_stream_add_side_data
      Src: /src/gpac/src/filters/ff_mx.c:1591,1
    - Dst: av_packet_side_data_add
      Src: /src/gpac/src/filters/ff_mx.c:1593,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/ff_mx.c:1599,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/ff_mx.c:1603,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1606,1
    - Dst: gf_filter_pid_set_framing_mode
      Src: /src/gpac/src/filters/ff_mx.c:1615,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: 1617
      start: 1070
    functionDepth: 11
    functionLinenumber: 1070
    functionLinenumberEnd: 1617
    functionName: ffmx_configure_pid
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - gf_bs_read_u8
    - gf_codecid_name
    - av_channel_layout_uninit
    - ffmpeg_codec_par_from_gpac
    - gf_filter_pid_set_framing_mode
    - ffmpeg_codecid_to_gpac
    - gf_audio_fmt_name
    - gf_bs_new
    - avformat_new_stream
    - GF_SAFEALLOC
    - gf_bs_del
    - ffmpeg_codecid_from_gpac
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_stream_type_name
    - gf_filter_get_udta
    - gf_filter_pid_set_udta
    - gf_crc_32
    - gf_filter_pid_get_udta
    - gf_filter_pid_resolve_file_template
    - memcpy
    - ffmpeg_extradata_from_gpac
    - av_packet_side_data_add
    - ffmpeg_tags_from_gpac
    - gf_bs_read_int
    - ffmpeg_audio_fmt_from_gpac
    - avformat_query_codec
    - gf_filter_pid_negotiate_property
    - strcmp
    - gf_bs_read_u32
    - gf_filter_pid_is_eos
    - ffmpeg_channel_layout_from_gpac
    - av_malloc
    - gf_bs_read_u16
    - gf_filter_pid_init_play_event
    - gf_filter_pck_get_property
    - GF_LOG
    - av_stream_add_side_data
    - ffmpeg_stream_type_from_gpac
    - GF_FFMuxCtx*::muxer::oformat::query_codec
    - ffmx_open_url
    - PROP_UINT
    - avcodec_find_decoder
    - memset
    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:1621,1
    - Dst: ffmx_close_seg
      Src: /src/gpac/src/filters/ff_mx.c:1625,1
    - Dst: av_write_trailer
      Src: /src/gpac/src/filters/ff_mx.c:1627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/ff_mx.c:1629,1
    - Dst: av_err2str
      Src: /src/gpac/src/filters/ff_mx.c:1629,1
    - Dst: GF_FFMuxCtx*::muxer::io_close
      Src: /src/gpac/src/filters/ff_mx.c:1636,1
    - Dst: GF_FFMuxCtx*::muxer::io_close2
      Src: /src/gpac/src/filters/ff_mx.c:1638,1
    - Dst: av_packet_free
      Src: /src/gpac/src/filters/ff_mx.c:1643,1
    - Dst: av_dict_free
      Src: /src/gpac/src/filters/ff_mx.c:1646,1
    - Dst: avformat_free_context
      Src: /src/gpac/src/filters/ff_mx.c:1647,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/ff_mx.c:1648,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filters/ff_mx.c:1649,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/ff_mx.c:1650,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/ff_mx.c:1652,1
    - Dst: av_freep
      Src: /src/gpac/src/filters/ff_mx.c:1654,1
    - Dst: avio_context_free
      Src: /src/gpac/src/filters/ff_mx.c:1655,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filters/ff_mx.c:1657,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1659
      start: 1619
    functionDepth: 5
    functionLinenumber: 1619
    functionLinenumberEnd: 1659
    functionName: ffmx_finalize
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - avformat_free_context
    - gf_list_count
    - avio_context_free
    - gf_free
    - gf_fclose
    - av_freep
    - av_write_trailer
    - gf_filter_get_udta
    - GF_LOG
    - av_err2str
    - ffmx_close_seg
    - GF_FFMuxCtx*::muxer::io_close
    - GF_FFMuxCtx*::muxer::io_close2
    - av_packet_free
    - gf_list_del
    - av_dict_free
    - gf_list_pop_back
    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:1663,1
    - Dst: ffmpeg_update_arg
      Src: /src/gpac/src/filters/ff_mx.c:1664,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: 1665
      start: 1661
    functionDepth: 2
    functionLinenumber: 1661
    functionLinenumberEnd: 1665
    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:1670,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filters/ff_mx.c:1671,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: av_guess_format
      Src: /src/gpac/src/filters/ff_mx.c:1678,1
    - Dst: strstr
      Src: /src/gpac/src/filters/ff_mx.c:1682,1
    - Dst: avio_find_protocol_name
      Src: /src/gpac/src/filters/ff_mx.c:1686,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 19
    argCount: 2
    argNames:
    - url
    - mime
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1690
      start: 1667
    functionDepth: 4
    functionLinenumber: 1667
    functionLinenumberEnd: 1690
    functionName: ffmx_probe_url
    functionSourceFile: /src/gpac/src/filters/ff_mx.c
    functionUses: 0
    functionsReached:
    - avio_find_protocol_name
    - gf_fileio_translate_url
    - av_guess_format
    - strstr
    - strncmp
    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: 1753
      start: 1752
    functionDepth: 0
    functionLinenumber: 1752
    functionLinenumberEnd: 1753
    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:1779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1780
      start: 1777
    functionDepth: 8
    functionLinenumber: 1777
    functionLinenumberEnd: 1780
    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: 1787
      start: 1784
    functionDepth: 0
    functionLinenumber: 1784
    functionLinenumberEnd: 1787
    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:
    - strstr
    - strnicmp
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE isor_is_local(const char *url)
  - BBCount: 33
    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_isom_override_dref_url
      Src: /src/gpac/src/filters/isoffin_read.c:152,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:158,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:164,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:164,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:165,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:166,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:169,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:171,1
    - Dst: gf_isom_text_set_streaming_mode
      Src: /src/gpac/src/filters/isoffin_read.c:176,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:178,1
    - Dst: isor_declare_objects
      Src: /src/gpac/src/filters/isoffin_read.c:179,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:181,1
    - Dst: gf_isom_reset_data_offset
      Src: /src/gpac/src/filters/isoffin_read.c:187,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 122
    argCount: 3
    argNames:
    - filter
    - read
    - input_is_eos
    argTypes:
    - GF_Filter*
    - ISOMReader*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 57
    functionDepth: 11
    functionLinenumber: 57
    functionLinenumberEnd: 191
    functionName: isoffin_setup
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - strchr
    - gf_crc_32
    - gf_filter_post_process_task
    - gf_fatal_assert
    - isor_is_local
    - gf_filter_force_main_thread
    - gf_isom_reset_data_offset
    - gf_file_ext_start
    - atoi
    - gf_fileio_is_main_thread
    - strnicmp
    - strlen
    - gf_isom_open_progressive
    - gf_isom_override_dref_url
    - gf_error_to_string
    - gf_free
    - GF_LOG
    - gf_filter_setup_failure
    - isor_declare_objects
    - gf_isom_is_fragmented
    - gf_isom_text_set_streaming_mode
    - gf_strdup
    - gf_isom_get_timescale
    - strncmp
    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:195,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filters/isoffin_read.c:196,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filters/isoffin_read.c:197,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filters/isoffin_read.c:198,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:199,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 193
    functionDepth: 2
    functionLinenumber: 193
    functionLinenumberEnd: 200
    functionName: isoffin_delete_channel
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_odf_hevc_cfg_del
    - gf_odf_avc_cfg_del
    - isor_reset_reader
    - gf_odf_vvc_cfg_del
    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:205,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:206,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/isoffin_read.c:207,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filters/isoffin_read.c:209,1
    - Dst: isoffin_delete_channel
      Src: /src/gpac/src/filters/isoffin_read.c:210,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/isoffin_read.c:213,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - read
    argTypes:
    - ISOMReader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 202
    functionDepth: 11
    functionLinenumber: 202
    functionLinenumberEnd: 217
    functionName: isoffin_disconnect
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_close
    - isoffin_delete_channel
    - gf_filter_pid_remove
    - gf_list_get
    - gf_list_rem
    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:221,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:224,1
    - Dst: MAX
      Src: /src/gpac/src/filters/isoffin_read.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:234,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:242,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/isoffin_read.c:242,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - read
    - ch
    argTypes:
    - ISOMReader*
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 243
    functionName: isoffin_set_channel_ctso
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - PROP_LONGSINT
    - gf_filter_pid_set_property
    - MAX
    - gf_isom_get_min_negative_cts_offset
    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:255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:262,1
    - Dst: gf_isom_probe_file_range
      Src: /src/gpac/src/filters/isoffin_read.c:266,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/src/filters/isoffin_read.c:270,1
    - Dst: gf_isom_reset_fragment_info
      Src: /src/gpac/src/filters/isoffin_read.c:271,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/src/filters/isoffin_read.c:279,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:288,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:289,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:295,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:296,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:296,1
    - Dst: isoffin_set_channel_ctso
      Src: /src/gpac/src/filters/isoffin_read.c:299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:306,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/isoffin_read.c:306,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:310,1
    - Dst: gf_isom_get_smooth_next_tfdt
      Src: /src/gpac/src/filters/isoffin_read.c:322,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:323,1
    - Dst: gf_isom_is_smooth_streaming_moov
      Src: /src/gpac/src/filters/isoffin_read.c:325,1
    - Dst: strstr
      Src: /src/gpac/src/filters/isoffin_read.c:326,1
    - Dst: sprintf
      Src: /src/gpac/src/filters/isoffin_read.c:329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:331,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/isoffin_read.c:331,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/isoffin_read.c:335,1
    - Dst: gf_isom_open_progressive
      Src: /src/gpac/src/filters/isoffin_read.c:336,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:347,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filters/isoffin_read.c:347,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:347,1
    - Dst: gf_isom_enable_traf_map_templates
      Src: /src/gpac/src/filters/isoffin_read.c:351,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/isoffin_read.c:366,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:368,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:371,1
    - Dst: gf_isom_release_segment
      Src: /src/gpac/src/filters/isoffin_read.c:374,1
    - Dst: gf_isom_reset_fragment_info
      Src: /src/gpac/src/filters/isoffin_read.c:376,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:379,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:385,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:385,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:390,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:392,1
    - Dst: isor_check_producer_ref_time
      Src: /src/gpac/src/filters/isoffin_read.c:395,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filters/isoffin_read.c:396,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:400,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filters/isoffin_read.c:404,1
    - Dst: gf_isom_get_highest_track_in_scalable_segment
      Src: /src/gpac/src/filters/isoffin_read.c:411,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/filters/isoffin_read.c:414,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_read.c:418,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:423,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:423,1
    - Dst: gf_isom_get_track_by_id
      Src: /src/gpac/src/filters/isoffin_read.c:427,1
    - Dst: gf_isom_get_track_count
      Src: /src/gpac/src/filters/isoffin_read.c:429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:430,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:433,1
    - Dst: isor_update_channel_config
      Src: /src/gpac/src/filters/isoffin_read.c:443,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:446,1
    - Dst: isor_set_crypt_config
      Src: /src/gpac/src/filters/isoffin_read.c:449,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 135
    argCount: 3
    argNames:
    - filter
    - read
    - next_url
    argTypes:
    - GF_Filter*
    - ISOMReader*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 245
    functionDepth: 11
    functionLinenumber: 245
    functionLinenumberEnd: 456
    functionName: isoffin_reconfigure
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_isom_is_smooth_streaming_moov
    - gf_isom_get_sample_count
    - gf_isom_open_segment
    - gf_isom_set_nalu_extract_mode
    - strstr
    - gf_isom_enable_traf_map_templates
    - gf_isom_get_smooth_next_tfdt
    - gf_filter_post_process_task
    - gf_net_get_utc
    - gf_list_get
    - isor_set_crypt_config
    - isor_check_producer_ref_time
    - gf_isom_release_segment
    - gf_isom_reset_fragment_info
    - gf_filter_pid_get_property_str
    - gf_isom_get_highest_track_in_scalable_segment
    - isoffin_set_channel_ctso
    - gf_isom_open_progressive
    - gf_error_to_string
    - gf_filter_pid_set_property_str
    - gf_isom_probe_file_range
    - sprintf
    - gf_isom_get_track_id
    - gf_isom_get_track_count
    - isor_update_channel_config
    - GF_LOG
    - gf_isom_get_track_by_id
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_isom_close
    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:461,1
    - Dst: isoffin_disconnect
      Src: /src/gpac/src/filters/isoffin_read.c:464,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:471,1
    - Dst: gf_isom_reset_data_offset
      Src: /src/gpac/src/filters/isoffin_read.c:483,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read.c:489,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_read.c:489,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:500,1
    - Dst: isoffin_reconfigure
      Src: /src/gpac/src/filters/isoffin_read.c:510,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:514,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/isoffin_read.c:518,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/isoffin_read.c:520,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:522,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: 523
      start: 458
    functionDepth: 12
    functionLinenumber: 458
    functionLinenumberEnd: 523
    functionName: isoffin_configure_pid
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_get_udta
    - isoffin_disconnect
    - gf_crc_32
    - GF_LOG
    - GF_FEVT_INIT
    - isoffin_setup
    - isoffin_reconfigure
    - strlen
    - gf_filter_pid_send_event
    - gf_isom_reset_data_offset
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err isoffin_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/isoffin_read.c:527,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filters/isoffin_read.c:530,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:539,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:544,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:545,1
    - Dst: gf_isom_enable_traf_map_templates
      Src: /src/gpac/src/filters/isoffin_read.c:549,1
    - Dst: gf_isom_open_segment
      Src: /src/gpac/src/filters/isoffin_read.c:552,1
    - Dst: isor_declare_objects
      Src: /src/gpac/src/filters/isoffin_read.c:556,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filters/isoffin_read.c:558,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:562,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 33
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 525
    functionDepth: 12
    functionLinenumber: 525
    functionLinenumberEnd: 566
    functionName: isoffin_initialize
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_enable_traf_map_templates
    - gf_filter_get_udta
    - isor_declare_objects
    - gf_filter_post_process_task
    - gf_isom_is_fragmented
    - isoffin_setup
    - gf_isom_open_segment
    - gf_list_new
    - gf_isom_get_timescale
    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:571,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:575,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:576,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filters/isoffin_read.c:577,1
    - Dst: isoffin_delete_channel
      Src: /src/gpac/src/filters/isoffin_read.c:578,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filters/isoffin_read.c:580,1
    - Dst: gf_isom_close
      Src: /src/gpac/src/filters/isoffin_read.c:582,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:585,1
    - Dst: gf_blob_unregister
      Src: /src/gpac/src/filters/isoffin_read.c:587,1
    - Dst: gf_free
      Src: /src/gpac/src/filters/isoffin_read.c:588,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 569
    functionDepth: 11
    functionLinenumber: 569
    functionLinenumberEnd: 590
    functionName: isoffin_finalize
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_filter_get_udta
    - gf_list_del
    - gf_isom_close
    - isoffin_delete_channel
    - gf_blob_unregister
    - gf_list_get
    - gf_list_rem
    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:596,1
    - Dst: gf_isom_get_pssh_count
      Src: /src/gpac/src/filters/isoffin_read.c:599,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_read.c:600,1
    - Dst: gf_isom_get_pssh_info
      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:613,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:617,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filters/isoffin_read.c:620,1
    - Dst: gf_bs_write_data
      Src: /src/gpac/src/filters/isoffin_read.c:621,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filters/isoffin_read.c:623,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filters/isoffin_read.c:624,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:625,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read.c:625,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 592
    functionDepth: 9
    functionLinenumber: 592
    functionLinenumberEnd: 626
    functionName: isor_declare_pssh
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 1
    functionsReached:
    - PROP_DATA_NO_COPY
    - gf_bs_get_content
    - gf_bs_new
    - gf_isom_get_pssh_info
    - gf_filter_pid_set_property
    - gf_bs_del
    - gf_bs_write_u32
    - gf_bs_write_data
    - 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:650,1
    - Dst: gf_isom_get_media_subtype
      Src: /src/gpac/src/filters/isoffin_read.c:658,1
    - Dst: gf_isom_is_media_encrypted
      Src: /src/gpac/src/filters/isoffin_read.c:659,1
    - Dst: gf_isom_get_original_format_type
      Src: /src/gpac/src/filters/isoffin_read.c:660,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:673,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:673,1
    - Dst: gf_isom_is_ismacryp_media
      Src: /src/gpac/src/filters/isoffin_read.c:679,1
    - Dst: gf_isom_get_ismacryp_info
      Src: /src/gpac/src/filters/isoffin_read.c:680,1
    - Dst: gf_isom_is_omadrm_media
      Src: /src/gpac/src/filters/isoffin_read.c:681,1
    - Dst: gf_isom_get_omadrm_info
      Src: /src/gpac/src/filters/isoffin_read.c:683,1
    - Dst: gf_isom_is_cenc_media
      Src: /src/gpac/src/filters/isoffin_read.c:686,1
    - Dst: gf_isom_get_cenc_info
      Src: /src/gpac/src/filters/isoffin_read.c:689,1
    - Dst: gf_isom_is_adobe_protection_media
      Src: /src/gpac/src/filters/isoffin_read.c:692,1
    - Dst: gf_isom_get_adobe_protection_info
      Src: /src/gpac/src/filters/isoffin_read.c:698,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:700,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:700,1
    - Dst: strlen
      Src: /src/gpac/src/filters/isoffin_read.c:700,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:703,1
    - Dst: PROP_4CC
      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_STRING
      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_STRING
      Src: /src/gpac/src/filters/isoffin_read.c:706,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:708,1
    - Dst: PROP_BOOL
      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_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:709,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:710,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:710,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:711,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:711,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:712,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_read.c:712,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:713,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filters/isoffin_read.c:713,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:714,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read.c:714,1
    - Dst: isor_declare_pssh
      Src: /src/gpac/src/filters/isoffin_read.c:721,1
    - Dst: gf_isom_cenc_get_default_info
      Src: /src/gpac/src/filters/isoffin_read.c:723,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:725,1
    - Dst: PROP_4CC
      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_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:727,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:730,1
    - Dst: PROP_FRAC_INT
      Src: /src/gpac/src/filters/isoffin_read.c:730,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:732,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:732,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filters/isoffin_read.c:733,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 77
    argCount: 1
    argNames:
    - ch
    argTypes:
    - ISOMChannel*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 628
    functionDepth: 10
    functionLinenumber: 628
    functionLinenumberEnd: 735
    functionName: isor_set_crypt_config
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 1
    functionsReached:
    - PROP_LONGUINT
    - gf_isom_is_cenc_media
    - gf_isom_is_omadrm_media
    - gf_crc_32
    - gf_isom_get_original_format_type
    - PROP_FRAC_INT
    - gf_isom_is_adobe_protection_media
    - gf_isom_get_sample_description_count
    - gf_isom_get_omadrm_info
    - gf_isom_get_cenc_info
    - PROP_BOOL
    - PROP_STRING
    - strlen
    - PROP_4CC
    - gf_isom_is_media_encrypted
    - gf_isom_get_adobe_protection_info
    - gf_isom_get_media_subtype
    - gf_isom_is_ismacryp_media
    - PROP_DATA
    - gf_isom_get_ismacryp_info
    - gf_filter_pid_set_property
    - PROP_UINT
    - isor_declare_pssh
    - gf_isom_cenc_get_default_info
    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:745,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filters/isoffin_read.c:752,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_read.c:757,1
    - Dst: gf_isom_get_media_type
      Src: /src/gpac/src/filters/isoffin_read.c:758,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_read.c:768,1
    - Dst: gf_isom_get_avc_svc_type
      Src: /src/gpac/src/filters/isoffin_read.c:770,1
    - Dst: gf_isom_get_hevc_lhvc_type
      Src: /src/gpac/src/filters/isoffin_read.c:771,1
    - Dst: gf_isom_get_edit_list_type
      Src: /src/gpac/src/filters/isoffin_read.c:785,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:789,1
    - Dst: PROP_LONGSINT
      Src: /src/gpac/src/filters/isoffin_read.c:789,1
    - Dst: gf_isom_get_edits_count
      Src: /src/gpac/src/filters/isoffin_read.c:792,1
    - Dst: isoffin_set_channel_ctso
      Src: /src/gpac/src/filters/isoffin_read.c:798,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/filters/isoffin_read.c:800,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:801,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:801,1
    - Dst: gf_isom_get_media_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:806,1
    - Dst: gf_isom_get_cts_to_dts_shift
      Src: /src/gpac/src/filters/isoffin_read.c:808,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:810,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:810,1
    - Dst: gf_isom_is_track_encrypted
      Src: /src/gpac/src/filters/isoffin_read.c:813,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:830,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:839,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:840,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:840,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:842,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:842,1
    - Dst: isor_set_crypt_config
      Src: /src/gpac/src/filters/isoffin_read.c:844,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:848,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:850,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: 854
      start: 738
    functionDepth: 11
    functionLinenumber: 738
    functionLinenumberEnd: 854
    functionName: isor_create_channel
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_get_property
    - gf_isom_get_media_type
    - GF_SAFEALLOC
    - gf_isom_get_reference
    - gf_isom_get_hevc_lhvc_type
    - gf_isom_set_nalu_extract_mode
    - gf_list_add
    - gf_isom_get_edits_count
    - gf_isom_get_media_timescale
    - gf_isom_is_track_encrypted
    - gf_isom_has_sync_points
    - gf_isom_get_edit_list_type
    - isor_set_crypt_config
    - PROP_LONGSINT
    - gf_isom_get_avc_svc_type
    - PROP_BOOL
    - isoffin_set_channel_ctso
    - gf_isom_get_cts_to_dts_shift
    - gf_isom_get_track_id
    - GF_LOG
    - gf_filter_pid_set_property
    - PROP_UINT
    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:864,1
    - Dst: gf_isom_get_track_id
      Src: /src/gpac/src/filters/isoffin_read.c:865,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_read.c:870,1
    - Dst: gf_isom_has_track_reference
      Src: /src/gpac/src/filters/isoffin_read.c:876,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_read.c:884,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_read.c:887,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:888,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:889,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filters/isoffin_read.c:895,1
    - Dst: gf_isom_get_sample_for_media_time
      Src: /src/gpac/src/filters/isoffin_read.c:896,1
    - Dst: gf_isom_get_sample_for_media_time
      Src: /src/gpac/src/filters/isoffin_read.c:904,1
    - Dst: gf_isom_get_reference_count
      Src: /src/gpac/src/filters/isoffin_read.c:925,1
    - Dst: gf_isom_get_reference
      Src: /src/gpac/src/filters/isoffin_read.c:928,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:935,1
    - Dst: gf_isom_set_nalu_extract_mode
      Src: /src/gpac/src/filters/isoffin_read.c:941,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: 944
      start: 857
    functionDepth: 4
    functionLinenumber: 857
    functionLinenumberEnd: 944
    functionName: isoffin_channel_switch_quality
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_get_track_id
    - gf_list_count
    - gf_isom_get_track_count
    - gf_isom_get_reference_count
    - gf_filter_pid_set_eos
    - gf_timestamp_rescale
    - gf_isom_get_sample_for_media_time
    - gf_isom_get_reference
    - gf_isom_has_track_reference
    - gf_isom_set_nalu_extract_mode
    - gf_list_get
    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:1286,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filters/isoffin_read.c:1289,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_read.c:1292,1
    - Dst: gf_isom_open_progressive_ex
      Src: /src/gpac/src/filters/isoffin_read.c:1297,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:1300,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filters/isoffin_read.c:1307,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1308,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filters/isoffin_read.c:1309,1
    - Dst: gf_isom_is_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1320,1
    - Dst: gf_isom_get_timescale
      Src: /src/gpac/src/filters/isoffin_read.c:1321,1
    - Dst: isor_declare_objects
      Src: /src/gpac/src/filters/isoffin_read.c:1322,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1329,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1331,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:1331,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: 1337
      start: 1279
    functionDepth: 11
    functionLinenumber: 1279
    functionLinenumberEnd: 1337
    functionName: isoffin_push_buffer
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_isom_open_progressive_ex
    - gf_filter_setup_failure
    - GF_LOG
    - isor_declare_objects
    - gf_isom_is_fragmented
    - GF_4CC
    - gf_isom_refresh_fragmented
    - gf_blob_register
    - gf_realloc
    - memcpy
    - gf_isom_get_timescale
    - gf_error_to_string
    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:1353,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read.c:1362,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read.c:1365,1
    - Dst: memmove
      Src: /src/gpac/src/filters/isoffin_read.c:1370,1
    - Dst: gf_isom_set_removed_bytes
      Src: /src/gpac/src/filters/isoffin_read.c:1373,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1375,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1379,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:1385,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1387,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1389,1
    - Dst: gf_isom_purge_samples
      Src: /src/gpac/src/filters/isoffin_read.c:1396,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1399,1
    - Dst: gf_assert
      Src: /src/gpac/src/filters/isoffin_read.c:1400,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1401,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 2
    argNames:
    - read
    - min_offset
    argTypes:
    - ISOMReader*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1339
    functionDepth: 2
    functionLinenumber: 1339
    functionLinenumberEnd: 1403
    functionName: isoffin_purge_mem
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_isom_set_removed_bytes
    - gf_isom_get_current_top_box_offset
    - gf_isom_purge_samples
    - GF_LOG
    - gf_isom_refresh_fragmented
    - gf_isom_get_sample_count
    - gf_assert
    - gf_list_get
    - memmove
    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:1407,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filters/isoffin_read.c:1408,1
    - Dst: isoffin_configure_pid
      Src: /src/gpac/src/filters/isoffin_read.c:1425,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/isoffin_read.c:1430,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filters/isoffin_read.c:1436,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1442,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:1450,1
    - Dst: gf_dm_sess_get_cache_name
      Src: /src/gpac/src/filters/isoffin_read.c:1452,1
    - Dst: gf_isom_switch_source
      Src: /src/gpac/src/filters/isoffin_read.c:1454,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/isoffin_read.c:1462,1
    - Dst: isoffin_push_buffer
      Src: /src/gpac/src/filters/isoffin_read.c:1463,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/isoffin_read.c:1467,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filters/isoffin_read.c:1470,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1475,1
    - Dst: gf_filter_pid_is_flush_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1476,1
    - Dst: gf_filter_pid_get_info_str
      Src: /src/gpac/src/filters/isoffin_read.c:1482,1
    - Dst: gf_filter_release_property
      Src: /src/gpac/src/filters/isoffin_read.c:1484,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1503,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1509,1
    - Dst: isoffin_setup
      Src: /src/gpac/src/filters/isoffin_read.c:1523,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:1534,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filters/isoffin_read.c:1543,1
    - Dst: gf_isom_refresh_fragmented
      Src: /src/gpac/src/filters/isoffin_read.c:1547,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/isoffin_read.c:1550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1551,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filters/isoffin_read.c:1551,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1555,1
    - Dst: d
      Src: /src/gpac/src/filters/isoffin_read.c:1555,1
    - Dst: gf_filter_end_of_session
      Src: /src/gpac/src/filters/isoffin_read.c:1559,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filters/isoffin_read.c:1560,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filters/isoffin_read.c:1564,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1566,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filters/isoffin_read.c:1567,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1567,1
    - Dst: isor_check_producer_ref_time
      Src: /src/gpac/src/filters/isoffin_read.c:1571,1
    - Dst: isor_check_producer_ref_time
      Src: /src/gpac/src/filters/isoffin_read.c:1576,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filters/isoffin_read.c:1584,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filters/isoffin_read.c:1595,1
    - Dst: isor_reader_get_sample_from_item
      Src: /src/gpac/src/filters/isoffin_read.c:1599,1
    - Dst: isor_reader_get_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1601,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filters/isoffin_read.c:1604,1
    - Dst: isor_reader_release_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1613,1
    - Dst: isor_reader_release_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1625,1
    - Dst: isor_update_channel_config
      Src: /src/gpac/src/filters/isoffin_read.c:1630,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1635,1
    - Dst: gf_isom_has_sync_points
      Src: /src/gpac/src/filters/isoffin_read.c:1635,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1638,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:1638,1
    - Dst: isor_reader_check_config
      Src: /src/gpac/src/filters/isoffin_read.c:1642,1
    - Dst: gf_filter_pck_check_realloc
      Src: /src/gpac/src/filters/isoffin_read.c:1647,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filters/isoffin_read.c:1654,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/isoffin_read.c:1656,1
    - Dst: gf_filter_pck_new_alloc
      Src: /src/gpac/src/filters/isoffin_read.c:1660,1
    - Dst: memcpy
      Src: /src/gpac/src/filters/isoffin_read.c:1664,1
    - Dst: gf_filter_pck_set_dts
      Src: /src/gpac/src/filters/isoffin_read.c:1666,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filters/isoffin_read.c:1667,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1669,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1672,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1676,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1678,1
    - Dst: gf_filter_pck_set_roll_info
      Src: /src/gpac/src/filters/isoffin_read.c:1679,1
    - Dst: gf_filter_pck_set_switch_frame
      Src: /src/gpac/src/filters/isoffin_read.c:1683,1
    - Dst: gf_filter_pck_set_duration
      Src: /src/gpac/src/filters/isoffin_read.c:1689,1
    - Dst: gf_filter_pck_set_seek_flag
      Src: /src/gpac/src/filters/isoffin_read.c:1690,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filters/isoffin_read.c:1693,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1694,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:1694,1
    - Dst: gf_isom_get_sample_references
      Src: /src/gpac/src/filters/isoffin_read.c:1699,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1700,1
    - Dst: PROP_SINT
      Src: /src/gpac/src/filters/isoffin_read.c:1700,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1706,1
    - Dst: gf_filter_pck_set_dependency_flags
      Src: /src/gpac/src/filters/isoffin_read.c:1720,1
    - Dst: gf_filter_pck_set_corrupted
      Src: /src/gpac/src/filters/isoffin_read.c:1722,1
    - Dst: gf_filter_pck_set_crypt_flags
      Src: /src/gpac/src/filters/isoffin_read.c:1724,1
    - Dst: gf_filter_pck_set_seq_num
      Src: /src/gpac/src/filters/isoffin_read.c:1725,1
    - Dst: gf_isom_sample_get_subsamples_buffer
      Src: /src/gpac/src/filters/isoffin_read.c:1728,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1730,1
    - Dst: PROP_DATA_NO_COPY
      Src: /src/gpac/src/filters/isoffin_read.c:1730,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1734,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:1734,1
    - Dst: gf_isom_sample_is_fragment_start
      Src: /src/gpac/src/filters/isoffin_read.c:1740,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1745,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:1745,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1747,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filters/isoffin_read.c:1747,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1751,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_read.c:1751,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1755,1
    - Dst: PROP_DATA
      Src: /src/gpac/src/filters/isoffin_read.c:1755,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1758,1
    - Dst: PROP_FRAC64_INT
      Src: /src/gpac/src/filters/isoffin_read.c:1758,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:1766,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read.c:1766,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1768,1
    - Dst: PROP_LONGUINT
      Src: /src/gpac/src/filters/isoffin_read.c:1768,1
    - Dst: gf_isom_get_sample_count
      Src: /src/gpac/src/filters/isoffin_read.c:1775,1
    - Dst: gf_filter_pck_set_property
      Src: /src/gpac/src/filters/isoffin_read.c:1776,1
    - Dst: PROP_BOOL
      Src: /src/gpac/src/filters/isoffin_read.c:1776,1
    - Dst: isor_set_sample_groups_and_aux_data
      Src: /src/gpac/src/filters/isoffin_read.c:1780,1
    - Dst: gf_filter_pck_set_byte_offset
      Src: /src/gpac/src/filters/isoffin_read.c:1783,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filters/isoffin_read.c:1787,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filters/isoffin_read.c:1789,1
    - Dst: isor_reader_release_sample
      Src: /src/gpac/src/filters/isoffin_read.c:1790,1
    - Dst: gf_filter_pid_send_flush
      Src: /src/gpac/src/filters/isoffin_read.c:1797,1
    - Dst: gf_isom_get_tfrf
      Src: /src/gpac/src/filters/isoffin_read.c:1815,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/isoffin_read.c:1817,1
    - Dst: PROP_POINTER
      Src: /src/gpac/src/filters/isoffin_read.c:1817,1
    - Dst: gf_filter_pid_set_info_str
      Src: /src/gpac/src/filters/isoffin_read.c:1820,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1823,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filters/isoffin_read.c:1830,1
    - Dst: gf_filter_ask_rt_reschedule
      Src: /src/gpac/src/filters/isoffin_read.c:1836,1
    - Dst: isoffin_purge_mem
      Src: /src/gpac/src/filters/isoffin_read.c:1854,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filters/isoffin_read.c:1861,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filters/isoffin_read.c:1862,1
    CyclomaticComplexity: 143
    EdgeCount: 143
    ICount: 352
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1871
      start: 1405
    functionDepth: 13
    functionLinenumber: 1405
    functionLinenumberEnd: 1871
    functionName: isoffin_process
    functionSourceFile: /src/gpac/src/filters/isoffin_read.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_isom_sample_get_subsamples_buffer
    - PROP_LONGUINT
    - gf_dm_sess_get_cache_name
    - PROP_DATA_NO_COPY
    - isoffin_push_buffer
    - PROP_POINTER
    - gf_filter_pid_set_eos
    - isoffin_purge_mem
    - gf_isom_get_sample_count
    - GF_FEVT_INIT
    - gf_filter_pck_get_sap
    - gf_filter_pck_new_shared
    - gf_filter_pid_drop_packet
    - gf_filter_pck_set_property
    - gf_filter_pid_send_event
    - gf_filter_pid_get_packet
    - gf_filter_pck_set_roll_info
    - gf_filter_pid_would_block
    - gf_isom_sample_is_fragment_start
    - gf_filter_get_udta
    - gf_filter_pck_set_seek_flag
    - gf_isom_refresh_fragmented
    - isoffin_configure_pid
    - gf_filter_pck_set_dependency_flags
    - gf_filter_pid_set_info_str
    - gf_filter_pck_get_data
    - isor_set_sample_groups_and_aux_data
    - gf_filter_pck_set_clock_type
    - gf_isom_has_sync_points
    - gf_list_get
    - memcpy
    - gf_filter_pck_check_realloc
    - isor_reader_check_config
    - gf_filter_pck_send
    - isor_reader_get_sample_from_item
    - isor_check_producer_ref_time
    - gf_filter_pid_send_flush
    - gf_filter_pck_set_switch_frame
    - gf_isom_get_tfrf
    - isoffin_setup
    - gf_filter_pid_get_name
    - gf_filter_pck_set_cts
    - isor_reader_get_sample
    - gf_filter_pid_get_info_str
    - gf_log_tool_level_on
    - PROP_BOOL
    - d
    - gf_filter_pck_set_sap
    - gf_filter_pck_set_duration
    - gf_filter_pid_is_eos
    - isor_reader_release_sample
    - gf_error_to_string
    - gf_filter_pck_discard
    - isor_update_channel_config
    - gf_filter_end_of_session
    - PROP_DATA
    - PROP_FRAC64_INT
    - gf_filter_pck_set_seq_num
    - gf_filter_ask_rt_reschedule
    - GF_LOG
    - gf_isom_get_sample_references
    - gf_filter_release_property
    - PROP_SINT
    - gf_filter_pck_set_crypt_flags
    - gf_filter_pid_set_property
    - PROP_UINT
    - gf_filter_pck_set_dts
    - gf_filter_pck_set_byte_offset
    - gf_isom_switch_source
    - gf_filter_pck_set_corrupted
    - gf_filter_pid_is_flush_eos
    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:1875,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - data
    - size
    - score
    argTypes:
    - u8*
    - u32
    - GF_FilterProbeScore*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1880
      start: 1873
    functionDepth: 2
    functionLinenumber: 1873
    functionLinenumberEnd: 1880
    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: 1883
      start: 1882
    functionDepth: 0
    functionLinenumber: 1882
    functionLinenumberEnd: 1883
    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: 2003
      start: 2000
    functionDepth: 0
    functionLinenumber: 2000
    functionLinenumberEnd: 2003
    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: 2008
      start: 2005
    functionDepth: 0
    functionLinenumber: 2005
    functionLinenumberEnd: 2008
    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: 158
    functionsReached:
    - GF_SAFEALLOC
    - gf_malloc
    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:
    - gf_filter_pck_get_duration
    - UT_SCTE35_PCK_SEND_FINALIZE
    - gf_filter_pck_get_data
    - assert_less
    - assert_equal
    - assert_equal_mem
    - 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:
    - UT_SCTE35_INIT
    - scte35dec_finalize_internal
    - pck_send
    - SEND_VIDEO
    - scte35dec_flush
    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:
    - gf_filter_pck_get_duration
    - UT_SCTE35_PCK_SEND_FINALIZE
    - gf_filter_pck_get_data
    - assert_less
    - assert_equal
    - assert_equal_mem
    - 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:
    - UT_SCTE35_INIT
    - scte35dec_finalize_internal
    - pck_send
    - SEND_VIDEO
    - scte35dec_flush
    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
    - assert_true
    - SEND_EVENT
    - scte35dec_finalize_internal
    - assert_equal
    - scte35dec_is_splice_point
    - scte35dec_flush
    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:
    - gf_bs_read_u64
    - gf_filter_pck_get_duration
    - UT_SCTE35_PCK_SEND_FINALIZE
    - assert_true
    - gf_bs_new
    - gf_filter_pck_get_data
    - gf_bs_del
    - assert_less
    - assert_equal
    - assert_equal_mem
    - gf_bs_seek
    - gf_bs_read_u32
    - assert_less_equal
    - 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:
    - UT_SCTE35_INIT
    - SEND_EVENT
    - scte35dec_finalize_internal
    - pck_send
    - SEND_VIDEO
    - scte35dec_flush
    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:282,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:283,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:283,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:284,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:284,1
    - Dst: gf_filter_pck_get_data
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:287,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:288,1
    - Dst: UT_SCTE35_PCK_SEND_FINALIZE
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 292
    functionName: pck_send_initial_delay
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_get_duration
    - UT_SCTE35_PCK_SEND_FINALIZE
    - gf_filter_pck_get_data
    - assert_less
    - assert_equal
    - 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:296,1
    - Dst: SEND_VIDEO
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:299,1
    - Dst: SEND_EVENT
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:301,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: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 294
    functionDepth: 7
    functionLinenumber: 294
    functionLinenumberEnd: 306
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - UT_SCTE35_INIT
    - SEND_EVENT
    - scte35dec_finalize_internal
    - pck_send
    - SEND_VIDEO
    - scte35dec_flush
    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:
    - gf_bs_read_u64
    - gf_filter_pck_get_duration
    - UT_SCTE35_PCK_SEND_FINALIZE
    - assert_true
    - gf_bs_new
    - gf_filter_pck_get_data
    - gf_bs_del
    - assert_less
    - assert_equal
    - assert_equal_mem
    - gf_bs_seek
    - gf_bs_read_u32
    - assert_less_equal
    - 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:
    - UT_SCTE35_INIT
    - SEND_EVENT
    - scte35dec_finalize_internal
    - pck_send
    - SEND_VIDEO
    - scte35dec_flush
    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:391,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:
    - gf_bs_read_u64
    - gf_filter_pck_get_duration
    - UT_SCTE35_PCK_SEND_FINALIZE
    - assert_true
    - gf_bs_new
    - gf_filter_pck_get_data
    - gf_bs_del
    - assert_less
    - assert_equal
    - assert_equal_mem
    - gf_bs_seek
    - gf_bs_read_u32
    - assert_less_equal
    - 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:
    - UT_SCTE35_INIT
    - SEND_EVENT
    - scte35dec_finalize_internal
    - pck_send
    - SEND_VIDEO
    - scte35dec_flush
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_short_segmentation_end)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scte35dec_get_timing
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:479,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:480,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:481,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:482,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:483,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 462
    functionDepth: 8
    functionLinenumber: 462
    functionLinenumberEnd: 484
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_get_timing
    - assert_equal
    - assert_true
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_time_signal_basic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scte35dec_get_timing
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:507,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:508,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:509,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 488
    functionDepth: 8
    functionLinenumber: 488
    functionLinenumberEnd: 511
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_get_timing
    - assert_equal
    - assert_true
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_time_signal_pts_wrap)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scte35dec_get_timing
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:541,1
    - Dst: assert_true
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:542,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:543,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:544,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:545,1
    - Dst: assert_equal
      Src: /src/gpac/src/filters/unittests/ut_dec_scte35.c:546,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 515
    functionDepth: 8
    functionLinenumber: 515
    functionLinenumberEnd: 547
    functionName: unittest
    functionSourceFile: /src/gpac/src/filters/unittests/ut_dec_scte35.c
    functionUses: 0
    functionsReached:
    - scte35dec_get_timing
    - assert_equal
    - assert_true
    linkageType: ''
    returnType: void
    signature: void unittest(scte35dec_splice_insert_pts_wrap)
  - 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: 158
    functionsReached:
    - GF_SAFEALLOC
    - gf_malloc
    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: gf_strlcpy
      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: gf_strlcpy
      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
    - ccdec_flush
    - pck_send
    - assert_equal
    - strlen
    - gf_strlcpy
    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_true
    - gf_filter_pck_get_data
    - assert_equal
    - assert_equal_str
    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_true
    - gf_filter_pck_get_data
    - assert_equal
    - assert_equal_str
    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_true
    - gf_filter_pck_get_data
    - assert_equal
    - assert_equal_str
    linkageType: ''
    returnType: GF_Err
    signature: GF_Err pck_send_several_entries(GF_FilterPacket *pck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_strlcpy
      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: gf_strlcpy
      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
    - strlen
    - CCDecCtx::pck_send
    - gf_strlcpy
    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_count
    - JS_IsUndefined
    - gf_mx_toggle_log
    - JS_GetOpaque
    - JS_MarkValue
    - gf_list_get
    - gf_fs_lock_filters
    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:
    - gf_fs_del
    - gf_free
    - JS_GetOpaque
    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:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - c
    - this_val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 140
    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:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - c
    - this_val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 147
    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:156,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:158,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:160,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:161,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:163,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:164,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:166,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:167,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session_js.c:169,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:170,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:173,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:174,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:176,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:177,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:179,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:180,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:181,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: 182
      start: 152
    functionDepth: 6
    functionLinenumber: 152
    functionLinenumberEnd: 182
    functionName: jsfs_exec_task_custom
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_new_filter_obj
    - JS_NewString
    - js_dump_error
    - gf_assert
    - JS_FreeValue
    - JS_Call
    - js_std_loop
    - JS_DupValue
    - JS_IsException
    - gf_js_lock
    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:187,1
    - Dst: jsfs_exec_task_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:189,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: 191
      start: 183
    functionDepth: 7
    functionLinenumber: 183
    functionLinenumberEnd: 191
    functionName: jsfs_exec_tasks_custom
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - jsfs_exec_task_custom
    linkageType: ''
    returnType: void
    signature: void jsfs_exec_tasks_custom(GF_FilterSession *fs, u32 task_type, const
      char *text, GF_Filter *for_filter)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: jsff_get_session
      Src: /src/gpac/src/filter_core/filter_session_js.c:195,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:197,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:201,1
    - Dst: gf_fs_get_filters_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:201,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:203,1
    - Dst: gf_fs_is_last_task
      Src: /src/gpac/src/filter_core/filter_session_js.c:205,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:212,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/src/filter_core/filter_session_js.c:212,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:219,1
    - Dst: gf_dm_get_global_rate
      Src: /src/gpac/src/filter_core/filter_session_js.c:219,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:223,1
    - Dst: gf_fs_get_last_process_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:223,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:225,1
    - Dst: gf_fs_get_last_connect_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:225,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:227,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/filter_core/filter_session_js.c:227,1
    - Dst: gf_fs_get_defined_metrics
      Src: /src/gpac/src/filter_core/filter_session_js.c:230,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:232,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:233,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 34
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 193
    functionDepth: 2
    functionLinenumber: 193
    functionLinenumberEnd: 238
    functionName: jsfs_prop_get
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_free
    - gf_fs_get_last_process_error
    - jsf_get_script_filename
    - JS_NewString
    - gf_fs_get_filters_count
    - gf_fs_get_last_connect_error
    - gf_fs_is_last_task
    - gf_dm_get_data_rate
    - gf_dm_get_global_rate
    - JS_NewInt32
    - gf_fs_get_defined_metrics
    - 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:242,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:244,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:251,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:251,1
    - Dst: gf_dm_set_data_rate
      Src: /src/gpac/src/filter_core/filter_session_js.c:252,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: 258
      start: 240
    functionDepth: 2
    functionLinenumber: 240
    functionLinenumberEnd: 258
    functionName: jsfs_prop_set
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_dm_set_data_rate
    - GF_JS_EXCEPTION
    - 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:270,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:271,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:274,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:275,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:277,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:278,1
    - Dst: JS_IsInteger
      Src: /src/gpac/src/filter_core/filter_session_js.c:281,1
    - Dst: JS_ToInt32
      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:289,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:290,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:291,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:295,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:296,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:297,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:298,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 3
    argNames:
    - fs
    - udta
    - timeout_ms
    argTypes:
    - GF_FilterSession*
    - void*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 260
    functionDepth: 6
    functionLinenumber: 260
    functionLinenumberEnd: 302
    functionName: jsfs_task_exec
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToBool
    - gf_free
    - JS_IsBool
    - js_dump_error
    - gf_list_del_item
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_IsInteger
    - JS_IsException
    - JS_ToInt32
    - gf_js_lock
    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:309,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:310,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:311,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:311,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:313,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:314,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:320,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:321,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:323,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:325,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:328,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:329,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session_js.c:330,1
    - Dst: gf_fs_post_user_task_delay
      Src: /src/gpac/src/filter_core/filter_session_js.c:332,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:334,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:336,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: 337
      start: 304
    functionDepth: 2
    functionLinenumber: 304
    functionLinenumberEnd: 337
    functionName: jsfs_post_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_IsString
    - JS_IsFunction
    - gf_list_add
    - gf_fs_post_user_task_delay
    - GF_SAFEALLOC
    - JS_FreeCString
    - JS_DupValue
    - JS_ToInt32
    - jsff_get_session
    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:342,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:343,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:345,1
    - Dst: gf_fs_abort
      Src: /src/gpac/src/filter_core/filter_session_js.c:347,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: 349
      start: 339
    functionDepth: 2
    functionLinenumber: 339
    functionLinenumberEnd: 349
    functionName: jsfs_abort
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToInt32
    - jsff_get_session
    - gf_fs_abort
    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:353,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:354,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:355,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:355,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:356,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:358,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: 360
      start: 350
    functionDepth: 2
    functionLinenumber: 350
    functionLinenumberEnd: 360
    functionName: jsfs_lock_filters
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_IsBool
    - jsff_get_session
    - gf_fs_lock_filters
    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:365,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - new_filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 362
    functionDepth: 8
    functionLinenumber: 362
    functionLinenumberEnd: 366
    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:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 368
    functionDepth: 8
    functionLinenumber: 368
    functionLinenumberEnd: 372
    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:377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 374
    functionDepth: 8
    functionLinenumber: 374
    functionLinenumberEnd: 378
    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:382,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:383,1
    - Dst: jsfs_exec_tasks_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:388,1
    - Dst: gf_js_get_rt
      Src: /src/gpac/src/filter_core/filter_session_js.c:391,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:394,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:395,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/filter_core/filter_session_js.c:396,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:398,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - del_filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 380
    functionDepth: 8
    functionLinenumber: 380
    functionLinenumberEnd: 400
    functionName: jsfs_on_filter_destroyed
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - JS_IsUndefined
    - JS_SetOpaque
    - jsfs_exec_tasks_custom
    - JS_GetOpaque
    - JS_FreeValueRT
    - 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:412,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:415,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session_js.c:417,1
    - Dst: js_init_evt_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:424,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:425,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:426,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:427,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:429,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:430,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:434,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:436,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:439,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:440,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:441,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - fs
    - evt
    argTypes:
    - GF_FilterSession*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 402
    functionDepth: 6
    functionLinenumber: 402
    functionLinenumberEnd: 446
    functionName: jsfs_on_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_ToBool
    - gf_free
    - js_init_evt_obj
    - JS_SetOpaque
    - js_dump_error
    - gf_list_enum
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - JS_IsException
    - memset
    - gf_js_lock
    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:457,1
    - Dst: JSFAuthContext*::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session_js.c:461,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:463,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 455
    functionDepth: 1
    functionLinenumber: 455
    functionLinenumberEnd: 464
    functionName: jsf_auth_finalizer
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_free
    - JSFAuthContext*::on_usr_pass
    - JS_GetOpaque
    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:472,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:474,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:477,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:478,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:480,1
    - Dst: JSFAuthContext*::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session_js.c:483,1
    - Dst: JSFAuthContext*::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session_js.c:485,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:489,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:490,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: 492
      start: 470
    functionDepth: 1
    functionLinenumber: 470
    functionLinenumberEnd: 492
    functionName: js_auth_done
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - JSFAuthContext*::on_usr_pass
    - JS_GetOpaque
    - 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:506,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:509,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:512,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:514,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:519,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:520,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:522,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:523,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:524,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:525,1
    - Dst: JS_Call
      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:530,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:531,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:532,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:533,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:534,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:536,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:537,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:541,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:543,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:544,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 36
    argCount: 2
    argNames:
    - fs
    - evt
    argTypes:
    - GF_FilterSession*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 499
    functionDepth: 6
    functionLinenumber: 499
    functionLinenumberEnd: 547
    functionName: jsfs_on_auth
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_NewBool
    - JS_NewString
    - JS_SetOpaque
    - js_dump_error
    - gf_list_enum
    - JS_FreeValue
    - js_std_loop
    - JS_Call
    - GF_SAFEALLOC
    - JS_IsException
    - gf_js_lock
    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:555,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:556,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:560,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:561,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:562,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:563,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_session_js.c:568,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:580,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:581,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:582,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:583,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:587,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:588,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session_js.c:589,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:593,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:594,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:595,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: 596
      start: 550
    functionDepth: 3
    functionLinenumber: 550
    functionLinenumberEnd: 596
    functionName: jsfs_set_fun_callback
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_free
    - gf_list_enum
    - JS_FreeValue
    - JS_IsFunction
    - gf_list_del_item
    - GF_SAFEALLOC
    - JS_DupValue
    - JS_ToInt64
    - gf_list_add
    - 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:600,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: 601
      start: 598
    functionDepth: 4
    functionLinenumber: 598
    functionLinenumberEnd: 601
    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:604,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: 605
      start: 602
    functionDepth: 4
    functionLinenumber: 602
    functionLinenumberEnd: 605
    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:608,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: 609
      start: 606
    functionDepth: 4
    functionLinenumber: 606
    functionLinenumberEnd: 609
    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:612,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: 613
      start: 610
    functionDepth: 4
    functionLinenumber: 610
    functionLinenumberEnd: 613
    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:616,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: 617
      start: 614
    functionDepth: 4
    functionLinenumber: 614
    functionLinenumberEnd: 617
    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:620,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: 621
      start: 618
    functionDepth: 4
    functionLinenumber: 618
    functionLinenumberEnd: 621
    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:624,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: 625
      start: 622
    functionDepth: 4
    functionLinenumber: 622
    functionLinenumberEnd: 625
    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: 47
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:668,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:670,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:674,1
    - Dst: gf_filter_get_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:674,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:676,1
    - Dst: JS_NewString
      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: gf_filter_get_id
      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_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:686,1
    - Dst: gf_filter_get_ipid_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:686,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:688,1
    - Dst: gf_filter_get_opid_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:688,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:690,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:692,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:694,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:696,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:698,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_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:707,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:709,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:711,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:713,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:715,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:717,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:719,1
    - Dst: JS_NewBool
      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:725,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:727,1
    - Dst: JS_NewString
      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:729,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:730,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:731,1
    - Dst: JS_NewString
      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:733,1
    - Dst: JS_NewString
      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:735,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:738,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:740,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:740,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:742,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:744,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:746,1
    - Dst: gf_stream_type_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:746,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:748,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:751,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:753,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:754,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:754,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:755,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:755,1
    - Dst: gf_filter_get_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:759,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:761,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:762,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:762,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:763,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:763,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:767,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:770,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 113
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 662
    functionDepth: 2
    functionLinenumber: 662
    functionLinenumberEnd: 773
    functionName: jsfs_f_prop_get
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - gf_filter_get_name
    - JS_NewInt64
    - gf_codecid_name
    - JS_NewString
    - gf_filter_get_stats
    - gf_filter_get_ipid_count
    - JS_NewObject
    - JS_GetOpaque
    - JS_NewInt32
    - gf_filter_get_id
    - gf_filter_get_opid_count
    - JS_SetPropertyStr
    - gf_stream_type_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:779,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:781,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:784,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:788,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:789,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:790,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:791,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: 795
      start: 775
    functionDepth: 2
    functionLinenumber: 775
    functionLinenumberEnd: 795
    functionName: jsfs_f_prop_set
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_free
    - JS_GetOpaque
    - JS_FreeCString
    - jsff_get_filter
    - gf_strdup
    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:800,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: 804
      start: 798
    functionDepth: 1
    functionLinenumber: 798
    functionLinenumberEnd: 804
    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:814,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:816,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:818,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:819,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:820,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:822,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:823,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:825,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:826,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:829,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:830,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filter_core/filter_session_js.c:832,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:833,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_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:841,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filter_core/filter_session_js.c:841,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:843,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:844,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/filter_core/filter_session_js.c:845,1
    - Dst: gf_filter_pid_query_buffer_duration
      Src: /src/gpac/src/filter_core/filter_session_js.c:845,1
    - Dst: strcmp
      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:848,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:849,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:851,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:852,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:853,1
    - Dst: gf_filter_pid_is_eos
      Src: /src/gpac/src/filter_core/filter_session_js.c:853,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_session_js.c:855,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session_js.c:857,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter_session_js.c:859,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:861,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filter_core/filter_session_js.c:863,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:865,1
    - Dst: gf_filter_pid_enum_properties
      Src: /src/gpac/src/filter_core/filter_session_js.c:873,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:877,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:881,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:882,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:882,1
    - Dst: jsf_NewPropTranslate
      Src: /src/gpac/src/filter_core/filter_session_js.c:884,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:886,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:888,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:889,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:890,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:892,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:893,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:894,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:895,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: 898
      start: 809
    functionDepth: 7
    functionLinenumber: 809
    functionLinenumberEnd: 898
    functionName: jsff_enum_pid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - GF_JS_EXCEPTION
    - gf_filter_pid_get_property
    - gf_filter_pid_enum_properties
    - JS_IsString
    - JS_Call
    - gf_filter_get_opid
    - gf_props_get_id
    - JS_ToCString
    - js_dump_error
    - JS_FreeValue
    - JS_IsFunction
    - jsf_NewProp
    - JS_IsException
    - gf_filter_get_ipid
    - JS_NewString
    - JS_FreeCString
    - gf_filter_pid_get_property_str
    - strcmp
    - gf_filter_pid_is_eos
    - JS_ToInt32
    - gf_filter_pid_query_buffer_duration
    - jsf_NewPropTranslate
    - JS_NewBool
    - JS_GetOpaque
    - gf_props_get_type_name
    - gf_props_4cc_get_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:901,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: 902
      start: 899
    functionDepth: 8
    functionLinenumber: 899
    functionLinenumberEnd: 902
    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:905,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: 906
      start: 903
    functionDepth: 8
    functionLinenumber: 903
    functionLinenumberEnd: 906
    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:914,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:916,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:917,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:918,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filter_core/filter_session_js.c:920,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:924,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: 925
      start: 909
    functionDepth: 1
    functionLinenumber: 909
    functionLinenumberEnd: 925
    functionName: jsff_get_pid_source
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - jsfs_new_filter_obj
    - JS_GetOpaque
    - gf_filter_get_ipid
    - JS_ToInt32
    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:932,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:934,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:935,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:936,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:938,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:941,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:942,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:942,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:945,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:946,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:946,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: 949
      start: 927
    functionDepth: 1
    functionLinenumber: 927
    functionLinenumberEnd: 949
    functionName: jsff_get_pid_sinks
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - jsfs_new_filter_obj
    - gf_list_get
    - JS_NewArray
    - JS_NewInt32
    - JS_GetOpaque
    - JS_SetPropertyUint32
    - gf_filter_get_opid
    - JS_SetPropertyStr
    - JS_ToInt32
    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:964,1
    - Dst: JS_NewObject
      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:971,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:971,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_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_session_js.c:972,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:976,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:977,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session_js.c:980,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:981,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session_js.c:982,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:984,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:984,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:985,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:987,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:988,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:992,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:992,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:994,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:995,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:999,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:999,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_session_js.c:1002,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1003,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1003,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_session_js.c:1004,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1006,1
    - Dst: gf_filter_get_arg
      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:1013,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1013,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter_session_js.c:1015,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1016,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1016,1
    - Dst: gf_props_reset_single
      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:1019,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1024,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1024,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1026,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1026,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1028,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1028,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1029,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1029,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1030,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1030,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1032,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1032,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1035,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1035,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1038,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: 1041
      start: 951
    functionDepth: 4
    functionLinenumber: 951
    functionLinenumberEnd: 1041
    functionName: get_filter_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - strchr
    - gf_free
    - gf_props_parse_value
    - gf_props_reset_single
    - gf_filter_get_arg
    - JS_NewString
    - JS_NewObject
    - gf_strdup
    - gf_filter_parse_prop_solve_env_var
    - JS_SetPropertyUint32
    - jsf_NewProp
    - gf_props_get_type_name
    - strcmp
    - JS_SetPropertyStr
    - snprintf
    - strlen
    - strstr
    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:1046,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1048,1
    - Dst: JS_IsBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1050,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1050,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:1053,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1054,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: 1056
      start: 1043
    functionDepth: 5
    functionLinenumber: 1043
    functionLinenumberEnd: 1056
    functionName: jsff_all_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToBool
    - JS_IsBool
    - JS_NewArray
    - get_filter_args
    - JS_GetOpaque
    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:1060,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1062,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1063,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - fs
    - name
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1058
    functionDepth: 1
    functionLinenumber: 1058
    functionLinenumberEnd: 1066
    functionName: find_reg
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    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:1074,1
    - Dst: find_reg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1077,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1083,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter_session_js.c:1084,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1085,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter_session_js.c:1086,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1093,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:1099,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session_js.c:1100,1
    - Dst: gf_fs_reg_all
      Src: /src/gpac/src/filter_core/filter_session_js.c:1104,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1109,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:1113,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1114,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1115,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1116,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1118,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session_js.c:1120,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1122,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1123,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1124,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1125,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1127,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1129,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1132,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1139,1
    - Dst: gf_filter_meta_get_instances
      Src: /src/gpac/src/filter_core/filter_session_js.c:1140,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1143,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1145,1
    - Dst: find_reg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1147,1
    - Dst: get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1149,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:1159,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter_session_js.c:1161,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1163,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1166,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: 1168
      start: 1070
    functionDepth: 5
    functionLinenumber: 1070
    functionLinenumberEnd: 1168
    functionName: jsfs_get_filter_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_fs_load_source_dest_internal
    - GF_SAFEALLOC
    - strstr
    - strchr
    - GF_Filter*::freg::finalize
    - get_filter_args
    - gf_fs_load_destination
    - gf_dynstrcat
    - gf_fs_lock_filters
    - gf_fs_reg_all
    - gf_filter_del
    - gf_fs_load_filter
    - gf_list_new
    - gf_filter_meta_get_instances
    - find_reg
    - sprintf
    - gf_free
    - gf_list_del_item
    - gf_fs_load_source
    - gf_strdup
    - strncmp
    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:1172,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session_js.c:1173,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1175,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1177,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1178,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - metafs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1179
      start: 1170
    functionDepth: 3
    functionLinenumber: 1170
    functionLinenumberEnd: 1179
    functionName: del_meta_fs
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_FilterRegister*::register_free
    - gf_free
    - gf_list_del
    - gf_list_pop_back
    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:1184,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1185,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1187,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1188,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:1191,1
    - Dst: jsfs_get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1192,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1193,1
    - Dst: del_meta_fs
      Src: /src/gpac/src/filter_core/filter_session_js.c:1195,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1198,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1199,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: 1202
      start: 1181
    functionDepth: 6
    functionLinenumber: 1181
    functionLinenumberEnd: 1202
    functionName: jsfs_filter_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewArray
    - JS_FreeValue
    - del_meta_fs
    - JS_FreeCString
    - jsfs_get_filter_args
    - jsff_get_session
    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: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_run
      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_run_sess
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - jsff_get_session
    - JS_NewInt32
    - gf_fs_run
    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:1219,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1220,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1222,1
    - Dst: gf_fs_stop
      Src: /src/gpac/src/filter_core/filter_session_js.c:1224,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1225,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: 1226
      start: 1217
    functionDepth: 2
    functionLinenumber: 1217
    functionLinenumberEnd: 1226
    functionName: jsfs_stop_sess
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - jsff_get_session
    - JS_NewInt32
    - gf_fs_stop
    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:1229,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1230,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/filter_core/filter_session_js.c:1231,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: 1233
      start: 1227
    functionDepth: 2
    functionLinenumber: 1227
    functionLinenumberEnd: 1233
    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:1237,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1238,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/filter_core/filter_session_js.c:1239,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: 1241
      start: 1235
    functionDepth: 2
    functionLinenumber: 1235
    functionLinenumberEnd: 1241
    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:1248,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1250,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1252,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1253,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1260,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1264,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1265,1
    - Dst: jsf_NewProp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1266,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1270,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: 1272
      start: 1243
    functionDepth: 4
    functionLinenumber: 1243
    functionLinenumberEnd: 1272
    functionName: jsff_get_arg
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_get_arg
    - JS_GetOpaque
    - JS_FreeCString
    - jsf_NewProp
    - strcmp
    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:1281,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1283,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1285,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1286,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1288,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1290,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1291,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1293,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1294,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter_session_js.c:1296,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1297,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1298,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1304,1
    - Dst: js_throw_err_msg
      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:1306,1
    - Dst: jsf_ToProp_ex
      Src: /src/gpac/src/filter_core/filter_session_js.c:1309,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1311,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1312,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_session_js.c:1315,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter_session_js.c:1316,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_session_js.c:1317,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1320,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: 1322
      start: 1277
    functionDepth: 3
    functionLinenumber: 1277
    functionLinenumberEnd: 1322
    functionName: jsff_update
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_filter_get_arg
    - gf_props_reset_single
    - jsf_ToProp_ex
    - gf_fs_send_update
    - JS_IsString
    - JS_GetOpaque
    - JS_FreeCString
    - gf_props_dump_val
    - JS_ToInt32
    - js_throw_err_msg
    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:1326,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1328,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1330,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1331,1
    - Dst: gf_filter_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1333,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: 1336
      start: 1324
    functionDepth: 1
    functionLinenumber: 1324
    functionLinenumberEnd: 1336
    functionName: jsff_lock
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_lock
    - JS_ToBool
    - JS_GetOpaque
    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:1340,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1342,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filter_core/filter_session_js.c:1344,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: 1346
      start: 1338
    functionDepth: 1
    functionLinenumber: 1338
    functionLinenumberEnd: 1346
    functionName: jsff_remove
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_remove
    - JS_GetOpaque
    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:1358,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1360,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1362,1
    - Dst: jsf_custom_filter_opaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1363,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1364,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1366,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1367,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1372,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1374,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1374,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1375,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1376,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1377,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1381,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1383,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1384,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1388,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1392,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1393,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1395,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1396,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1398,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1402,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1402,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1403,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1404,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1405,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/src/filter_core/filter_session_js.c:1409,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1411,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1413,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/src/filter_core/filter_session_js.c:1418,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1420,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1421,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1423,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: 1424
      start: 1350
    functionDepth: 2
    functionLinenumber: 1350
    functionLinenumberEnd: 1424
    functionName: jsff_insert_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_IsString
    - gf_filter_get_opid
    - JS_IsObject
    - JS_ToCString
    - gf_fs_load_destination
    - gf_filter_reconnect_output
    - gf_filter_set_source
    - gf_fs_lock_filters
    - gf_filter_set_source_restricted
    - jsf_custom_filter_opaque
    - JS_FreeCString
    - gf_fs_load_filter
    - JS_ToInt32
    - gf_error_to_string
    - jsfs_new_filter_obj
    - JS_GetOpaque
    - gf_fs_load_source
    - js_throw_err_msg
    - strncmp
    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:1430,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1432,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1436,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1436,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1438,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1439,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/src/filter_core/filter_session_js.c:1443,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1445,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1445,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: 1447
      start: 1426
    functionDepth: 2
    functionLinenumber: 1426
    functionLinenumberEnd: 1447
    functionName: jsff_reconnect_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - gf_filter_reconnect_output
    - gf_filter_get_opid
    - JS_ToInt32
    - js_throw_err_msg
    - gf_error_to_string
    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:1453,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1455,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1457,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1457,1
    - Dst: gf_filter_get_possible_destinations
      Src: /src/gpac/src/filter_core/filter_session_js.c:1461,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1464,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1464,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1466,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1467,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: 1469
      start: 1449
    functionDepth: 2
    functionLinenumber: 1449
    functionLinenumberEnd: 1469
    functionName: jsff_get_destinations
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_free
    - JS_NewString
    - JS_GetOpaque
    - gf_filter_get_possible_destinations
    - JS_ToInt32
    - js_throw_err_msg
    - gf_error_to_string
    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:1477,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:1479,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1481,1
    - Dst: jsf_custom_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1482,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1484,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1486,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1487,1
    - Dst: JS_Call
      Src: /src/gpac/src/filter_core/filter_session_js.c:1488,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:1489,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:1489,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1490,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1491,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1492,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1493,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:1494,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:1495,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: 1497
      start: 1474
    functionDepth: 6
    functionLinenumber: 1474
    functionLinenumberEnd: 1497
    functionName: jsff_on_setup_error
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - jsfs_new_filter_obj
    - JS_IsUndefined
    - js_dump_error
    - JS_FreeValue
    - js_std_loop
    - JS_GetPropertyStr
    - JS_Call
    - jsf_custom_filter_obj
    - jsf_custom_filter_context
    - JS_IsException
    - JS_NewInt32
    - gf_js_lock
    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:1501,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1503,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1505,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1506,1
    - Dst: gf_filter_set_setup_failure_callback
      Src: /src/gpac/src/filter_core/filter_session_js.c:1508,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: 1510
      start: 1499
    functionDepth: 2
    functionLinenumber: 1499
    functionLinenumberEnd: 1510
    functionName: jsff_watch_setup_failure
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_setup_failure_callback
    - jsf_custom_filter_opaque
    - 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:1525,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1527,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1529,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1529,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1530,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1531,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1532,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1533,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1534,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1535,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session_js.c:1535,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1536,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1537,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1539,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session_js.c:1542,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1543,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1544,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1545,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1546,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session_js.c:1548,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session_js.c:1550,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1552,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1553,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1554,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1556,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:1558,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1561,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1561,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1562,1
    - Dst: gf_filter_pid_compute_link
      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:1569,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:1570,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1573,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1577,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1578,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1579,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1579,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/filter_core/filter_session_js.c:1580,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1581,1
    - Dst: jsfs_get_filter_args
      Src: /src/gpac/src/filter_core/filter_session_js.c:1584,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1586,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1586,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1589,1
    - Dst: del_meta_fs
      Src: /src/gpac/src/filter_core/filter_session_js.c:1591,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session_js.c:1595,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter_session_js.c:1597,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:1599,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1600,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: 1602
      start: 1515
    functionDepth: 6
    functionLinenumber: 1515
    functionLinenumberEnd: 1602
    functionName: jsff_compute_link
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_compute_link
    - GF_JS_EXCEPTION
    - gf_list_count
    - JS_NewArray
    - JS_SetPropertyUint32
    - gf_filter_get_opid
    - strstr
    - JS_ToCString
    - GF_Filter*::freg::finalize
    - del_meta_fs
    - gf_fs_load_destination
    - gf_dynstrcat
    - gf_list_get
    - gf_fs_lock_filters
    - JS_ToBool
    - JS_NewString
    - JS_NewObject
    - JS_FreeCString
    - gf_filter_del
    - gf_fs_load_filter
    - strlen
    - JS_SetPropertyStr
    - JS_ToInt32
    - gf_error_to_string
    - sprintf
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - JS_GetOpaque
    - gf_strdup
    - jsfs_get_filter_args
    - js_throw_err_msg
    - strncmp
    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:1606,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1607,1
    - Dst: gf_filter_require_source_id
      Src: /src/gpac/src/filter_core/filter_session_js.c:1608,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: 1610
      start: 1604
    functionDepth: 1
    functionLinenumber: 1604
    functionLinenumberEnd: 1610
    functionName: jsff_require_source_id
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_require_source_id
    - JS_GetOpaque
    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:1613,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1615,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1616,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filter_core/filter_session_js.c:1616,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1617,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1619,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1621,1
    - Dst: dashdmx_bind_js
      Src: /src/gpac/src/filter_core/filter_session_js.c:1624,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1626,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1629,1
    - Dst: httpout_bind_js
      Src: /src/gpac/src/filter_core/filter_session_js.c:1632,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1634,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1638,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: 1639
      start: 1611
    functionDepth: 6
    functionLinenumber: 1611
    functionLinenumberEnd: 1639
    functionName: jsff_bind
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_GetOpaque
    - dashdmx_bind_js
    - JS_IsNull
    - httpout_bind_js
    - strcmp
    - JS_IsObject
    - js_throw_err_msg
    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:1645,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1648,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1650,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1651,1
    - Dst: gf_filter_get_ipid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1654,1
    - Dst: gf_filter_get_opid
      Src: /src/gpac/src/filter_core/filter_session_js.c:1655,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1657,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1660,1
    - Dst: gf_filter_pid_get_statistics
      Src: /src/gpac/src/filter_core/filter_session_js.c:1663,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1664,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:1665,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1667,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1674,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1675,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1676,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1677,1
    - Dst: SET_U32
      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_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1681,1
    - Dst: SET_U64
      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
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1684,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1685,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1686,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1687,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1688,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1689,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1690,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1691,1
    - Dst: SET_U64
      Src: /src/gpac/src/filter_core/filter_session_js.c:1692,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1693,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1694,1
    - Dst: SET_U32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1695,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: 1697
      start: 1641
    functionDepth: 1
    functionLinenumber: 1641
    functionLinenumberEnd: 1697
    functionName: jsff_get_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_pid_get_statistics
    - JS_NewObject
    - SET_U64
    - JS_GetOpaque
    - SET_U32
    - gf_filter_get_opid
    - JS_IsException
    - JS_SetPropertyStr
    - gf_filter_get_ipid
    - JS_ToInt32
    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: 1670
      start: 1668
    functionDepth: 0
    functionLinenumber: 1668
    functionLinenumberEnd: 1670
    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: 1673
      start: 1671
    functionDepth: 0
    functionLinenumber: 1671
    functionLinenumberEnd: 1673
    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:1701,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: 1702
      start: 1699
    functionDepth: 2
    functionLinenumber: 1699
    functionLinenumberEnd: 1702
    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:1706,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: 1707
      start: 1704
    functionDepth: 2
    functionLinenumber: 1704
    functionLinenumberEnd: 1707
    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: 1710
      start: 1709
    functionDepth: 0
    functionLinenumber: 1709
    functionLinenumberEnd: 1710
    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:1765,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:1766,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:1767,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:1767,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1768,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:1770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - f
    argTypes:
    - JSContext*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1771
      start: 1763
    functionDepth: 1
    functionLinenumber: 1763
    functionLinenumberEnd: 1771
    functionName: jsfs_new_filter_obj
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 5
    functionsReached:
    - JS_NewObjectClass
    - countof
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_DupValue
    - JS_SetPropertyFunctionList
    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:1777,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1778,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1780,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1781,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1784,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:1785,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1787,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1788,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1791,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1793,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1795,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1796,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:1798,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1800,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1802,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: 1803
      start: 1773
    functionDepth: 2
    functionLinenumber: 1773
    functionLinenumberEnd: 1803
    functionName: jsfs_get_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - gf_list_count
    - jsfs_new_filter_obj
    - JS_IsString
    - JS_FreeCString
    - strcmp
    - gf_list_get
    - JS_ToInt32
    - jsff_get_session
    - gf_fs_lock_filters
    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:1814,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1816,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1818,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1819,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1823,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1825,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1827,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1832,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1836,1
    - Dst: jsf_get_script_filename
      Src: /src/gpac/src/filter_core/filter_session_js.c:1838,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1839,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1840,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:1842,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session_js.c:1843,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1845,1
    - Dst: js_throw_err_msg
      Src: /src/gpac/src/filter_core/filter_session_js.c:1849,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:1849,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1850,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1851,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1852,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1855,1
    - Dst: gf_filter_set_source_restricted
      Src: /src/gpac/src/filter_core/filter_session_js.c:1858,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filter_core/filter_session_js.c:1860,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1863,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session_js.c:1864,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:1866,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: 1868
      start: 1806
    functionDepth: 2
    functionLinenumber: 1806
    functionLinenumberEnd: 1868
    functionName: jsfs_add_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_ToBool
    - jsf_get_script_filename
    - jsfs_new_filter_obj
    - gf_filter_set_source_restricted
    - js_throw_err_msg
    - JS_GetOpaque
    - gf_filter_set_source
    - gf_fs_load_destination
    - JS_FreeCString
    - gf_fs_load_source
    - gf_fs_load_filter
    - jsff_get_session
    - strncmp
    - gf_fs_lock_filters
    - gf_error_to_string
    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:1877,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1880,1
    - Dst: jsf_get_event
      Src: /src/gpac/src/filter_core/filter_session_js.c:1882,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1883,1
    - Dst: jsff_get_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1886,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1887,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1888,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filter_core/filter_session_js.c:1891,1
    - Dst: gf_fs_fire_event
      Src: /src/gpac/src/filter_core/filter_session_js.c:1894,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1896,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: 1897
      start: 1870
    functionDepth: 2
    functionLinenumber: 1870
    functionLinenumberEnd: 1897
    functionName: jsfs_fire_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - GF_JS_EXCEPTION
    - JS_ToBool
    - gf_fs_fire_event
    - gf_filter_send_event
    - jsff_get_filter
    - jsf_get_event
    - 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:1902,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1904,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/filter_core/filter_session_js.c:1905,1
    - Dst: gf_fs_enable_reporting
      Src: /src/gpac/src/filter_core/filter_session_js.c:1906,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: 1908
      start: 1899
    functionDepth: 2
    functionLinenumber: 1899
    functionLinenumberEnd: 1908
    functionName: jsfs_reporting
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - jsff_get_session
    - JS_ToBool
    - gf_fs_enable_reporting
    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:1918,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1919,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1921,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:1923,1
    - Dst: gf_fs_new_filter
      Src: /src/gpac/src/filter_core/filter_session_js.c:1927,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:1928,1
    - Dst: js_throw_err
      Src: /src/gpac/src/filter_core/filter_session_js.c:1929,1
    - Dst: jsfilter_initialize_custom
      Src: /src/gpac/src/filter_core/filter_session_js.c:1931,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:1932,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/filter_core/filter_session_js.c:1932,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:1934,1
    - Dst: JS_NewCFunction
      Src: /src/gpac/src/filter_core/filter_session_js.c:1934,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: 1936
      start: 1912
    functionDepth: 8
    functionLinenumber: 1912
    functionLinenumberEnd: 1936
    functionName: jsfs_new_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewCFunction
    - js_throw_err
    - JS_IsNull
    - JS_FreeCString
    - JS_IsException
    - JS_SetPropertyStr
    - jsfilter_initialize_custom
    - gf_fs_new_filter
    - JS_ToInt32
    - jsff_get_session
    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:1942,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1943,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:1944,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1944,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1946,1
    - Dst: jsf_custom_filter_opaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1948,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:1951,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1954,1
    - Dst: jsf_custom_filter_opaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:1956,1
    - Dst: gf_filter_remove_src
      Src: /src/gpac/src/filter_core/filter_session_js.c:1959,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filter_core/filter_session_js.c:1961,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: 1963
      start: 1938
    functionDepth: 2
    functionLinenumber: 1938
    functionLinenumberEnd: 1963
    functionName: jsfs_remove_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - GF_JS_EXCEPTION
    - gf_filter_remove
    - gf_filter_remove_src
    - JS_GetOpaque
    - jsf_custom_filter_opaque
    - JS_IsObject
    - jsff_get_session
    linkageType: ''
    returnType: JSValue
    signature: JSValue jsfs_remove_filter(JSContext *ctx, JSValueConst this_val, int
      argc, JSValueConst *argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session_js.c:2005,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:2006,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:2010,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:2011,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2013,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session_js.c:2017,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2019,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2020,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2021,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2025,1
    - Dst: scenejs_unload
      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
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - c
    - fs
    argTypes:
    - JSContext*
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2030
      start: 2002
    functionDepth: 2
    functionLinenumber: 2002
    functionLinenumberEnd: 2030
    functionName: gf_fs_unload_js_api
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - scenejs_unload
    - JS_GetGlobalObject
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_FreeValue
    - gf_mx_v
    - JS_GetPropertyStr
    - JS_GetOpaque
    - gf_mx_p
    - gf_list_get
    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:2037,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:2039,1
    - Dst: gf_fs_new_defaults
      Src: /src/gpac/src/filter_core/filter_session_js.c:2042,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2043,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2048,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:2049,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:2050,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2051,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2053,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:2054,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:2055,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2056,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2058,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/filter_core/filter_session_js.c:2059,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/filter_core/filter_session_js.c:2060,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2061,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2063,1
    - Dst: JS_IsString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2064,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2065,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2066,1
    - Dst: gf_fs_new
      Src: /src/gpac/src/filter_core/filter_session_js.c:2068,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2069,1
    - Dst: GF_JS_EXCEPTION
      Src: /src/gpac/src/filter_core/filter_session_js.c:2071,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2075,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:2076,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:2077,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2078,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2082,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: 2084
      start: 2033
    functionDepth: 1
    functionLinenumber: 2033
    functionLinenumberEnd: 2084
    functionName: session_constructor
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_fs_new_defaults
    - GF_JS_EXCEPTION
    - JS_ToCString
    - JS_NewObjectClass
    - gf_free
    - JS_IsUndefined
    - gf_fs_new
    - gf_fs_del
    - JS_SetOpaque
    - JS_FreeValue
    - JS_IsString
    - JS_GetPropertyStr
    - GF_SAFEALLOC
    - JS_FreeCString
    - JS_IsObject
    - JS_IsException
    - JS_ToInt32
    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:2095,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2096,1
    - Dst: js_load_constants
      Src: /src/gpac/src/filter_core/filter_session_js.c:2098,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filter_core/filter_session_js.c:2103,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filter_core/filter_session_js.c:2104,1
    - Dst: DEF_CONST
      Src: /src/gpac/src/filter_core/filter_session_js.c:2105,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session_js.c:2108,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session_js.c:2112,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filter_core/filter_session_js.c:2119,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2120,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filter_core/filter_session_js.c:2122,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2123,1
    - Dst: JS_NewClassID
      Src: /src/gpac/src/filter_core/filter_session_js.c:2125,1
    - Dst: JS_NewClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2126,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2128,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:2129,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:2129,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filter_core/filter_session_js.c:2130,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2132,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:2133,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:2133,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2135,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2136,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/filter_core/filter_session_js.c:2139,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/filter_core/filter_session_js.c:2140,1
    - Dst: countof
      Src: /src/gpac/src/filter_core/filter_session_js.c:2140,1
    - Dst: JS_SetClassProto
      Src: /src/gpac/src/filter_core/filter_session_js.c:2141,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/filter_core/filter_session_js.c:2142,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2143,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2147,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 40
    argCount: 2
    argNames:
    - c
    - fs
    argTypes:
    - JSContext*
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2149
      start: 2085
    functionDepth: 2
    functionLinenumber: 2085
    functionLinenumberEnd: 2149
    functionName: gf_fs_load_js_api
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 2
    functionsReached:
    - JS_GetRuntime
    - JS_NewObjectClass
    - JS_GetGlobalObject
    - JS_NewCFunction2
    - countof
    - JS_SetOpaque
    - JS_FreeValue
    - JS_NewClass
    - JS_NewClassID
    - GF_SAFEALLOC
    - DEF_CONST
    - JS_SetClassProto
    - gf_list_new
    - JS_SetPropertyFunctionList
    - js_load_constants
    - JS_SetPropertyStr
    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: 2102
      start: 2100
    functionDepth: 0
    functionLinenumber: 2100
    functionLinenumberEnd: 2102
    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:2171,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/filter_core/filter_session_js.c:2172,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filter_core/filter_session_js.c:2173,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_session_js.c:2174,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_session_js.c:2179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session_js.c:2184,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session_js.c:2184,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2196,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2197,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2197,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter_session_js.c:2197,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2198,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2198,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2199,1
    - Dst: gf_js_create_context
      Src: /src/gpac/src/filter_core/filter_session_js.c:2201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session_js.c:2203,1
    - Dst: JS_SetContextOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2206,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2208,1
    - Dst: gf_fs_load_js_api
      Src: /src/gpac/src/filter_core/filter_session_js.c:2209,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2212,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2212,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter_session_js.c:2212,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2213,1
    - Dst: JS_NewString
      Src: /src/gpac/src/filter_core/filter_session_js.c:2213,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2214,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session_js.c:2217,1
    - Dst: JS_DetectModule
      Src: /src/gpac/src/filter_core/filter_session_js.c:2217,1
    - Dst: qjs_init_all_modules
      Src: /src/gpac/src/filter_core/filter_session_js.c:2219,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2223,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2224,1
    - Dst: jsfs_new_filter_obj
      Src: /src/gpac/src/filter_core/filter_session_js.c:2224,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2225,1
    - Dst: JS_Eval
      Src: /src/gpac/src/filter_core/filter_session_js.c:2227,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2228,1
    - Dst: JS_IsException
      Src: /src/gpac/src/filter_core/filter_session_js.c:2230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session_js.c:2231,1
    - Dst: js_dump_error
      Src: /src/gpac/src/filter_core/filter_session_js.c:2232,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2233,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2236,1
    - Dst: js_std_loop
      Src: /src/gpac/src/filter_core/filter_session_js.c:2237,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: 2240
      start: 2151
    functionDepth: 6
    functionLinenumber: 2151
    functionLinenumberEnd: 2240
    functionName: gf_fs_load_script_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 0
    functionsReached:
    - gf_file_basename
    - gf_fs_load_js_api
    - JS_Eval
    - js_dump_error
    - JS_FreeValue
    - qjs_init_all_modules
    - JS_IsException
    - gf_js_create_context
    - JS_NewString
    - js_std_loop
    - gf_opts_default_shared_directory
    - JS_SetContextOpaque
    - JS_SetPropertyStr
    - gf_error_to_string
    - gf_free
    - JS_GetGlobalObject
    - jsfs_new_filter_obj
    - gf_file_load_data
    - gf_strcat
    - GF_LOG
    - gf_opts_get_bool
    - JS_DetectModule
    - strncmp
    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:2245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fs
    - jsfile
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2246
      start: 2242
    functionDepth: 7
    functionLinenumber: 2242
    functionLinenumberEnd: 2246
    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:2250,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:2252,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2256,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2258,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2259,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2261,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_session_js.c:2262,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2269,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2270,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2271,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2273,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session_js.c:2274,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/filter_core/filter_session_js.c:2275,1
    - Dst: JS_SetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2276,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2277,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2278,1
    - Dst: gf_js_lock
      Src: /src/gpac/src/filter_core/filter_session_js.c:2279,1
    - Dst: gf_js_delete_context
      Src: /src/gpac/src/filter_core/filter_session_js.c:2282,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:2285,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session_js.c:2286,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 2
    argNames:
    - fs
    - js_ctx
    argTypes:
    - GF_FilterSession*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2289
      start: 2248
    functionDepth: 4
    functionLinenumber: 2248
    functionLinenumberEnd: 2289
    functionName: gf_fs_unload_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_free
    - JS_GetGlobalObject
    - gf_list_del
    - gf_js_delete_context
    - JS_SetOpaque
    - JS_FreeValue
    - JS_GetPropertyStr
    - JS_GetOpaque
    - gf_list_get
    - gf_js_lock
    - JS_SetPropertyStr
    - gf_list_rem
    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:2295,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session_js.c:2297,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session_js.c:2299,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2300,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session_js.c:2302,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session_js.c:2304,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session_js.c:2308,1
    - Dst: gf_fs_load_script_ex
      Src: /src/gpac/src/filter_core/filter_session_js.c:2312,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session_js.c:2313,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: 2314
      start: 2290
    functionDepth: 7
    functionLinenumber: 2290
    functionLinenumberEnd: 2314
    functionName: gf_filter_load_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_filter_get_arg
    - gf_mx_v
    - gf_mx_p
    - strcmp
    - gf_list_get
    - gf_fs_load_script_ex
    - strstr
    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:2320,1
    - Dst: JS_GetGlobalObject
      Src: /src/gpac/src/filter_core/filter_session_js.c:2333,1
    - Dst: JS_GetPropertyStr
      Src: /src/gpac/src/filter_core/filter_session_js.c:2334,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/filter_core/filter_session_js.c:2335,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - udta
    - tag_type
    argTypes:
    - JSContext*
    - void*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2340
      start: 2316
    functionDepth: 1
    functionLinenumber: 2316
    functionLinenumberEnd: 2340
    functionName: gf_fs_get_script_data
    functionSourceFile: /src/gpac/src/filter_core/filter_session_js.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    - JS_DupValue
    - JS_GetGlobalObject
    - 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: 2347
      start: 2343
    functionDepth: 0
    functionLinenumber: 2343
    functionLinenumberEnd: 2347
    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: 2351
      start: 2348
    functionDepth: 0
    functionLinenumber: 2348
    functionLinenumberEnd: 2351
    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: 2355
      start: 2352
    functionDepth: 0
    functionLinenumber: 2352
    functionLinenumberEnd: 2355
    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_opts_get_bool
    - GF_SAFEALLOC
    - gf_free
    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:
    - item_delete
    - gf_free
    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:
    - atomic_compare_and_swap
    - gf_assert
    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:
    - safe_int_inc
    - gf_assert
    - gf_fq_lockfree_dequeue
    - GF_SAFEALLOC
    - gf_fq_lockfree_enqueue
    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:
    - gf_fq_lockfree_dequeue
    - safe_int_dec
    - gf_assert
    - 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_assert
    - gf_lfq_add
    - GF_SAFEALLOC
    - gf_mx_p
    - 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_v
    - gf_lfq_pop
    - gf_assert
    - gf_mx_p
    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:
    - enum_func
    - gf_mx_p
    - gf_assert
    - gf_mx_v
    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_LOG
    - gf_sema_notify
    - gf_sema_wait
    - gf_fs_sema_io
    - gf_fq_count
    - gf_th_id
    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_list_count
    - strchr
    - GF_FilterRegister*::register_free
    - GF_LOG
    - gf_filter_has_in_caps
    - gf_filter_sess_build_graph
    - gf_mx_p
    - gf_mx_v
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_add_filter_register(GF_FilterSession *fsess, const
      GF_FilterRegister *freg)
  - BBCount: 12
    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_auth
      Src: /src/gpac/src/filter_core/filter_session.c:164,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_session.c:169,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:175,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:176,1
    - Dst: gf_read_line_input
      Src: /src/gpac/src/filter_core/filter_session.c:177,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:179,1
    - Dst: gf_read_line_input
      Src: /src/gpac/src/filter_core/filter_session.c:180,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:182,1
    - Dst: GF_Event*::auth::on_usr_pass
      Src: /src/gpac/src/filter_core/filter_session.c:185,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 2
    argNames:
    - ptr
    - evt
    argTypes:
    - void*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 146
    functionDepth: 7
    functionLinenumber: 146
    functionLinenumberEnd: 192
    functionName: fs_default_event_proc
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - fprintf
    - GF_LOG
    - gf_fs_abort
    - jsfs_on_auth
    - GF_Event*::auth::on_usr_pass
    - gf_read_line_input
    - gf_sys_is_test_mode
    - gf_error_to_string
    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:212,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:214,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:225,1
    - Dst: emscripten_is_main_runtime_thread
      Src: /src/gpac/src/filter_core/filter_session.c:230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:232,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:236,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:241,1
    - Dst: gf_sys_get_rti
      Src: /src/gpac/src/filter_core/filter_session.c:242,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:246,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:256,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:260,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:263,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:264,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:271,1
    - Dst: gf_sema_new
      Src: /src/gpac/src/filter_core/filter_session.c:275,1
    - Dst: gf_sema_new
      Src: /src/gpac/src/filter_core/filter_session.c:277,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:289,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:297,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:299,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:301,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:317,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:321,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:323,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:324,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:325,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter_session.c:327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:331,1
    - Dst: gf_fs_del
      Src: /src/gpac/src/filter_core/filter_session.c:333,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:338,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:339,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:346,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:348,1
    - Dst: gf_th_new
      Src: /src/gpac/src/filter_core/filter_session.c:349,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:351,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:355,1
    - Dst: gf_fs_set_separators
      Src: /src/gpac/src/filter_core/filter_session.c:359,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:361,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:364,1
    - Dst: gf_fs_reg_all
      Src: /src/gpac/src/filter_core/filter_session.c:369,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:376,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:379,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:381,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:384,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:391,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:392,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:393,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:395,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:396,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter_session.c:400,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:401,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:404,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter_session.c:408,1
    - Dst: gf_sys_has_filter_global_args
      Src: /src/gpac/src/filter_core/filter_session.c:413,1
    - Dst: gf_sys_has_filter_global_meta_args
      Src: /src/gpac/src/filter_core/filter_session.c:413,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter_session.c:414,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:416,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:419,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter_session.c:421,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:424,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:424,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filter_core/filter_session.c:425,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:432,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:435,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:438,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 161
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 203
    functionDepth: 7
    functionLinenumber: 203
    functionLinenumberEnd: 441
    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_sema_del
    - gf_th_new
    - gf_filter_sess_build_graph
    - gf_logs_thread_tag
    - GF_SAFEALLOC
    - gf_list_add
    - strstr
    - gf_opts_set_key
    - strchr
    - gf_sys_get_rti
    - gf_fs_set_separators
    - gf_opts_get_int
    - gf_sema_new
    - gf_strdup
    - gf_sys_get_argc
    - emscripten_is_main_runtime_thread
    - gf_sys_has_filter_global_args
    - gf_sys_get_arg
    - gf_mx_new
    - gf_fs_reg_all
    - gf_sys_has_filter_global_meta_args
    - strcmp
    - gf_list_new
    - gf_fq_new
    - sprintf
    - gf_free
    - gf_fs_push_arg
    - GF_LOG
    - gf_fs_del
    - gf_opts_get_bool
    - memset
    - gf_opts_get_key
    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:447,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter_session.c:459,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:460,1
    - Dst: gf_sys_is_arg_used
      Src: /src/gpac/src/filter_core/filter_session.c:462,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:463,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:464,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:464,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:471,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:473,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:476,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:477,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:481,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:483,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:490,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:492,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:498,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: 530
      start: 445
    functionDepth: 1
    functionLinenumber: 445
    functionLinenumberEnd: 530
    functionName: gf_fs_push_arg
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_sys_get_arg
    - gf_sys_is_arg_used
    - gf_list_get
    - gf_list_new
    - gf_sys_get_argc
    - GF_SAFEALLOC
    - strcmp
    - strlen
    - gf_strdup
    - gf_list_add
    - strncmp
    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:539,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:540,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:541,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:544,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:545,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:546,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:547,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:550,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:577,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:580,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:583,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:586,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:589,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_session.c:592,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:600,1
    - Dst: gf_fs_new
      Src: /src/gpac/src/filter_core/filter_session.c:604,1
    - Dst: gf_fs_set_max_resolution_chain_length
      Src: /src/gpac/src/filter_core/filter_session.c:607,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:607,1
    - Dst: gf_fs_set_max_sleep_time
      Src: /src/gpac/src/filter_core/filter_session.c:609,1
    - Dst: gf_opts_get_int
      Src: /src/gpac/src/filter_core/filter_session.c:609,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:611,1
    - Dst: gf_fs_set_separators
      Src: /src/gpac/src/filter_core/filter_session.c:613,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 59
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 533
    functionDepth: 6
    functionLinenumber: 533
    functionLinenumberEnd: 616
    functionName: GF_FilterSession *gf_fs_new_defaults(GF_FilterSessionFlags inflags)
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_int
    - GF_LOG
    - gf_fs_new
    - gf_fs_set_separators
    - gf_fs_set_max_sleep_time
    - strcmp
    - gf_opts_get_bool
    - gf_opts_get_key
    - gf_fs_set_max_resolution_chain_length
    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:623,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 2
    argNames:
    - session
    - separator_set
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 641
    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: 649
      start: 643
    functionDepth: 0
    functionLinenumber: 643
    functionLinenumberEnd: 649
    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: 657
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 657
    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: 664
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 664
    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:671,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session.c:672,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:673,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter_session.c:674,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - session
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 675
      start: 666
    functionDepth: 3
    functionLinenumber: 666
    functionLinenumberEnd: 675
    functionName: gf_fs_remove_filter_register
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_filter_sess_reset_graph
    - gf_list_del_item
    - gf_mx_p
    - gf_mx_v
    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: 688
      start: 677
    functionDepth: 0
    functionLinenumber: 677
    functionLinenumberEnd: 688
    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:693,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - it
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 695
    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:702,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:705,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: 715
      start: 698
    functionDepth: 1
    functionLinenumber: 698
    functionLinenumberEnd: 715
    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:721,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 718
    functionDepth: 1
    functionLinenumber: 718
    functionLinenumberEnd: 723
    functionName: gf_task_del
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - task_canceled
    - gf_free
    linkageType: ''
    returnType: void
    signature: void gf_task_del(void *p)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:728,1
    - Dst: gf_fs_stop
      Src: /src/gpac/src/filter_core/filter_session.c:730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:731,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:734,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:735,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:736,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:737,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:739,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:743,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:745,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:749,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:754,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_session.c:755,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_session.c:756,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:758,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter_session.c:762,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:764,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:766,1
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_session.c:767,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:769,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:776,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_session.c:783,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:785,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter_session.c:786,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter_session.c:787,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:793,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:794,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter_session.c:796,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:798,1
    - Dst: gf_fs_unload_script
      Src: /src/gpac/src/filter_core/filter_session.c:802,1
    - Dst: gf_dm_del
      Src: /src/gpac/src/filter_core/filter_session.c:805,1
    - Dst: gf_font_manager_del
      Src: /src/gpac/src/filter_core/filter_session.c:809,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:813,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:814,1
    - Dst: GF_FilterRegister*::register_free
      Src: /src/gpac/src/filter_core/filter_session.c:815,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:817,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:821,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:824,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:829,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:831,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:832,1
    - Dst: gf_th_del
      Src: /src/gpac/src/filter_core/filter_session.c:833,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:834,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:836,1
    - Dst: gf_fq_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:844,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter_session.c:847,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_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:856,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:859,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:862,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:865,1
    - Dst: gf_sema_del
      Src: /src/gpac/src/filter_core/filter_session.c:868,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:871,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:874,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:876,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:877,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter_session.c:880,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:881,1
    - Dst: gf_mx_del
      Src: /src/gpac/src/filter_core/filter_session.c:883,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:886,1
    - Dst: GF_FilterSession*::gl_driver::Shutdown
      Src: /src/gpac/src/filter_core/filter_session.c:888,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filter_core/filter_session.c:889,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:894,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:895,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:896,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:898,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:902,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:903,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:905,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:908,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_session.c:909,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:910,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:911,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:912,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:914,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:916,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:917,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:918,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 144
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 725
    functionDepth: 5
    functionLinenumber: 725
    functionLinenumberEnd: 919
    functionName: gf_fs_del
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 19
    functionsReached:
    - gf_list_count
    - gf_fs_stop
    - gf_sema_del
    - gf_assert
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - GF_FilterSession*::gl_driver::Shutdown
    - gf_modules_close_interface
    - gf_filter_reset_pending_packets
    - gf_filter_sess_reset_graph
    - GF_FilterRegister*::register_free
    - GF_Filter*::freg::finalize
    - gf_list_pop_front
    - gf_filter_pid_inst_del
    - gf_mx_v
    - gf_list_get
    - gf_mx_del
    - gf_filter_del
    - gf_mx_p
    - gf_list_pop_back
    - FSESS_CHECK_THREAD
    - gf_logs_thread_tag_del
    - gf_free
    - gf_th_del
    - GF_LOG
    - gf_list_del
    - gf_filter_pid_inst_reset
    - gf_fs_unload_script
    - gf_dm_del
    - gf_fq_del
    - gf_font_manager_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:924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 925
      start: 921
    functionDepth: 1
    functionLinenumber: 921
    functionLinenumberEnd: 925
    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:930,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 927
    functionDepth: 1
    functionLinenumber: 927
    functionLinenumberEnd: 931
    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:936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 934
    functionDepth: 1
    functionLinenumber: 934
    functionLinenumberEnd: 937
    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:941,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - fq
    - task
    argTypes:
    - GF_FilterQueue*
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 938
    functionDepth: 2
    functionLinenumber: 938
    functionLinenumberEnd: 943
    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:951,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:952,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:958,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:963,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:970,1
    - Dst: task_fun
      Src: /src/gpac/src/filter_core/filter_session.c:973,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:976,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:999,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:1000,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:1001,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:1005,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_session.c:1007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1009,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:1013,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:1027,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:1030,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1039,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:1054,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:1055,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1057,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1057,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:1057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1061,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1061,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1064,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:1071,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:1072,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:1073,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1075,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1077,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1077,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1078,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:1082,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:1084,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:1085,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1087,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:1088,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:1089,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 100
    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: 1092
      start: 946
    functionDepth: 4
    functionLinenumber: 946
    functionLinenumberEnd: 1092
    functionName: gf_fs_post_task_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - gf_malloc
    - check_task_list
    - GF_LOG
    - safe_int_dec
    - gf_fs_sema_io
    - gf_sys_clock_high_res
    - gf_th_id
    - gf_assert
    - task_fun
    - gf_fq_count
    - gf_mx_p
    - gf_fq_add
    - gf_mx_v
    - memset
    - gf_fq_pop
    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:1096,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: 1097
      start: 1094
    functionDepth: 5
    functionLinenumber: 1094
    functionLinenumberEnd: 1097
    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:1101,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: 1102
      start: 1099
    functionDepth: 5
    functionLinenumber: 1099
    functionLinenumberEnd: 1102
    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:1130,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_session.c:1136,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_session.c:1144,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: 1161
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1161
    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:1165,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: 1166
      start: 1162
    functionDepth: 2
    functionLinenumber: 1162
    functionLinenumberEnd: 1166
    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:1185,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1187,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1191,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_session.c:1194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1197,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1217,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1219,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:1220,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:1222,1
    - Dst: gf_fs_check_filter_register_cap_ex
      Src: /src/gpac/src/filter_core/filter_session.c:1225,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1231,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1232,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:1236,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:1239,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:1240,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1244,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session.c:1244,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1248,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: 1250
      start: 1168
    functionDepth: 2
    functionLinenumber: 1168
    functionLinenumberEnd: 1250
    functionName: gf_fs_load_encoder
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - GF_LOG
    - gf_list_del
    - gf_fs_check_filter_register_cap_ex
    - gf_filter_new
    - gf_list_find
    - gf_list_new
    - gf_codecid_parse
    - gf_list_get
    - gf_list_add
    - strstr
    - gf_error_to_string
    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:1257,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1258,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1261,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1263,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1264,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - fsess
    - name
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1269
      start: 1252
    functionDepth: 1
    functionLinenumber: 1252
    functionLinenumberEnd: 1269
    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:1273,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1274,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_session.c:1277,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1279,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_session.c:1281,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1282,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1283,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1284,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1285,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_session.c:1290,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1291,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1292,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1293,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1294,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_session.c:1299,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_session.c:1300,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1301,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1302,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1304,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1307,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 31
    argCount: 3
    argNames:
    - path
    - file_name
    - file_ext
    argTypes:
    - char[]
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1309
      start: 1271
    functionDepth: 4
    functionLinenumber: 1271
    functionLinenumberEnd: 1309
    functionName: locate_js_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_malloc
    - gf_file_exists
    - GF_LOG
    - strlen
    - gf_strlcat
    - gf_strlcpy
    linkageType: ''
    returnType: Bool
    signature: Bool locate_js_script(char path[GF_MAX_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:1314,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_session.c:1315,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1316,1
    - Dst: locate_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:1317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1321,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:1323,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1325,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1329,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1333,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1335,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1336,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_session.c:1338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1339,1
    - Dst: locate_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:1340,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 3
    argNames:
    - szPath
    - file_name
    - file_ext
    argTypes:
    - char[]
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1346
      start: 1311
    functionDepth: 5
    functionLinenumber: 1311
    functionLinenumberEnd: 1346
    functionName: gf_fs_solve_js_script
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - strchr
    - GF_LOG
    - gf_strlcat
    - locate_js_script
    - gf_opts_default_shared_directory
    - gf_strlcpy
    - strcmp
    - strlen
    - gf_opts_get_key
    - memcpy
    linkageType: ''
    returnType: Bool
    signature: Bool gf_fs_solve_js_script(char szPath[GF_MAX_PATH], 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:1352,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1355,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:1356,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1360,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1368,1
    - Dst: strncmp
      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: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1377,1
    - Dst: gf_fs_load_encoder
      Src: /src/gpac/src/filter_core/filter_session.c:1378,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1383,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1384,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:1384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1389,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:1395,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1399,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1406,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_session.c:1407,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter_session.c:1418,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1422,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1422,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1422,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1429,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1431,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1432,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1435,1
    - Dst: gf_fs_solve_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:1436,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1438,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:1439,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_session.c:1440,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1442,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter_session.c:1448,1
    - Dst: gf_fread
      Src: /src/gpac/src/filter_core/filter_session.c:1452,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter_session.c:1453,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1457,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1457,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1458,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1458,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1468,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1469,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filter_core/filter_session.c:1471,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session.c:1472,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: 1477
      start: 1348
    functionDepth: 6
    functionLinenumber: 1348
    functionLinenumberEnd: 1477
    functionName: gf_fs_load_filter_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_new
    - gf_assert
    - strstr
    - strchr
    - gf_fopen
    - gf_filter_post_process_task
    - gf_list_get
    - memcpy
    - gf_strcpy
    - gf_fs_solve_js_script
    - gf_file_ext_start
    - gf_file_exists
    - strcmp
    - strlen
    - gf_fs_load_filter
    - sprintf
    - gf_fclose
    - GF_LOG
    - gf_strcat
    - gf_fread
    - gf_fs_load_encoder
    - strncmp
    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:1482,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: 1483
      start: 1479
    functionDepth: 7
    functionLinenumber: 1479
    functionLinenumberEnd: 1483
    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:1494,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter_session.c:1498,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter_session.c:1500,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1505,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1509,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1514,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:1520,1
    - Dst: sscanf
      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_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1528,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1538,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1540,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1540,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1543,1
    - Dst: gf_filter_set_source
      Src: /src/gpac/src/filter_core/filter_session.c:1546,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: 1548
      start: 1485
    functionDepth: 1
    functionLinenumber: 1485
    functionLinenumberEnd: 1548
    functionName: gf_fs_process_link_directive
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - atoi
    - GF_LOG
    - gf_list_get
    - strlen
    - sscanf
    - gf_filter_set_source
    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:1567,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:1571,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1573,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1583,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1583,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session.c:1584,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1588,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1588,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session.c:1589,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:1596,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1603,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:1605,1
    - Dst: gf_fs_process_link_directive
      Src: /src/gpac/src/filter_core/filter_session.c:1608,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:1612,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:1616,1
    - Dst: gf_fs_load_source
      Src: /src/gpac/src/filter_core/filter_session.c:1617,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:1618,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter_session.c:1619,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1622,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:1623,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session.c:1628,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1642,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_session.c:1642,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1644,1
    - Dst: gf_filter_tag_subsession
      Src: /src/gpac/src/filter_core/filter_session.c:1650,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1652,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_session.c:1653,1
    - Dst: gf_fs_process_link_directive
      Src: /src/gpac/src/filter_core/filter_session.c:1654,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:1657,1
    - Dst: gf_filter_is_source
      Src: /src/gpac/src/filter_core/filter_session.c:1661,1
    - Dst: gf_filter_tag_subsession
      Src: /src/gpac/src/filter_core/filter_session.c:1664,1
    - Dst: gf_filter_is_sink
      Src: /src/gpac/src/filter_core/filter_session.c:1671,1
    - Dst: gf_filter_is_source
      Src: /src/gpac/src/filter_core/filter_session.c:1674,1
    - Dst: gf_filter_tag_subsession
      Src: /src/gpac/src/filter_core/filter_session.c:1679,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1685,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:1686,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: 1689
      start: 1550
    functionDepth: 8
    functionLinenumber: 1550
    functionLinenumberEnd: 1689
    functionName: gf_fs_parse_filter_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_list_pop_front
    - gf_list_del
    - GF_LOG
    - gf_filter_tag_subsession
    - gf_filter_is_source
    - gf_fs_process_link_directive
    - gf_filter_is_sink
    - gf_fs_load_destination
    - gf_fs_load_source
    - strcmp
    - gf_list_new
    - gf_fs_load_filter
    - gf_list_add
    - strstr
    - strncmp
    - gf_error_to_string
    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:1703,1
    - Dst: isspace
      Src: /src/gpac/src/filter_core/filter_session.c:1713,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_session.c:1718,1
    - Dst: gf_fs_parse_filter_graph
      Src: /src/gpac/src/filter_core/filter_session.c:1725,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:1726,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: 1728
      start: 1691
    functionDepth: 9
    functionLinenumber: 1691
    functionLinenumberEnd: 1728
    functionName: gf_fs_parse_filter_graph_str
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_realloc
    - gf_free
    - isspace
    - gf_fs_parse_filter_graph
    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:1733,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1736,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: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1747,1
    - Dst: gf_filter_pid_get_name
      Src: /src/gpac/src/filter_core/filter_session.c:1747,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1750,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1752,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1754,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1754,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1758,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1760,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_session.c:1760,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1762,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1763,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1767,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 3
    argNames:
    - taskn
    - task
    - for_filter
    argTypes:
    - u32*
    - GF_FSTask*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1730
    functionDepth: 2
    functionLinenumber: 1730
    functionLinenumberEnd: 1768
    functionName: print_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - fprintf
    - gf_filter_event_name
    - gf_sys_clock_high_res
    - 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:1772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1773
      start: 1770
    functionDepth: 3
    functionLinenumber: 1770
    functionLinenumberEnd: 1773
    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:1777,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1778
      start: 1775
    functionDepth: 3
    functionLinenumber: 1775
    functionLinenumberEnd: 1778
    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: 1794
      start: 1787
    functionDepth: 0
    functionLinenumber: 1787
    functionLinenumberEnd: 1794
    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:1801,1
    - Dst: gf_net_get_utc
      Src: /src/gpac/src/filter_core/filter_session.c:1801,1
    - Dst: gf_fs_print_connections
      Src: /src/gpac/src/filter_core/filter_session.c:1804,1
    - Dst: gf_fs_print_stats
      Src: /src/gpac/src/filter_core/filter_session.c:1807,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:1811,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1813,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:1815,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1820,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:1821,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1822,1
    - Dst: gf_list_get
      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:1829,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:1833,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1834,1
    - Dst: fprintf
      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_count
      Src: /src/gpac/src/filter_core/filter_session.c:1838,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1839,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:1840,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1842,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:1846,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:1847,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1850,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter_session.c:1851,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:1855,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1859,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1861,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1863,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1865,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1867,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:1869,1
    - Dst: fprintf
      Src: /src/gpac/src/filter_core/filter_session.c:1871,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 76
    argCount: 2
    argNames:
    - fsess
    - dbg_flags
    argTypes:
    - GF_FilterSession*
    - GF_SessionDebugFlag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1872
      start: 1796
    functionDepth: 2
    functionLinenumber: 1796
    functionLinenumberEnd: 1872
    functionName: gf_fs_print_debug_info
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - fprintf
    - gf_list_count
    - gf_fs_print_stats
    - gf_fq_count
    - gf_mx_v
    - gf_fq_enum
    - gf_net_get_utc
    - gf_mx_p
    - gf_list_get
    - memset
    - gf_fs_print_connections
    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:1890,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:1891,1
    - Dst: gf_th_async_call
      Src: /src/gpac/src/filter_core/filter_session.c:1892,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: 1896
      start: 1885
    functionDepth: 2
    functionLinenumber: 1885
    functionLinenumberEnd: 1896
    functionName: em_check_yield_th_proc
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_sys_clock_high_res
    - gf_th_async_call
    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: 1903
      start: 1902
    functionDepth: 0
    functionLinenumber: 1902
    functionLinenumberEnd: 1903
    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:1910,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:1911,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1916,1
    - Dst: gf_th_log_name
      Src: /src/gpac/src/filter_core/filter_session.c:1919,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1939,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1943,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:1945,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:1950,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:1954,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:1960,1
    - Dst: gf_fs_print_debug_info
      Src: /src/gpac/src/filter_core/filter_session.c:1973,1
    - Dst: emscripten_main_thread_process_queued_calls
      Src: /src/gpac/src/filter_core/filter_session.c:1978,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:1982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:1985,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:1987,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:1990,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:1993,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:1999,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2002,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2005,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2007,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2020,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2023,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2024,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2028,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2029,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2032,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2034,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2035,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2041,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2044,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2045,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2047,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2069,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2082,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2085,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2089,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2094,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2098,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2099,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2103,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2103,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2104,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2105,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2105,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2111,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2111,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2112,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2113,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2113,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2114,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2119,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2120,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2124,1
    - Dst: em_check_yield_th_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2127,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2133,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2139,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2140,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2142,1
    - Dst: gf_log_push_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2146,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2158,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2160,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2161,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2163,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2173,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2189,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2191,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2193,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2194,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2195,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2198,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2210,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2223,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2226,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2229,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2237,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2238,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2239,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2240,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_session.c:2244,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2247,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2248,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2251,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2253,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2255,1
    - Dst: em_check_yield_th_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2258,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_session.c:2270,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2279,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2285,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2296,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2306,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2309,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2318,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2321,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2323,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2324,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2331,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2335,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2335,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2337,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2342,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2343,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2344,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2345,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2349,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2350,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2356,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2359,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2360,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2367,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2377,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2378,1
    - Dst: em_check_yield_th_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2383,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2392,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2399,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2401,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2406,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2408,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2408,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2410,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2411,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2412,1
    - Dst: GF_FSTask*::run_task
      Src: /src/gpac/src/filter_core/filter_session.c:2420,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2424,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2425,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2451,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2452,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2481,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_session.c:2483,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2491,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2509,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2516,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2518,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2522,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_session.c:2527,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2530,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2534,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter_session.c:2536,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2541,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2542,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2543,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2548,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2550,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2564,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2567,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2570,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2571,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2572,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2573,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2578,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2583,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2583,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2584,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_session.c:2588,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2590,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2594,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2595,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2596,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2598,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2601,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2602,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2604,1
    - Dst: check_task_list
      Src: /src/gpac/src/filter_core/filter_session.c:2605,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2607,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2610,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_session.c:2612,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:2613,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:2619,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2620,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2627,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2629,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2633,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2637,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2642,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2643,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2648,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2651,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2657,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2660,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2662,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter_session.c:2665,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2671,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2672,1
    - Dst: gf_sema_notify
      Src: /src/gpac/src/filter_core/filter_session.c:2674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2675,1
    CyclomaticComplexity: 193
    EdgeCount: 193
    ICount: 479
    argCount: 1
    argNames:
    - sess_thread
    argTypes:
    - GF_SessionThread*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2679
      start: 1905
    functionDepth: 5
    functionLinenumber: 1905
    functionLinenumberEnd: 2679
    functionName: gf_fs_thread_proc
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - emscripten_main_thread_process_queued_calls
    - gf_fq_head
    - safe_int_dec
    - gf_assert
    - gf_logs_thread_tag
    - gf_fq_res_add
    - gf_th_log_name
    - gf_fq_pop
    - gf_fq_get
    - gf_list_find
    - GF_FSTask*::run_task
    - gf_fq_add
    - gf_list_get
    - em_check_yield_th_proc
    - gf_mx_v
    - safe_int_inc
    - gf_fs_sema_io
    - gf_sys_clock_high_res
    - gf_th_id
    - gf_mx_p
    - gf_log_pop_extra
    - gf_log_push_extra
    - gf_fs_print_debug_info
    - gf_logs_thread_tag_del
    - gf_sleep
    - check_task_list
    - gf_free
    - GF_LOG
    - gf_sema_notify
    - gf_fq_count
    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:2692,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2709,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2711,1
    - Dst: gf_th_run
      Src: /src/gpac/src/filter_core/filter_session.c:2712,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2715,1
    - Dst: gf_fs_thread_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2728,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2740,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 36
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2682
    functionDepth: 6
    functionLinenumber: 2682
    functionLinenumberEnd: 2745
    functionName: gf_fs_run
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 14
    functionsReached:
    - gf_list_count
    - gf_sleep
    - safe_int_inc
    - gf_list_get
    - gf_th_run
    - gf_fs_thread_proc
    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:2750,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:2752,1
    - Dst: GF_FSTask*::pid::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:2753,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:2754,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2756,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:2758,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2760
      start: 2747
    functionDepth: 3
    functionLinenumber: 2747
    functionLinenumberEnd: 2760
    functionName: filter_abort_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - safe_int_dec
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - 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:2767,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_session.c:2769,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2779,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2780,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2783,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2791,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2792,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2800,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2802,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2803,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2804,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:2806,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2811,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2812,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2813,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2815,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2827,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_session.c:2828,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_session.c:2832,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:2834,1
    - Dst: GF_FilterPid*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:2835,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:2836,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2838,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2841,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2844,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2845,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2857,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:2858,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2862,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2864,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_session.c:2865,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:2866,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2868,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2870,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_session.c:2874,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:2875,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_session.c:2877,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2882,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2883,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:2885,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 77
    argCount: 2
    argNames:
    - fsess
    - flush_type
    argTypes:
    - GF_FilterSession*
    - GF_FSFlushType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2887
      start: 2762
    functionDepth: 6
    functionLinenumber: 2762
    functionLinenumberEnd: 2887
    functionName: gf_fs_abort
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 10
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - safe_int_inc
    - GF_LOG
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_fs_post_task
    - gf_th_id
    - gf_mx_v
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - gf_mx_p
    - gf_list_get
    - gf_filter_pid_send_event
    - GF_FilterPid*::filter::freg::process_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:2894,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2898,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:2910,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2915,1
    - Dst: gf_fs_thread_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2920,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2921,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:2924,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_session.c:2930,1
    - Dst: gf_fs_sema_io
      Src: /src/gpac/src/filter_core/filter_session.c:2936,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_session.c:2938,1
    - Dst: gf_fs_thread_proc
      Src: /src/gpac/src/filter_core/filter_session.c:2941,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2946
      start: 2889
    functionDepth: 6
    functionLinenumber: 2889
    functionLinenumberEnd: 2946
    functionName: gf_fs_stop
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_sleep
    - safe_int_inc
    - GF_LOG
    - gf_fs_sema_io
    - gf_sys_clock_high_res
    - gf_fq_count
    - gf_fs_thread_proc
    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:2951,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2953,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:2954,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2955,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:2962,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2967,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2970,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2973,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:2974,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: 2975
      start: 2948
    functionDepth: 1
    functionLinenumber: 2948
    functionLinenumberEnd: 2975
    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:2988,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:2989,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:2991,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:2993,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3000,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3003,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3006,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3007,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3011,1
    - Dst: print_filter_name
      Src: /src/gpac/src/filter_core/filter_session.c:3012,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3013,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:3018,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:3024,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:3030,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3032,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3035,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3039,1
    - Dst: gf_filter_pid_get_property
      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_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3045,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3047,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3052,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3053,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3055,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3057,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3061,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3065,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3066,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3068,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3071,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3077,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3085,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3087,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3093,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 82
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3095
      start: 2977
    functionDepth: 2
    functionLinenumber: 2977
    functionLinenumberEnd: 3095
    functionName: gf_fs_print_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 11
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - print_filter_name
    - gf_mx_p
    - 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:3103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3107,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3110,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3116,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3117,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3119,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3122,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3132,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3140,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3142,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3144,1
    - Dst: print_filter_name
      Src: /src/gpac/src/filter_core/filter_session.c:3147,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3149,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3149,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3152,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3158,1
    - Dst: print_filter_name
      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_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3163,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3165,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:3170,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3173,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3175,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3176,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3177,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3181,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_session.c:3182,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:3183,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3188,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3190,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3192,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3194,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3196,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3203,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3204,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3211,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3227,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3239,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_session.c:3241,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3251,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session.c:3254,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3255,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3263,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3264,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3270,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3272,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:3277,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:3279,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: 3280
      start: 3097
    functionDepth: 3
    functionLinenumber: 3097
    functionLinenumberEnd: 3280
    functionName: gf_fs_print_filter_outputs
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_get_property
    - sprintf
    - gf_list_count
    - gf_list_pop_front
    - GF_LOG
    - gf_list_get
    - gf_list_del
    - print_filter_name
    - gf_list_del_item
    - gf_list_find
    - gf_list_new
    - strlen
    - gf_list_add
    - gf_fs_print_filter_outputs
    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:3286,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3288,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_session.c:3297,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_session.c:3299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3305,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3307,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: 3309
      start: 3282
    functionDepth: 4
    functionLinenumber: 3282
    functionLinenumberEnd: 3309
    functionName: gf_fs_print_not_connected_filters
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_filter_has_out_caps
    - gf_list_get
    - gf_fs_print_filter_outputs
    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:3314,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3315
      start: 3311
    functionDepth: 5
    functionLinenumber: 3311
    functionLinenumberEnd: 3315
    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:3320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fsess
    - ignore_sinks
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3321
      start: 3317
    functionDepth: 5
    functionLinenumber: 3317
    functionLinenumberEnd: 3321
    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:3330,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3331,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:3333,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3335,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3343,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3345,1
    - Dst: gf_fs_print_not_connected_filters
      Src: /src/gpac/src/filter_core/filter_session.c:3348,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3351,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3354,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3358,1
    - Dst: gf_fs_print_filter_outputs
      Src: /src/gpac/src/filter_core/filter_session.c:3360,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3363,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:3364,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 34
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3365
      start: 3323
    functionDepth: 5
    functionLinenumber: 3323
    functionLinenumberEnd: 3365
    functionName: gf_fs_print_connections
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 11
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_del
    - gf_mx_v
    - gf_list_new
    - gf_list_find
    - gf_mx_p
    - gf_list_get
    - gf_fs_print_not_connected_filters
    - gf_fs_print_filter_outputs
    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:3378,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3385,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3387,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3392,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3402,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 27
    argCount: 2
    argNames:
    - fsess
    - ignore_args
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3405
      start: 3367
    functionDepth: 2
    functionLinenumber: 3367
    functionLinenumberEnd: 3405
    functionName: gf_fs_print_unused_args
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 6
    functionsReached:
    - strchr
    - GF_LOG
    - strlen
    - strstr
    - gf_fs_enum_unmapped_options
    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:3420,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3424,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3426,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3427,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3430,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3433,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3445,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3450,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3454,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter_session.c:3455,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3467,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3469,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:3474,1
    - Dst: gf_filter_update_arg_apply
      Src: /src/gpac/src/filter_core/filter_session.c:3475,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:3476,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:3483,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_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3489,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3490,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_session.c:3493,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: 3494
      start: 3407
    functionDepth: 6
    functionLinenumber: 3407
    functionLinenumberEnd: 3494
    functionName: gf_fs_send_update
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - strchr
    - gf_list_get
    - filter_parse_logs
    - gf_fs_post_task
    - GF_SAFEALLOC
    - gf_filter_update_arg_apply
    - gf_mx_p
    - strcmp
    - gf_mx_v
    - gf_strdup
    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:3501,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3502,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:3507,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3508,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3509,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:3514,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3515,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3522,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3523,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3530,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3534,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_session.c:3537,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3539,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3545,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3550,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3561,1
    - Dst: GF_FilterRegister*::probe_url
      Src: /src/gpac/src/filter_core/filter_session.c:3568,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3597,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 89
    argCount: 5
    argNames:
    - fsess
    - freg
    - url
    - _mime
    - fargs
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    - char*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3606
      start: 3496
    functionDepth: 4
    functionLinenumber: 3496
    functionLinenumberEnd: 3606
    functionName: probe_meta_check_builtin_format
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_list_count
    - gf_file_ext_start
    - sprintf
    - strchr
    - strlwr
    - gf_list_get
    - strcmp
    - strlen
    - GF_FilterRegister*::probe_url
    - memcpy
    - strstr
    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:3613,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3616,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:3620,1
    - Dst: GF_FilterPidInst*::filter::freg::use_alias
      Src: /src/gpac/src/filter_core/filter_session.c:3621,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3622,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3625,1
    - Dst: locate_alias_sink
      Src: /src/gpac/src/filter_core/filter_session.c:3628,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 3
    argNames:
    - filter
    - url
    - mime_type
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3633
      start: 3608
    functionDepth: 3
    functionLinenumber: 3608
    functionLinenumberEnd: 3633
    functionName: locate_alias_sink
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - locate_alias_sink
    - GF_FilterPidInst*::filter::freg::use_alias
    linkageType: ''
    returnType: GF_Filter
    signature: GF_Filter *locate_alias_sink(GF_Filter *filter, const char *url, const
      char *mime_type)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3638,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3641,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3642,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 24
    argCount: 2
    argNames:
    - fsess
    - fname
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3660
      start: 3635
    functionDepth: 1
    functionLinenumber: 3635
    functionLinenumberEnd: 3660
    functionName: fs_check_filter_is_source
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    linkageType: ''
    returnType: Bool
    signature: Bool fs_check_filter_is_source(GF_FilterSession *fsess, const char
      *fname)
  - BBCount: 89
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:3677,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3689,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3690,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3692,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:3695,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3696,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3700,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3701,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3702,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3705,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3707,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter_session.c:3712,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3721,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3721,1
    - Dst: gf_sys_solve_path
      Src: /src/gpac/src/filter_core/filter_session.c:3722,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3726,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3726,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3728,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3728,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filter_core/filter_session.c:3729,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:3732,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3735,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3736,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter_session.c:3737,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_session.c:3742,1
    - Dst: gf_url_is_local
      Src: /src/gpac/src/filter_core/filter_session.c:3744,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3747,1
    - Dst: gf_url_to_fs_path
      Src: /src/gpac/src/filter_core/filter_session.c:3750,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_session.c:3751,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter_session.c:3754,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3756,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:3757,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3766,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3766,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3766,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3766,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_session.c:3766,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_session.c:3768,1
    - Dst: gf_fs_solve_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:3771,1
    - Dst: gf_fs_solve_js_script
      Src: /src/gpac/src/filter_core/filter_session.c:3774,1
    - Dst: fs_check_filter_is_source
      Src: /src/gpac/src/filter_core/filter_session.c:3777,1
    - Dst: fs_check_filter_is_source
      Src: /src/gpac/src/filter_core/filter_session.c:3780,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3786,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3789,1
    - Dst: gf_fs_load_filter_internal
      Src: /src/gpac/src/filter_core/filter_session.c:3790,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3796,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3797,1
    - Dst: gf_fs_path_escape_colon_ex
      Src: /src/gpac/src/filter_core/filter_session.c:3813,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3815,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3819,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:3822,1
    - Dst: locate_alias_sink
      Src: /src/gpac/src/filter_core/filter_session.c:3829,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3837,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3842,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:3844,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3844,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3846,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3855,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:3856,1
    - Dst: GF_FilterRegister*::probe_url
      Src: /src/gpac/src/filter_core/filter_session.c:3863,1
    - Dst: GF_FilterRegister*::probe_url
      Src: /src/gpac/src/filter_core/filter_session.c:3865,1
    - Dst: probe_meta_check_builtin_format
      Src: /src/gpac/src/filter_core/filter_session.c:3870,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3888,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:3895,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3900,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:3907,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_session.c:3908,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:3910,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3914,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3915,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3917,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3919,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3923,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3927,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3932,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:3934,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:3945,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:3947,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:3949,1
    - Dst: GF_Filter*::freg::use_alias
      Src: /src/gpac/src/filter_core/filter_session.c:3950,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3951,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:3955,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:3960,1
    - Dst: jsfs_on_filter_destroyed
      Src: /src/gpac/src/filter_core/filter_session.c:3964,1
    - Dst: GF_Filter*::session::on_filter_create_destroy
      Src: /src/gpac/src/filter_core/filter_session.c:3967,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter_session.c:3970,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3975,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3978,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:3982,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:3983,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:3990,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_session.c:3994,1
    CyclomaticComplexity: 134
    EdgeCount: 134
    ICount: 285
    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: 3997
      start: 3662
    functionDepth: 9
    functionLinenumber: 3662
    functionLinenumberEnd: 3997
    functionName: gf_fs_load_source_dest_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - strlwr
    - gf_filter_new
    - gf_url_concatenate
    - gf_fs_load_filter_internal
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - GF_Filter*::session::on_filter_create_destroy
    - jsfs_on_filter_destroyed
    - snprintf
    - gf_sys_solve_path
    - gf_list_add
    - strstr
    - strchr
    - gf_malloc
    - gf_url_to_fs_path
    - gf_filter_post_process_task
    - gf_list_find
    - fs_check_filter_is_source
    - gf_list_get
    - gf_dynstrcat
    - gf_filter_new_finalize
    - GF_Filter*::freg::use_alias
    - gf_strcpy
    - gf_fs_solve_js_script
    - gf_file_ext_start
    - gf_file_exists
    - gf_fs_path_escape_colon
    - gf_url_is_local
    - probe_meta_check_builtin_format
    - memmove
    - strcmp
    - strlen
    - GF_FilterRegister*::probe_url
    - sprintf
    - gf_free
    - GF_LOG
    - locate_alias_sink
    - gf_strdup
    - memset
    - strncmp
    - 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:4002,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: 4003
      start: 3999
    functionDepth: 10
    functionLinenumber: 3999
    functionLinenumberEnd: 4003
    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:4008,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: 4009
      start: 4005
    functionDepth: 10
    functionLinenumber: 4005
    functionLinenumberEnd: 4009
    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:4017,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4018,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:4020,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4022,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4023,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 2
    argNames:
    - filter
    - el
    argTypes:
    - GF_Filter*
    - GF_FSEventListener*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4025
      start: 4012
    functionDepth: 1
    functionLinenumber: 4012
    functionLinenumberEnd: 4025
    functionName: gf_filter_add_event_listener
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_sleep
    - gf_list_new
    - gf_mx_p
    - 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:4032,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4033,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_session.c:4034,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4035,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:4036,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4039,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 2
    argNames:
    - filter
    - el
    argTypes:
    - GF_Filter*
    - GF_FSEventListener*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4041
      start: 4027
    functionDepth: 3
    functionLinenumber: 4027
    functionLinenumberEnd: 4041
    functionName: gf_filter_remove_event_listener
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - gf_sleep
    - gf_list_del
    - gf_list_del_item
    - gf_mx_p
    - gf_mx_v
    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:4052,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4054,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_session.c:4055,1
    - Dst: GF_FSEventListener*::on_event
      Src: /src/gpac/src/filter_core/filter_session.c:4056,1
    - Dst: gf_fs_ui_event
      Src: /src/gpac/src/filter_core/filter_session.c:4066,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: 4070
      start: 4043
    functionDepth: 2
    functionLinenumber: 4043
    functionLinenumberEnd: 4070
    functionName: gf_fs_forward_gf_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_enum
    - gf_fs_ui_event
    - gf_mx_p
    - gf_mx_v
    - 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:4076,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: 4078
      start: 4072
    functionDepth: 3
    functionLinenumber: 4072
    functionLinenumberEnd: 4078
    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:4083,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - evt
    argTypes:
    - GF_Filter*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4084
      start: 4080
    functionDepth: 4
    functionLinenumber: 4080
    functionLinenumberEnd: 4084
    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:4099,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_session.c:4105,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_session.c:4106,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter_session.c:4110,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4113,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_session.c:4117,1
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter_session.c:4118,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4120,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:4121,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:4122,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:4123,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4126,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4131,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter_session.c:4135,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_session.c:4136,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_session.c:4142,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_session.c:4148,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4157,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4158,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_session.c:4160,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_session.c:4162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4168,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4171,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4173,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4179,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4181,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4184,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4186,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4188,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4194,1
    - Dst: reset_bundle_cache
      Src: /src/gpac/src/filter_core/filter_session.c:4198,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:4199,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:4200,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: 4201
      start: 4087
    functionDepth: 8
    functionLinenumber: 4087
    functionLinenumberEnd: 4201
    functionName: gf_fs_print_jsf_connection
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - print_fn
    - GF_LOG
    - gf_list_get
    - gf_list_del
    - gf_filter_has_out_caps
    - gf_filter_has_in_caps
    - GF_SAFEALLOC
    - strrchr
    - reset_bundle_cache
    - gf_fs_load_filter
    - gf_list_new
    - memset
    - gf_list_add
    - gf_filter_caps_to_caps_match
    - gf_filter_caps_bundle_count
    - bundle_cache_free
    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:4209,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filter_core/filter_session.c:4211,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:4213,1
    - Dst: gf_fs_print_jsf_connection
      Src: /src/gpac/src/filter_core/filter_session.c:4214,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filter_core/filter_session.c:4215,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_session.c:4218,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4219,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4222,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4223,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4230,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:4236,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4240,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4242,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4245,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4247,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: 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: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_session.c:4272,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4278,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4280,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4282,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4284,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4285,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4291,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:4293,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4296,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4298,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_session.c:4300,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4305,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4313,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4319,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_session.c:4324,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4327,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4329,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_session.c:4335,1
    - Dst: gf_fs_print_jsf_connection
      Src: /src/gpac/src/filter_core/filter_session.c:4337,1
    - Dst: print_fn
      Src: /src/gpac/src/filter_core/filter_session.c:4340,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4342,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_session.c:4345,1
    - Dst: gf_log_set_tool_level
      Src: /src/gpac/src/filter_core/filter_session.c:4346,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 111
    argCount: 2
    argNames:
    - session
    - filter_name
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4347
      start: 4203
    functionDepth: 9
    functionLinenumber: 4203
    functionLinenumberEnd: 4347
    functionName: gf_fs_print_all_connections
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_log_set_tool_level
    - gf_list_count
    - print_fn
    - GF_LOG
    - gf_list_get
    - gf_list_del
    - gf_list_find
    - gf_log_get_tool_level
    - gf_list_reset
    - strcmp
    - gf_list_new
    - gf_fs_load_filter
    - gf_list_add
    - strstr
    - gf_fs_print_jsf_connection
    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:4355,1
    - Dst: gf_fs_print_all_connections
      Src: /src/gpac/src/filter_core/filter_session.c:4357,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4359
      start: 4350
    functionDepth: 10
    functionLinenumber: 4350
    functionLinenumberEnd: 4359
    functionName: gf_filter_print_all_connections
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_fs_print_all_connections
    - gf_fs_print_jsf_connection
    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:4368,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - caps
    argTypes:
    - GF_Filter*
    - GF_FilterSessionCaps*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4371
      start: 4361
    functionDepth: 0
    functionLinenumber: 4361
    functionLinenumberEnd: 4371
    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: 4380
      start: 4373
    functionDepth: 0
    functionLinenumber: 4373
    functionLinenumberEnd: 4380
    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: 4393
      start: 4382
    functionDepth: 0
    functionLinenumber: 4382
    functionLinenumberEnd: 4393
    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:4407,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: 4408
      start: 4396
    functionDepth: 3
    functionLinenumber: 4396
    functionLinenumberEnd: 4408
    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:4418,1
    - Dst: gf_dm_new
      Src: /src/gpac/src/filter_core/filter_session.c:4423,1
    - Dst: gf_dm_set_auth_callback
      Src: /src/gpac/src/filter_core/filter_session.c:4426,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4433
      start: 4411
    functionDepth: 2
    functionLinenumber: 4411
    functionLinenumberEnd: 4433
    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:4439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4440
      start: 4435
    functionDepth: 3
    functionLinenumber: 4435
    functionLinenumberEnd: 4440
    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:4449,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4453
      start: 4442
    functionDepth: 0
    functionLinenumber: 4442
    functionLinenumberEnd: 4453
    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:4459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4460
      start: 4455
    functionDepth: 1
    functionLinenumber: 4455
    functionLinenumberEnd: 4460
    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:4464,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_session.c:4465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4466
      start: 4462
    functionDepth: 1
    functionLinenumber: 4462
    functionLinenumberEnd: 4466
    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: 4476
      start: 4468
    functionDepth: 0
    functionLinenumber: 4468
    functionLinenumberEnd: 4476
    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: 4486
      start: 4478
    functionDepth: 0
    functionLinenumber: 4478
    functionLinenumberEnd: 4486
    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:4504,1
    - Dst: GF_UserTask*::task_execute_filter
      Src: /src/gpac/src/filter_core/filter_session.c:4506,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:4512,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_session.c:4515,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_session.c:4518,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_session.c:4519,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4521
      start: 4497
    functionDepth: 2
    functionLinenumber: 4497
    functionLinenumberEnd: 4521
    functionName: gf_fs_user_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_sys_clock_high_res
    - gf_assert
    - GF_UserTask*::task_execute_filter
    - GF_UserTask*::task_execute
    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:4529,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:4535,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_session.c:4536,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: 4538
      start: 4524
    functionDepth: 5
    functionLinenumber: 4524
    functionLinenumberEnd: 4538
    functionName: gf_fs_post_user_task_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_fs_post_task_ex
    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:4543,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: 4544
      start: 4540
    functionDepth: 6
    functionLinenumber: 4540
    functionLinenumberEnd: 4544
    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:4549,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: 4550
      start: 4546
    functionDepth: 6
    functionLinenumber: 4546
    functionLinenumberEnd: 4550
    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:4555,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: 4556
      start: 4552
    functionDepth: 6
    functionLinenumber: 4552
    functionLinenumberEnd: 4556
    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:4563,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:4570,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:4572,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:4573,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_session.c:4576,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - filter
    - udta
    - task_name
    argTypes:
    - GF_Filter*
    - void*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4578
      start: 4558
    functionDepth: 6
    functionLinenumber: 4558
    functionLinenumberEnd: 4578
    functionName: gf_filter_post_task
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 3
    functionsReached:
    - gf_strdup
    - GF_SAFEALLOC
    - gf_fs_post_task_class
    - gf_dynstrcat
    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:4586,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_session.c:4587,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4590
      start: 4581
    functionDepth: 1
    functionLinenumber: 4581
    functionLinenumberEnd: 4590
    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: 4597
      start: 4592
    functionDepth: 0
    functionLinenumber: 4592
    functionLinenumberEnd: 4597
    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:4603,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4606,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:4611,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 13
    argCount: 2
    argNames:
    - fsess
    - mime
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4616
      start: 4598
    functionDepth: 1
    functionLinenumber: 4598
    functionLinenumberEnd: 4616
    functionName: gf_fs_is_supported_mime
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - strstr
    - gf_list_get
    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: 4623
      start: 4619
    functionDepth: 0
    functionLinenumber: 4619
    functionLinenumberEnd: 4623
    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:4629,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4630,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - session
    - do_lock
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4631
      start: 4625
    functionDepth: 0
    functionLinenumber: 4625
    functionLinenumberEnd: 4631
    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:4636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4637
      start: 4633
    functionDepth: 1
    functionLinenumber: 4633
    functionLinenumberEnd: 4637
    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:4641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - session
    - idx
    argTypes:
    - GF_FilterSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4642
      start: 4638
    functionDepth: 1
    functionLinenumber: 4638
    functionLinenumberEnd: 4642
    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:4650,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:4669,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4681,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:4696,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4701,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4704,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4733,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 86
    argCount: 2
    argNames:
    - f
    - stats
    argTypes:
    - GF_Filter*
    - GF_FilterStats*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4742
      start: 4644
    functionDepth: 1
    functionLinenumber: 4644
    functionLinenumberEnd: 4742
    functionName: gf_filter_get_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_mx_v
    - gf_mx_p
    - strcmp
    - gf_list_get
    - memset
    - strncmp
    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:4748,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:4748,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - session
    - idx
    - stats
    argTypes:
    - GF_FilterSession*
    - u32
    - GF_FilterStats*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4749
      start: 4744
    functionDepth: 2
    functionLinenumber: 4744
    functionLinenumberEnd: 4749
    functionName: gf_fs_get_filter_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 5
    functionsReached:
    - gf_list_get
    - gf_filter_get_stats
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_fs_get_filter_stats(GF_FilterSession *session, u32 idx,
      GF_FilterStats *stats)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:4754,1
    - Dst: GF_FilterSession*::ui_event_proc
      Src: /src/gpac/src/filter_core/filter_session.c:4755,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:4756,1
    - Dst: jsfs_on_event
      Src: /src/gpac/src/filter_core/filter_session.c:4760,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - session
    - uievt
    argTypes:
    - GF_FilterSession*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4764
      start: 4751
    functionDepth: 7
    functionLinenumber: 4751
    functionLinenumberEnd: 4764
    functionName: gf_fs_ui_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - GF_FilterSession*::ui_event_proc
    - jsfs_on_event
    - gf_mx_p
    - gf_mx_v
    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:4769,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter_session.c:4770,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter_session.c:4773,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - fsess
    - for_load
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4775
      start: 4766
    functionDepth: 1
    functionLinenumber: 4766
    functionLinenumberEnd: 4775
    functionName: gf_fs_check_graph_load
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_sess_reset_graph
    - gf_filter_sess_build_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:4784,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:4797,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:4798,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:4800,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_session.c:4806,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter_session.c:4808,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: 4811
      start: 4777
    functionDepth: 1
    functionLinenumber: 4777
    functionLinenumberEnd: 4811
    functionName: gf_fs_new_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 3
    functionsReached:
    - sprintf
    - strchr
    - gf_filter_new
    - GF_SAFEALLOC
    - gf_strdup
    - 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: 4822
      start: 4819
    functionDepth: 0
    functionLinenumber: 4819
    functionLinenumberEnd: 4822
    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:4832,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filter_core/filter_session.c:4833,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:4838,1
    - Dst: gf_module_load
      Src: /src/gpac/src/filter_core/filter_session.c:4843,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:4843,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4846,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:4849,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filter_core/filter_session.c:4850,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:4857,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_session.c:4858,1
    - Dst: GF_FilterSession*::gl_driver::Setup
      Src: /src/gpac/src/filter_core/filter_session.c:4860,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_session.c:4862,1
    - Dst: gf_modules_close_interface
      Src: /src/gpac/src/filter_core/filter_session.c:4863,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4869,1
    - Dst: GF_FilterSession*::gl_driver::ProcessEvent
      Src: /src/gpac/src/filter_core/filter_session.c:4877,1
    - Dst: gf_opengl_init
      Src: /src/gpac/src/filter_core/filter_session.c:4880,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 1
    argNames:
    - session
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4883
      start: 4824
    functionDepth: 6
    functionLinenumber: 4824
    functionLinenumberEnd: 4883
    functionName: gf_fs_check_gl_provider
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_FilterSession*::gl_driver::Setup
    - GF_FilterSession*::ext_gl_callback
    - GF_LOG
    - gf_opengl_init
    - GF_FilterSession*::gl_driver::ProcessEvent
    - gf_module_load
    - gf_modules_close_interface
    - memset
    - gf_opts_get_key
    - sscanf
    - gf_opts_set_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:4889,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_session.c:4893,1
    - Dst: GF_FilterSession*::gl_driver::ProcessEvent
      Src: /src/gpac/src/filter_core/filter_session.c:4895,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - session
    - do_activate
    argTypes:
    - GF_FilterSession*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4896
      start: 4885
    functionDepth: 0
    functionLinenumber: 4885
    functionLinenumberEnd: 4896
    functionName: gf_fs_set_gl
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - memset
    - GF_FilterSession*::gl_driver::ProcessEvent
    - GF_FilterSession*::ext_gl_callback
    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: 4910
      start: 4898
    functionDepth: 0
    functionLinenumber: 4898
    functionLinenumberEnd: 4910
    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: 4929
      start: 4912
    functionDepth: 0
    functionLinenumber: 4912
    functionLinenumberEnd: 4929
    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: 4935
      start: 4932
    functionDepth: 0
    functionLinenumber: 4932
    functionLinenumberEnd: 4935
    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: 4939
      start: 4936
    functionDepth: 0
    functionLinenumber: 4936
    functionLinenumberEnd: 4939
    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:4949,1
    - Dst: gf_dm_get_data_rate
      Src: /src/gpac/src/filter_core/filter_session.c:4952,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4956
      start: 4944
    functionDepth: 3
    functionLinenumber: 4944
    functionLinenumberEnd: 4956
    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:4964,1
    - Dst: gf_dm_set_data_rate
      Src: /src/gpac/src/filter_core/filter_session.c:4967,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - fs
    - rate
    argTypes:
    - GF_FilterSession*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4970
      start: 4958
    functionDepth: 3
    functionLinenumber: 4958
    functionLinenumberEnd: 4970
    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:4977,1
    - Dst: gf_dm_get_global_rate
      Src: /src/gpac/src/filter_core/filter_session.c:4980,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4984
      start: 4972
    functionDepth: 3
    functionLinenumber: 4972
    functionLinenumberEnd: 4984
    functionName: gf_fs_get_http_rate
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_dm_get_global_rate
    - gf_fs_get_download_manager
    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:4991,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - session
    - url
    - parent_url
    argTypes:
    - GF_FilterSession*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4993
      start: 4986
    functionDepth: 10
    functionLinenumber: 4986
    functionLinenumberEnd: 4993
    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:5007,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:5009,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:5010,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:5011,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5013,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:5018,1
    - Dst: gf_filter_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:5022,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5023,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session.c:5027,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:5028,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5031,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:5037,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_session.c:5038,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_session.c:5039,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_session.c:5040,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5042,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter_session.c:5046,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: 5050
      start: 4996
    functionDepth: 3
    functionLinenumber: 4996
    functionLinenumberEnd: 5050
    functionName: gf_fs_fire_event
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 2
    functionsReached:
    - gf_list_count
    - GF_Filter*::freg::process_event
    - gf_list_get
    - gf_filter_send_event
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - gf_mx_p
    - gf_mx_v
    - gf_fs_lock_filters
    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: 5060
      start: 5052
    functionDepth: 0
    functionLinenumber: 5052
    functionLinenumberEnd: 5060
    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: 5067
      start: 5062
    functionDepth: 0
    functionLinenumber: 5062
    functionLinenumberEnd: 5067
    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:5073,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: 5077
      start: 5069
    functionDepth: 1
    functionLinenumber: 5069
    functionLinenumberEnd: 5077
    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:5084,1
    - Dst: gf_url_concatenate
      Src: /src/gpac/src/filter_core/filter_session.c:5085,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_session.c:5086,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter_session.c:5088,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter_session.c:5090,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5091,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5092,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: 5096
      start: 5080
    functionDepth: 5
    functionLinenumber: 5080
    functionLinenumberEnd: 5096
    functionName: fsess_find_res
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_free
    - gf_fclose
    - gf_fopen
    - gf_url_concatenate
    - gf_strdup
    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:5110,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:5110,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_session.c:5110,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:5116,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_session.c:5116,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter_session.c:5119,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:5120,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_session.c:5120,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:5127,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_session.c:5130,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5133,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_session.c:5143,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter_session.c:5145,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_session.c:5145,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:5148,1
    - Dst: fsess_find_res
      Src: /src/gpac/src/filter_core/filter_session.c:5149,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_session.c:5154,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_session.c:5157,1
    - Dst: fsess_find_res
      Src: /src/gpac/src/filter_core/filter_session.c:5158,1
    - Dst: fsess_find_res
      Src: /src/gpac/src/filter_core/filter_session.c:5163,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5166,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_session.c:5167,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: 5169
      start: 5102
    functionDepth: 6
    functionLinenumber: 5102
    functionLinenumberEnd: 5169
    functionName: fs_check_locales
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - sprintf
    - strchr
    - strnicmp
    - strrchr
    - fsess_find_res
    - strcmp
    - strlen
    - memmove
    - gf_opts_get_key
    - strstr
    - strncmp
    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:5177,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5180,1
    - Dst: GF_URIRelocator*::relocate_uri
      Src: /src/gpac/src/filter_core/filter_session.c:5181,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: 5186
      start: 5172
    functionDepth: 1
    functionLinenumber: 5172
    functionLinenumberEnd: 5186
    functionName: gf_fs_relocate_url
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_URIRelocator*::relocate_uri
    - gf_list_get
    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:5192,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: 5193
      start: 5188
    functionDepth: 2
    functionLinenumber: 5188
    functionLinenumberEnd: 5193
    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:5201,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:5202,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5204,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5210,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:5214,1
    - Dst: gf_filter_get_arg
      Src: /src/gpac/src/filter_core/filter_session.c:5215,1
    - Dst: gf_filter_pid_init_play_event
      Src: /src/gpac/src/filter_core/filter_session.c:5217,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_session.c:5218,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5221,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 19
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5222
      start: 5195
    functionDepth: 1
    functionLinenumber: 5195
    functionLinenumberEnd: 5222
    functionName: gf_fs_send_deferred_play
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_get_arg
    - gf_filter_pid_init_play_event
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - 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:5229,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_session.c:5230,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5231,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - fs
    - filter
    argTypes:
    - GF_FilterSession*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5235
      start: 5224
    functionDepth: 2
    functionLinenumber: 5224
    functionLinenumberEnd: 5235
    functionName: gf_fs_check_filter
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_list_find
    - gf_mx_v
    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: 5241
      start: 5238
    functionDepth: 0
    functionLinenumber: 5238
    functionLinenumberEnd: 5241
    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:5245,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5248
      start: 5242
    functionDepth: 0
    functionLinenumber: 5242
    functionLinenumberEnd: 5248
    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_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:5257,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_session.c:5279,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_session.c:5280,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_session.c:5282,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:5283,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:5284,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:5285,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter_session.c:5286,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_session.c:5288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - fs
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5290
      start: 5251
    functionDepth: 1
    functionLinenumber: 5251
    functionLinenumberEnd: 5290
    functionName: gf_fs_get_defined_metrics
    functionSourceFile: /src/gpac/src/filter_core/filter_session.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_mx_v
    - gf_dynstrcat
    - gf_mx_p
    - gf_list_get
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT *gf_fs_get_defined_metrics(GF_FilterSession *fs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    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:44,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 46
    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:57,1
    - Dst: gf_url_colon_suffix
      Src: /src/gpac/src/filter_core/filter.c:60,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: strncmp
      Src: /src/gpac/src/filter_core/filter.c:67,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:68,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:70,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:71,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:73,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:82,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:84,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:85,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:99,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:101,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:106,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:106,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter.c:113,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:115,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter.c:120,1
    - Dst: gf_dir_exists
      Src: /src/gpac/src/filter_core/filter.c:122,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:126,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:133,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: 137
      start: 50
    functionDepth: 4
    functionLinenumber: 50
    functionLinenumberEnd: 137
    functionName: gf_fs_path_escape_colon_ex
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - sprintf
    - strchr
    - gf_file_exists
    - gf_dir_exists
    - strstr
    - gf_url_colon_suffix
    - strrchr
    - snprintf
    - strcmp
    - sscanf
    - strncmp
    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:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - sess
    - path
    argTypes:
    - GF_FilterSession*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 5
    functionLinenumber: 138
    functionLinenumberEnd: 141
    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:145,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - f
    - path
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 5
    functionLinenumber: 142
    functionLinenumberEnd: 146
    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:159,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:163,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:164,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:169,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter.c:171,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:177,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:178,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: 182
      start: 148
    functionDepth: 6
    functionLinenumber: 148
    functionLinenumberEnd: 182
    functionName: gf_filter_get_args_stripped
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_fs_path_escape_colon
    - strstr
    - strncmp
    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:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 7
    functionLinenumber: 184
    functionLinenumberEnd: 187
    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: 191
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 191
    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:197,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:201,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:205,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:207,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:212,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter.c:215,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:219,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:222,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 193
    functionDepth: 6
    functionLinenumber: 193
    functionLinenumberEnd: 225
    functionName: gf_filter_get_dst_name
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - sprintf
    - gf_fs_path_escape_colon
    - gf_list_get
    - gf_strdup
    - strstr
    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:248,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:251,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: strncmp
      Src: /src/gpac/src/filter_core/filter.c:271,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
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:281,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: 293
      start: 241
    functionDepth: 1
    functionLinenumber: 241
    functionLinenumberEnd: 293
    functionName: filter_push_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - strchr
    - strncmp
    - 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:307,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter.c:312,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:314,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:328,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter.c:329,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:335,1
    - Dst: gf_mx_new
      Src: /src/gpac/src/filter_core/filter.c:336,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:338,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:342,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:343,1
    - Dst: gf_fq_new
      Src: /src/gpac/src/filter_core/filter.c:346,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_list_new
      Src: /src/gpac/src/filter_core/filter.c:350,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:351,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:356,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:357,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:358,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:375,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:380,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:385,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:398,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:398,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:398,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:400,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:401,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:416,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:435,1
    - Dst: filter_push_args
      Src: /src/gpac/src/filter_core/filter.c:442,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:445,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:446,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:449,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:450,1
    - Dst: filter_push_args
      Src: /src/gpac/src/filter_core/filter.c:454,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:455,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:456,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:461,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:464,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter.c:467,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:472,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter.c:480,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:481,1
    - Dst: gf_filter_new_finalize
      Src: /src/gpac/src/filter_core/filter.c:485,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:491,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:491,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filter_core/filter.c:492,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:498,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:503,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:512,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:516,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:517,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:522,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:528,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:529,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: 534
      start: 295
    functionDepth: 7
    functionLinenumber: 295
    functionLinenumberEnd: 534
    functionName: gf_filter_new
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - GF_SAFEALLOC
    - snprintf
    - gf_list_add
    - strstr
    - gf_mx_v
    - gf_dynstrcat
    - gf_filter_new_finalize
    - gf_list_get
    - safe_int_inc
    - gf_mx_new
    - gf_mx_p
    - strcmp
    - strlen
    - gf_list_new
    - gf_fq_new
    - gf_error_to_string
    - sprintf
    - gf_free
    - filter_push_args
    - GF_LOG
    - gf_filter_setup_failure
    - gf_filter_get_args_stripped
    - gf_strdup
    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:540,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter.c:541,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter.c:542,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 536
    functionDepth: 4
    functionLinenumber: 536
    functionLinenumberEnd: 548
    functionName: gf_filter_check_pending_pids
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_post_init_task
    - gf_fq_count
    - gf_fq_pop
    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:552,1
    - Dst: gf_filter_parse_args
      Src: /src/gpac/src/filter_core/filter.c:554,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filter_core/filter.c:563,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:575,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:577,1
    - Dst: GF_Filter*::freg::initialize
      Src: /src/gpac/src/filter_core/filter.c:580,1
    - Dst: GF_Filter*::freg::initialize
      Src: /src/gpac/src/filter_core/filter.c:583,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:585,1
    - Dst: gf_filter_parse_args
      Src: /src/gpac/src/filter_core/filter.c:591,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:592,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:595,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:596,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:597,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:604,1
    - Dst: jsfs_on_filter_created
      Src: /src/gpac/src/filter_core/filter.c:607,1
    - Dst: GF_Filter*::session::on_filter_create_destroy
      Src: /src/gpac/src/filter_core/filter.c:610,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: 612
      start: 550
    functionDepth: 9
    functionLinenumber: 550
    functionLinenumberEnd: 612
    functionName: gf_filter_new_finalize
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - strchr
    - GF_Filter*::freg::update_arg
    - gf_filter_parse_args
    - jsfs_on_filter_created
    - GF_Filter*::freg::initialize
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - GF_Filter*::session::on_filter_create_destroy
    - gf_filter_force_main_thread
    - gf_filter_check_pending_pids
    - gf_filter_set_name
    - 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:618,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter.c:619,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter.c:620,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:622,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 614
    functionDepth: 2
    functionLinenumber: 614
    functionLinenumberEnd: 625
    functionName: gf_filter_reset_pending_packets
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_del
    - gf_list_count
    - gf_filter_packet_destroy
    - gf_list_pop_front
    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:634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - _task
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 631
    functionDepth: 0
    functionLinenumber: 631
    functionLinenumberEnd: 635
    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:639,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:640,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:641,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:642,1
    - Dst: jsfs_on_filter_destroyed
      Src: /src/gpac/src/filter_core/filter.c:646,1
    - Dst: GF_Filter*::session::on_filter_create_destroy
      Src: /src/gpac/src/filter_core/filter.c:650,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:653,1
    - Dst: gf_fs_check_gl_provider
      Src: /src/gpac/src/filter_core/filter.c:654,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_LOG
      Src: /src/gpac/src/filter_core/filter.c:662,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:663,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter.c:669,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:672,1
    - Dst: gf_filter_pid_del
      Src: /src/gpac/src/filter_core/filter.c:673,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:673,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:675,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:678,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter.c:679,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:679,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:681,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_list_del
      Src: /src/gpac/src/filter_core/filter.c:687,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:688,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter.c:690,1
    - Dst: gf_fq_del
      Src: /src/gpac/src/filter_core/filter.c:691,1
    - Dst: reset_filter_args
      Src: /src/gpac/src/filter_core/filter.c:693,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:694,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_fq_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_mx_del
      Src: /src/gpac/src/filter_core/filter.c:705,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_free
      Src: /src/gpac/src/filter_core/filter.c:716,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:717,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:721,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:722,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:724,1
    - Dst: gf_mx_p
      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_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:727,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:728,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:741,1
    - Dst: gf_filter_cleanup_status_metrics
      Src: /src/gpac/src/filter_core/filter.c:743,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:744,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:750,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:754,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:756,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:758,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_free
      Src: /src/gpac/src/filter_core/filter.c:766,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter.c:770,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:771,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:772,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:773,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:779,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:784,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:785,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:795,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:796,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:798,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter.c:800,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:801,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:802,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:804,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 137
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 637
    functionDepth: 9
    functionLinenumber: 637
    functionLinenumberEnd: 805
    functionName: gf_filter_del
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - safe_int_dec
    - gf_assert
    - GF_Filter*::session::on_filter_create_destroy
    - jsfs_on_filter_destroyed
    - gf_filter_reset_pending_packets
    - gf_filter_sess_reset_graph
    - gf_filter_pid_del
    - gf_filter_pid_inst_del
    - gf_mx_v
    - gf_list_get
    - gf_mx_del
    - gf_props_reset_single
    - gf_mx_p
    - gf_log_pop_extra
    - gf_list_pop_back
    - gf_fs_check_gl_provider
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_list_del_item
    - reset_filter_args
    - gf_filter_cleanup_status_metrics
    - gf_fq_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:810,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 807
    functionDepth: 1
    functionLinenumber: 807
    functionLinenumberEnd: 813
    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:818,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 815
    functionDepth: 1
    functionLinenumber: 815
    functionLinenumberEnd: 822
    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:827,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:829,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:830,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - name
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 824
    functionDepth: 1
    functionLinenumber: 824
    functionLinenumberEnd: 831
    functionName: gf_filter_set_name
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 17
    functionsReached:
    - gf_strdup
    - gf_free
    - gf_assert
    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:835,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:837,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - ID
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 833
    functionDepth: 1
    functionLinenumber: 833
    functionLinenumberEnd: 839
    functionName: gf_filter_set_id
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_strdup
    - gf_free
    - gf_assert
    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:844,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 846
      start: 841
    functionDepth: 1
    functionLinenumber: 841
    functionLinenumberEnd: 846
    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:851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 848
    functionDepth: 1
    functionLinenumber: 848
    functionLinenumberEnd: 853
    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:860,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:861,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 865
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 865
    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:869,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:871,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:874,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:877,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:879,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:881,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:883,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:887,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:890,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - filter
    - sources_ID
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 867
    functionDepth: 1
    functionLinenumber: 867
    functionLinenumberEnd: 891
    functionName: gf_filter_set_sources
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - gf_assert
    - gf_mx_v
    - gf_dynstrcat
    - gf_mx_p
    - strlen
    - gf_strdup
    - strstr
    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:987,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:992,1
    - Dst: gf_fileio_is_main_thread
      Src: /src/gpac/src/filter_core/filter.c:993,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filter_core/filter.c:994,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1003,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1021,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1023,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1036,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter.c:1042,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1049,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter.c:1049,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1053,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: 1055
      start: 893
    functionDepth: 4
    functionLinenumber: 893
    functionLinenumberEnd: 1055
    functionName: gf_filter_set_arg
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_fileio_is_main_thread
    - gf_props_type_is_enum
    - gf_props_get_type_name
    - gf_filter_force_main_thread
    - strncmp
    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:1073,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1074,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1079,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1080,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter.c:1089,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter.c:1092,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter.c:1094,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filter_core/filter.c:1096,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1098,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1099,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1100,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1101,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1102,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1108,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter.c:1114,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filter_core/filter.c:1115,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1115,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1116,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:1119,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:1122,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1124,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:1130,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter.c:1145,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:1151,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:1152,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:1156,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1157,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1158,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:1159,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1160,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1161,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 80
    argCount: 3
    argNames:
    - filter
    - pid
    - value
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1058
    functionDepth: 1
    functionLinenumber: 1058
    functionLinenumberEnd: 1168
    functionName: filter_solve_prop_template
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - GF_SAFEALLOC
    - gf_props_get_id
    - gf_list_add
    - strstr
    - strchr
    - gf_crc_32
    - gf_list_get
    - gf_dynstrcat
    - gf_strcpy
    - gf_filter_pid_get_property_str
    - gf_props_dump
    - strlen
    - sscanf
    - sprintf
    - gf_free
    - gf_strdup
    - strncmp
    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:1175,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1177,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1178,1
    - Dst: filter_solve_prop_template
      Src: /src/gpac/src/filter_core/filter.c:1179,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1180,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1181,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1185,1
    - Dst: gf_opts_default_shared_directory
      Src: /src/gpac/src/filter_core/filter.c:1186,1
    - Dst: gf_strcat
      Src: /src/gpac/src/filter_core/filter.c:1187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1190,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1193,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1193,1
    - Dst: gf_sys_solve_path
      Src: /src/gpac/src/filter_core/filter.c:1194,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1197,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1200,1
    - Dst: gf_fs_solve_js_script
      Src: /src/gpac/src/filter_core/filter.c:1203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1206,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1209,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1210,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:1213,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1214,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1218,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: 1220
      start: 1170
    functionDepth: 6
    functionLinenumber: 1170
    functionLinenumberEnd: 1220
    functionName: gf_filter_parse_prop_solve_env_var
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_fs_solve_js_script
    - gf_props_parse_value
    - gf_free
    - filter_solve_prop_template
    - gf_strcat
    - GF_LOG
    - strnicmp
    - gf_opts_default_shared_directory
    - gf_sys_solve_path
    - gf_strdup
    - gf_opts_get_key
    - strstr
    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:1233,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1237,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1243,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:1251,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:1256,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:1260,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:1261,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:1262,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:1266,1
    - Dst: jsfs_on_filter_arg_update
      Src: /src/gpac/src/filter_core/filter.c:1269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1272,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:1272,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1275,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: 1280
      start: 1222
    functionDepth: 9
    functionLinenumber: 1222
    functionLinenumberEnd: 1280
    functionName: gf_filter_update_arg_apply
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - GF_Filter*::freg::update_arg
    - gf_filter_set_arg
    - GF_LOG
    - gf_error_to_string
    - gf_filter_parse_prop_solve_env_var
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - jsfs_on_filter_arg_update
    - strcmp
    - 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:1285,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1290,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:1293,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:1295,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1300,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:1301,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:1301,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:1304,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1305,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter.c:1307,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter.c:1309,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:1310,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:1313,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1315,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:1316,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:1316,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:1319,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:1320,1
    - Dst: gf_fs_send_update
      Src: /src/gpac/src/filter_core/filter.c:1322,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:1325,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:1328,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1330,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1333,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1334,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1335,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1281
    functionDepth: 10
    functionLinenumber: 1281
    functionLinenumberEnd: 1336
    functionName: gf_filter_update_arg_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_fs_send_update
    - gf_list_del
    - gf_mx_v
    - gf_list_new
    - gf_list_find
    - gf_filter_update_arg_apply
    - gf_mx_p
    - gf_list_get
    - gf_list_add
    - gf_list_reset
    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:1343,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1344,1
    - Dst: gf_log_pop_extra
      Src: /src/gpac/src/filter_core/filter.c:1345,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1346,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter.c:1348,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:1352,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1361,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1362,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1370,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:1380,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1381,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1381,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1387,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1390,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1399,1
    - Dst: gf_log_parse_tool
      Src: /src/gpac/src/filter_core/filter.c:1402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1404,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:1414,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:1415,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:1429,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 84
    argCount: 2
    argNames:
    - filter
    - _logs
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1430
      start: 1340
    functionDepth: 2
    functionLinenumber: 1340
    functionLinenumberEnd: 1430
    functionName: filter_parse_logs
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - strchr
    - gf_free
    - GF_LOG
    - gf_log_parse_tool
    - GF_SAFEALLOC
    - gf_log_pop_extra
    - strcmp
    - gf_strdup
    - gf_realloc
    - strstr
    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:1441,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1442,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter.c:1443,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter.c:1449,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1456,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1457,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1458,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1466,1
    - Dst: gf_sys_mark_arg_used
      Src: /src/gpac/src/filter_core/filter.c:1471,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1476,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1479,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1483,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1484,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1489,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1490,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1495,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1496,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1502,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:1504,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:1505,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:1506,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1509,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1515,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter.c:1519,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter.c:1526,1
    - Dst: MIN
      Src: /src/gpac/src/filter_core/filter.c:1527,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter.c:1528,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1539,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1545,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1547,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1550,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1552,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1555,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:1557,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1561,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter.c:1562,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1567,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1568,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: 1575
      start: 1433
    functionDepth: 5
    functionLinenumber: 1433
    functionLinenumberEnd: 1575
    functionName: gf_filter_load_arg_config
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_strcpy
    - gf_sys_get_arg
    - strchr
    - gf_props_parse_value
    - gf_fs_push_arg
    - gf_sys_mark_arg_used
    - GF_LOG
    - filter_parse_logs
    - stricmp
    - MIN
    - gf_sys_get_argc
    - strcmp
    - strlen
    - strncmp
    - gf_opts_get_key
    - gf_sys_has_filter_global_args
    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:1582,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:1584,1
    - Dst: gf_opts_get_key_name
      Src: /src/gpac/src/filter_core/filter.c:1589,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1595,1
    - Dst: gf_opts_get_key
      Src: /src/gpac/src/filter_core/filter.c:1602,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:1605,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:1609,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:1610,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:1611,1
    - Dst: gf_sys_has_filter_global_meta_args
      Src: /src/gpac/src/filter_core/filter.c:1613,1
    - Dst: gf_sys_has_filter_global_args
      Src: /src/gpac/src/filter_core/filter.c:1615,1
    - Dst: gf_sys_get_argc
      Src: /src/gpac/src/filter_core/filter.c:1620,1
    - Dst: gf_sys_get_arg
      Src: /src/gpac/src/filter_core/filter.c:1627,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1635,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1636,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1637,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1645,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:1651,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter.c:1656,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1660,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter.c:1662,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:1667,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:1668,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:1669,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1671,1
    - Dst: gf_errno_str
      Src: /src/gpac/src/filter_core/filter.c:1671,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 74
    argCount: 2
    argNames:
    - sec_name
    - filter
    argTypes:
    - char*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1677
      start: 1577
    functionDepth: 5
    functionLinenumber: 1577
    functionLinenumberEnd: 1677
    functionName: gf_filter_load_meta_args_config
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_opts_get_key_count
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - GF_Filter*::freg::update_arg
    - strchr
    - gf_opts_get_key_name
    - gf_sys_get_argc
    - memcpy
    - gf_sys_has_filter_global_args
    - gf_sys_get_arg
    - gf_sys_has_filter_global_meta_args
    - strcmp
    - strlen
    - FSESS_CHECK_THREAD
    - gf_errno_str
    - GF_LOG
    - memset
    - gf_opts_get_key
    - strncmp
    linkageType: ''
    returnType: void
    signature: void gf_filter_load_meta_args_config(const char *sec_name, GF_Filter
      *filter)
  - BBCount: 151
    BranchProfiles: []
    Callsites:
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter.c:1688,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1722,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1732,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1747,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1753,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:1755,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1765,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1765,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1766,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1768,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1772,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: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1786,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1787,1
    - Dst: strchr
      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: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1797,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1798,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1800,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1801,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1803,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter.c:1816,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:1818,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:1819,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1831,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1832,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1839,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1845,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1860,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1862,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1870,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1921,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1922,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1930,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:1936,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1940,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1940,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1940,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1959,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1959,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: strchr
      Src: /src/gpac/src/filter_core/filter.c:1964,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1970,1
    - Dst: strcmp
      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: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1976,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:1977,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:1978,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:1981,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:1984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:1990,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:2000,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:2005,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter.c:2007,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2010,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2022,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2022,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2042,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2045,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2052,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:2052,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:2055,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2064,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2078,1
    - Dst: gf_opts_get_key_restricted
      Src: /src/gpac/src/filter_core/filter.c:2081,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2084,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:2087,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:2094,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:2096,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2097,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:2098,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2099,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:2102,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:2109,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2113,1
    - Dst: gf_filter_set_id
      Src: /src/gpac/src/filter_core/filter.c:2115,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2120,1
    - Dst: gf_filter_set_sources
      Src: /src/gpac/src/filter_core/filter.c:2122,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2127,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2129,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2129,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2129,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2139,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter.c:2141,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2146,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter.c:2148,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2154,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2160,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter.c:2162,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2167,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter.c:2169,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2173,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2176,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2181,1
    - Dst: filter_parse_logs
      Src: /src/gpac/src/filter_core/filter.c:2186,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:2200,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2205,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:2214,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:2219,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter.c:2223,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2224,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2229,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2235,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2237,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2238,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2244,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2245,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2246,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2251,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2257,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2260,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2260,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2260,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2269,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2270,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2271,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2276,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:2277,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:2278,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter.c:2279,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter.c:2285,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter.c:2289,1
    - Dst: gf_feof
      Src: /src/gpac/src/filter_core/filter.c:2291,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filter_core/filter.c:2295,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:2297,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filter_core/filter.c:2299,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2300,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2305,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:2313,1
    - Dst: filter_parse_dyn_args
      Src: /src/gpac/src/filter_core/filter.c:2318,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter.c:2321,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2326,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter.c:2332,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:2333,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2334,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:2335,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2336,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2337,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter.c:2352,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2367,1
    CyclomaticComplexity: 299
    EdgeCount: 299
    ICount: 533
    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: 2368
      start: 1679
    functionDepth: 7
    functionLinenumber: 1679
    functionLinenumberEnd: 2368
    functionName: filter_parse_dyn_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_props_parse_value
    - gf_filter_set_id
    - gf_filter_parse_prop_solve_env_var
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - gf_filter_set_sources
    - snprintf
    - strstr
    - gf_feof
    - strchr
    - GF_Filter*::freg::update_arg
    - gf_malloc
    - gf_opts_get_key_restricted
    - gf_fopen
    - filter_parse_logs
    - filter_parse_dyn_args
    - gf_fgets
    - gf_realloc
    - memcpy
    - gf_filter_set_arg
    - gf_props_reset_single
    - atoi
    - gf_file_exists
    - strcmp
    - strlen
    - sscanf
    - gf_filter_set_name
    - FSESS_CHECK_THREAD
    - gf_free
    - gf_fclose
    - gf_fs_push_arg
    - GF_LOG
    - stricmp
    - gf_strdup
    - strncmp
    - gf_utf8_is_legal
    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:2385,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter.c:2388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2390,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:2393,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:2397,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:2398,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:2399,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter.c:2401,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:2420,1
    - Dst: gf_filter_load_arg_config
      Src: /src/gpac/src/filter_core/filter.c:2429,1
    - Dst: gf_filter_parse_prop_solve_env_var
      Src: /src/gpac/src/filter_core/filter.c:2434,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:2438,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:2440,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2441,1
    - Dst: GF_Filter*::freg::update_arg
      Src: /src/gpac/src/filter_core/filter.c:2442,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2443,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter.c:2444,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2447,1
    - Dst: gf_filter_load_meta_args_config
      Src: /src/gpac/src/filter_core/filter.c:2452,1
    - Dst: filter_parse_dyn_args
      Src: /src/gpac/src/filter_core/filter.c:2455,1
    - Dst: gf_filter_force_main_thread
      Src: /src/gpac/src/filter_core/filter.c:2466,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: 2469
      start: 2371
    functionDepth: 8
    functionLinenumber: 2371
    functionLinenumberEnd: 2469
    functionName: gf_filter_parse_args
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - sprintf
    - GF_Filter*::freg::update_arg
    - gf_malloc
    - gf_filter_set_arg
    - gf_props_reset_single
    - GF_LOG
    - gf_filter_load_arg_config
    - gf_filter_parse_prop_solve_env_var
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - filter_parse_dyn_args
    - snprintf
    - strcmp
    - gf_filter_load_meta_args_config
    - memset
    - gf_filter_force_main_thread
    - 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:2485,1
    - Dst: gf_filter_set_arg
      Src: /src/gpac/src/filter_core/filter.c:2487,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2490
      start: 2471
    functionDepth: 5
    functionLinenumber: 2471
    functionLinenumberEnd: 2490
    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:2500,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2502,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2505,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2508,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2509,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2511,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:2512,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2513,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter.c:2514,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2517,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2520,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2524
      start: 2492
    functionDepth: 6
    functionLinenumber: 2492
    functionLinenumberEnd: 2524
    functionName: gf_filter_check_output_reconfig
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - safe_int_dec
    - gf_fs_post_task
    - gf_list_del_item
    - gf_assert
    - gf_mx_v
    - gf_props_del
    - gf_mx_p
    - gf_list_get
    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:2537,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2542,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:2548,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 21
    argCount: 2
    argNames:
    - src_pidinst
    - needs_flush
    argTypes:
    - GF_FilterPidInst*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2552
      start: 2526
    functionDepth: 1
    functionLinenumber: 2526
    functionLinenumberEnd: 2552
    functionName: filter_relink_get_upper_pid
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_fq_count
    - gf_list_get
    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:2559,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2565,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2566,1
    - Dst: gf_filter_relink_dst
      Src: /src/gpac/src/filter_core/filter.c:2571,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2572
      start: 2554
    functionDepth: 2
    functionLinenumber: 2554
    functionLinenumberEnd: 2572
    functionName: gf_filter_relink_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - filter_relink_get_upper_pid
    - gf_filter_relink_dst
    - gf_assert
    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:2589,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter.c:2590,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2596,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2598,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2603,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2610,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2612,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2616,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2618,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter.c:2621,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2623,1
    - Dst: gf_filter_pid_resolve_link_length
      Src: /src/gpac/src/filter_core/filter.c:2626,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2631,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2642,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2647,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2652,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2653,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2654,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2655,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:2658,1
    - Dst: gf_filter_renegotiate_output_dst
      Src: /src/gpac/src/filter_core/filter.c:2662,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 59
    argCount: 2
    argNames:
    - from_pidinst
    - reason
    argTypes:
    - GF_FilterPidInst*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2663
      start: 2574
    functionDepth: 6
    functionLinenumber: 2574
    functionLinenumberEnd: 2663
    functionName: gf_filter_relink_dst
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_resolve_link_length
    - filter_relink_get_upper_pid
    - gf_fs_post_disconnect_task
    - safe_int_inc
    - gf_filter_renegotiate_output_dst
    - gf_list_get
    - GF_FEVT_INIT
    - gf_fs_post_task
    - gf_fs_check_graph_load
    - gf_filter_pid_send_event_internal
    - gf_mx_p
    - gf_fatal_assert
    - gf_filter_pid_caps_match
    - gf_mx_v
    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:2673,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2680,1
    - Dst: gf_fs_load_encoder
      Src: /src/gpac/src/filter_core/filter.c:2688,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:2692,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:2693,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:2694,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:2700,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter.c:2701,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2705,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2706,1
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:2710,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2714,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2723,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:2725,1
    - Dst: gf_filter_pid_resolve_link_for_caps
      Src: /src/gpac/src/filter_core/filter.c:2726,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:2728,1
    - Dst: gf_filter_pid_resolve_link_for_caps
      Src: /src/gpac/src/filter_core/filter.c:2732,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2742,1
    - Dst: gf_filter_pid_resolve_link
      Src: /src/gpac/src/filter_core/filter.c:2743,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter.c:2746,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2749,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:2753,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2758,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2759,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:2760,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter.c:2761,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:2764,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2771,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2776,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2777,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2778,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2791,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2792,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2793,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter.c:2798,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2800,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2805,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2806,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2807,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter.c:2808,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:2810,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: 2812
      start: 2667
    functionDepth: 6
    functionLinenumber: 2667
    functionLinenumberEnd: 2812
    functionName: gf_filter_renegotiate_output_dst
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - GF_FEVT_INIT
    - gf_assert
    - gf_filter_pid_caps_match
    - gf_filter_pid_post_connect_task
    - gf_list_add
    - gf_filter_pid_resolve_link_for_caps
    - gf_list_find
    - gf_fs_check_graph_load
    - gf_fatal_assert
    - gf_list_get
    - gf_mx_v
    - gf_fs_post_disconnect_task
    - safe_int_inc
    - gf_fs_post_task
    - gf_mx_p
    - gf_free
    - gf_filter_pid_resolve_link
    - GF_LOG
    - gf_filter_remove_internal
    - gf_list_del
    - gf_list_del_item
    - gf_filter_pid_send_event_internal
    - gf_strdup
    - gf_fs_load_encoder
    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:2820,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2821,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2825,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2828,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2829,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2835,1
    - Dst: GF_Filter*::freg::reconfigure_output
      Src: /src/gpac/src/filter_core/filter.c:2836,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2837,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2844,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:2844,1
    - Dst: gf_filter_pid_retry_caps_negotiate
      Src: /src/gpac/src/filter_core/filter.c:2845,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2846,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2849,1
    - Dst: gf_filter_check_output_reconfig
      Src: /src/gpac/src/filter_core/filter.c:2851,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:2855,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2858,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2859,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter.c:2860,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2866,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2868
      start: 2814
    functionDepth: 7
    functionLinenumber: 2814
    functionLinenumberEnd: 2868
    functionName: gf_filter_reconf_output
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - GF_Filter*::freg::reconfigure_output
    - gf_filter_check_output_reconfig
    - GF_LOG
    - gf_list_del
    - safe_int_dec
    - gf_assert
    - gf_mx_v
    - gf_logs_thread_untag
    - gf_props_del
    - gf_logs_thread_tag
    - gf_filter_pid_retry_caps_negotiate
    - gf_mx_p
    - gf_list_get
    - gf_error_to_string
    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:2873,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2874,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2879,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:2890,1
    - Dst: gf_filter_pid_caps_negociate_match
      Src: /src/gpac/src/filter_core/filter.c:2893,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:2900,1
    - Dst: GF_Filter*::freg::reconfigure_output
      Src: /src/gpac/src/filter_core/filter.c:2901,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:2902,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2905,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2906,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2908,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:2908,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2910,1
    - Dst: gf_filter_pid_retry_caps_negotiate
      Src: /src/gpac/src/filter_core/filter.c:2912,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2916,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:2916,1
    - Dst: gf_filter_check_output_reconfig
      Src: /src/gpac/src/filter_core/filter.c:2919,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:2922,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:2930,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:2931,1
    - Dst: gf_filter_renegotiate_output_dst
      Src: /src/gpac/src/filter_core/filter.c:2937,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2944,1
    - Dst: gf_filter_renegotiate_output_dst
      Src: /src/gpac/src/filter_core/filter.c:2946,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2949,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2950,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter.c:2951,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:2955,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:2960,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 61
    argCount: 2
    argNames:
    - filter
    - force_afchain_insert
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2961
      start: 2870
    functionDepth: 7
    functionLinenumber: 2870
    functionLinenumberEnd: 2961
    functionName: gf_filter_renegotiate_output
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_Filter*::freg::reconfigure_output
    - gf_filter_check_output_reconfig
    - gf_filter_renegotiate_output_dst
    - GF_LOG
    - safe_int_dec
    - gf_list_del
    - gf_assert
    - gf_list_find
    - gf_logs_thread_untag
    - gf_props_del
    - gf_logs_thread_tag
    - gf_filter_pid_retry_caps_negotiate
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - gf_filter_pid_caps_negociate_match
    - gf_error_to_string
    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:2967,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2968
      start: 2963
    functionDepth: 8
    functionLinenumber: 2963
    functionLinenumberEnd: 2968
    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: 2975
      start: 2970
    functionDepth: 0
    functionLinenumber: 2970
    functionLinenumberEnd: 2975
    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:2979,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:2985,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2987,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:2988,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:2989,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:2996,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:3002,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3015,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3017,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3019,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 2
    argNames:
    - filter
    - task
    argTypes:
    - GF_Filter*
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3020
      start: 2977
    functionDepth: 1
    functionLinenumber: 2977
    functionLinenumberEnd: 3020
    functionName: gf_filter_check_pending_tasks
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - safe_int_dec
    - gf_assert
    - gf_mx_p
    - gf_mx_v
    - session_should_abort
    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:3033,1
    - Dst: GF_Filter*::freg::process
      Src: /src/gpac/src/filter_core/filter.c:3034,1
    - Dst: gf_mem_get_stats
      Src: /src/gpac/src/filter_core/filter.c:3037,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3067
      start: 3023
    functionDepth: 1
    functionLinenumber: 3023
    functionLinenumberEnd: 3067
    functionName: gf_filter_process_check_alloc
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_mem_get_stats
    - GF_Filter*::freg::process
    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:3083,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3089,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3091,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:3091,1
    - Dst: gf_filter_connections_pending
      Src: /src/gpac/src/filter_core/filter.c:3095,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3103,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:3103,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3105,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:3105,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3120,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3122,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter.c:3123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3126,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:3127,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3129,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: 3133
      start: 3070
    functionDepth: 2
    functionLinenumber: 3070
    functionLinenumberEnd: 3133
    functionName: check_filter_error
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - gf_filter_connections_pending
    - GF_LOG
    - gf_filter_pid_set_eos
    - gf_sys_clock_high_res
    - gf_mx_v
    - gf_list_find
    - gf_mx_p
    - gf_list_get
    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:3141,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3142,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3149,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3150,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3152,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3157,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3162,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3171,1
    - Dst: check_filter_error
      Src: /src/gpac/src/filter_core/filter.c:3172,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3177,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3187,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3192,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3193,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3196,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3199,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3202,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3205,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3207,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3216,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3223,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter.c:3224,1
    - Dst: gf_filter_pck_send_internal
      Src: /src/gpac/src/filter_core/filter.c:3225,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3228,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filter_core/filter.c:3229,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3231,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:3235,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3238,1
    - Dst: gf_filter_renegotiate_output
      Src: /src/gpac/src/filter_core/filter.c:3243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3246,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3250,1
    - Dst: gf_filter_process_check_alloc
      Src: /src/gpac/src/filter_core/filter.c:3254,1
    - Dst: GF_Filter*::freg::process
      Src: /src/gpac/src/filter_core/filter.c:3257,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:3259,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3261,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:3264,1
    - Dst: session_should_abort
      Src: /src/gpac/src/filter_core/filter.c:3268,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3277,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3282,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3287,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3289,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3296,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3298,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3300,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:3302,1
    - Dst: gf_filter_relink_dst
      Src: /src/gpac/src/filter_core/filter.c:3304,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3307,1
    - Dst: check_filter_error
      Src: /src/gpac/src/filter_core/filter.c:3310,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3321,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3328,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:3335,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3341,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter.c:3342,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3349,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3352,1
    - Dst: gf_filter_check_pending_tasks
      Src: /src/gpac/src/filter_core/filter.c:3353,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3356,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 153
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3359
      start: 3135
    functionDepth: 8
    functionLinenumber: 3135
    functionLinenumberEnd: 3359
    functionName: gf_filter_process_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - check_filter_error
    - gf_assert
    - gf_filter_pck_send_internal
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - gf_filter_pid_get_packet
    - gf_list_add
    - gf_filter_renegotiate_output
    - GF_Filter*::freg::process
    - gf_list_pop_front
    - gf_mx_v
    - gf_list_get
    - gf_list_insert
    - session_should_abort
    - gf_filter_check_pending_tasks
    - gf_filter_process_check_alloc
    - gf_sys_clock_high_res
    - gf_filter_relink_dst
    - gf_mx_p
    - gf_filter_check_pending_pids
    - FSESS_CHECK_THREAD
    - GF_LOG
    - gf_list_del
    - gf_list_del_item
    - 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:3373,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3376,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter.c:3377,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter.c:3378,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:3380,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3387,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3391,1
    - Dst: gf_filter_process_check_alloc
      Src: /src/gpac/src/filter_core/filter.c:3395,1
    - Dst: GF_Filter*::freg::process
      Src: /src/gpac/src/filter_core/filter.c:3398,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter.c:3400,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:3405,1
    - Dst: session_should_abort
      Src: /src/gpac/src/filter_core/filter.c:3409,1
    - Dst: check_filter_error
      Src: /src/gpac/src/filter_core/filter.c:3416,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 38
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3417
      start: 3361
    functionDepth: 5
    functionLinenumber: 3361
    functionLinenumberEnd: 3417
    functionName: gf_filter_process_inline
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_process_check_alloc
    - gf_list_pop_front
    - GF_LOG
    - gf_list_del
    - check_filter_error
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - GF_Filter*::freg::process
    - gf_filter_check_pending_pids
    - session_should_abort
    - gf_filter_pck_send
    - FSESS_CHECK_THREAD
    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:3422,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: 3423
      start: 3419
    functionDepth: 7
    functionLinenumber: 3419
    functionLinenumberEnd: 3423
    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:3431,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:3436,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:3438,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:3443,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:3444,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:3445,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:3448,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter.c:3449,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:3456,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter.c:3459,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:3460,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter.c:3462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3467,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - source_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3470
      start: 3425
    functionDepth: 8
    functionLinenumber: 3425
    functionLinenumberEnd: 3470
    functionName: gf_filter_clone
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - GF_LOG
    - gf_list_get
    - gf_filter_new
    - gf_filter_get_args_stripped
    - gf_dynstrcat
    - strlen
    - gf_strdup
    - memmove
    - strstr
    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: 3476
      start: 3472
    functionDepth: 0
    functionLinenumber: 3472
    functionLinenumberEnd: 3476
    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:3481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3478
    functionDepth: 1
    functionLinenumber: 3478
    functionLinenumberEnd: 3482
    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: 3488
      start: 3484
    functionDepth: 0
    functionLinenumber: 3484
    functionLinenumberEnd: 3488
    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:3493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3494
      start: 3490
    functionDepth: 1
    functionLinenumber: 3490
    functionLinenumberEnd: 3494
    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:3506,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3512,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3513,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:3516,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter.c:3517,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:3518,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3519,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter.c:3521,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3523,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3524,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:3529,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3533,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3535,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - use_direct_dispatch
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3536
      start: 3496
    functionDepth: 5
    functionLinenumber: 3496
    functionLinenumberEnd: 3536
    functionName: gf_filter_post_process_task_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - gf_sys_clock_high_res
    - gf_assert
    - gf_fq_count
    - gf_mx_p
    - gf_mx_v
    - gf_fs_post_task_ex
    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:3541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3542
      start: 3538
    functionDepth: 6
    functionLinenumber: 3538
    functionLinenumberEnd: 3542
    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:3557,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter.c:3564,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter.c:3576,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3580,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 31
    argCount: 2
    argNames:
    - filter
    - us_until_next
    argTypes:
    - GF_Filter*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3581
      start: 3543
    functionDepth: 7
    functionLinenumber: 3543
    functionLinenumberEnd: 3581
    functionName: gf_filter_ask_rt_reschedule
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 35
    functionsReached:
    - GF_LOG
    - gf_filter_post_process_task
    - gf_sys_clock_high_res
    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:3594,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: 3596
      start: 3583
    functionDepth: 1
    functionLinenumber: 3583
    functionLinenumberEnd: 3596
    functionName: gf_filter_set_setup_failure_callback
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 10
    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:3613,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3619,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3621,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:3622,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter.c:3623,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3625,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3627,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3629,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter.c:3633,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3635,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3637,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3639,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:3640,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter.c:3641,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3644,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:3646,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3648,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter.c:3651,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter.c:3654,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter.c:3661,1
    - Dst: gf_filter_pid_del
      Src: /src/gpac/src/filter_core/filter.c:3662,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3664,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter.c:3666,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter.c:3668,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3671
      start: 3606
    functionDepth: 10
    functionLinenumber: 3606
    functionLinenumberEnd: 3671
    functionName: gf_filter_setup_failure_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_logs_thread_tag
    - gf_fq_pop
    - gf_filter_reset_pending_packets
    - GF_Filter*::freg::finalize
    - gf_filter_pid_del
    - gf_list_get
    - gf_mx_v
    - gf_filter_instance_detach_pid
    - gf_filter_pid_inst_check_delete
    - gf_mx_p
    - gf_filter_del
    - gf_list_pop_back
    - FSESS_CHECK_THREAD
    - gf_logs_thread_tag_del
    - gf_free
    - GF_LOG
    - gf_list_del_item
    - gf_list_reset
    - 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:3677,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter.c:3683,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:3685,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3687
      start: 3673
    functionDepth: 6
    functionLinenumber: 3673
    functionLinenumberEnd: 3687
    functionName: gf_filter_setup_failure_notify_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_free
    - struct _gf_filter_setup_failure*::filter::on_setup_error
    - gf_fs_post_task_class
    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:3695,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter.c:3704,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter.c:3707,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: 3709
      start: 3689
    functionDepth: 6
    functionLinenumber: 3689
    functionLinenumberEnd: 3709
    functionName: gf_filter_notification_failure
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached:
    - gf_malloc
    - gf_fs_post_task_class
    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:3725,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter.c:3732,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3734,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3737,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3740,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter.c:3742,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3744,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter.c:3749,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3751,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3761,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter.c:3761,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filter_core/filter.c:3764,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filter_core/filter.c:3768,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 2
    argNames:
    - filter
    - reason
    argTypes:
    - GF_Filter*
    - GF_Err
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3770
      start: 3711
    functionDepth: 7
    functionLinenumber: 3711
    functionLinenumberEnd: 3770
    functionName: gf_filter_setup_failure
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 38
    functionsReached:
    - gf_list_count
    - gf_fs_post_pid_instance_delete_task
    - GF_LOG
    - gf_error_to_string
    - gf_list_del_item
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - gf_filter_instance_detach_pid
    - gf_filter_notification_failure
    - gf_filter_reset_pending_packets
    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:3777,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - udta
    - item
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3778
      start: 3774
    functionDepth: 1
    functionLinenumber: 3774
    functionLinenumberEnd: 3778
    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:3785,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3793,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter.c:3799,1
    - Dst: gf_fq_enum
      Src: /src/gpac/src/filter_core/filter.c:3800,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3805,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:3806,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter.c:3809,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:3812,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:3814,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:3815,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter.c:3816,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3819,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:3821,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3823,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3826,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3828,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3830,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:3831,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter.c:3832,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3834,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter.c:3836,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3839
      start: 3781
    functionDepth: 10
    functionLinenumber: 3781
    functionLinenumberEnd: 3839
    functionName: gf_filter_remove_task
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_logs_thread_tag_del
    - gf_list_count
    - GF_Filter*::freg::finalize
    - GF_LOG
    - safe_int_dec
    - gf_fq_count
    - gf_assert
    - gf_list_del_item
    - gf_fq_enum
    - gf_log_tool_level_on
    - gf_logs_thread_tag
    - gf_mx_p
    - gf_filter_del
    - gf_mx_v
    - gf_filter_instance_detach_pid
    - gf_list_pop_back
    - gf_fq_pop
    - 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:3845,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3846,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3847,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:3849,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter.c:3851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3852
      start: 3841
    functionDepth: 5
    functionLinenumber: 3841
    functionLinenumberEnd: 3852
    functionName: gf_filter_post_remove
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_fs_post_task_ex
    - safe_int_inc
    - gf_assert
    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:3864,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3866,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3870,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3879,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3886,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3888,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter.c:3893,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:3896,1
    - Dst: gf_filter_pid_del
      Src: /src/gpac/src/filter_core/filter.c:3897,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3901,1
    - Dst: gf_filter_tag_remove
      Src: /src/gpac/src/filter_core/filter.c:3902,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3905,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:3906,1
    - Dst: gf_mx_try_lock
      Src: /src/gpac/src/filter_core/filter.c:3907,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3911,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: 3912
      start: 3854
    functionDepth: 1
    functionLinenumber: 3854
    functionLinenumberEnd: 3912
    functionName: gf_filter_tag_remove
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_fs_post_disconnect_task
    - gf_list_get
    - gf_filter_pid_del
    - gf_filter_tag_remove
    - gf_mx_v
    - gf_mx_try_lock
    - 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:3931,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3934,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:3936,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:3942,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:3945,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3948,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3951,1
    - Dst: gf_filter_tag_remove
      Src: /src/gpac/src/filter_core/filter.c:3954,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:3960,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter.c:3966,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3967,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3972,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3979,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:3985,1
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:3992,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:3995,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: 3996
      start: 3914
    functionDepth: 6
    functionLinenumber: 3914
    functionLinenumberEnd: 3996
    functionName: gf_filter_remove_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_fs_post_disconnect_task
    - GF_LOG
    - gf_filter_remove_internal
    - gf_assert
    - gf_list_find
    - gf_mx_v
    - gf_mx_p
    - gf_filter_tag_remove
    - gf_list_get
    - gf_filter_post_remove
    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:4001,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - src_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4002
      start: 3998
    functionDepth: 7
    functionLinenumber: 3998
    functionLinenumberEnd: 4002
    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:4010,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4016,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4026,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:4029,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4034,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filter_core/filter.c:4035,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4040,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:4046,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter.c:4047,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:4049,1
    - Dst: gf_filter_remove_internal
      Src: /src/gpac/src/filter_core/filter.c:4053,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter.c:4060,1
    - Dst: gf_filter_remove
      Src: /src/gpac/src/filter_core/filter.c:4063,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter.c:4067,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:4069,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter.c:4071,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:4072,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter.c:4077,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4080,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4081
      start: 4004
    functionDepth: 7
    functionLinenumber: 4004
    functionLinenumberEnd: 4081
    functionName: gf_filter_remove_local
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_discard
    - gf_fs_post_disconnect_task
    - gf_filter_remove
    - gf_filter_remove_internal
    - safe_int_dec
    - gf_list_get
    - GF_FEVT_INIT
    - gf_assert
    - gf_filter_pid_remove
    - gf_mx_p
    - gf_filter_post_remove
    - gf_mx_v
    - gf_filter_pid_send_event
    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:4087,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:4089,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4090
      start: 4083
    functionDepth: 6
    functionLinenumber: 4083
    functionLinenumberEnd: 4090
    functionName: gf_filter_remove
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 7
    functionsReached:
    - gf_fs_post_task
    - safe_int_inc
    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:4101,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4105,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4107,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter.c:4109,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - filter
    - dst_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4113
      start: 4093
    functionDepth: 7
    functionLinenumber: 4093
    functionLinenumberEnd: 4113
    functionName: gf_filter_remove_dst
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_remove_internal
    - gf_fs_post_disconnect_task
    - gf_list_get
    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:4125,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4127,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter.c:4128,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter.c:4130,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4132,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4134,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter.c:4137,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:4139,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:4140,1
    - Dst: gf_logs_thread_tag_del
      Src: /src/gpac/src/filter_core/filter.c:4141,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:4145,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:4155,1
    - Dst: reset_filter_args
      Src: /src/gpac/src/filter_core/filter.c:4168,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4169,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4172,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4188,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter.c:4192,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:4197,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4202,1
    - Dst: gf_filter_swap_source_register
      Src: /src/gpac/src/filter_core/filter.c:4203,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4206,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4207,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4208,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4212,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4218,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4220,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filter_core/filter.c:4227,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4228,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 89
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4230
      start: 4116
    functionDepth: 10
    functionLinenumber: 4116
    functionLinenumberEnd: 4230
    functionName: gf_filter_swap_source_register
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_logs_thread_tag
    - gf_fs_load_source_dest_internal
    - gf_list_add
    - gf_filter_reset_pending_packets
    - GF_Filter*::freg::finalize
    - gf_list_get
    - gf_mx_v
    - gf_filter_swap_source_register
    - gf_fs_post_task
    - gf_mx_p
    - strcmp
    - gf_list_pop_back
    - FSESS_CHECK_THREAD
    - gf_logs_thread_tag_del
    - gf_free
    - GF_LOG
    - gf_filter_setup_failure
    - reset_filter_args
    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:4242,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4246,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter.c:4247,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4248,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter.c:4252,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4254,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filter_core/filter.c:4255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4257,1
    - Dst: gf_filter_pck_set_cts
      Src: /src/gpac/src/filter_core/filter.c:4260,1
    - Dst: gf_filter_pck_set_clock_type
      Src: /src/gpac/src/filter_core/filter.c:4261,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter.c:4270,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4275
      start: 4232
    functionDepth: 1
    functionLinenumber: 4232
    functionLinenumberEnd: 4275
    functionName: gf_filter_forward_clock
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_get
    - gf_timestamp_rescale
    - gf_filter_pck_set_cts
    - gf_filter_pck_set_clock_type
    - gf_mx_p
    - gf_filter_pck_new_shared
    - gf_mx_v
    - gf_list_last
    - 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:4282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - filter
    - url
    - parent_url
    argTypes:
    - GF_Filter*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4284
      start: 4277
    functionDepth: 10
    functionLinenumber: 4277
    functionLinenumberEnd: 4284
    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:4289,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4290,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4291,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4293,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4295,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:4296,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:4303,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: 4313
      start: 4286
    functionDepth: 1
    functionLinenumber: 4286
    functionLinenumberEnd: 4313
    functionName: gf_filter_url_is_filter
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - strchr
    - strcmp
    - gf_list_get
    - strlen
    - strncmp
    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:4327,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4331,1
    - Dst: gf_filter_get_args_stripped
      Src: /src/gpac/src/filter_core/filter.c:4337,1
    - Dst: gf_filter_get_dst_args
      Src: /src/gpac/src/filter_core/filter.c:4339,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4348,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4349,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4350,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4355,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4356,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4357,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4357,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4358,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4360,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4361,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4364,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4366,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4367,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4368,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:4374,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4375,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4377,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter.c:4378,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4378,1
    - Dst: gf_filter_url_is_filter
      Src: /src/gpac/src/filter_core/filter.c:4387,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter.c:4388,1
    - Dst: gf_fs_load_source_dest_internal
      Src: /src/gpac/src/filter_core/filter.c:4390,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4392,1
    - Dst: gf_filter_set_id
      Src: /src/gpac/src/filter_core/filter.c:4397,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter.c:4398,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4405,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:4407,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:4408,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4409,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: 4411
      start: 4315
    functionDepth: 10
    functionLinenumber: 4315
    functionLinenumberEnd: 4411
    functionName: gf_filter_connect_source_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_set_id
    - gf_fs_load_source_dest_internal
    - gf_list_add
    - strstr
    - strchr
    - gf_list_get
    - gf_mx_v
    - gf_dynstrcat
    - gf_mx_p
    - gf_fs_load_filter
    - gf_list_new
    - strlen
    - gf_filter_set_name
    - sprintf
    - gf_free
    - gf_filter_get_args_stripped
    - gf_filter_url_is_filter
    - gf_filter_get_dst_args
    - memmove
    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:4416,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: 4417
      start: 4413
    functionDepth: 11
    functionLinenumber: 4413
    functionLinenumberEnd: 4417
    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:4421,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: 4422
      start: 4418
    functionDepth: 11
    functionLinenumber: 4418
    functionLinenumberEnd: 4422
    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:4428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - filter
    - url
    - err
    argTypes:
    - GF_Filter*
    - char*
    - GF_Err*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4429
      start: 4424
    functionDepth: 10
    functionLinenumber: 4424
    functionLinenumberEnd: 4429
    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:4440,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4449,1
    - Dst: gf_filter_get_output_buffer_max
      Src: /src/gpac/src/filter_core/filter.c:4450,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: 4458
      start: 4432
    functionDepth: 1
    functionLinenumber: 4432
    functionLinenumberEnd: 4458
    functionName: gf_filter_get_output_buffer_max
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_filter_get_output_buffer_max
    - gf_list_get
    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: 4464
      start: 4460
    functionDepth: 0
    functionLinenumber: 4460
    functionLinenumberEnd: 4464
    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:4475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4477,1
    - Dst: gf_filter_get_num_events_queued
      Src: /src/gpac/src/filter_core/filter.c:4478,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4482
      start: 4466
    functionDepth: 1
    functionLinenumber: 4466
    functionLinenumberEnd: 4482
    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:4489,1
    - Dst: gf_filter_get_num_events_queued_internal
      Src: /src/gpac/src/filter_core/filter.c:4490,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4491,1
    - Dst: gf_filter_get_num_events_queued_internal
      Src: /src/gpac/src/filter_core/filter.c:4494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4496
      start: 4483
    functionDepth: 2
    functionLinenumber: 4483
    functionLinenumberEnd: 4496
    functionName: gf_filter_get_num_events_queued
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - gf_filter_get_num_events_queued_internal
    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: 4504
      start: 4498
    functionDepth: 0
    functionLinenumber: 4498
    functionLinenumberEnd: 4504
    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: 4512
      start: 4506
    functionDepth: 0
    functionLinenumber: 4506
    functionLinenumberEnd: 4512
    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:4521,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:4522,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:4524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - filter
    - id
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4527
      start: 4514
    functionDepth: 0
    functionLinenumber: 4514
    functionLinenumberEnd: 4527
    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: 4534
      start: 4529
    functionDepth: 0
    functionLinenumber: 4529
    functionLinenumberEnd: 4534
    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:4543,1
    - Dst: gf_filter_assign_id
      Src: /src/gpac/src/filter_core/filter.c:4546,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4552,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:4555,1
    - Dst: gf_filter_set_sources
      Src: /src/gpac/src/filter_core/filter.c:4556,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4557,1
    - Dst: gf_filter_set_sources
      Src: /src/gpac/src/filter_core/filter.c:4559,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: 4567
      start: 4536
    functionDepth: 2
    functionLinenumber: 4536
    functionLinenumberEnd: 4567
    functionName: gf_filter_set_source
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 23
    functionsReached:
    - gf_free
    - gf_filter_in_parent_chain
    - gf_filter_assign_id
    - gf_filter_set_sources
    - gf_dynstrcat
    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:4572,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:4575,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:4577,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: 4579
      start: 4569
    functionDepth: 3
    functionLinenumber: 4569
    functionLinenumberEnd: 4579
    functionName: gf_filter_set_source_restricted
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 5
    functionsReached:
    - gf_strdup
    - gf_free
    - 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:4589,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: 4593
      start: 4582
    functionDepth: 1
    functionLinenumber: 4582
    functionLinenumberEnd: 4593
    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: 4601
      start: 4595
    functionDepth: 0
    functionLinenumber: 4595
    functionLinenumberEnd: 4601
    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:4610,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter.c:4618,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter.c:4624,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4635,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4640,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4645,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: 4655
      start: 4604
    functionDepth: 1
    functionLinenumber: 4604
    functionLinenumberEnd: 4655
    functionName: gf_filter_pid_init_play_event
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 20
    functionsReached:
    - GF_LOG
    - memset
    - gf_filter_pid_get_property_first
    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: 4661
      start: 4657
    functionDepth: 0
    functionLinenumber: 4657
    functionLinenumberEnd: 4661
    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: 4667
      start: 4662
    functionDepth: 0
    functionLinenumber: 4662
    functionLinenumberEnd: 4667
    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: 4673
      start: 4668
    functionDepth: 0
    functionLinenumber: 4668
    functionLinenumberEnd: 4673
    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:4677,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4679,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4697,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4698,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4699,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter.c:4702,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4704,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4704,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: 4708
      start: 4675
    functionDepth: 1
    functionLinenumber: 4675
    functionLinenumberEnd: 4708
    functionName: filter_guess_file_ext
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strchr
    - gf_list_get
    - gf_filter_pid_set_property
    - PROP_STRING
    - strlen
    - memcpy
    - strstr
    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:4718,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4727,1
    - Dst: PROP_UINT
      Src: /src/gpac/src/filter_core/filter.c:4727,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4729,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4729,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4734,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4735,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4735,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter.c:4737,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter.c:4738,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:4742,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter.c:4744,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:4747,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filter_core/filter.c:4748,1
    - Dst: gf_file_basename
      Src: /src/gpac/src/filter_core/filter.c:4749,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter.c:4752,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter.c:4756,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter.c:4757,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4758,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4758,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4759,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:4762,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4762,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4764,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter.c:4766,1
    - Dst: gf_file_ext_start
      Src: /src/gpac/src/filter_core/filter.c:4768,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4773,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:4774,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter.c:4778,1
    - Dst: strlwr
      Src: /src/gpac/src/filter_core/filter.c:4779,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4780,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4780,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:4781,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:4794,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4795,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4798,1
    - Dst: GF_FilterRegister*::probe_data
      Src: /src/gpac/src/filter_core/filter.c:4801,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4813,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4824,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:4835,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4843,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:4855,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter.c:4856,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4858,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4858,1
    - Dst: filter_guess_file_ext
      Src: /src/gpac/src/filter_core/filter.c:4862,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 128
    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: 4867
      start: 4710
    functionDepth: 4
    functionLinenumber: 4710
    functionLinenumberEnd: 4867
    functionName: gf_filter_pid_raw_new
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 13
    functionsReached:
    - gf_list_count
    - strlwr
    - gf_filter_pid_set_eos
    - gf_file_basename
    - GF_FilterRegister*::probe_data
    - filter_guess_file_ext
    - gf_filter_pid_set_name
    - strstr
    - strchr
    - gf_fileio_translate_url
    - gf_list_get
    - gf_filter_pid_new
    - gf_mx_v
    - gf_strcpy
    - gf_file_ext_start
    - strnicmp
    - PROP_STRING
    - gf_mx_p
    - strlen
    - GF_LOG
    - PROP_UINT
    - gf_filter_pid_set_property
    - strncmp
    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:4876,1
    - Dst: gf_filter_pid_raw_new
      Src: /src/gpac/src/filter_core/filter.c:4880,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filter_core/filter.c:4882,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter.c:4885,1
    - Dst: PROP_STRING
      Src: /src/gpac/src/filter_core/filter.c:4885,1
    - Dst: gf_filter_pck_new_shared
      Src: /src/gpac/src/filter_core/filter.c:4886,1
    - Dst: gf_filter_pck_set_sap
      Src: /src/gpac/src/filter_core/filter.c:4887,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter.c:4888,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:4889,1
    - Dst: gf_blob_release
      Src: /src/gpac/src/filter_core/filter.c:4890,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: 4892
      start: 4869
    functionDepth: 5
    functionLinenumber: 4869
    functionLinenumberEnd: 4892
    functionName: gf_filter_pid_raw_gmem
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_set_eos
    - gf_filter_pid_set_property
    - gf_filter_pid_raw_new
    - PROP_STRING
    - gf_filter_pck_new_shared
    - gf_blob_get
    - gf_filter_pck_set_sap
    - gf_blob_release
    - 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:4902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:4903,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:4906,1
    - Dst: GF_FilterRegister*::probe_data
      Src: /src/gpac/src/filter_core/filter.c:4909,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:4920,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: 4923
      start: 4894
    functionDepth: 1
    functionLinenumber: 4894
    functionLinenumberEnd: 4923
    functionName: gf_filter_probe_data
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_get
    - GF_FilterRegister*::probe_data
    - gf_mx_p
    - gf_mx_v
    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:4936,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter.c:5003,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: 5014
      start: 4925
    functionDepth: 1
    functionLinenumber: 4925
    functionLinenumberEnd: 5014
    functionName: gf_filter_get_arg_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_props_type_is_enum
    - strcmp
    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:5021,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter.c:5023,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - filter
    - arg_name
    - dump
    argTypes:
    - GF_Filter*
    - char*
    - char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5024
      start: 5016
    functionDepth: 2
    functionLinenumber: 5016
    functionLinenumberEnd: 5024
    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:5031,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: 5032
      start: 5026
    functionDepth: 2
    functionLinenumber: 5026
    functionLinenumberEnd: 5032
    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:5037,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - mime
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5038
      start: 5034
    functionDepth: 2
    functionLinenumber: 5034
    functionLinenumberEnd: 5038
    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:5043,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - uievt
    argTypes:
    - GF_Filter*
    - GF_Event*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5044
      start: 5040
    functionDepth: 8
    functionLinenumber: 5040
    functionLinenumberEnd: 5044
    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:5054,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5055,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5058,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5060,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5061,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5063,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5066,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5070,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5071,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5074,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5076
      start: 5046
    functionDepth: 1
    functionLinenumber: 5046
    functionLinenumberEnd: 5076
    functionName: gf_filter_all_sinks_done
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - gf_mx_p
    - gf_mx_v
    - gf_list_get
    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:5088,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:5089,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:5092,1
    - Dst: gf_fs_check_gl_provider
      Src: /src/gpac/src/filter_core/filter.c:5093,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5095,1
    - Dst: gf_fs_abort
      Src: /src/gpac/src/filter_core/filter.c:5096,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 2
    argNames:
    - filter
    - do_register
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5100
      start: 5079
    functionDepth: 7
    functionLinenumber: 5079
    functionLinenumberEnd: 5100
    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_fs_abort
    - gf_list_del_item
    - gf_list_find
    - gf_list_add
    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:5110,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter.c:5116,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5121
      start: 5102
    functionDepth: 7
    functionLinenumber: 5102
    functionLinenumberEnd: 5121
    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:5128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - do_activate
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5132
      start: 5123
    functionDepth: 1
    functionLinenumber: 5123
    functionLinenumberEnd: 5132
    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:5140,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5141,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5142,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5145,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5150,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:5152,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5156,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter.c:5157,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5161,1
    - Dst: enum_pids
      Src: /src/gpac/src/filter_core/filter.c:5165,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter.c:5168,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5174,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5180,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5183,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: 5185
      start: 5135
    functionDepth: 1
    functionLinenumber: 5135
    functionLinenumberEnd: 5185
    functionName: gf_filter_count_source_by_protocol
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_filter_in_parent_chain
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - strlen
    - strncmp
    - enum_pids
    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: 5192
      start: 5187
    functionDepth: 0
    functionLinenumber: 5187
    functionLinenumberEnd: 5192
    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: 5199
      start: 5194
    functionDepth: 0
    functionLinenumber: 5194
    functionLinenumberEnd: 5199
    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:5207,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5218,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5222,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5230,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5236,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5238,1
    - Dst: gf_filter_has_pid_connection_pending_internal
      Src: /src/gpac/src/filter_core/filter.c:5239,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5245,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5250,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 45
    argCount: 2
    argNames:
    - filter
    - stop_at_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5252
      start: 5201
    functionDepth: 1
    functionLinenumber: 5201
    functionLinenumberEnd: 5252
    functionName: gf_filter_has_pid_connection_pending_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_filter_has_pid_connection_pending_internal
    - gf_list_get
    - gf_filter_has_out_caps
    - gf_mx_p
    - 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:5261,1
    - Dst: gf_filter_has_pid_connection_pending_internal
      Src: /src/gpac/src/filter_core/filter.c:5262,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5263,1
    - Dst: gf_filter_has_pid_connection_pending_internal
      Src: /src/gpac/src/filter_core/filter.c:5266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - stop_at_filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5268
      start: 5254
    functionDepth: 2
    functionLinenumber: 5254
    functionLinenumberEnd: 5268
    functionName: gf_filter_has_pid_connection_pending
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_filter_has_pid_connection_pending_internal
    - gf_mx_p
    - 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: 5275
      start: 5270
    functionDepth: 0
    functionLinenumber: 5270
    functionLinenumberEnd: 5275
    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: 10
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:5291,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5293,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:5296,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter.c:5302,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:5311,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter.c:5316,1
    - Dst: gf_fs_ui_event
      Src: /src/gpac/src/filter_core/filter.c:5317,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 3
    argNames:
    - filter
    - percent
    - szStatus
    argTypes:
    - GF_Filter*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5319
      start: 5277
    functionDepth: 8
    functionLinenumber: 5277
    functionLinenumberEnd: 5319
    functionName: gf_filter_update_status
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 18
    functionsReached:
    - gf_list_find
    - gf_fs_ui_event
    - strcmp
    - strlen
    - memset
    - gf_realloc
    - memcpy
    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:5325,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:5327,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5332,1
    - Dst: gf_fs_push_arg
      Src: /src/gpac/src/filter_core/filter.c:5336,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5337,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: 5338
      start: 5321
    functionDepth: 2
    functionLinenumber: 5321
    functionLinenumberEnd: 5338
    functionName: gf_filter_report_meta_option
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 4
    functionsReached:
    - gf_mx_v
    - strstr
    - gf_fs_push_arg
    - gf_mx_p
    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:5344,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5346,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5348
      start: 5340
    functionDepth: 0
    functionLinenumber: 5340
    functionLinenumberEnd: 5348
    functionName: gf_filter_set_description
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_free
    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: 5354
      start: 5349
    functionDepth: 0
    functionLinenumber: 5349
    functionLinenumberEnd: 5354
    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: 5359
      start: 5355
    functionDepth: 0
    functionLinenumber: 5355
    functionLinenumberEnd: 5359
    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: 5364
      start: 5360
    functionDepth: 0
    functionLinenumber: 5360
    functionLinenumberEnd: 5364
    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:5370,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5372,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5374
      start: 5366
    functionDepth: 0
    functionLinenumber: 5366
    functionLinenumberEnd: 5374
    functionName: gf_filter_set_version
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_free
    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: 5379
      start: 5375
    functionDepth: 0
    functionLinenumber: 5375
    functionLinenumberEnd: 5379
    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:5385,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5387,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5389
      start: 5381
    functionDepth: 0
    functionLinenumber: 5381
    functionLinenumberEnd: 5389
    functionName: gf_filter_set_author
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_free
    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: 5394
      start: 5390
    functionDepth: 0
    functionLinenumber: 5390
    functionLinenumberEnd: 5394
    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:5400,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5402,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - filter
    - new_desc
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5404
      start: 5396
    functionDepth: 0
    functionLinenumber: 5396
    functionLinenumberEnd: 5404
    functionName: gf_filter_set_help
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_strdup
    - gf_free
    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: 5409
      start: 5405
    functionDepth: 0
    functionLinenumber: 5405
    functionLinenumberEnd: 5409
    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: 5416
      start: 5411
    functionDepth: 0
    functionLinenumber: 5411
    functionLinenumberEnd: 5416
    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: 5421
      start: 5417
    functionDepth: 0
    functionLinenumber: 5417
    functionLinenumberEnd: 5421
    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: 5429
      start: 5423
    functionDepth: 0
    functionLinenumber: 5423
    functionLinenumberEnd: 5429
    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:5435,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:5438,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: 5441
      start: 5431
    functionDepth: 8
    functionLinenumber: 5431
    functionLinenumberEnd: 5441
    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: 5449
      start: 5444
    functionDepth: 0
    functionLinenumber: 5444
    functionLinenumberEnd: 5449
    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: 5456
      start: 5451
    functionDepth: 0
    functionLinenumber: 5451
    functionLinenumberEnd: 5456
    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:5466,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5467,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5470,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5474,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5475,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5477,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_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5490,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5491,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5501,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5503,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter.c:5506,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5510,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter.c:5511,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5515,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 53
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5518
      start: 5458
    functionDepth: 1
    functionLinenumber: 5458
    functionLinenumberEnd: 5518
    functionName: gf_filter_connections_pending
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 12
    functionsReached:
    - gf_list_count
    - gf_filter_in_parent_chain
    - gf_list_get
    - gf_filter_has_out_caps
    - gf_mx_p
    - 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: 5526
      start: 5520
    functionDepth: 0
    functionLinenumber: 5520
    functionLinenumberEnd: 5526
    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: 5532
      start: 5528
    functionDepth: 0
    functionLinenumber: 5528
    functionLinenumberEnd: 5532
    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: 5538
      start: 5534
    functionDepth: 0
    functionLinenumber: 5534
    functionLinenumberEnd: 5538
    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:5546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5554,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter.c:5555,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5559,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5562,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter.c:5564,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 2
    argNames:
    - filter
    - for_pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5567
      start: 5540
    functionDepth: 5
    functionLinenumber: 5540
    functionLinenumberEnd: 5567
    functionName: gf_filter_reconnect_output
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached:
    - GF_LOG
    - gf_list_get
    - gf_filter_check_pending_pids
    - gf_filter_pid_post_init_task
    - PID_IS_INPUT
    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: 5575
      start: 5569
    functionDepth: 0
    functionLinenumber: 5569
    functionLinenumberEnd: 5575
    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:5583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5588,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter.c:5596,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter.c:5598,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5604,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter.c:5608,1
    - Dst: gf_filter_sess_reset_graph
      Src: /src/gpac/src/filter_core/filter.c:5614,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter.c:5615,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: 5618
      start: 5577
    functionDepth: 1
    functionLinenumber: 5577
    functionLinenumberEnd: 5618
    functionName: gf_filter_push_caps
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_filter_sess_reset_graph
    - GF_LOG
    - gf_filter_sess_build_graph
    - gf_strdup
    - memset
    - gf_realloc
    - gf_filter_caps_bundle_count
    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:5624,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5629
      start: 5620
    functionDepth: 1
    functionLinenumber: 5620
    functionLinenumberEnd: 5629
    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:5636,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5641
      start: 5632
    functionDepth: 1
    functionLinenumber: 5632
    functionLinenumberEnd: 5641
    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:5647,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5652
      start: 5643
    functionDepth: 1
    functionLinenumber: 5643
    functionLinenumberEnd: 5652
    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:5658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5663
      start: 5654
    functionDepth: 1
    functionLinenumber: 5654
    functionLinenumberEnd: 5663
    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:5669,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: 5674
      start: 5665
    functionDepth: 1
    functionLinenumber: 5665
    functionLinenumberEnd: 5674
    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: 5689
      start: 5677
    functionDepth: 0
    functionLinenumber: 5677
    functionLinenumberEnd: 5689
    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: 5697
      start: 5691
    functionDepth: 0
    functionLinenumber: 5691
    functionLinenumberEnd: 5697
    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: 5704
      start: 5699
    functionDepth: 0
    functionLinenumber: 5699
    functionLinenumberEnd: 5704
    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: 5712
      start: 5707
    functionDepth: 0
    functionLinenumber: 5707
    functionLinenumberEnd: 5712
    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:5720,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter.c:5721,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5723,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter.c:5724,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter.c:5726,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5729,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter.c:5730,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5733,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5734
      start: 5714
    functionDepth: 1
    functionLinenumber: 5714
    functionLinenumberEnd: 5734
    functionName: gf_filter_abort
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 13
    functionsReached:
    - gf_filter_pid_set_discard
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - 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:5741,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5743,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - do_lock
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5744
      start: 5736
    functionDepth: 0
    functionLinenumber: 5736
    functionLinenumberEnd: 5744
    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:5751,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter.c:5753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - do_lock
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5754
      start: 5746
    functionDepth: 0
    functionLinenumber: 5746
    functionLinenumberEnd: 5754
    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: 5763
      start: 5756
    functionDepth: 0
    functionLinenumber: 5756
    functionLinenumberEnd: 5763
    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:
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5773,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5777
      start: 5765
    functionDepth: 1
    functionLinenumber: 5765
    functionLinenumberEnd: 5777
    functionName: gf_filter_require_source_id
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    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: 5782
      start: 5779
    functionDepth: 0
    functionLinenumber: 5779
    functionLinenumberEnd: 5782
    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: 5788
      start: 5784
    functionDepth: 0
    functionLinenumber: 5784
    functionLinenumberEnd: 5788
    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:5795,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter.c:5797,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - do_tag
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5798
      start: 5790
    functionDepth: 1
    functionLinenumber: 5790
    functionLinenumberEnd: 5798
    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:5805,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter.c:5807,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5808
      start: 5800
    functionDepth: 1
    functionLinenumber: 5800
    functionLinenumberEnd: 5808
    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:5815,1
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter.c:5817,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5818
      start: 5810
    functionDepth: 1
    functionLinenumber: 5810
    functionLinenumberEnd: 5818
    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:5829,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: 5834
      start: 5820
    functionDepth: 2
    functionLinenumber: 5820
    functionLinenumberEnd: 5834
    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: 5841
      start: 5836
    functionDepth: 0
    functionLinenumber: 5836
    functionLinenumberEnd: 5841
    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: 5847
      start: 5843
    functionDepth: 0
    functionLinenumber: 5843
    functionLinenumberEnd: 5847
    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:5853,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5854,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - instance_names_list
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5855
      start: 5849
    functionDepth: 0
    functionLinenumber: 5849
    functionLinenumberEnd: 5855
    functionName: gf_filter_meta_set_instances
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 7
    functionsReached:
    - gf_strdup
    - gf_free
    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: 5861
      start: 5857
    functionDepth: 0
    functionLinenumber: 5857
    functionLinenumberEnd: 5861
    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: 5866
      start: 5863
    functionDepth: 0
    functionLinenumber: 5863
    functionLinenumberEnd: 5866
    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: 5873
      start: 5869
    functionDepth: 0
    functionLinenumber: 5869
    functionLinenumberEnd: 5873
    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:5881,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5883,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5884,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:5884,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5885,1
    - Dst: gf_filter_pid_dump_buffers
      Src: /src/gpac/src/filter_core/filter.c:5887,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5887,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter.c:5893,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter.c:5893,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5895,1
    - Dst: gf_filter_pid_dump_buffers
      Src: /src/gpac/src/filter_core/filter.c:5896,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5898
      start: 5877
    functionDepth: 1
    functionLinenumber: 5877
    functionLinenumberEnd: 5898
    functionName: gf_filter_pid_dump_buffers
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_fq_count
    - gf_filter_pid_dump_buffers
    - gf_list_get
    - PID_IS_OUTPUT
    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:5904,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5904,1
    - Dst: gf_filter_pid_dump_buffers
      Src: /src/gpac/src/filter_core/filter.c:5907,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5907,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5909
      start: 5899
    functionDepth: 2
    functionLinenumber: 5899
    functionLinenumberEnd: 5909
    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:5925,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:5928,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter.c:5928,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5930,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5931,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter.c:5932,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5933,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5935,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5937,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter.c:5939,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter.c:5940,1
    - Dst: gf_fs_load_destination
      Src: /src/gpac/src/filter_core/filter.c:5941,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter.c:5943,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:5945,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter.c:5948,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:5951,1
    - Dst: gf_filter_pid_compute_link
      Src: /src/gpac/src/filter_core/filter.c:5955,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5958,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter.c:5962,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5963,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:5966,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:5968,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:5971,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:5974,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:5975,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:5977,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter.c:5980,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter.c:5982,1
    - Dst: GF_Filter*::freg::finalize
      Src: /src/gpac/src/filter_core/filter.c:5984,1
    - Dst: gf_filter_del
      Src: /src/gpac/src/filter_core/filter.c:5986,1
    - Dst: gf_fs_lock_filters
      Src: /src/gpac/src/filter_core/filter.c:5987,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: 5990
      start: 5912
    functionDepth: 11
    functionLinenumber: 5912
    functionLinenumberEnd: 5990
    functionName: gf_filter_probe_link_internal
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_compute_link
    - gf_list_count
    - gf_filter_get_opid
    - gf_list_add
    - strstr
    - GF_Filter*::freg::finalize
    - gf_fs_load_destination
    - gf_list_get
    - gf_dynstrcat
    - gf_fs_lock_filters
    - gf_filter_del
    - gf_fs_load_filter
    - gf_list_new
    - strlen
    - sprintf
    - gf_free
    - gf_list_del
    - gf_list_del_item
    - gf_strdup
    - strncmp
    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:5995,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: 5996
      start: 5992
    functionDepth: 12
    functionLinenumber: 5992
    functionLinenumberEnd: 5996
    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:6001,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: 6002
      start: 5998
    functionDepth: 12
    functionLinenumber: 5998
    functionLinenumberEnd: 6002
    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:6012,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:6018,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:6021,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:6032,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter.c:6038,1
    - Dst: gf_dynstrcat
      Src: /src/gpac/src/filter_core/filter.c:6045,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: 6050
      start: 6005
    functionDepth: 1
    functionLinenumber: 6005
    functionLinenumberEnd: 6050
    functionName: gf_filter_get_possible_destinations
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_dynstrcat
    - gf_filter_pid_caps_match
    - gf_list_get
    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:6058,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter.c:6060,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - filter
    - is_untag
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6061
      start: 6052
    functionDepth: 3
    functionLinenumber: 6052
    functionLinenumberEnd: 6061
    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: 6
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter.c:6067,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter.c:6070,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:6073,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:6075,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:6076,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:6077,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter.c:6080,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:6081,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter.c:6082,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter.c:6083,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - filter
    - metric
    argTypes:
    - GF_Filter*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6084
      start: 6064
    functionDepth: 1
    functionLinenumber: 6064
    functionLinenumberEnd: 6084
    functionName: gf_filter_add_status_metric
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 6
    functionsReached:
    - gf_list_count
    - strchr
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_strdup
    - gf_list_add
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_add_status_metric(GF_Filter *filter, const char
      *metric)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:6088,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:6091,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter.c:6098,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter.c:6100,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter.c:6101,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:6103,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:6104,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter.c:6105,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter.c:6106,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - fs
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6110
      start: 6086
    functionDepth: 1
    functionLinenumber: 6086
    functionLinenumberEnd: 6110
    functionName: gf_filter_cleanup_status_metrics
    functionSourceFile: /src/gpac/src/filter_core/filter.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - gf_free
    - strcmp
    - gf_list_get
    - gf_list_rem
    linkageType: ''
    returnType: void
    signature: void gf_filter_cleanup_status_metrics(GF_FilterSession *fs, const GF_FilterRegister
      *freg)
  - 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_props_parse_value
    - GF_FilterRegister*::register_free
    - gf_props_reset_single
    - GF_ARRAY_LENGTH
    - fun
    - gf_assert
    - gf_modules_count
    - gf_modules_load_filter
    - strcmp
    - gf_opts_get_bool
    - gf_fs_add_filter_register
    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_source_register
    - ut_sink2_register
    - gf_fs_add_filter_register
    - ut_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:52,1
    - Dst: cst_parse
      Src: /src/gpac/src/filter_core/filter_props.c:55,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:57,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - type
    - value
    argTypes:
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: gf_props_parse_enum
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - cst_parse
    - GF_ARRAY_LENGTH
    - GF_LOG
    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:64,1
    - Dst: cst_name
      Src: /src/gpac/src/filter_core/filter_props.c:67,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - type
    - value
    argTypes:
    - u32
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: gf_props_enum_name
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 3
    functionsReached:
    - cst_name
    - GF_ARRAY_LENGTH
    - GF_LOG
    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:76,1
    - Dst: cst_all_names
      Src: /src/gpac/src/filter_core/filter_props.c:79,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 83
    functionName: gf_props_enum_all_names
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - GF_ARRAY_LENGTH
    - cst_all_names
    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: 89
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 89
    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:99,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:104,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:107,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:111,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:116,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:119,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:121,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:124,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:126,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:130,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:131,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:132,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:136,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:154,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:155,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:157,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: 163
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 163
    functionName: parse_data_format
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_free
    - gf_malloc
    - GF_LOG
    - strcmp
    - strlen
    - gf_strdup
    - gf_realloc
    - memcpy
    - sscanf
    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:170,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:172,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:175,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:178,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - str
    - val
    argTypes:
    - char*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 186
    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: 171
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_props.c:195,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:202,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:203,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_props.c:212,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:213,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_props.c:216,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:217,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:225,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:225,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:225,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:227,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:227,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:227,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:230,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:235,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:236,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:237,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:239,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:246,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:254,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:255,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:261,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:262,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:267,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:271,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_props.c:275,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:276,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_props.c:279,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:290,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:293,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:299,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:301,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:306,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:307,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:308,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_props.c:309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:317,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:322,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_props.c:323,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:325,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:330,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:331,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:332,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:333,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:334,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:341,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:342,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:343,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:344,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:351,1
    - Dst: gf_parse_frac
      Src: /src/gpac/src/filter_core/filter_props.c:355,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:356,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:362,1
    - Dst: gf_parse_lfrac
      Src: /src/gpac/src/filter_core/filter_props.c:366,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:367,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:373,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:374,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:375,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:377,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:381,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:382,1
    - Dst: FLT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:386,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:391,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:392,1
    - Dst: parse_time
      Src: /src/gpac/src/filter_core/filter_props.c:393,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:396,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:400,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:404,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:408,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:409,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:413,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:414,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:416,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:418,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:423,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:427,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:428,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:435,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:437,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:440,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:440,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:443,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:446,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:449,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:452,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:455,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:455,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:458,1
    - Dst: stricmp
      Src: /src/gpac/src/filter_core/filter_props.c:458,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:462,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:463,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:470,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:471,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:471,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:472,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:478,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:479,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:480,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:486,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:487,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:487,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:488,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:497,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_props.c:500,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:502,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:506,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filter_core/filter_props.c:508,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filter_core/filter_props.c:509,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:511,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/filter_core/filter_props.c:513,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filter_core/filter_props.c:516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:519,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_props.c:519,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filter_core/filter_props.c:524,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:526,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:535,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:537,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:540,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:541,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:548,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:549,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:554,1
    - Dst: gf_xml_dom_new
      Src: /src/gpac/src/filter_core/filter_props.c:556,1
    - Dst: gf_xml_dom_parse
      Src: /src/gpac/src/filter_core/filter_props.c:557,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:559,1
    - Dst: gf_xml_dom_get_root_idx
      Src: /src/gpac/src/filter_core/filter_props.c:561,1
    - Dst: gf_xml_parse_bit_sequence
      Src: /src/gpac/src/filter_core/filter_props.c:564,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:567,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_props.c:567,1
    - Dst: gf_xml_dom_del
      Src: /src/gpac/src/filter_core/filter_props.c:570,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:571,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_props.c:572,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:574,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:578,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:580,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:581,1
    - Dst: gf_base64_decode
      Src: /src/gpac/src/filter_core/filter_props.c:583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:585,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:590,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: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:616,1
    - Dst: parse_data_format
      Src: /src/gpac/src/filter_core/filter_props.c:617,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:619,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:621,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:628,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:629,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:641,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:644,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter_props.c:645,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:647,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:651,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:656,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:664,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:668,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:669,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_props.c:671,1
    - Dst: gf_file_load_data
      Src: /src/gpac/src/filter_core/filter_props.c:674,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:676,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:678,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:682,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:684,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:703,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:708,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:710,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:715,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:718,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filter_core/filter_props.c:721,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:723,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:726,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:730,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:731,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:734,1
    - Dst: sscanf
      Src: /src/gpac/src/filter_core/filter_props.c:738,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:739,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:739,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:740,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:744,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:756,1
    - Dst: gf_props_parse_enum
      Src: /src/gpac/src/filter_core/filter_props.c:758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:761,1
    CyclomaticComplexity: 247
    EdgeCount: 247
    ICount: 567
    argCount: 5
    argNames:
    - type
    - name
    - value
    - enum_values
    - list_sep_char
    argTypes:
    - u32
    - char*
    - char*
    - char*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 188
    functionDepth: 11
    functionLinenumber: 188
    functionLinenumberEnd: 768
    functionName: GF_PropertyValue::gf_props_parse_value
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_4cc_parse
    - gf_xml_dom_get_root_idx
    - gf_xml_dom_del
    - gf_props_parse_enum
    - INT2FIX
    - strstr
    - strchr
    - gf_xml_dom_parse
    - gf_malloc
    - parse_time
    - gf_xml_parse_bit_sequence
    - parse_data_format
    - gf_realloc
    - memcpy
    - gf_strcpy
    - strnicmp
    - gf_xml_dom_new
    - memmove
    - strcmp
    - strlen
    - sscanf
    - gf_error_to_string
    - FLT2FIX
    - gf_free
    - gf_file_load_data
    - GF_LOG
    - gf_parse_lfrac
    - gf_props_type_is_enum
    - GF_4CC
    - stricmp
    - gf_base64_decode
    - gf_strdup
    - memset
    - gf_parse_frac
    - strncmp
    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:792,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 24
    argCount: 1
    argNames:
    - type
    argTypes:
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 770
    functionDepth: 1
    functionLinenumber: 770
    functionLinenumberEnd: 796
    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:801,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_props.c:802,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:838,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:839,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:841,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:844,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:845,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_props.c:849,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:851,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:856,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:857,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_props.c:861,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:863,1
    - Dst: memcmp
      Src: /src/gpac/src/filter_core/filter_props.c:876,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:889,1
    - Dst: memcmp
      Src: /src/gpac/src/filter_core/filter_props.c:907,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:916,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:920,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: 924
      start: 798
    functionDepth: 2
    functionLinenumber: 798
    functionLinenumberEnd: 924
    functionName: gf_props_equal_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_props_get_base_type
    - strchr
    - GF_LOG
    - memcmp
    - gf_props_type_is_enum
    - strcmp
    - strlen
    - strncmp
    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: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
    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:933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p1
    - p2
    argTypes:
    - GF_PropertyValue*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 930
    functionDepth: 3
    functionLinenumber: 930
    functionLinenumberEnd: 934
    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: 953
      start: 937
    functionDepth: 0
    functionLinenumber: 937
    functionLinenumberEnd: 953
    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:960,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_props.c:963,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_props.c:969,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:972,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 956
    functionDepth: 4
    functionLinenumber: 956
    functionLinenumberEnd: 975
    functionName: gf_props_new
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - GF_SAFEALLOC
    - gf_assert
    - gf_fq_pop
    - gf_list_new
    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:981,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:985,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:991,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:999,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1001,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 1
    argNames:
    - p
    argTypes:
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1005
      start: 977
    functionDepth: 0
    functionLinenumber: 977
    functionLinenumberEnd: 1005
    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:1008,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_props.c:1009,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1011,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1016,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1020,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1028,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1030,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1037,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1043,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
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1046,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_props.c:1049,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1050,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 1
    argNames:
    - it
    argTypes:
    - GF_PropertyEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1006
    functionDepth: 5
    functionLinenumber: 1006
    functionLinenumberEnd: 1054
    functionName: gf_props_del_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_fq_res_add
    - safe_int_dec
    - gf_free
    - gf_assert
    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:1059,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_props.c:1062,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1063,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - pmap
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1056
    functionDepth: 2
    functionLinenumber: 1056
    functionLinenumberEnd: 1066
    functionName: gf_propmap_del
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_del
    - gf_free
    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:1074,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1075,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_props.c:1075,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_props.c:1078,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_props.c:1079,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1084,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1085,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_props.c:1085,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - prop
    argTypes:
    - GF_PropertyMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1067
    functionDepth: 6
    functionLinenumber: 1067
    functionLinenumberEnd: 1088
    functionName: gf_props_reset
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_del
    - gf_fq_res_add
    - gf_list_pop_back
    - gf_props_del_property
    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:1092,1
    - Dst: gf_props_reset
      Src: /src/gpac/src/filter_core/filter_props.c:1096,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_props.c:1099,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_props.c:1100,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_props.c:1101,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_PropertyMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1103
      start: 1090
    functionDepth: 7
    functionLinenumber: 1090
    functionLinenumberEnd: 1103
    functionName: gf_props_del
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 3
    functionsReached:
    - gf_free
    - gf_list_del
    - gf_assert
    - gf_props_reset
    - gf_fq_res_add
    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:1112,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1114,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1115,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_props.c:1116,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1117,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1123,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1125,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1126,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_props.c:1127,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1128,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: 1133
      start: 1108
    functionDepth: 6
    functionLinenumber: 1108
    functionLinenumberEnd: 1133
    functionName: gf_props_remove_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - strcmp
    - gf_list_get
    - gf_props_del_property
    - 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:1141,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_props.c:1143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - map
    argTypes:
    - GF_PropertyMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1137
    functionDepth: 4
    functionLinenumber: 1137
    functionLinenumberEnd: 1145
    functionName: gf_props_get_list
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_fq_pop
    - gf_list_new
    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:1155,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:1159,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:1162,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_props.c:1172,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1177,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:1179,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1183,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:1192,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:1194,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_props.c:1201,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_props.c:1203,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:1206,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: 1212
      start: 1148
    functionDepth: 1
    functionLinenumber: 1148
    functionLinenumberEnd: 1212
    functionName: gf_props_assign_value
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_props_reset_single
    - gf_malloc
    - gf_assert
    - gf_strdup
    - memset
    - gf_realloc
    - memcpy
    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:1223,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1223,1
    - Dst: gf_props_get_list
      Src: /src/gpac/src/filter_core/filter_props.c:1229,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1232,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1234,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1234,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1234,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1236,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1237,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1237,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1238,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_props.c:1244,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_props.c:1246,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_props.c:1250,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:1259,1
    - Dst: gf_props_assign_value
      Src: /src/gpac/src/filter_core/filter_props.c:1263,1
    - Dst: gf_props_del_property
      Src: /src/gpac/src/filter_core/filter_props.c:1265,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1270,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1272,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: 1275
      start: 1214
    functionDepth: 6
    functionLinenumber: 1214
    functionLinenumberEnd: 1275
    functionName: gf_props_insert_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_props_assign_value
    - GF_LOG
    - gf_assert
    - gf_props_get_list
    - GF_SAFEALLOC
    - gf_list_get
    - gf_strdup
    - gf_list_add
    - gf_props_del_property
    - gf_4cc_to_str
    - gf_fq_pop
    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:1280,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_props.c:1281,1
    - Dst: gf_props_remove_property
      Src: /src/gpac/src/filter_core/filter_props.c:1282,1
    - Dst: gf_props_insert_property
      Src: /src/gpac/src/filter_core/filter_props.c:1286,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_props.c:1287,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: 1289
      start: 1277
    functionDepth: 7
    functionLinenumber: 1277
    functionLinenumberEnd: 1289
    functionName: gf_props_set_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_props_insert_property
    - gf_props_hash_djb2
    - gf_mx_p
    - gf_mx_v
    - gf_props_remove_property
    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:1296,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1300,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1302,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1309,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:1311,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1317,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1319,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 43
    argCount: 3
    argNames:
    - map
    - prop_4cc
    - name
    argTypes:
    - GF_PropertyMap*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1291
    functionDepth: 1
    functionLinenumber: 1291
    functionLinenumberEnd: 1345
    functionName: gf_props_get_property_entry
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_props_hash_djb2
    - GF_LOG
    - gf_list_get
    - 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:1349,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - map
    - prop_4cc
    - name
    argTypes:
    - GF_PropertyMap*
    - u32
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1347
    functionDepth: 2
    functionLinenumber: 1347
    functionLinenumberEnd: 1352
    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:1372,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1374,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_props.c:1375,1
    - Dst: filter_prop
      Src: /src/gpac/src/filter_core/filter_props.c:1376,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_props.c:1377,1
    - Dst: gf_props_remove_property
      Src: /src/gpac/src/filter_core/filter_props.c:1380,1
    - Dst: gf_props_hash_djb2
      Src: /src/gpac/src/filter_core/filter_props.c:1380,1
    - Dst: gf_props_get_list
      Src: /src/gpac/src/filter_core/filter_props.c:1384,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1387,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_props.c:1390,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: 1400
      start: 1354
    functionDepth: 7
    functionLinenumber: 1354
    functionLinenumberEnd: 1400
    functionName: gf_props_merge_property
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - safe_int_inc
    - gf_props_hash_djb2
    - gf_assert
    - gf_props_get_list
    - gf_list_get
    - gf_list_add
    - gf_props_remove_property
    - filter_prop
    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:1418,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1424,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_props.c:1438,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_props.c:1443,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: 1453
      start: 1402
    functionDepth: 1
    functionLinenumber: 1402
    functionLinenumberEnd: 1453
    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:1506,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_PropType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1508
      start: 1499
    functionDepth: 1
    functionLinenumber: 1499
    functionLinenumberEnd: 1508
    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:1517,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - type
    argTypes:
    - GF_PropType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1510
    functionDepth: 1
    functionLinenumber: 1510
    functionLinenumberEnd: 1519
    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:1526,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1528,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1530
      start: 1521
    functionDepth: 1
    functionLinenumber: 1521
    functionLinenumberEnd: 1530
    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: 1534
      start: 1533
    functionDepth: 0
    functionLinenumber: 1533
    functionLinenumberEnd: 1534
    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: 1535
      start: 1534
    functionDepth: 0
    functionLinenumber: 1534
    functionLinenumberEnd: 1535
    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: 1537
      start: 1536
    functionDepth: 0
    functionLinenumber: 1536
    functionLinenumberEnd: 1537
    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: 1538
      start: 1537
    functionDepth: 0
    functionLinenumber: 1537
    functionLinenumberEnd: 1538
    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:1914,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_props.c:1916,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1917,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 25
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1939
      start: 1909
    functionDepth: 0
    functionLinenumber: 1909
    functionLinenumberEnd: 1939
    functionName: gf_props_get_id
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 20
    functionsReached:
    - GF_4CC
    - strcmp
    - strlen
    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: 1946
      start: 1941
    functionDepth: 0
    functionLinenumber: 1941
    functionLinenumberEnd: 1946
    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: 1956
      start: 1948
    functionDepth: 0
    functionLinenumber: 1948
    functionLinenumberEnd: 1956
    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: 1966
      start: 1958
    functionDepth: 0
    functionLinenumber: 1958
    functionLinenumberEnd: 1966
    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: 1976
      start: 1968
    functionDepth: 0
    functionLinenumber: 1968
    functionLinenumberEnd: 1976
    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:1985,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1985,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: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:1996,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:1996,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_props.c:1999,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:2005,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:2005,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:2005,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2011
      start: 1978
    functionDepth: 3
    functionLinenumber: 1978
    functionLinenumberEnd: 2011
    functionName: gf_props_sanity_check
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_4cc_to_str
    - strcmp
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_props_sanity_check()
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2031,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:2034,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_props.c:2039,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:2043,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_props.c:2046,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2055,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:2056,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2059,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2063,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:2063,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2066,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2069,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2074,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:2082,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2084,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: FIX2FLT
      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:2103,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2106,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2117,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2120,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2122,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2125,1
    - Dst: gf_crc_32
      Src: /src/gpac/src/filter_core/filter_props.c:2125,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2129,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:2138,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:2139,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_props.c:2140,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_props.c:2144,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_props.c:2146,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_props.c:2147,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2162,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2164,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_props.c:2164,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2166,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2168,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_props.c:2170,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:2172,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_props.c:2176,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_props.c:2178,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_props.c:2179,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2185,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2188,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:2191,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filter_core/filter_props.c:2192,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    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: 2196
      start: 2013
    functionDepth: 3
    functionLinenumber: 2013
    functionLinenumberEnd: 2196
    functionName: gf_props_dump_val
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 8
    functionsReached:
    - sprintf
    - strchr
    - FIX2FLT
    - GF_LOG
    - gf_crc_32
    - gf_props_type_is_enum
    - gf_strlcat
    - gf_strlcpy
    - gf_props_enum_name
    - strlen
    - memcpy
    - gf_4cc_to_str
    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:2205,1
    - Dst: gf_codecid_name
      Src: /src/gpac/src/filter_core/filter_props.c:2207,1
    - Dst: gf_net_ntp_to_utc
      Src: /src/gpac/src/filter_core/filter_props.c:2219,1
    - Dst: gf_gmtime
      Src: /src/gpac/src/filter_core/filter_props.c:2228,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_props.c:2233,1
    - Dst: gf_audio_fmt_get_cicp_name
      Src: /src/gpac/src/filter_core/filter_props.c:2240,1
    - Dst: gf_audio_fmt_get_cicp_from_layout
      Src: /src/gpac/src/filter_core/filter_props.c:2240,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_props.c:2242,1
    - Dst: gf_utf8_is_legal
      Src: /src/gpac/src/filter_core/filter_props.c:2247,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_props.c:2252,1
    - Dst: gf_props_type_is_enum
      Src: /src/gpac/src/filter_core/filter_props.c:2253,1
    - Dst: gf_props_enum_name
      Src: /src/gpac/src/filter_core/filter_props.c:2254,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_props.c:2256,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: 2259
      start: 2199
    functionDepth: 4
    functionLinenumber: 2199
    functionLinenumberEnd: 2259
    functionName: gf_props_dump
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 7
    functionsReached:
    - gf_audio_fmt_get_cicp_from_layout
    - gf_props_4cc_get_type
    - gf_codecid_name
    - gf_utf8_is_legal
    - gf_net_ntp_to_utc
    - gf_audio_fmt_get_cicp_name
    - gf_gmtime
    - gf_props_type_is_enum
    - gf_props_enum_name
    - snprintf
    - gf_props_dump_val
    - gf_stream_type_name
    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:2265,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_props.c:2267,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: 2268
      start: 2261
    functionDepth: 5
    functionLinenumber: 2261
    functionLinenumberEnd: 2268
    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:2278,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2279,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2280,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2281,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2282,1
    - Dst: INT2FIX
      Src: /src/gpac/src/filter_core/filter_props.c:2283,1
    - Dst: gf_mx2d_decompose
      Src: /src/gpac/src/filter_core/filter_props.c:2284,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2288,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2289,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2291,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2297,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2300,1
    - Dst: ABSDIFF
      Src: /src/gpac/src/filter_core/filter_props.c:2303,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: 2308
      start: 2270
    functionDepth: 2
    functionLinenumber: 2270
    functionLinenumberEnd: 2308
    functionName: gf_prop_matrix_decompose
    functionSourceFile: /src/gpac/src/filter_core/filter_props.c
    functionUses: 3
    functionsReached:
    - gf_mx2d_decompose
    - ABSDIFF
    - 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_malloc
    - gf_fq_pop
    - GF_LOG
    - gf_fq_count
    - gf_fq_enum
    - GF_SAFEALLOC
    - memset
    - gf_realloc
    - gf_filter_pck_reset_props
    - PID_IS_INPUT
    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_filter_pck_discard
    - gf_free
    - gf_malloc
    - GF_LOG
    - safe_int_dec
    - gf_assert
    - gf_props_del
    - GF_SAFEALLOC
    - 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_pid_get_property
    - gf_filter_pck_new_alloc
    - gf_filter_pck_merge_properties
    - GF_LOG
    - gf_filter_pck_new_dangling_packet
    - frame_ifce::get_plane
    - PROP_UINT
    - gf_filter_pid_set_property
    - gf_pixel_get_size_info
    - memcpy
    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:
    - gf_filter_pck_discard
    - gf_filter_pck_merge_properties
    - safe_int_inc
    - GF_LOG
    - gf_filter_pck_new_dangling_packet
    - gf_filter_pck_new_alloc_internal
    - GF_SAFEALLOC
    - PCK_IS_OUTPUT
    - gf_filter_pck_new_ref
    - memcpy
    - gf_filter_pck_clone_frame_interface
    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:
    - safe_int_inc
    - gf_fq_pop
    - GF_LOG
    - GF_SAFEALLOC
    - gf_filter_pck_reset_props
    - 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_filter_pck_new_shared
    - gf_assert
    - 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: 38
    functionsReached:
    - gf_filter_pck_merge_properties
    - safe_int_inc
    - gf_assert
    - gf_filter_pck_new_shared
    - 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:
    - gf_free
    - gf_filter_packet_destroy
    - GF_LOG
    - safe_int_dec
    - gf_list_del_item
    - gf_assert
    - gf_props_del
    - gf_fq_res_add
    - gf_mx_p
    - gf_mx_v
    - GF_FilterPacket*::destructor
    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: memset
      Src: /src/gpac/src/filter_core/filter_pck.c:803,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_pck.c:804,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pck.c:805,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:809,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:813,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pck.c:816,1
    - Dst: safe_int64_add
      Src: /src/gpac/src/filter_core/filter_pck.c:817,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_pck.c:823,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:827,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:828,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pck.c:829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:836,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 91
    argCount: 1
    argNames:
    - dst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 714
    functionDepth: 10
    functionLinenumber: 714
    functionLinenumberEnd: 840
    functionName: gf_filter_aggregate_packets
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pck_new_alloc
    - gf_free
    - safe_int_inc
    - gf_filter_pck_merge_properties
    - gf_filter_packet_destroy
    - GF_LOG
    - safe_int_dec
    - gf_timestamp_rescale
    - gf_assert
    - safe_int64_add
    - gf_fq_res_add
    - gf_fq_add
    - gf_list_get
    - memset
    - gf_list_pop_back
    - memcpy
    - 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:845,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:846,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pck.c:852,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 842
    functionDepth: 9
    functionLinenumber: 842
    functionLinenumberEnd: 854
    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:1395,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1396,1
    - Dst: gf_filter_pck_discard
      Src: /src/gpac/src/filter_core/filter_pck.c:1403,1
    - Dst: gf_filter_pck_send_internal
      Src: /src/gpac/src/filter_core/filter_pck.c:1406,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1407
      start: 1392
    functionDepth: 10
    functionLinenumber: 1392
    functionLinenumberEnd: 1407
    functionName: gf_filter_pck_send
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 176
    functionsReached:
    - GF_LOG
    - gf_filter_pck_discard
    - 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:1416,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1418,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1409
    functionDepth: 1
    functionLinenumber: 1409
    functionLinenumberEnd: 1421
    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:1429,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1431,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1423
    functionDepth: 1
    functionLinenumber: 1423
    functionLinenumberEnd: 1434
    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: 9
    BranchProfiles: []
    Callsites:
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pck.c:1447,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:1449,1
    - Dst: gf_filter_pck_reset_props
      Src: /src/gpac/src/filter_core/filter_pck.c:1456,1
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1459,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1469,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1473,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pck.c:1476,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1436
    functionDepth: 4
    functionLinenumber: 1436
    functionLinenumberEnd: 1479
    functionName: gf_filter_pck_ref_props
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 30
    functionsReached:
    - safe_int_inc
    - PCK_IS_INPUT
    - GF_SAFEALLOC
    - gf_filter_pck_reset_props
    - gf_fq_pop
    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:1484,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1487,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1490,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:1491,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pck.c:1494,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pck.c:1495,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1497
      start: 1481
    functionDepth: 9
    functionLinenumber: 1481
    functionLinenumberEnd: 1497
    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:1502,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1503,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - pck
    - size
    argTypes:
    - GF_FilterPacket*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1499
    functionDepth: 1
    functionLinenumber: 1499
    functionLinenumberEnd: 1509
    functionName: gf_filter_pck_get_data
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 162
    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:1514,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1515,1
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1516,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1517,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pck.c:1524,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pck.c:1527,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pck.c:1527,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1528,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1529,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1530,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1532,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pck.c:1534,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pck.c:1535,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filter_core/filter_pck.c:1537,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1539,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1540,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pck.c:1543,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pck.c:1544,1
    - Dst: gf_props_hash_djb2
      Src: /src/gpac/src/filter_core/filter_pck.c:1549,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pck.c:1552,1
    - Dst: gf_props_remove_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1554,1
    - Dst: gf_props_insert_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1558,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: 1559
      start: 1511
    functionDepth: 7
    functionLinenumber: 1511
    functionLinenumberEnd: 1559
    functionName: gf_filter_pck_set_property_full
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 0
    functionsReached:
    - gf_props_get_base_type
    - gf_props_4cc_get_type
    - gf_props_insert_property
    - gf_props_hash_djb2
    - gf_props_new
    - GF_LOG
    - exit
    - gf_assert
    - gf_props_remove_property
    - PCK_IS_INPUT
    - gf_props_get_type_name
    - gf_sys_is_test_mode
    - gf_props_4cc_get_name
    - gf_props_4cc_get_flags
    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:1564,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: 1565
      start: 1561
    functionDepth: 8
    functionLinenumber: 1561
    functionLinenumberEnd: 1565
    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:1570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - pck
    - name
    - value
    argTypes:
    - GF_FilterPacket*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1571
      start: 1567
    functionDepth: 8
    functionLinenumber: 1567
    functionLinenumberEnd: 1571
    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:1576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - pck
    - name
    - value
    argTypes:
    - GF_FilterPacket*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1577
      start: 1573
    functionDepth: 8
    functionLinenumber: 1573
    functionLinenumberEnd: 1577
    functionName: gf_filter_pck_set_property_dyn
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 10
    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: 1586
      start: 1579
    functionDepth: 0
    functionLinenumber: 1579
    functionLinenumberEnd: 1586
    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:1596,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pck.c:1597,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pck.c:1599,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pck.c:1602,1
    - Dst: gf_props_4cc_get_name
      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_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pck.c:1611,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1613,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pck.c:1615,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pck.c:1618,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1621
      start: 1589
    functionDepth: 3
    functionLinenumber: 1589
    functionLinenumberEnd: 1621
    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_list_count
    - GF_LOG
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_props_4cc_get_name
    - gf_list_add
    - gf_4cc_to_str
    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: 1624
      start: 1623
    functionDepth: 0
    functionLinenumber: 1623
    functionLinenumberEnd: 1624
    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:1632,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filter_core/filter_pck.c:1633,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1636,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pck.c:1637,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pck.c:1640,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pck.c:1641,1
    - Dst: pck_check_prop
      Src: /src/gpac/src/filter_core/filter_pck.c:1644,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1644,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1645
      start: 1626
    functionDepth: 3
    functionLinenumber: 1626
    functionLinenumberEnd: 1645
    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_LOG
    - exit
    - gf_props_get_property
    - pck_check_prop
    - gf_sys_is_test_mode
    - gf_props_4cc_get_name
    - 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:1653,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pck.c:1653,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1654
      start: 1647
    functionDepth: 3
    functionLinenumber: 1647
    functionLinenumberEnd: 1654
    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:1660,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1656
    functionDepth: 2
    functionLinenumber: 1656
    functionLinenumberEnd: 1661
    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: 1669
      start: 1663
    functionDepth: 0
    functionLinenumber: 1663
    functionLinenumberEnd: 1669
    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:1673,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: 1681
      start: 1670
    functionDepth: 1
    functionLinenumber: 1670
    functionLinenumberEnd: 1681
    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:1686,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: 1692
      start: 1683
    functionDepth: 1
    functionLinenumber: 1683
    functionLinenumberEnd: 1692
    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:1698,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - dts
    argTypes:
    - GF_FilterPacket*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1701
      start: 1695
    functionDepth: 1
    functionLinenumber: 1695
    functionLinenumberEnd: 1701
    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:1706,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1709
      start: 1703
    functionDepth: 1
    functionLinenumber: 1703
    functionLinenumberEnd: 1709
    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:1714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - cts
    argTypes:
    - GF_FilterPacket*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1711
    functionDepth: 1
    functionLinenumber: 1711
    functionLinenumberEnd: 1717
    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:1722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1725
      start: 1719
    functionDepth: 1
    functionLinenumber: 1719
    functionLinenumberEnd: 1725
    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:1730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1733
      start: 1727
    functionDepth: 1
    functionLinenumber: 1727
    functionLinenumberEnd: 1733
    functionName: gf_filter_pck_get_timescale
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 33
    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:1738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - sap_type
    argTypes:
    - GF_FilterPacket*
    - GF_FilterSAPType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1735
    functionDepth: 1
    functionLinenumber: 1735
    functionLinenumberEnd: 1743
    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:1748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1751
      start: 1745
    functionDepth: 1
    functionLinenumber: 1745
    functionLinenumberEnd: 1751
    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:1756,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pck
    - is_switch_frame
    argTypes:
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1753
    functionDepth: 1
    functionLinenumber: 1753
    functionLinenumberEnd: 1762
    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:1767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1770
      start: 1764
    functionDepth: 1
    functionLinenumber: 1764
    functionLinenumberEnd: 1770
    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:1775,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - roll_count
    argTypes:
    - GF_FilterPacket*
    - s16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1778
      start: 1772
    functionDepth: 1
    functionLinenumber: 1772
    functionLinenumberEnd: 1778
    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:1783,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1786
      start: 1780
    functionDepth: 1
    functionLinenumber: 1780
    functionLinenumberEnd: 1786
    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:1791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pck
    - is_interlaced
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1788
    functionDepth: 1
    functionLinenumber: 1788
    functionLinenumberEnd: 1795
    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:1800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1803
      start: 1797
    functionDepth: 1
    functionLinenumber: 1797
    functionLinenumberEnd: 1803
    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:1808,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pck
    - is_corrupted
    argTypes:
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1812
      start: 1805
    functionDepth: 1
    functionLinenumber: 1805
    functionLinenumberEnd: 1812
    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:1817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1820
      start: 1814
    functionDepth: 1
    functionLinenumber: 1814
    functionLinenumberEnd: 1820
    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:1825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - duration
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1829
      start: 1822
    functionDepth: 1
    functionLinenumber: 1822
    functionLinenumberEnd: 1829
    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:1834,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1837
      start: 1831
    functionDepth: 1
    functionLinenumber: 1831
    functionLinenumberEnd: 1837
    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:1842,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pck
    - is_seek
    argTypes:
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1839
    functionDepth: 1
    functionLinenumber: 1839
    functionLinenumberEnd: 1846
    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:1851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1854
      start: 1848
    functionDepth: 1
    functionLinenumber: 1848
    functionLinenumberEnd: 1854
    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:1859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - dep_flags
    argTypes:
    - GF_FilterPacket*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1863
      start: 1856
    functionDepth: 1
    functionLinenumber: 1856
    functionLinenumberEnd: 1863
    functionName: gf_filter_pck_set_dependency_flags
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 24
    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:1868,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1871
      start: 1865
    functionDepth: 1
    functionLinenumber: 1865
    functionLinenumberEnd: 1871
    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:1876,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - version_number
    argTypes:
    - GF_FilterPacket*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1879
      start: 1873
    functionDepth: 1
    functionLinenumber: 1873
    functionLinenumberEnd: 1879
    functionName: gf_filter_pck_set_carousel_version
    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_carousel_version(GF_FilterPacket *pck,
      u8 version_number)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pck.c:1884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1887
      start: 1881
    functionDepth: 1
    functionLinenumber: 1881
    functionLinenumberEnd: 1887
    functionName: gf_filter_pck_get_carousel_version
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 10
    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:1892,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - byte_offset
    argTypes:
    - GF_FilterPacket*
    - u64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1889
    functionDepth: 1
    functionLinenumber: 1889
    functionLinenumberEnd: 1895
    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:1900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1903
      start: 1897
    functionDepth: 1
    functionLinenumber: 1897
    functionLinenumberEnd: 1903
    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:1908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - crypt_flag
    argTypes:
    - GF_FilterPacket*
    - u8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1905
    functionDepth: 1
    functionLinenumber: 1905
    functionLinenumberEnd: 1912
    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: 1919
      start: 1914
    functionDepth: 0
    functionLinenumber: 1914
    functionLinenumberEnd: 1919
    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:1924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pck
    - seq_num
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1927
      start: 1921
    functionDepth: 1
    functionLinenumber: 1921
    functionLinenumberEnd: 1927
    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: 1934
      start: 1929
    functionDepth: 0
    functionLinenumber: 1929
    functionLinenumberEnd: 1934
    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:1939,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - pck
    - ctype
    argTypes:
    - GF_FilterPacket*
    - GF_FilterClockType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1943
      start: 1936
    functionDepth: 1
    functionLinenumber: 1936
    functionLinenumberEnd: 1943
    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: 1950
      start: 1945
    functionDepth: 0
    functionLinenumber: 1945
    functionLinenumberEnd: 1950
    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:1955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1957
      start: 1952
    functionDepth: 1
    functionLinenumber: 1952
    functionLinenumberEnd: 1957
    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:1962,1
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1963,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1964,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1968,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:1972,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pck.c:1980,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: 1993
      start: 1959
    functionDepth: 1
    functionLinenumber: 1959
    functionLinenumberEnd: 1993
    functionName: gf_filter_pck_expand
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 12
    functionsReached:
    - GF_LOG
    - gf_realloc
    - gf_assert
    - PCK_IS_INPUT
    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:1998,1
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:1999,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:2000,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pck.c:2004,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - pck
    - size
    argTypes:
    - GF_FilterPacket*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2009
      start: 1995
    functionDepth: 1
    functionLinenumber: 1995
    functionLinenumberEnd: 2009
    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: 2027
      start: 2011
    functionDepth: 0
    functionLinenumber: 2011
    functionLinenumberEnd: 2027
    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:2032,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - pck
    - data
    - size
    argTypes:
    - GF_FilterPacket*
    - u8*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2042
      start: 2029
    functionDepth: 1
    functionLinenumber: 2029
    functionLinenumberEnd: 2042
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:2047,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - pck
    - is_marked
    argTypes:
    - GF_FilterPacket*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2044
    functionDepth: 1
    functionLinenumber: 2044
    functionLinenumberEnd: 2061
    functionName: gf_filter_pck_set_mark
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 5
    functionsReached:
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_set_mark(GF_FilterPacket *pck, Bool is_marked)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PCK_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pck.c:2066,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pck
    argTypes:
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 2063
    functionDepth: 1
    functionLinenumber: 2063
    functionLinenumberEnd: 2071
    functionName: gf_filter_pck_get_mark
    functionSourceFile: /src/gpac/src/filter_core/filter_pck.c
    functionUses: 8
    functionsReached:
    - PCK_IS_INPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pck_get_mark(GF_FilterPacket *pck)
  - 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:
    - gf_list_count
    - gf_fq_count
    - pcki_del
    - gf_assert
    - gf_list_pop_back
    - 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:
    - gf_list_count
    - gf_free
    - gf_list_del
    - safe_int_dec
    - gf_list_del_item
    - gf_assert
    - gf_filter_pid_inst_reset
    - gf_list_find
    - gf_props_del
    - gf_mx_p
    - gf_mx_v
    - gf_mx_del
    - gf_list_pop_back
    - gf_fq_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_mx_new
    - gf_list_find
    - GF_SAFEALLOC
    - snprintf
    - gf_list_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_inc
    - GF_LOG
    - safe_int_dec
    - gf_filter_post_process_task
    - gf_assert
    - gf_mx_p
    - gf_mx_v
    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_fs_post_disconnect_task
    - safe_int_inc
    - GF_LOG
    - gf_mx_v
    - gf_filter_pid_get_property_first
    - gf_mx_p
    - gf_list_get
    - gf_filter_pid_post_connect_task
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_inst_check_dependencies(GF_FilterPidInst *pidi)
  - BBCount: 34
    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:346,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:362,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:364,1
    - Dst: gf_filter_pid_inst_check_dependencies
      Src: /src/gpac/src/filter_core/filter_pid.c:367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:375,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:401,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 119
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 253
    functionDepth: 2
    functionLinenumber: 253
    functionLinenumberEnd: 402
    functionName: gf_filter_pid_update_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - safe_int_dec
    - gf_mx_v
    - gf_filter_pid_get_property_first
    - gf_mx_p
    - MAX
    - gf_filter_pid_inst_check_dependencies
    - gf_list_get
    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: 408
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 408
    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:415,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:418,1
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:425,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:430,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:431,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:437,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:438,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:439,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:440,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:446,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:449,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:450,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:452,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:459,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:460,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:471,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:473,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:482,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filter_core/filter_pid.c:484,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:488,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:490,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:491,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:496,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:497,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:506,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:512,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:515,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:520,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:525,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 74
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 408
    functionDepth: 12
    functionLinenumber: 408
    functionLinenumberEnd: 526
    functionName: gf_filter_pid_inst_delete_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_pid_would_block
    - GF_LOG
    - safe_int_dec
    - gf_list_get
    - gf_filter_pid_check_unblock
    - gf_list_del_item
    - gf_assert
    - gf_list_find
    - gf_filter_pid_inst_reset
    - gf_fq_count
    - gf_filter_pid_inst_del
    - TASK_REQUEUE
    - gf_mx_p
    - gf_filter_post_remove
    - gf_mx_v
    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:530,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:531,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: 532
      start: 528
    functionDepth: 6
    functionLinenumber: 528
    functionLinenumberEnd: 532
    functionName: gf_fs_post_pid_instance_delete_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_fs_post_task
    - safe_int_inc
    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:542,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:544,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:545,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:546,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:547,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:550,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:552,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:553,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:554,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:555,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:559,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:560,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:563,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:566,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:574,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:576,1
    - Dst: gf_filter_pid_inst_swap_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:579,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:584,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: 585
      start: 535
    functionDepth: 13
    functionLinenumber: 535
    functionLinenumberEnd: 585
    functionName: gf_filter_pid_inst_swap_delete
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - GF_LOG
    - safe_int_dec
    - gf_list_get
    - gf_list_del_item
    - gf_assert
    - gf_filter_pid_inst_reset
    - gf_list_find
    - gf_filter_pid_inst_check_delete
    - gf_mx_p
    - gf_filter_post_remove
    - gf_mx_v
    - gf_filter_pid_inst_swap_delete
    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:599,1
    - Dst: gf_filter_pid_inst_swap_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:605,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 7
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 587
    functionDepth: 14
    functionLinenumber: 587
    functionLinenumberEnd: 606
    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: 25
    BranchProfiles: []
    Callsites:
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:616,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:623,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:632,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:634,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:635,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:636,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:637,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:638,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:639,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:640,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:648,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pid.c:654,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:656,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:657,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:660,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:661,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:662,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_pid.c:665,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:666,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:669,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:673,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:674,1
    - Dst: gf_list_pop_front
      Src: /src/gpac/src/filter_core/filter_pid.c:675,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:677,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:699,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:700,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:701,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:702,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_pid.c:710,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:719,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:720,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:723,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:724,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:733,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:734,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:737,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:740,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:741,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:743,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:744,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:745,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:748,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:750,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:751,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:752,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:756,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:762,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:766,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 125
    argCount: 2
    argNames:
    - filter
    - dst
    argTypes:
    - GF_Filter*
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 608
    functionDepth: 13
    functionLinenumber: 608
    functionLinenumberEnd: 768
    functionName: gf_filter_pid_inst_swap
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - safe_int_dec
    - gf_assert
    - gf_list_add
    - gf_fq_pop
    - gf_list_pop_front
    - gf_filter_post_process_task
    - gf_list_find
    - gf_fq_add
    - gf_list_get
    - gf_mx_v
    - gf_filter_post_remove
    - safe_int_inc
    - gf_fs_post_task
    - gf_props_del
    - gf_filter_pid_inst_check_delete
    - gf_mx_p
    - gf_props_merge_property
    - gf_list_new
    - GF_LOG
    - gf_list_del_item
    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:778,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_pid.c:780,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:783,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:784,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:786,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:788,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:790,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:793,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:794,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:796,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 1
    argNames:
    - pidinst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 773
    functionDepth: 2
    functionLinenumber: 773
    functionLinenumberEnd: 799
    functionName: gf_filter_instance_detach_pid
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_fq_get
    - safe_int_dec
    - gf_fq_count
    - gf_assert
    - gf_list_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:805,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:808,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:811,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:812,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 815
      start: 801
    functionDepth: 1
    functionLinenumber: 801
    functionLinenumberEnd: 815
    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:827,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:828,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:830,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:831,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:833,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:836,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 824
    functionDepth: 1
    functionLinenumber: 824
    functionLinenumberEnd: 839
    functionName: gf_filter_pid_connect_failure
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_filter_pid_send_event_internal
    linkageType: ''
    returnType: void
    signature: void gf_filter_pid_connect_failure(GF_FilterPid *pid)
  - BBCount: 84
    BranchProfiles: []
    Callsites:
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:856,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:860,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:862,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:863,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:871,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:872,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:876,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:878,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:887,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:893,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:901,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:908,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:909,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:916,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:928,1
    - Dst: gf_filter_pid_inst_new
      Src: /src/gpac/src/filter_core/filter_pid.c:931,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:940,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:942,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:943,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:944,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:946,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:948,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:949,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:950,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:951,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:957,1
    - Dst: gf_filter_pid_update_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:962,1
    - Dst: gf_filter_pid_inst_swap
      Src: /src/gpac/src/filter_core/filter_pid.c:969,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:978,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:981,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:982,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:983,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1009,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:1013,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1020,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:1020,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1026,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:1026,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:1027,1
    - Dst: gf_filter_relink_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:1028,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1035,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1036,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1037,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1040,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1041,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1042,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1043,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1045,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1046,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1047,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1049,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1050,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1054,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1055,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1056,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1059,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1060,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1062,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1067,1
    - Dst: gf_filter_pid_inst_check_delete
      Src: /src/gpac/src/filter_core/filter_pid.c:1070,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1072,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1084,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1085,1
    - Dst: gf_filter_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:1088,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1093,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1094,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1097,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1102,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:1102,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1106,1
    - Dst: gf_error_to_string
      Src: /src/gpac/src/filter_core/filter_pid.c:1106,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1117,1
    - Dst: gf_filter_pid_connect_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:1124,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1130,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1134,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:1137,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1139,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1140,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:1141,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:1142,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1144,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1145,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1146,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1148,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1149,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1157,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1162,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1163,1
    - Dst: gf_filter_pid_post_init_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1166,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1169,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1169,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1174,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1176,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:1179,1
    - Dst: gf_filter_pid_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1181,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:1188,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1193,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1195,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1196,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1197,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1198,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:1204,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:1205,1
    - Dst: gf_filter_notification_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:1209,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1211,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1216,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:1219,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1221,1
    - Dst: GF_FilterPid*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:1222,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1223,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1241,1
    - Dst: gf_fq_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1243,1
    - Dst: gf_filter_check_pending_pids
      Src: /src/gpac/src/filter_core/filter_pid.c:1247,1
    - Dst: jsfs_on_filter_pid_reconfig
      Src: /src/gpac/src/filter_core/filter_pid.c:1253,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1257,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1259,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1260,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1263,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1272,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1274,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1275,1
    - Dst: gf_filter_instance_detach_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1276,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1277,1
    - Dst: gf_filter_reset_pending_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:1282,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1288,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1293,1
    - Dst: gf_fs_post_pid_instance_delete_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1297,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1303,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1304,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:1312,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_pid.c:1313,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:1317,1
    - Dst: gf_filter_pid_send_event
      Src: /src/gpac/src/filter_core/filter_pid.c:1318,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1326,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1331,1
    - Dst: gf_filter_pid_update_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:1341,1
    CyclomaticComplexity: 123
    EdgeCount: 123
    ICount: 365
    argCount: 3
    argNames:
    - filter
    - pid
    - ctype
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - GF_PidConnectType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1343
      start: 840
    functionDepth: 14
    functionLinenumber: 840
    functionLinenumberEnd: 1343
    functionName: gf_filter_pid_configure
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - safe_int_dec
    - GF_Filter*::freg::configure_pid
    - GF_FEVT_INIT
    - gf_assert
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - gf_filter_pid_send_event
    - gf_filter_pid_post_connect_task
    - gf_list_add
    - gf_filter_pid_post_init_task
    - gf_filter_reset_pending_packets
    - gf_fq_get
    - jsfs_on_filter_pid_reconfig
    - gf_filter_pid_inst_new
    - gf_filter_post_process_task
    - gf_filter_pid_connect_failure
    - gf_list_find
    - gf_filter_pid_remove
    - gf_filter_post_remove
    - gf_mx_v
    - gf_list_get
    - gf_filter_instance_detach_pid
    - gf_fs_post_pid_instance_delete_task
    - gf_filter_relink_dst
    - gf_filter_pid_inst_swap
    - gf_props_del
    - gf_filter_pid_inst_check_delete
    - gf_mx_p
    - gf_list_new
    - gf_filter_check_pending_pids
    - gf_list_pop_back
    - gf_filter_notification_failure
    - GF_FilterPid*::filter::freg::process_event
    - FSESS_CHECK_THREAD
    - gf_error_to_string
    - GF_LOG
    - gf_list_del
    - gf_filter_clone
    - gf_filter_pid_update_caps
    - gf_list_del_item
    - gf_fq_count
    - gf_list_reset
    - 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:1358,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1359,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1360,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1367,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1369,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:1371,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1375,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:1377,1
    - Dst: GF_Filter*::freg::configure_pid
      Src: /src/gpac/src/filter_core/filter_pid.c:1378,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:1379,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1380,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1383,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1384,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1387,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1388,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1392,1
    - Dst: gf_filter_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:1397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1402,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1404,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1406,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1407,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1409,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1410,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1411,1
    - Dst: gf_filter_pid_connect_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:1414,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1420,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1421,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1422,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1423,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1432,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1433,1
    - Dst: gf_fs_cleanup_filters
      Src: /src/gpac/src/filter_core/filter_pid.c:1435,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 67
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1437
      start: 1345
    functionDepth: 15
    functionLinenumber: 1345
    functionLinenumberEnd: 1437
    functionName: gf_filter_pid_connect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - safe_int_dec
    - GF_Filter*::freg::configure_pid
    - gf_assert
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - gf_filter_pid_connect_failure
    - gf_filter_pid_inst_del
    - gf_filter_post_remove
    - gf_mx_v
    - gf_list_get
    - gf_mx_p
    - gf_list_del
    - GF_LOG
    - gf_filter_clone
    - gf_list_del_item
    - gf_filter_pid_configure
    - gf_fs_cleanup_filters
    - 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:1441,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1444,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1451
      start: 1439
    functionDepth: 15
    functionLinenumber: 1439
    functionLinenumberEnd: 1451
    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:1456,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1459,1
    - Dst: gf_filter_aggregate_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:1474,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:1475,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:1476,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1483,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1485
      start: 1453
    functionDepth: 15
    functionLinenumber: 1453
    functionLinenumberEnd: 1485
    functionName: gf_filter_pid_reconfigure_task_discard
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_filter_pid_configure
    - gf_filter_aggregate_packets
    - gf_filter_pid_inst_del
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    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:1489,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1491,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:1496,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1498,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1502,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1503,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:1511,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1513,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1515,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1516,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1522,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1524,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1525,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1526
      start: 1487
    functionDepth: 15
    functionLinenumber: 1487
    functionLinenumberEnd: 1526
    functionName: gf_filter_pid_disconnect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - GF_LOG
    - safe_int_dec
    - gf_filter_pid_configure
    - gf_mx_p
    - gf_filter_post_remove
    - 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:1533,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:1535,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:1536,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:1538,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: 1539
      start: 1528
    functionDepth: 6
    functionLinenumber: 1528
    functionLinenumberEnd: 1539
    functionName: gf_fs_post_disconnect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 7
    functionsReached:
    - gf_fs_post_task
    - safe_int_inc
    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:1552,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:1556,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1562,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1569,1
    - Dst: gf_filter_process_inline
      Src: /src/gpac/src/filter_core/filter_pid.c:1575,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:1579,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1584,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1585,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1586,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1590,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1592,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1599,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1600,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1602,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1603,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1604,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:1605,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1610,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1612,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1613,1
    - Dst: safe_int_sub
      Src: /src/gpac/src/filter_core/filter_pid.c:1614,1
    - Dst: gf_filter_pid_inst_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:1615,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1617,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1618,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:1619,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:1620,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1623,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:1626,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:1628,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:1629,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:1637,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:1638,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 71
    argCount: 2
    argNames:
    - task
    - no_flush
    argTypes:
    - GF_FSTask*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1639
      start: 1541
    functionDepth: 11
    functionLinenumber: 1541
    functionLinenumberEnd: 1639
    functionName: gf_filter_pid_detach_task_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_process_inline
    - gf_list_count
    - GF_LOG
    - safe_int_dec
    - gf_fq_count
    - gf_assert
    - gf_list_del_item
    - gf_mx_v
    - gf_props_del
    - gf_filter_pid_inst_reset
    - gf_list_new
    - gf_list_find
    - TASK_REQUEUE
    - gf_mx_p
    - gf_list_get
    - gf_list_add
    - safe_int_sub
    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:1643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1641
    functionDepth: 12
    functionLinenumber: 1641
    functionLinenumberEnd: 1644
    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:1648,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1649
      start: 1646
    functionDepth: 12
    functionLinenumber: 1646
    functionLinenumberEnd: 1649
    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:1654,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:1655,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1657,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:1658,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:1659,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - pid
    - name
    argTypes:
    - GF_FilterPid*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1661
      start: 1651
    functionDepth: 1
    functionLinenumber: 1651
    functionLinenumberEnd: 1661
    functionName: gf_filter_pid_set_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 31
    functionsReached:
    - gf_free
    - GF_LOG
    - strcmp
    - gf_strdup
    - 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: 1667
      start: 1663
    functionDepth: 0
    functionLinenumber: 1663
    functionLinenumberEnd: 1667
    functionName: gf_filter_pid_get_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 48
    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:1672,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1676
      start: 1669
    functionDepth: 1
    functionLinenumber: 1669
    functionLinenumberEnd: 1676
    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:1686,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:1687,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1689,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1693,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1695,1
    - Dst: gf_filter_pid_orig_src_args
      Src: /src/gpac/src/filter_core/filter_pid.c:1698,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1700,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1703,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1708,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 26
    argCount: 2
    argNames:
    - pid
    - for_unicity
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1710
      start: 1678
    functionDepth: 1
    functionLinenumber: 1678
    functionLinenumberEnd: 1710
    functionName: gf_filter_pid_orig_src_args
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_mx_v
    - gf_filter_pid_orig_src_args
    - gf_mx_p
    - strcmp
    - gf_list_get
    - strstr
    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:1719,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1721,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1724,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:1726,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1731
      start: 1712
    functionDepth: 1
    functionLinenumber: 1712
    functionLinenumberEnd: 1731
    functionName: gf_filter_pid_get_source_filter_name
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_list_get
    - gf_mx_p
    - 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: 1747
      start: 1733
    functionDepth: 0
    functionLinenumber: 1733
    functionLinenumberEnd: 1747
    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:1752,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - udta
    argTypes:
    - GF_FilterPid*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1757
      start: 1749
    functionDepth: 1
    functionLinenumber: 1749
    functionLinenumberEnd: 1757
    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:1762,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1759
    functionDepth: 1
    functionLinenumber: 1759
    functionLinenumberEnd: 1767
    functionName: gf_filter_pid_get_udta
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 85
    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:1785,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1791,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1794,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1797,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1800,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1803,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:1809,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1810,1
    - Dst: gf_4cc_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:1811,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1819,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:1839,1
    - Dst: atoi
      Src: /src/gpac/src/filter_core/filter_pid.c:1840,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1843,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1844,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1864,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1865,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:1878,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:1880,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:1883,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1890,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:1898,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1899,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1915,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1915,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:1925,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:1937,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:1945,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_pid.c:1946,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1948,1
    - Dst: gf_filter_pid_get_property_entry_str
      Src: /src/gpac/src/filter_core/filter_pid.c:1951,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_pid.c:1964,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:1977,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filter_core/filter_pid.c:1982,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:1984,1
    - Dst: gf_filter_pid_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:1986,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:1994,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:1998,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2036,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:2036,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:2042,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: 2047
      start: 1769
    functionDepth: 4
    functionLinenumber: 1769
    functionLinenumberEnd: 2047
    functionName: filter_pid_check_fragment
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_props_parse_value
    - gf_4cc_parse
    - gf_stream_type_by_name
    - gf_filter_pid_get_property_entry_str
    - gf_props_dump_val
    - gf_props_equal
    - gf_props_get_id
    - strchr
    - gf_filter_pid_get_property_entry
    - gf_codecid_parse
    - gf_list_get
    - gf_props_reset_single
    - atoi
    - strnicmp
    - strcmp
    - strlen
    - GF_LOG
    - GF_4CC
    - gf_props_4cc_get_name
    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:2068,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2087,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2091,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2095,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2107,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2118,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:2124,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2125,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2126,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2137,1
    - Dst: filter_pid_check_fragment
      Src: /src/gpac/src/filter_core/filter_pid.c:2140,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2144,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2145,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2149,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2149,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2150,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:2152,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_pid.c:2154,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_pid.c:2155,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2160,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:2165,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2168,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2192,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2214,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2227,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: 2235
      start: 2049
    functionDepth: 5
    functionLinenumber: 2049
    functionLinenumberEnd: 2235
    functionName: filter_source_id_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - strchr
    - gf_free
    - gf_malloc
    - filter_pid_check_fragment
    - gf_assert
    - gf_strlcat
    - strcmp
    - strlen
    - gf_strdup
    - memcpy
    - strncmp
    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:2245,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2247,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:2252,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2253,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:2257,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:2258,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2259,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:2263,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:2264,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:2265,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2266,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:2270,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 2
    argNames:
    - parent
    - filter
    argTypes:
    - GF_Filter*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2272
      start: 2237
    functionDepth: 1
    functionLinenumber: 2237
    functionLinenumberEnd: 2272
    functionName: gf_filter_in_parent_chain
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_list_count
    - gf_filter_in_parent_chain
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    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: 2283
      start: 2275
    functionDepth: 0
    functionLinenumber: 2275
    functionLinenumberEnd: 2283
    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:2333,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filter_core/filter_pid.c:2334,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:2349,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2402,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2412,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2421,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2423,1
    - Dst: gf_filter_pid_get_property_str_first
      Src: /src/gpac/src/filter_core/filter_pid.c:2428,1
    - Dst: cap_code_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2473,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2475,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2490,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: 2533
      start: 2286
    functionDepth: 4
    functionLinenumber: 2286
    functionLinenumberEnd: 2533
    functionName: gf_filter_pid_caps_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_filter_pid_get_property
    - gf_filter_pid_get_property_str_first
    - gf_filter_pid_get_property_first
    - strcmp
    - gf_props_equal
    - gf_codecid_type
    - cap_code_match
    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: 2550
      start: 2535
    functionDepth: 0
    functionLinenumber: 2535
    functionLinenumberEnd: 2550
    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: 2570
      start: 2552
    functionDepth: 0
    functionLinenumber: 2552
    functionLinenumberEnd: 2570
    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:2573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - caps
    - nb_caps
    argTypes:
    - GF_FilterCapability*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2574
      start: 2571
    functionDepth: 1
    functionLinenumber: 2571
    functionLinenumberEnd: 2574
    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:2577,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - caps
    - nb_caps
    argTypes:
    - GF_FilterCapability*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2578
      start: 2575
    functionDepth: 1
    functionLinenumber: 2575
    functionLinenumberEnd: 2578
    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:2586,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2588,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2590,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - b
    argTypes:
    - GF_BundleDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2580
    functionDepth: 0
    functionLinenumber: 2580
    functionLinenumberEnd: 2591
    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:2600,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:2603,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:2606,1
    - Dst: cap_code_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2636,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2638,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2645,1
    - Dst: cache_bundle_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2647,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2665,1
    - Dst: cache_bundle_free
      Src: /src/gpac/src/filter_core/filter_pid.c:2667,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2693,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:2700,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: 2706
      start: 2593
    functionDepth: 1
    functionLinenumber: 2593
    functionLinenumberEnd: 2706
    functionName: caps_load_bundle
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_SAFEALLOC
    - strcmp
    - cap_code_match
    - gf_realloc
    - cache_bundle_free
    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:2715,1
    - Dst: caps_load_bundle
      Src: /src/gpac/src/filter_core/filter_pid.c:2722,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2726,1
    - Dst: caps_load_bundle
      Src: /src/gpac/src/filter_core/filter_pid.c:2732,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2737,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:2744,1
    - Dst: cap_code_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2761,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:2764,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2804,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2826,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:2839,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: 2909
      start: 2708
    functionDepth: 4
    functionLinenumber: 2708
    functionLinenumberEnd: 2909
    functionName: gf_filter_caps_to_caps_match
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_assert
    - caps_load_bundle
    - strcmp
    - gf_props_equal
    - cap_code_match
    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:2917,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:2921,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - _pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2911
    functionDepth: 5
    functionLinenumber: 2911
    functionLinenumberEnd: 2924
    functionName: gf_filter_pid_check_caps
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 99
    functionsReached:
    - gf_filter_pid_caps_match
    - PID_IS_OUTPUT
    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:2932,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:2935,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2936,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:2937,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_pid.c:2944,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_pid.c:2946,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: 2947
      start: 2927
    functionDepth: 1
    functionLinenumber: 2927
    functionLinenumberEnd: 2947
    functionName: concat_reg
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - strchr
    - gf_strlcat
    - strstr
    - 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:2981,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 44
    argCount: 2
    argNames:
    - freg
    - bundle_idx
    argTypes:
    - GF_FilterRegister*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2994
      start: 2949
    functionDepth: 0
    functionLinenumber: 2949
    functionLinenumberEnd: 2994
    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:3092,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: 3114
      start: 3002
    functionDepth: 1
    functionLinenumber: 3002
    functionLinenumberEnd: 3114
    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:3126,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:3127,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3138,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:3144,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3146,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3147,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3148,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pid.c:3150,1
    - Dst: gf_filter_caps_to_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3170,1
    - Dst: gf_realloc
      Src: /src/gpac/src/filter_core/filter_pid.c:3176,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: 3191
      start: 3116
    functionDepth: 5
    functionLinenumber: 3116
    functionLinenumberEnd: 3191
    functionName: gf_filter_reg_build_graph_single
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_assert
    - GF_SAFEALLOC
    - memset
    - gf_realloc
    - gf_filter_caps_to_caps_match
    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:3205,1
    - Dst: gf_filter_caps_bundle_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3209,1
    - Dst: gf_filter_has_in_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:3214,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:3222,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3225,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3227,1
    - Dst: gf_filter_reg_build_graph_single
      Src: /src/gpac/src/filter_core/filter_pid.c:3230,1
    - Dst: gf_filter_reg_build_graph_single
      Src: /src/gpac/src/filter_core/filter_pid.c:3234,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: 3237
      start: 3193
    functionDepth: 6
    functionLinenumber: 3193
    functionLinenumberEnd: 3237
    functionName: gf_filter_reg_build_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_reg_build_graph_single
    - gf_filter_has_in_caps
    - gf_filter_has_out_caps
    - GF_SAFEALLOC
    - gf_list_get
    - gf_filter_caps_bundle_count
    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:3245,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3247,1
    - Dst: cache_bundle_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3251,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3253,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3255,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - reg_desc
    argTypes:
    - GF_FilterRegDesc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3257
      start: 3239
    functionDepth: 1
    functionLinenumber: 3239
    functionLinenumberEnd: 3257
    functionName: bundle_cache_free
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - cache_bundle_free
    - gf_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:3261,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3263,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - fsess
    argTypes:
    - GF_FilterSession*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3265
      start: 3259
    functionDepth: 2
    functionLinenumber: 3259
    functionLinenumberEnd: 3265
    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:3271,1
    - Dst: gf_filter_reg_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3274,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3276,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3278,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3282,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3284,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3286,1
    - Dst: gf_filter_reg_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3289,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3291,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3294,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3294,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3298,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3300,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3303,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3305,1
    - Dst: reset_bundle_cache
      Src: /src/gpac/src/filter_core/filter_pid.c:3309,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 2
    argNames:
    - fsess
    - for_reg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3310
      start: 3267
    functionDepth: 7
    functionLinenumber: 3267
    functionLinenumberEnd: 3310
    functionName: gf_filter_sess_build_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_list_count
    - GF_LOG
    - gf_list_get
    - gf_sys_clock_high_res
    - gf_filter_reg_build_graph
    - reset_bundle_cache
    - gf_list_new
    - gf_list_add
    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:3314,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3318,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3321,1
    - Dst: memmove
      Src: /src/gpac/src/filter_core/filter_pid.c:3329,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3337,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:3338,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3339,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3340,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3343,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:3344,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3345,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3346,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:3349,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - fsess
    - freg
    argTypes:
    - GF_FilterSession*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3350
      start: 3312
    functionDepth: 3
    functionLinenumber: 3312
    functionLinenumberEnd: 3350
    functionName: gf_filter_sess_reset_graph
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_list_count
    - gf_free
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - memmove
    - gf_list_pop_back
    - 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:3356,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3359,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3361,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3364,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3366,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3368,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3371,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3375,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3377,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: 3379
      start: 3353
    functionDepth: 2
    functionLinenumber: 3353
    functionLinenumberEnd: 3379
    functionName: dump_graph_edges
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_count
    - gf_log_tool_level_on
    - gf_list_get
    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:3390,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:3398,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 18
    argCount: 2
    argNames:
    - pid
    - freg
    argTypes:
    - GF_FilterPid*
    - GF_FilterRegister*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3409
      start: 3382
    functionDepth: 2
    functionLinenumber: 3382
    functionLinenumberEnd: 3409
    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:3422,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3424,1
    - Dst: gf_filter_sess_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3425,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:3427,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:3431,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3440,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:3442,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3450,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3455,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3457,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3500,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3505,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3513,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3517,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3522,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3523,1
    - Dst: gf_filter_pid_caps_negociate_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3531,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3551,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3582,1
    - Dst: gf_filter_reg_build_graph
      Src: /src/gpac/src/filter_core/filter_pid.c:3586,1
    - Dst: dump_graph_edges
      Src: /src/gpac/src/filter_core/filter_pid.c:3593,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3606,1
    - Dst: gf_filter_pid_enable_edges
      Src: /src/gpac/src/filter_core/filter_pid.c:3639,1
    - Dst: reset_bundle_cache
      Src: /src/gpac/src/filter_core/filter_pid.c:3642,1
    - Dst: dump_graph_edges
      Src: /src/gpac/src/filter_core/filter_pid.c:3646,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3651,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3654,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:3667,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3674,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3675,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3677,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3678,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3680,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3684,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3688,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3696,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3704,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:3714,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3720,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:3741,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:3750,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3758,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3764,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:3771,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3790,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3791,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3792,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3795,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3797,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:3799,1
    - Dst: bundle_cache_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3801,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3802,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:3803,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: 3804
      start: 3411
    functionDepth: 8
    functionLinenumber: 3411
    functionLinenumberEnd: 3804
    functionName: gf_filter_pid_resolve_link_dijkstra
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_sess_build_graph
    - gf_assert
    - gf_filter_pid_caps_match
    - dump_graph_edges
    - gf_list_add
    - strstr
    - gf_list_find
    - bundle_cache_free
    - reset_bundle_cache
    - gf_list_get
    - gf_sys_clock_high_res
    - gf_props_get_property
    - gf_list_new
    - gf_filter_pid_caps_negociate_match
    - gf_free
    - GF_LOG
    - gf_list_del
    - gf_filter_reg_build_graph
    - gf_filter_pid_enable_edges
    - 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:3830,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:3836,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3839,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3840,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3841,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:3842,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:3844,1
    - Dst: gf_filter_pid_resolve_link_dijkstra
      Src: /src/gpac/src/filter_core/filter_pid.c:3845,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:3846,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3848,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3864,1
    - Dst: gf_filter_swap_source_register
      Src: /src/gpac/src/filter_core/filter_pid.c:3875,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3879,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3884,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3889,1
    - Dst: gf_filter_is_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:3891,1
    - Dst: gf_opts_get_bool
      Src: /src/gpac/src/filter_core/filter_pid.c:3898,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:3902,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3904,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3905,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3907,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3912,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3913,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3914,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3914,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3921,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3922,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3923,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3923,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3930,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:3932,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:3940,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3942,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:3952,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:3953,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3955,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:3958,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:3973,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:3974,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:3975,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:3981,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:3982,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:3986,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4003,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4004,1
    - Dst: gf_filter_out_caps_solved_by_connection
      Src: /src/gpac/src/filter_core/filter_pid.c:4030,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4034,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4036,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4039,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4047,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4048,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4066,1
    - Dst: gf_filter_reconnect_output
      Src: /src/gpac/src/filter_core/filter_pid.c:4074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4079,1
    - Dst: gf_filter_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4081,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4084,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4124,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4126,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4128,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4132,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4139,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4144,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4158,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4160,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4161,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:4164,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4176,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: 4178
      start: 3816
    functionDepth: 11
    functionLinenumber: 3816
    functionLinenumberEnd: 4178
    functionName: gf_filter_pid_resolve_link_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_filter_new
    - gf_assert
    - gf_list_add
    - strstr
    - gf_strdup
    - gf_list_find
    - gf_filter_is_sink
    - gf_filter_pid_resolve_link_dijkstra
    - gf_filter_reconnect_output
    - gf_list_get
    - gf_mx_v
    - gf_filter_swap_source_register
    - concat_reg
    - gf_log_tool_level_on
    - gf_mx_p
    - gf_list_new
    - sprintf
    - gf_filter_out_caps_solved_by_connection
    - GF_LOG
    - gf_list_del
    - gf_list_del_item
    - 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:4182,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: 4183
      start: 4180
    functionDepth: 12
    functionLinenumber: 4180
    functionLinenumberEnd: 4183
    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:4187,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: 4188
      start: 4185
    functionDepth: 12
    functionLinenumber: 4185
    functionLinenumberEnd: 4188
    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:4192,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: 4193
      start: 4190
    functionDepth: 12
    functionLinenumber: 4190
    functionLinenumberEnd: 4193
    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:4198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - pid
    - dst
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4200
      start: 4195
    functionDepth: 12
    functionLinenumber: 4195
    functionLinenumberEnd: 4200
    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:4213,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4216,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:4219,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4220,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4224,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:4228,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4231,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4232,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4233,1
    - Dst: concat_reg
      Src: /src/gpac/src/filter_core/filter_pid.c:4234,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:4236,1
    - Dst: gf_filter_pid_resolve_link_dijkstra
      Src: /src/gpac/src/filter_core/filter_pid.c:4237,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4238,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4239,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4240,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4243,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4245,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: 4247
      start: 4204
    functionDepth: 9
    functionLinenumber: 4204
    functionLinenumberEnd: 4247
    functionName: gf_filter_pid_compute_link
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - sprintf
    - gf_list_count
    - concat_reg
    - gf_list_del
    - gf_mx_v
    - gf_filter_pid_resolve_link_dijkstra
    - gf_mx_p
    - gf_filter_pid_caps_match
    - gf_filter_pid_needs_explicit_resolution
    - gf_list_new
    - gf_list_add
    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:4282,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_pid.c:4285,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4287,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4291,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:4297,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4310,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4310,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4310,1
    - Dst: gf_file_exists
      Src: /src/gpac/src/filter_core/filter_pid.c:4310,1
    - Dst: gf_fopen
      Src: /src/gpac/src/filter_core/filter_pid.c:4313,1
    - Dst: gf_feof
      Src: /src/gpac/src/filter_core/filter_pid.c:4315,1
    - Dst: gf_fgets
      Src: /src/gpac/src/filter_core/filter_pid.c:4319,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:4321,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4322,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4330,1
    - Dst: gf_filter_pid_set_args_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4335,1
    - Dst: gf_fclose
      Src: /src/gpac/src/filter_core/filter_pid.c:4337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4339,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4346,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:4353,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_pid.c:4354,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:4355,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:4358,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:4359,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4368,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4371,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4380,1
    - Dst: filter_pid_check_fragment
      Src: /src/gpac/src/filter_core/filter_pid.c:4386,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4392,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4393,1
    - Dst: strpbrk
      Src: /src/gpac/src/filter_core/filter_pid.c:4422,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:4423,1
    - Dst: filter_solve_prop_template
      Src: /src/gpac/src/filter_core/filter_pid.c:4424,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:4425,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:4426,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4432,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4434,1
    - Dst: gf_filter_pid_set_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:4436,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4445,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4446,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4448,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4449,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4450,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filter_core/filter_pid.c:4451,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4453,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4455,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4458,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4459,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4461,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4462,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4463,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4464,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4465,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4466,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4467,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4468,1
    - Dst: gf_bs_write_u16
      Src: /src/gpac/src/filter_core/filter_pid.c:4469,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filter_core/filter_pid.c:4470,1
    - Dst: gf_bs_write_u32
      Src: /src/gpac/src/filter_core/filter_pid.c:4471,1
    - Dst: gf_bs_get_content
      Src: /src/gpac/src/filter_core/filter_pid.c:4472,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filter_core/filter_pid.c:4474,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4476,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:4482,1
    - Dst: gf_stream_type_by_name
      Src: /src/gpac/src/filter_core/filter_pid.c:4492,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4505,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4512,1
    - Dst: gf_filter_pid_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4514,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:4519,1
    - Dst: gf_opts_set_key
      Src: /src/gpac/src/filter_core/filter_pid.c:4520,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4532,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4536,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4537,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:4538,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4539,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:4543,1
    - Dst: gf_props_parse_type
      Src: /src/gpac/src/filter_core/filter_pid.c:4546,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4548,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pid.c:4554,1
    - Dst: gf_props_parse_value
      Src: /src/gpac/src/filter_core/filter_pid.c:4559,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:4564,1
    - Dst: gf_filter_pid_set_property_dyn
      Src: /src/gpac/src/filter_core/filter_pid.c:4566,1
    CyclomaticComplexity: 105
    EdgeCount: 105
    ICount: 274
    argCount: 5
    argNames:
    - filter
    - pid
    - args
    - use_default_seps
    - argfile_level
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    - char*
    - Bool
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4582
      start: 4250
    functionDepth: 9
    functionLinenumber: 4250
    functionLinenumberEnd: 4582
    functionName: gf_filter_pid_set_args_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pid_set_property_dyn
    - gf_props_parse_value
    - gf_bs_get_content
    - gf_stream_type_by_name
    - gf_bs_new
    - gf_bs_del
    - gf_filter_pid_set_args_internal
    - gf_props_get_id
    - strstr
    - gf_opts_set_key
    - gf_feof
    - strchr
    - gf_fopen
    - filter_pid_check_fragment
    - gf_codecid_parse
    - gf_fgets
    - gf_strcpy
    - gf_props_reset_single
    - gf_file_exists
    - filter_solve_prop_template
    - gf_fs_path_escape_colon
    - strcmp
    - strlen
    - gf_props_parse_type
    - gf_filter_pid_set_property_str
    - gf_fclose
    - gf_props_4cc_get_type
    - gf_free
    - GF_LOG
    - strpbrk
    - GF_4CC
    - gf_filter_pid_set_property
    - gf_bs_write_u16
    - gf_bs_write_u32
    - gf_strdup
    - memset
    - strncmp
    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:4588,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4589,1
    - Dst: gf_filter_pid_set_args_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4597,1
    - Dst: gf_filter_pid_set_args_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:4600,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: 4603
      start: 4584
    functionDepth: 10
    functionLinenumber: 4584
    functionLinenumberEnd: 4603
    functionName: gf_filter_pid_push_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_filter_pid_set_args_internal
    - PID_IS_INPUT
    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:4615,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4617
      start: 4605
    functionDepth: 10
    functionLinenumber: 4605
    functionLinenumberEnd: 4617
    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:4628,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4630,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4632,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4637,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4639,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4646,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 25
    argCount: 2
    argNames:
    - filter
    - ignore_first
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4648
      start: 4619
    functionDepth: 1
    functionLinenumber: 4619
    functionLinenumberEnd: 4648
    functionName: gf_filter_last_id_in_chain
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_filter_last_id_in_chain
    - gf_mx_p
    - gf_mx_v
    - gf_list_get
    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:4652,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4657,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4658,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:4660,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:4663,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: 4664
      start: 4650
    functionDepth: 7
    functionLinenumber: 4650
    functionLinenumberEnd: 4664
    functionName: gf_filter_pid_retry_caps_negotiate
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_fs_post_disconnect_task
    - safe_int_inc
    - gf_assert
    - gf_list_new
    - 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:4674,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:4679,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:4681,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 65
    argCount: 2
    argNames:
    - pid
    - dst
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4750
      start: 4667
    functionDepth: 1
    functionLinenumber: 4667
    functionLinenumberEnd: 4750
    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:4756,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4757,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4760,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4760,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:4761,1
    - Dst: gf_list_insert
      Src: /src/gpac/src/filter_core/filter_pid.c:4762,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4765,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:4765,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:4769,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: 4770
      start: 4752
    functionDepth: 2
    functionLinenumber: 4752
    functionLinenumberEnd: 4770
    functionName: add_possible_link_destination
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - gf_list_find
    - gf_list_get
    - gf_list_insert
    - 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:4778,1
    - Dst: gf_list_enum
      Src: /src/gpac/src/filter_core/filter_pid.c:4779,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4780,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:4780,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filter_core/filter_pid.c:4780,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4782
      start: 4773
    functionDepth: 5
    functionLinenumber: 4773
    functionLinenumberEnd: 4782
    functionName: dump_pid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - gf_list_enum
    - gf_props_dump
    - gf_list_get
    - gf_props_4cc_get_name
    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:4793,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4795,1
    - Dst: gf_pid_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4796,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4804,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 2
    argNames:
    - pid
    - look_for_pid
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4806
      start: 4785
    functionDepth: 1
    functionLinenumber: 4785
    functionLinenumberEnd: 4806
    functionName: gf_pid_in_parent_chain
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_v
    - gf_mx_p
    - gf_pid_in_parent_chain
    - gf_list_get
    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:4810,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4812,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:4814,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:4816,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - flist
    - dst
    argTypes:
    - GF_List*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4820
      start: 4808
    functionDepth: 1
    functionLinenumber: 4808
    functionLinenumberEnd: 4820
    functionName: filter_match_target_dst
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_list_count
    - filter_match_target_dst
    - gf_list_get
    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:4826,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4828,1
    - Dst: parent_chain_has_dyn_pids
      Src: /src/gpac/src/filter_core/filter_pid.c:4829,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4830,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:4834,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4836
      start: 4822
    functionDepth: 1
    functionLinenumber: 4822
    functionLinenumberEnd: 4836
    functionName: parent_chain_has_dyn_pids
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - parent_chain_has_dyn_pids
    - gf_list_get
    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:4868,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:4869,1
    - Dst: gf_filter_reconf_output
      Src: /src/gpac/src/filter_core/filter_pid.c:4881,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter_pid.c:4885,1
    - Dst: gf_filter_pid_set_args
      Src: /src/gpac/src/filter_core/filter_pid.c:4888,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4895,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:4900,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4908,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:4910,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:4925,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4927,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4928,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:4929,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4931,1
    - Dst: gf_list_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:4951,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:4971,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:4984,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:4995,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:5019,1
    - Dst: gf_filter_has_out_caps
      Src: /src/gpac/src/filter_core/filter_pid.c:5021,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5036,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5037,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5049,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5055,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5056,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5067,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5068,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5071,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5072,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5074,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5082,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5108,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5112,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5113,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5115,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5117,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5120,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5127,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5128,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5129,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5130,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5133,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5134,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5135,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5136,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5161,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5175,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5180,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5186,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5200,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5209,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5215,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5221,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5237,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5239,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5240,1
    - Dst: gf_pid_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5242,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5245,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5248,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5249,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5252,1
    - Dst: gf_pid_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5254,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5257,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5262,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5263,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5265,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5266,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5268,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5269,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5270,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5283,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5297,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5301,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5318,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5328,1
    - Dst: gf_filter_last_id_in_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5337,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5338,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5345,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:5367,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5379,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5382,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5384,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5390,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5396,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5405,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:5416,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:5419,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:5425,1
    - Dst: gf_codecid_parse
      Src: /src/gpac/src/filter_core/filter_pid.c:5428,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5431,1
    - Dst: gf_codecid_type
      Src: /src/gpac/src/filter_core/filter_pid.c:5435,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_pid.c:5441,1
    - Dst: gf_filter_set_id
      Src: /src/gpac/src/filter_core/filter_pid.c:5442,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:5443,1
    - Dst: gf_filter_set_name
      Src: /src/gpac/src/filter_core/filter_pid.c:5444,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:5445,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5454,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5485,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5487,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5495,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5495,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5497,1
    - Dst: gf_filter_pid_caps_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5506,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5526,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5528,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5529,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5530,1
    - Dst: gf_filter_pid_needs_explicit_resolution
      Src: /src/gpac/src/filter_core/filter_pid.c:5545,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5546,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5554,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5555,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:5564,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5573,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5576,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5577,1
    - Dst: add_possible_link_destination
      Src: /src/gpac/src/filter_core/filter_pid.c:5583,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5599,1
    - Dst: gf_filter_pid_resolve_link_check_loaded
      Src: /src/gpac/src/filter_core/filter_pid.c:5605,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5613,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5614,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5615,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5616,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5617,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5618,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5619,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5620,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5630,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5631,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5632,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5633,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5634,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5635,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5636,1
    - Dst: gf_filter_post_remove
      Src: /src/gpac/src/filter_core/filter_pid.c:5646,1
    - Dst: gf_filter_pid_resolve_link
      Src: /src/gpac/src/filter_core/filter_pid.c:5651,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5654,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5655,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5656,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5657,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5658,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5659,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5660,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5678,1
    - Dst: gf_list_count
      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:5689,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:5690,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5696,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5700,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5703,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:5704,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5705,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5708,1
    - Dst: gf_filter_pid_post_connect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:5709,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5712,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5714,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5718,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5719,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5720,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5730,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5731,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5733,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5746,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5749,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5750,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5751,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5752,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5754,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5755,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5760,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5761,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5765,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5774,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5775,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5776,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5777,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:5779,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5780,1
    - Dst: filter_match_target_dst
      Src: /src/gpac/src/filter_core/filter_pid.c:5781,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5783,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5785,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:5791,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5795,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5800,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5809,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5811,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5814,1
    - Dst: filter_source_id_match
      Src: /src/gpac/src/filter_core/filter_pid.c:5818,1
    - Dst: gf_list_rem
      Src: /src/gpac/src/filter_core/filter_pid.c:5820,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5826,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5833,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5834,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5835,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5837,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5838,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5839,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter_pid.c:5840,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5843,1
    - Dst: gf_filter_clone
      Src: /src/gpac/src/filter_core/filter_pid.c:5851,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5853,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:5854,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:5855,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5857,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:5858,1
    - Dst: gf_fs_load_filter
      Src: /src/gpac/src/filter_core/filter_pid.c:5868,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5870,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5891,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5894,1
    - Dst: gf_fs_check_graph_load
      Src: /src/gpac/src/filter_core/filter_pid.c:5899,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5901,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5902,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:5903,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:5904,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_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5914,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5915,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:5921,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5922,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5928,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5933,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5937,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5938,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:5944,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:5947,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:5949,1
    - Dst: GF_FilterPid*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:5950,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:5951,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:5955,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:5957,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:5959,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:5961,1
    - Dst: gf_filter_pid_set_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:5963,1
    - Dst: parent_chain_has_dyn_pids
      Src: /src/gpac/src/filter_core/filter_pid.c:5966,1
    - Dst: gf_filter_setup_failure
      Src: /src/gpac/src/filter_core/filter_pid.c:5972,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:5981,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:5982,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5986,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:5988,1
    CyclomaticComplexity: 400
    EdgeCount: 400
    ICount: 734
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5996
      start: 4844
    functionDepth: 13
    functionLinenumber: 4844
    functionLinenumberEnd: 5996
    functionName: gf_filter_pid_init_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_list_count
    - gf_filter_pid_set_args
    - safe_int_dec
    - gf_filter_set_id
    - gf_filter_pid_set_eos
    - GF_FEVT_INIT
    - gf_assert
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - filter_source_id_match
    - gf_filter_pid_caps_match
    - gf_codecid_type
    - gf_filter_pid_post_connect_task
    - gf_list_add
    - gf_filter_reconf_output
    - filter_match_target_dst
    - parent_chain_has_dyn_pids
    - gf_filter_has_out_caps
    - gf_fs_check_graph_load
    - gf_list_find
    - gf_filter_pid_get_property_first
    - gf_codecid_parse
    - gf_list_get
    - gf_mx_v
    - gf_filter_pid_needs_explicit_resolution
    - gf_filter_post_remove
    - gf_list_clone
    - gf_fs_post_disconnect_task
    - safe_int_inc
    - gf_filter_pid_resolve_link_check_loaded
    - gf_mx_p
    - gf_pid_in_parent_chain
    - strcmp
    - gf_list_new
    - gf_fs_load_filter
    - GF_FilterPid*::filter::freg::process_event
    - gf_filter_set_name
    - gf_free
    - gf_filter_pid_resolve_link
    - GF_LOG
    - gf_filter_in_parent_chain
    - gf_list_del
    - gf_filter_clone
    - gf_list_del_item
    - gf_filter_setup_failure
    - gf_filter_pid_send_event_internal
    - add_possible_link_destination
    - gf_strdup
    - gf_filter_last_id_in_chain
    - 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: 5061
      start: 5057
    functionDepth: 0
    functionLinenumber: 5057
    functionLinenumberEnd: 5061
    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:5221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5223
      start: 5218
    functionDepth: 1
    functionLinenumber: 5218
    functionLinenumberEnd: 5223
    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:5262,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5263,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5265,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5266,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:5268,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:5269,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:5270,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5273
      start: 5259
    functionDepth: 3
    functionLinenumber: 5259
    functionLinenumberEnd: 5273
    functionName: if
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 10
    functionsReached:
    - GF_LOG
    - gf_list_count
    - gf_list_del_item
    - gf_list_get
    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:6000,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6001,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6003,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6005,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6006,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6007,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6008,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6009,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6010,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6011,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6012,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:6013,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6014
      start: 5998
    functionDepth: 5
    functionLinenumber: 5998
    functionLinenumberEnd: 6014
    functionName: gf_filter_pid_post_connect_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - safe_int_inc
    - gf_assert
    - gf_mx_p
    - 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:6022,1
    - Dst: gf_fs_post_task_ex
      Src: /src/gpac/src/filter_core/filter_pid.c:6028,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - filter
    - pid
    argTypes:
    - GF_Filter*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6029
      start: 6017
    functionDepth: 5
    functionLinenumber: 6017
    functionLinenumberEnd: 6029
    functionName: gf_filter_pid_post_init_task
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_fs_post_task_ex
    - safe_int_inc
    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:6036,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6037,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - pid
    - requires_full_blocks
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6042
      start: 6031
    functionDepth: 1
    functionLinenumber: 6031
    functionLinenumberEnd: 6042
    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:6050,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:6052,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6054,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6058,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6059,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6060,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6061,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6062,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6063,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6064,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:6069,1
    - Dst: gf_strdup
      Src: /src/gpac/src/filter_core/filter_pid.c:6070,1
    - Dst: gf_fq_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6073,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6077,1
    - Dst: gf_filter_pid_copy_properties
      Src: /src/gpac/src/filter_core/filter_pid.c:6078,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6080,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6081,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6083
      start: 6044
    functionDepth: 4
    functionLinenumber: 6044
    functionLinenumberEnd: 6083
    functionName: GF_FilterPid *gf_filter_pid_new(GF_Filter *filter)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_copy_properties
    - gf_list_count
    - sprintf
    - GF_LOG
    - gf_list_get
    - gf_mx_v
    - GF_SAFEALLOC
    - gf_mx_p
    - gf_fq_add
    - gf_list_new
    - gf_strdup
    - gf_list_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:6088,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6089,1
    - Dst: gf_filter_pid_inst_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6090,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:6090,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6092,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6094,1
    - Dst: gf_list_pop_back
      Src: /src/gpac/src/filter_core/filter_pid.c:6095,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6096,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6097,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6098,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6101,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6104,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6105,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6106,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6111,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6114,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6115,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6116,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6119,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6120,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6121
      start: 6085
    functionDepth: 12
    functionLinenumber: 6085
    functionLinenumberEnd: 6121
    functionName: gf_filter_pid_del
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - gf_list_count
    - gf_free
    - GF_LOG
    - gf_list_del
    - safe_int_dec
    - gf_assert
    - gf_props_del
    - gf_filter_pid_inst_del
    - gf_list_pop_back
    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:6125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6126
      start: 6123
    functionDepth: 13
    functionLinenumber: 6123
    functionLinenumberEnd: 6126
    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:6135,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6136,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6137,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6143,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6147,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6148,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6149,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6157,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6159,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6160,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6162,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:6163,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6164,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6165,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6173,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 37
    argCount: 2
    argNames:
    - pid
    - merge_props
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6183
      start: 6128
    functionDepth: 8
    functionLinenumber: 6128
    functionLinenumberEnd: 6183
    functionName: check_new_pid_props
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_props_new
    - safe_int_dec
    - gf_list_get
    - gf_list_del_item
    - gf_assert
    - gf_props_del
    - gf_mx_p
    - gf_props_merge_property
    - gf_mx_v
    - gf_list_last
    - gf_list_add
    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:6189,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6190,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6196,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6199,1
    - Dst: gf_props_get_base_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6199,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6200,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6201,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6202,1
    - Dst: gf_props_get_type_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6204,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6206,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pid.c:6207,1
    - Dst: gf_props_4cc_get_flags
      Src: /src/gpac/src/filter_core/filter_pid.c:6209,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6211,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6212,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6215,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pid.c:6216,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6220,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:6222,1
    - Dst: gf_props_equal_strict
      Src: /src/gpac/src/filter_core/filter_pid.c:6227,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6228,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:6229,1
    - Dst: gf_props_reset_single
      Src: /src/gpac/src/filter_core/filter_pid.c:6230,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6236,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6237,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6239,1
    - Dst: strnicmp
      Src: /src/gpac/src/filter_core/filter_pid.c:6240,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:6240,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6250,1
    - Dst: check_new_pid_props
      Src: /src/gpac/src/filter_core/filter_pid.c:6255,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6258,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6274,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6276,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6277,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:6284,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6285,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6287,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: 6288
      start: 6185
    functionDepth: 9
    functionLinenumber: 6185
    functionLinenumberEnd: 6288
    functionName: gf_filter_pid_set_property_full
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_get_property
    - gf_props_get_base_type
    - gf_filter_pid_set_name
    - strstr
    - gf_props_new
    - gf_props_set_property
    - check_new_pid_props
    - gf_props_equal_strict
    - gf_sys_is_test_mode
    - gf_props_reset_single
    - strnicmp
    - gf_filter_pid_get_property_str
    - gf_props_4cc_get_flags
    - sprintf
    - gf_props_4cc_get_type
    - gf_free
    - GF_LOG
    - exit
    - gf_props_get_type_name
    - gf_props_4cc_get_name
    - PID_IS_INPUT
    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:6294,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: 6295
      start: 6290
    functionDepth: 10
    functionLinenumber: 6290
    functionLinenumberEnd: 6295
    functionName: gf_filter_pid_set_property
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 290
    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:6301,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6302
      start: 6297
    functionDepth: 10
    functionLinenumber: 6297
    functionLinenumberEnd: 6302
    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:6308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6309
      start: 6304
    functionDepth: 10
    functionLinenumber: 6304
    functionLinenumberEnd: 6309
    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:6315,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: 6316
      start: 6311
    functionDepth: 10
    functionLinenumber: 6311
    functionLinenumberEnd: 6316
    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:6322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6323
      start: 6318
    functionDepth: 10
    functionLinenumber: 6318
    functionLinenumberEnd: 6323
    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:6329,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6330
      start: 6325
    functionDepth: 10
    functionLinenumber: 6325
    functionLinenumberEnd: 6330
    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:6337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6338,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6343,1
    - Dst: gf_props_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6344,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6345,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6347,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6350,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6353,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:6358,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6359,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6363,1
    - Dst: gf_props_equal
      Src: /src/gpac/src/filter_core/filter_pid.c:6365,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:6372,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6374,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6375,1
    - Dst: gf_props_dump
      Src: /src/gpac/src/filter_core/filter_pid.c:6376,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6382,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:6383,1
    - Dst: gf_props_set_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6385,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: 6386
      start: 6332
    functionDepth: 8
    functionLinenumber: 6332
    functionLinenumberEnd: 6386
    functionName: gf_filter_pid_negotiate_property_full
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - gf_props_new
    - GF_LOG
    - gf_list_del
    - gf_props_equal
    - gf_fs_post_task
    - gf_fq_count
    - gf_assert
    - gf_list_find
    - gf_props_set_property
    - gf_props_get_property
    - gf_log_tool_level_on
    - gf_props_dump
    - gf_list_new
    - gf_props_4cc_get_name
    - gf_list_add
    - PID_IS_OUTPUT
    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:6392,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: 6393
      start: 6388
    functionDepth: 9
    functionLinenumber: 6388
    functionLinenumberEnd: 6393
    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:6399,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6400
      start: 6395
    functionDepth: 9
    functionLinenumber: 6395
    functionLinenumberEnd: 6400
    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:6406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pid
    - name
    - value
    argTypes:
    - GF_FilterPid*
    - char*
    - GF_PropertyValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6407
      start: 6402
    functionDepth: 9
    functionLinenumber: 6402
    functionLinenumberEnd: 6407
    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:6412,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6417,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6418,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6419,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6420,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6421,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6430,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6432,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6434,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6435,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - pid
    - first_prop_if_output
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6439
      start: 6410
    functionDepth: 1
    functionLinenumber: 6410
    functionLinenumberEnd: 6439
    functionName: filter_pid_get_prop_map
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - gf_list_get
    - gf_mx_p
    - gf_fatal_assert
    - gf_mx_v
    - gf_list_last
    - 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:6448,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6449,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6451,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:6454,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6460,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6462,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:6462,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6464,1
    - Dst: GF_SAFEALLOC
      Src: /src/gpac/src/filter_core/filter_pid.c:6466,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6469,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6472
      start: 6442
    functionDepth: 3
    functionLinenumber: 6442
    functionLinenumberEnd: 6472
    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_list_count
    - GF_LOG
    - gf_list_new
    - GF_SAFEALLOC
    - strcmp
    - gf_list_get
    - gf_props_4cc_get_name
    - gf_list_add
    - gf_4cc_to_str
    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: 6475
      start: 6474
    functionDepth: 0
    functionLinenumber: 6474
    functionLinenumberEnd: 6475
    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:6479,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6481,1
    - Dst: gf_props_4cc_get_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6482,1
    - Dst: gf_sys_is_test_mode
      Src: /src/gpac/src/filter_core/filter_pid.c:6485,1
    - Dst: exit
      Src: /src/gpac/src/filter_core/filter_pid.c:6486,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - prop_4cc
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6488
      start: 6477
    functionDepth: 1
    functionLinenumber: 6477
    functionLinenumberEnd: 6488
    functionName: check_prop_type
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_LOG
    - exit
    - gf_sys_is_test_mode
    - gf_props_4cc_get_name
    - 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:6493,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6497,1
    - Dst: check_prop_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6498,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6500,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6500,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6501
      start: 6490
    functionDepth: 3
    functionLinenumber: 6490
    functionLinenumberEnd: 6501
    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:
    - filter_pid_get_prop_map
    - gf_props_4cc_get_type
    - gf_props_get_property
    - pid_check_prop
    - check_prop_type
    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:6505,1
    - Dst: gf_props_4cc_get_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6509,1
    - Dst: check_prop_type
      Src: /src/gpac/src/filter_core/filter_pid.c:6510,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6512,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6512,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - pid
    - prop_4cc
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6513
      start: 6503
    functionDepth: 3
    functionLinenumber: 6503
    functionLinenumberEnd: 6513
    functionName: gf_filter_pid_get_property_first
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - filter_pid_get_prop_map
    - gf_props_4cc_get_type
    - gf_props_get_property
    - pid_check_prop
    - check_prop_type
    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:6518,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6521,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6521,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6522
      start: 6515
    functionDepth: 3
    functionLinenumber: 6515
    functionLinenumberEnd: 6522
    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:
    - gf_props_get_property
    - pid_check_prop
    - filter_pid_get_prop_map
    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:6526,1
    - Dst: pid_check_prop
      Src: /src/gpac/src/filter_core/filter_pid.c:6529,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6529,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - pid
    - prop_name
    argTypes:
    - GF_FilterPid*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6530
      start: 6524
    functionDepth: 3
    functionLinenumber: 6524
    functionLinenumberEnd: 6530
    functionName: gf_filter_pid_get_property_str_first
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_props_get_property
    - pid_check_prop
    - filter_pid_get_prop_map
    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:6534,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6537,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - pid
    - prop_4cc
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6538
      start: 6532
    functionDepth: 2
    functionLinenumber: 6532
    functionLinenumberEnd: 6538
    functionName: gf_filter_pid_get_property_entry
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_props_get_property_entry
    - filter_pid_get_prop_map
    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:6543,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6546,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6547
      start: 6540
    functionDepth: 2
    functionLinenumber: 6540
    functionLinenumberEnd: 6547
    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:
    - gf_props_get_property_entry
    - filter_pid_get_prop_map
    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:6557,1
    - Dst: filter_pid_get_prop_map
      Src: /src/gpac/src/filter_core/filter_pid.c:6559,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6562,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6569,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6572,1
    - Dst: gf_props_get_property_entry
      Src: /src/gpac/src/filter_core/filter_pid.c:6578,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6582,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6585,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6590,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6593,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6597,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6602,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6610,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: 6613
      start: 6549
    functionDepth: 2
    functionLinenumber: 6549
    functionLinenumberEnd: 6613
    functionName: gf_filter_pid_get_info_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - filter_pid_get_prop_map
    - safe_int_inc
    - gf_props_get_property_entry
    - gf_filter_pid_get_info_internal
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    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:6620,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6623,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6624
      start: 6615
    functionDepth: 3
    functionLinenumber: 6615
    functionLinenumberEnd: 6624
    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:6631,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6635
      start: 6626
    functionDepth: 3
    functionLinenumber: 6626
    functionLinenumberEnd: 6635
    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:6641,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:6648,1
    - Dst: gf_props_enum_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6651,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6663,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6664,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6671,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6675,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:6677,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:6680,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:6681,1
    - Dst: gf_filter_pid_enum_info_local
      Src: /src/gpac/src/filter_core/filter_pid.c:6683,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6686,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6692,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: 6695
      start: 6637
    functionDepth: 2
    functionLinenumber: 6637
    functionLinenumberEnd: 6695
    functionName: gf_filter_pid_enum_info_local
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - PID_IS_OUTPUT
    - gf_filter_pid_enum_info_local
    - gf_list_get
    - gf_mx_v
    - gf_list_find
    - gf_mx_p
    - gf_list_new
    - gf_list_add
    - gf_props_enum_property
    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:6700,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6701,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6703
      start: 6696
    functionDepth: 3
    functionLinenumber: 6696
    functionLinenumberEnd: 6703
    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_list_del
    - gf_filter_pid_enum_info_local
    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:6710,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6711,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6715,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6716,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6718,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6719,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6724,1
    - Dst: gf_filter_pid_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6725,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6727,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6728,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6732,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6733,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: 6735
      start: 6705
    functionDepth: 3
    functionLinenumber: 6705
    functionLinenumberEnd: 6735
    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_mx_v
    - gf_list_get
    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:6742,1
    - Dst: gf_filter_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6745,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6746
      start: 6737
    functionDepth: 4
    functionLinenumber: 6737
    functionLinenumberEnd: 6746
    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:6753,1
    - Dst: gf_filter_get_info_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6756,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6757
      start: 6748
    functionDepth: 4
    functionLinenumber: 6748
    functionLinenumberEnd: 6757
    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:6763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - propentry
    argTypes:
    - GF_PropertyEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6765
      start: 6759
    functionDepth: 6
    functionLinenumber: 6759
    functionLinenumberEnd: 6765
    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:6772,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6773,1
    - Dst: check_new_pid_props
      Src: /src/gpac/src/filter_core/filter_pid.c:6777,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6780,1
    - Dst: gf_props_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:6783,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6786
      start: 6767
    functionDepth: 9
    functionLinenumber: 6767
    functionLinenumberEnd: 6786
    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: 14
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6791,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6792,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6796,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6797,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6798,1
    - Dst: check_new_pid_props
      Src: /src/gpac/src/filter_core/filter_pid.c:6802,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6805,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6813,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6817,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6818,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6819,1
    - Dst: gf_fatal_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6820,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6821,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6832,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:6833,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6834,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6836,1
    - Dst: gf_filter_pid_set_name
      Src: /src/gpac/src/filter_core/filter_pid.c:6841,1
    - Dst: gf_props_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:6844,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6848,1
    - Dst: gf_props_merge_property
      Src: /src/gpac/src/filter_core/filter_pid.c:6852,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 6
    argNames:
    - dst_pid
    - src_pid
    - filter_prop
    - cbk
    - is_merge
    - force_src_props
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    - gf_filter_prop_filter
    - void*
    - Bool
    - GF_PropertyMap*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6853
      start: 6788
    functionDepth: 9
    functionLinenumber: 6788
    functionLinenumberEnd: 6853
    functionName: gf_filter_pid_merge_properties_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - gf_list_get
    - check_new_pid_props
    - gf_props_reset
    - gf_filter_pid_set_name
    - gf_mx_p
    - gf_fatal_assert
    - gf_props_merge_property
    - gf_mx_v
    - gf_list_last
    - PID_IS_INPUT
    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,
      GF_PropertyMap *force_src_props)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_merge_properties_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6858,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: 6859
      start: 6855
    functionDepth: 10
    functionLinenumber: 6855
    functionLinenumberEnd: 6859
    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:6863,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - dst_pid
    - src_pid
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6864
      start: 6860
    functionDepth: 10
    functionLinenumber: 6860
    functionLinenumberEnd: 6864
    functionName: gf_filter_pid_copy_properties
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 126
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_merge_properties_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6872,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - dst_pid
    - src_pck
    argTypes:
    - GF_FilterPid*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6873
      start: 6866
    functionDepth: 10
    functionLinenumber: 6866
    functionLinenumberEnd: 6873
    functionName: gf_filter_pid_copy_properties_from_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_filter_pid_merge_properties_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_copy_properties_from_packet(GF_FilterPid *dst_pid,
      GF_FilterPacket *src_pck)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_merge_properties_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:6881,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - dst_pid
    - src_pck
    - filter_prop
    - cbk
    argTypes:
    - GF_FilterPid*
    - GF_FilterPacket*
    - gf_filter_prop_filter
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6882
      start: 6875
    functionDepth: 10
    functionLinenumber: 6875
    functionLinenumberEnd: 6882
    functionName: gf_filter_pid_merge_properties_from_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_merge_properties_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_merge_properties_from_packet(GF_FilterPid *dst_pid,
      GF_FilterPacket *src_pck, gf_filter_prop_filter filter_prop, void *cbk)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:6889,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:6890,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6892,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:6896,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6898
      start: 6885
    functionDepth: 1
    functionLinenumber: 6885
    functionLinenumberEnd: 6898
    functionName: gf_filter_pid_get_packet_count
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - gf_list_get
    - gf_fq_count
    - PID_IS_OUTPUT
    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:6906,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6907,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6908,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6911,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6912,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:6913,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6922,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6923,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6925,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6939,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6941,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:6946,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 38
    argCount: 2
    argNames:
    - pidi
    - pcki
    argTypes:
    - GF_FilterPidInst*
    - GF_FilterPacketInstance*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6948
      start: 6900
    functionDepth: 7
    functionLinenumber: 6900
    functionLinenumberEnd: 6948
    functionName: gf_filter_pid_filter_internal_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_fs_post_disconnect_task
    - GF_LOG
    - safe_int_dec
    - gf_assert
    - gf_filter_pid_drop_packet
    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:6965,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:6966,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:6968,1
    - Dst: gf_list_del_item
      Src: /src/gpac/src/filter_core/filter_pid.c:6969,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:6970,1
    - Dst: gf_props_del
      Src: /src/gpac/src/filter_core/filter_pid.c:6971,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:6976,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6982,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:6989,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:6991,1
    - Dst: gf_list_reset
      Src: /src/gpac/src/filter_core/filter_pid.c:6997,1
    - Dst: gf_filter_pid_configure
      Src: /src/gpac/src/filter_core/filter_pid.c:7000,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: 7008
      start: 6950
    functionDepth: 15
    functionLinenumber: 6950
    functionLinenumberEnd: 7008
    functionName: filter_pck_check_prop_change
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - safe_int_dec
    - gf_list_del_item
    - gf_assert
    - gf_filter_pid_configure
    - gf_props_del
    - gf_mx_p
    - gf_mx_v
    - gf_list_reset
    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:7016,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7019,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7020,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_pid.c:7029,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:7037,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7041,1
    - Dst: gf_filter_pid_filter_internal_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7043,1
    - Dst: filter_pck_check_prop_change
      Src: /src/gpac/src/filter_core/filter_pid.c:7056,1
    - Dst: gf_th_id
      Src: /src/gpac/src/filter_core/filter_pid.c:7064,1
    - Dst: GF_FEVT_INIT
      Src: /src/gpac/src/filter_core/filter_pid.c:7071,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:7075,1
    - Dst: GF_FilterPidInst*::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:7076,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:7077,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:7084,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 58
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7087
      start: 7010
    functionDepth: 16
    functionLinenumber: 7010
    functionLinenumberEnd: 7087
    functionName: GF_FilterPacket *gf_filter_pid_get_packet(GF_FilterPid *pid)
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pid_filter_internal_packet
    - filter_pck_check_prop_change
    - GF_LOG
    - gf_fq_head
    - gf_filter_pid_check_unblock
    - GF_FEVT_INIT
    - gf_sys_clock_high_res
    - gf_assert
    - gf_th_id
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - GF_FilterPidInst*::filter::freg::process_event
    - PID_IS_OUTPUT
    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:7095,1
    - Dst: gf_filter_pid_filter_internal_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7110,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7111,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 1
    argNames:
    - pidinst
    argTypes:
    - GF_FilterPidInst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7116
      start: 7089
    functionDepth: 8
    functionLinenumber: 7089
    functionLinenumberEnd: 7116
    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_filter_internal_packet
    - gf_filter_pid_probe_next_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:7123,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7124,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7129,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7134,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7138,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pid.c:7140,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - pid
    - cts
    argTypes:
    - GF_FilterPid*
    - u64*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7144
      start: 7118
    functionDepth: 9
    functionLinenumber: 7118
    functionLinenumberEnd: 7144
    functionName: gf_filter_pid_get_first_packet_cts
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - GF_LOG
    - gf_assert
    - gf_timestamp_rescale
    - gf_filter_pid_probe_next_packet
    - gf_list_get
    - PID_IS_OUTPUT
    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:7151,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7152,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7157,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7162,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7167
      start: 7146
    functionDepth: 9
    functionLinenumber: 7146
    functionLinenumberEnd: 7167
    functionName: gf_filter_pid_first_packet_is_empty
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_LOG
    - gf_filter_pid_probe_next_packet
    - gf_assert
    - 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:7174,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7175,1
    - Dst: gf_filter_pid_probe_next_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7180,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7185,1
    - Dst: gf_filter_pck_is_blocking_ref
      Src: /src/gpac/src/filter_core/filter_pid.c:7186,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7187
      start: 7169
    functionDepth: 9
    functionLinenumber: 7169
    functionLinenumberEnd: 7187
    functionName: gf_filter_pid_first_packet_is_blocking_ref
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_assert
    - gf_filter_pck_is_blocking_ref
    - gf_filter_pid_probe_next_packet
    - PID_IS_OUTPUT
    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:7192,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pid.c:7218,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 64
    argCount: 2
    argNames:
    - pidi
    - pck
    argTypes:
    - GF_FilterPidInst*
    - GF_FilterPacket*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7264
      start: 7190
    functionDepth: 2
    functionLinenumber: 7190
    functionLinenumberEnd: 7264
    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: 7283
      start: 7266
    functionDepth: 0
    functionLinenumber: 7266
    functionLinenumberEnd: 7283
    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:7298,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7301,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7302,1
    - Dst: gf_fq_pop
      Src: /src/gpac/src/filter_core/filter_pid.c:7309,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7319,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7332,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7333,1
    - Dst: gf_filter_pidinst_update_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7336,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7345,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:7346,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pid.c:7352,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7354,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7357,1
    - Dst: safe_int64_sub
      Src: /src/gpac/src/filter_core/filter_pid.c:7358,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7376,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:7380,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:7387,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7389,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:7392,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7397,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7399,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7401,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7403,1
    - Dst: memset
      Src: /src/gpac/src/filter_core/filter_pid.c:7409,1
    - Dst: gf_mem_get_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7413,1
    - Dst: gf_fq_res_add
      Src: /src/gpac/src/filter_core/filter_pid.c:7417,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:7418,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7421,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7422,1
    - Dst: gf_filter_packet_destroy
      Src: /src/gpac/src/filter_core/filter_pid.c:7423,1
    - Dst: gf_mem_get_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7428,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7437,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7438,1
    - Dst: gf_filter_forward_clock
      Src: /src/gpac/src/filter_core/filter_pid.c:7440,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 99
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7443
      start: 7285
    functionDepth: 9
    functionLinenumber: 7285
    functionLinenumberEnd: 7443
    functionName: gf_filter_pid_drop_packet
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 153
    functionsReached:
    - gf_filter_pidinst_update_stats
    - safe_int_dec
    - gf_assert
    - safe_int64_sub
    - gf_fq_res_add
    - gf_fq_pop
    - PID_IS_OUTPUT
    - gf_timestamp_rescale
    - gf_mx_v
    - gf_list_get
    - gf_filter_packet_destroy
    - gf_filter_pid_check_unblock
    - gf_log_tool_level_on
    - gf_mx_p
    - gf_filter_forward_clock
    - gf_free
    - GF_LOG
    - gf_mem_get_stats
    - gf_fq_count
    - memset
    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:7451,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7452,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_pid.c:7465,1
    - Dst: gf_filter_pid_filter_internal_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7467,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7474
      start: 7445
    functionDepth: 8
    functionLinenumber: 7445
    functionLinenumberEnd: 7474
    functionName: gf_filter_pid_is_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 132
    functionsReached:
    - GF_LOG
    - gf_fq_head
    - gf_filter_pid_filter_internal_packet
    - PID_IS_OUTPUT
    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:7480,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7481,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7489
      start: 7476
    functionDepth: 1
    functionLinenumber: 7476
    functionLinenumberEnd: 7489
    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:7498,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7499,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7509,1
    - Dst: gf_filter_pck_new_shared_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7511,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7513,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filter_core/filter_pid.c:7516,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter_pid.c:7520,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7523,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7526,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7532,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 2
    argNames:
    - pid
    - is_flush
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7533
      start: 7492
    functionDepth: 11
    functionLinenumber: 7492
    functionLinenumberEnd: 7533
    functionName: gf_filter_pid_set_eos_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_mx_v
    - gf_filter_pck_new_shared_internal
    - gf_mx_p
    - PID_IS_INPUT
    - gf_list_get
    - 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:7538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7539
      start: 7535
    functionDepth: 12
    functionLinenumber: 7535
    functionLinenumberEnd: 7539
    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:7546,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7548,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7552,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7553,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7556,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7558,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:7559,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7563,1
    - Dst: gf_props_enum_property
      Src: /src/gpac/src/filter_core/filter_pid.c:7567,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7568
      start: 7541
    functionDepth: 2
    functionLinenumber: 7541
    functionLinenumberEnd: 7568
    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:
    - safe_int_inc
    - GF_LOG
    - gf_list_get
    - gf_mx_p
    - gf_mx_v
    - gf_list_last
    - PID_IS_INPUT
    - gf_props_enum_property
    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:7578,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7592,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7616,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7636,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7637,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7638,1
    - Dst: gf_log_tool_level_on
      Src: /src/gpac/src/filter_core/filter_pid.c:7641,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7643,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7645,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7650,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7651,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 52
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7653
      start: 7570
    functionDepth: 2
    functionLinenumber: 7570
    functionLinenumberEnd: 7653
    functionName: gf_filter_pid_would_block
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 33
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - gf_assert
    - gf_log_tool_level_on
    - gf_mx_p
    - 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: 7660
      start: 7655
    functionDepth: 0
    functionLinenumber: 7655
    functionLinenumberEnd: 7660
    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: 5
    BranchProfiles: []
    Callsites:
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:7671,1
    - Dst: gf_timestamp_rescale
      Src: /src/gpac/src/filter_core/filter_pid.c:7673,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7676
      start: 7662
    functionDepth: 1
    functionLinenumber: 7662
    functionLinenumberEnd: 7676
    functionName: get_pid_buf_max
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_last
    - gf_timestamp_rescale
    linkageType: ''
    returnType: GFINLINE
    signature: GFINLINE get_pid_buf_max(GF_FilterPid *pid)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7685,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7726,1
    - Dst: gf_filter_pid_query_buffer_duration_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7731,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7731,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7742,1
    - Dst: get_pid_buf_max
      Src: /src/gpac/src/filter_core/filter_pid.c:7745,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7767,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7771,1
    - Dst: gf_filter_pid_query_buffer_duration_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7773,1
    - Dst: get_pid_buf_max
      Src: /src/gpac/src/filter_core/filter_pid.c:7783,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 80
    argCount: 4
    argNames:
    - pid
    - check_pid_full
    - force_update
    - buffer_max
    argTypes:
    - GF_FilterPid*
    - Bool
    - Bool
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7788
      start: 7678
    functionDepth: 2
    functionLinenumber: 7678
    functionLinenumberEnd: 7788
    functionName: gf_filter_pid_query_buffer_duration_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_list_get
    - get_pid_buf_max
    - gf_mx_p
    - 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, u32 *buffer_max)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_query_buffer_duration_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7793,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - pid
    - check_pid_full
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7794
      start: 7790
    functionDepth: 3
    functionLinenumber: 7790
    functionLinenumberEnd: 7794
    functionName: gf_filter_pid_query_buffer_duration
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 12
    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: 1
    BranchProfiles: []
    Callsites:
    - Dst: gf_filter_pid_query_buffer_duration_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:7799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - pid
    - buffer_max
    argTypes:
    - GF_FilterPid*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7800
      start: 7796
    functionDepth: 3
    functionLinenumber: 7796
    functionLinenumberEnd: 7800
    functionName: gf_filter_pid_query_buffer_duration_and_max
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - gf_filter_pid_query_buffer_duration_internal
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_query_buffer_duration_and_max(GF_FilterPid
      *pid, u32 *buffer_max)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:7806,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7807,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:7812,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:7814,1
    - Dst: gf_filter_pid_has_seen_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:7815,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7816,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:7820,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7822
      start: 7802
    functionDepth: 1
    functionLinenumber: 7802
    functionLinenumberEnd: 7822
    functionName: gf_filter_pid_has_seen_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 9
    functionsReached:
    - GF_LOG
    - gf_filter_pid_has_seen_eos
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    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:7827,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:7828,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7833
      start: 7824
    functionDepth: 1
    functionLinenumber: 7824
    functionLinenumberEnd: 7833
    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: 7867
      start: 7836
    functionDepth: 0
    functionLinenumber: 7836
    functionLinenumberEnd: 7867
    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:7872,1
    - Dst: gf_filter_aggregate_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:7877,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:7880,1
    - Dst: gf_fq_head
      Src: /src/gpac/src/filter_core/filter_pid.c:7881,1
    - Dst: filter_pck_check_prop_change
      Src: /src/gpac/src/filter_core/filter_pid.c:7887,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:7889,1
    - Dst: gf_filter_pidinst_reset_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:7892,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7894,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7895,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7906,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7907,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:7911,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 2
    argNames:
    - task
    - had_eos
    argTypes:
    - GF_FSTask*
    - Bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7912
      start: 7869
    functionDepth: 16
    functionLinenumber: 7869
    functionLinenumberEnd: 7912
    functionName: gf_filter_pid_reset_task_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - filter_pck_check_prop_change
    - GF_LOG
    - gf_fq_head
    - safe_int_dec
    - gf_filter_pid_check_unblock
    - gf_fq_count
    - gf_assert
    - gf_filter_pidinst_reset_stats
    - gf_filter_aggregate_packets
    - gf_filter_pid_drop_packet
    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:7916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7917
      start: 7914
    functionDepth: 17
    functionLinenumber: 7914
    functionLinenumberEnd: 7917
    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:7923,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7926
      start: 7919
    functionDepth: 17
    functionLinenumber: 7919
    functionLinenumberEnd: 7926
    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: 7935
      start: 7934
    functionDepth: 0
    functionLinenumber: 7934
    functionLinenumberEnd: 7935
    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:7940,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7945,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7950,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7952,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7959,1
    - Dst: TO_REFSTRING
      Src: /src/gpac/src/filter_core/filter_pid.c:7961,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: 7967
      start: 7936
    functionDepth: 1
    functionLinenumber: 7936
    functionLinenumberEnd: 7967
    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:7971,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:7972,1
    - Dst: evt_get_refstr
      Src: /src/gpac/src/filter_core/filter_pid.c:7976,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:7978,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7982
      start: 7968
    functionDepth: 2
    functionLinenumber: 7968
    functionLinenumberEnd: 7982
    functionName: dup_evt
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - evt_get_refstr
    - memcpy
    - gf_malloc
    - safe_int_inc
    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:7989,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:7991,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:7992,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:7993,1
    - Dst: gf_free
      Src: /src/gpac/src/filter_core/filter_pid.c:7998,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7999
      start: 7984
    functionDepth: 2
    functionLinenumber: 7984
    functionLinenumberEnd: 7999
    functionName: free_evt
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - evt_get_refstr
    - safe_int_dec
    - gf_free
    - gf_assert
    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:8003,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:8004,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:8045,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:8046,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:8048,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 1
    argNames:
    - evt
    argTypes:
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8055
      start: 8001
    functionDepth: 1
    functionLinenumber: 8001
    functionLinenumberEnd: 8055
    functionName: init_evt
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - memcpy
    - gf_malloc
    - gf_strlcpy
    - strlen
    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:8067,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8070,1
    - Dst: filter_pid_is_raw_source
      Src: /src/gpac/src/filter_core/filter_pid.c:8075,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8080,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8082
      start: 8058
    functionDepth: 1
    functionLinenumber: 8058
    functionLinenumberEnd: 8082
    functionName: filter_pid_is_raw_source
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_mx_p
    - gf_mx_v
    - filter_pid_is_raw_source
    - gf_list_get
    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:8100,1
    - Dst: TASK_REQUEUE
      Src: /src/gpac/src/filter_core/filter_pid.c:8105,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:8111,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:8112,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8115,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8152,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:8154,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8157,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8162,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8171,1
    - Dst: filter_pid_is_raw_source
      Src: /src/gpac/src/filter_core/filter_pid.c:8181,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:8190,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filter_core/filter_pid.c:8192,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8201,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8201,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8203,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8216,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8216,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8218,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8218,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8221,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8223,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:8227,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8232,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8232,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8237,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8238,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8243,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8243,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8244,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8249,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8249,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8250,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8255,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8264,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8268,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:8270,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:8275,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:8277,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:8278,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:8279,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8282,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8291,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8291,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8297,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8321,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8325,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8328,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8330,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8334,1
    - Dst: gf_fs_post_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8336,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8338,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8341,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8344,1
    - Dst: gf_filter_post_process_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8349,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8359,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8362,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8366,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8369,1
    - Dst: gf_filter_pid_set_discard
      Src: /src/gpac/src/filter_core/filter_pid.c:8372,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8374,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8377,1
    - Dst: gf_filter_pid_would_block
      Src: /src/gpac/src/filter_core/filter_pid.c:8388,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:8391,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8397,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8402,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8403,1
    - Dst: gf_list_new
      Src: /src/gpac/src/filter_core/filter_pid.c:8407,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8412,1
    - Dst: gf_list_find
      Src: /src/gpac/src/filter_core/filter_pid.c:8420,1
    - Dst: gf_list_add
      Src: /src/gpac/src/filter_core/filter_pid.c:8423,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8428,1
    - Dst: dup_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8431,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8434,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8436,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8436,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8438,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8440,1
    - Dst: gf_list_del
      Src: /src/gpac/src/filter_core/filter_pid.c:8441,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8442,1
    CyclomaticComplexity: 110
    EdgeCount: 110
    ICount: 258
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8444
      start: 8084
    functionDepth: 8
    functionLinenumber: 8084
    functionLinenumberEnd: 8444
    functionName: gf_filter_pid_send_event_downstream
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - safe_int_dec
    - gf_assert
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - free_evt
    - gf_list_add
    - gf_filter_pid_would_block
    - gf_filter_post_process_task
    - gf_list_find
    - gf_mx_v
    - gf_list_get
    - gf_filter_pid_set_discard
    - safe_int_inc
    - gf_filter_pid_check_unblock
    - gf_fs_post_task
    - TASK_REQUEUE
    - gf_mx_p
    - gf_list_new
    - gf_fs_post_task_class
    - FSESS_CHECK_THREAD
    - filter_pid_is_raw_source
    - GF_Filter*::freg::process_event
    - GF_LOG
    - gf_list_del
    - gf_filter_event_name
    - dup_evt
    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:8454,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:8459,1
    - Dst: GF_Filter*::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:8460,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:8461,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8467,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8470,1
    - Dst: dup_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8472,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8474,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8478,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - task
    argTypes:
    - GF_FSTask*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8479
      start: 8446
    functionDepth: 6
    functionLinenumber: 8446
    functionLinenumberEnd: 8479
    functionName: gf_filter_pid_send_event_upstream
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - GF_Filter*::freg::process_event
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - TASK_REQUEUE
    - free_evt
    - gf_list_get
    - gf_fs_post_task_class
    - 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:8501,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8505,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8505,1
    - Dst: init_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8510,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8513,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8517,1
    - Dst: dup_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8519,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8521,1
    - Dst: free_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8524,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8535,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8538,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8546,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8551,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8563,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8569,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8575,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8584,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8588,1
    - Dst: init_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8594,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8598,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8600,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: 8601
      start: 8481
    functionDepth: 6
    functionLinenumber: 8481
    functionLinenumberEnd: 8601
    functionName: gf_filter_pid_send_event_internal
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - gf_filter_event_name
    - gf_mx_v
    - gf_mx_p
    - free_evt
    - gf_list_get
    - init_evt
    - PID_IS_INPUT
    - gf_fs_post_task_class
    - dup_evt
    - PID_IS_OUTPUT
    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:8610,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - pid
    - evt
    argTypes:
    - GF_FilterPid*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8611
      start: 8603
    functionDepth: 7
    functionLinenumber: 8603
    functionLinenumberEnd: 8611
    functionName: gf_filter_pid_send_event
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 145
    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:8629,1
    - Dst: gf_filter_pid_send_event_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:8630,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8637,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8637,1
    - Dst: init_evt
      Src: /src/gpac/src/filter_core/filter_pid.c:8661,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8663,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8666,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8670,1
    - Dst: gf_filter_event_name
      Src: /src/gpac/src/filter_core/filter_pid.c:8670,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8673,1
    - Dst: gf_fs_post_task_class
      Src: /src/gpac/src/filter_core/filter_pid.c:8675,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 51
    argCount: 3
    argNames:
    - filter
    - evt
    - upstream
    argTypes:
    - GF_Filter*
    - GF_FilterEvent*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8677
      start: 8613
    functionDepth: 7
    functionLinenumber: 8613
    functionLinenumberEnd: 8677
    functionName: gf_filter_send_event
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 8
    functionsReached:
    - safe_int_inc
    - GF_LOG
    - gf_filter_event_name
    - gf_filter_pid_send_event_internal
    - gf_list_get
    - init_evt
    - gf_fs_post_task_class
    - PID_IS_OUTPUT
    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:8685,1
    - Dst: FSESS_CHECK_THREAD
      Src: /src/gpac/src/filter_core/filter_pid.c:8691,1
    - Dst: gf_logs_thread_tag
      Src: /src/gpac/src/filter_core/filter_pid.c:8693,1
    - Dst: GF_FilterPid*::pid::filter::freg::process_event
      Src: /src/gpac/src/filter_core/filter_pid.c:8694,1
    - Dst: gf_logs_thread_untag
      Src: /src/gpac/src/filter_core/filter_pid.c:8695,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - pid
    - evt
    argTypes:
    - GF_FilterPid*
    - GF_FilterEvent*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8697
      start: 8679
    functionDepth: 3
    functionLinenumber: 8679
    functionLinenumberEnd: 8697
    functionName: gf_filter_pid_exec_event
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - GF_FilterPid*::pid::filter::freg::process_event
    - GF_LOG
    - gf_logs_thread_untag
    - gf_logs_thread_tag
    - 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:8705,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - pid
    - filter
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8706
      start: 8700
    functionDepth: 2
    functionLinenumber: 8700
    functionLinenumberEnd: 8706
    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:8716,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:8718,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - pid
    - other_pid
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8721
      start: 8710
    functionDepth: 2
    functionLinenumber: 8710
    functionLinenumberEnd: 8721
    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:8762,1
    - Dst: gf_timestamp_less
      Src: /src/gpac/src/filter_core/filter_pid.c:8767,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 43
    argCount: 2
    argNames:
    - pidi
    - stats
    argTypes:
    - GF_FilterPidInst*
    - GF_FilterPidStatistics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8778
      start: 8723
    functionDepth: 0
    functionLinenumber: 8723
    functionLinenumberEnd: 8778
    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:8783,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8784,1
    - Dst: filter_pid_inst_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8787,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - pidi_list
    - stats
    argTypes:
    - GF_List*
    - GF_FilterPidStatistics*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8789
      start: 8780
    functionDepth: 1
    functionLinenumber: 8780
    functionLinenumberEnd: 8789
    functionName: filter_pid_collect_stats
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - gf_list_count
    - filter_pid_inst_collect_stats
    - gf_list_get
    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:8797,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8800,1
    - Dst: filter_locate_enc_dec_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8805,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 2
    argNames:
    - filter
    - locate_decoder
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8810
      start: 8792
    functionDepth: 1
    functionLinenumber: 8792
    functionLinenumberEnd: 8810
    functionName: filter_locate_enc_dec_sink
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - filter_locate_enc_dec_sink
    - gf_list_get
    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:8816,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8819,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8823,1
    - Dst: filter_locate_enc_dec_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8826,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8828,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8832,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - filter
    - locate_decoder
    argTypes:
    - GF_Filter*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8834
      start: 8812
    functionDepth: 2
    functionLinenumber: 8812
    functionLinenumberEnd: 8834
    functionName: filter_locate_enc_dec_src
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - filter_locate_enc_dec_sink
    - gf_mx_p
    - gf_mx_v
    - gf_list_get
    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:8844,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8847,1
    - Dst: filter_locate_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8848,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - filter
    argTypes:
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8853
      start: 8836
    functionDepth: 1
    functionLinenumber: 8836
    functionLinenumberEnd: 8853
    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:8861,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8869,1
    - Dst: filter_pid_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8870,1
    - Dst: filter_pid_inst_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8873,1
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:8876,1
    - Dst: filter_pid_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8877,1
    - Dst: filter_locate_enc_dec_src
      Src: /src/gpac/src/filter_core/filter_pid.c:8885,1
    - Dst: filter_locate_enc_dec_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8890,1
    - Dst: filter_locate_sink
      Src: /src/gpac/src/filter_core/filter_pid.c:8893,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:8899,1
    - Dst: filter_pid_collect_stats
      Src: /src/gpac/src/filter_core/filter_pid.c:8900,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:8901,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: 8903
      start: 8854
    functionDepth: 3
    functionLinenumber: 8854
    functionLinenumberEnd: 8903
    functionName: gf_filter_pid_get_statistics
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 8
    functionsReached:
    - filter_locate_enc_dec_src
    - filter_locate_sink
    - filter_pid_collect_stats
    - gf_mx_p
    - filter_pid_inst_collect_stats
    - gf_mx_v
    - memset
    - filter_locate_enc_dec_sink
    - PID_IS_OUTPUT
    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:8909,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8910,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8920,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8926,1
    - Dst: gf_fs_post_disconnect_task
      Src: /src/gpac/src/filter_core/filter_pid.c:8927,1
    - Dst: gf_filter_pck_new_shared_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:8933,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8935,1
    - Dst: gf_filter_pck_set_framing
      Src: /src/gpac/src/filter_core/filter_pid.c:8938,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8939,1
    - Dst: safe_int_inc
      Src: /src/gpac/src/filter_core/filter_pid.c:8940,1
    - Dst: gf_filter_pck_send
      Src: /src/gpac/src/filter_core/filter_pid.c:8942,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8943
      start: 8905
    functionDepth: 11
    functionLinenumber: 8905
    functionLinenumberEnd: 8943
    functionName: gf_filter_pid_remove
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 109
    functionsReached:
    - gf_fs_post_disconnect_task
    - safe_int_inc
    - gf_filter_pck_set_framing
    - GF_LOG
    - gf_filter_pck_new_shared_internal
    - gf_list_get
    - gf_filter_pck_send
    - PID_IS_INPUT
    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:8948,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8949,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8955,1
    - Dst: gf_sleep
      Src: /src/gpac/src/filter_core/filter_pid.c:8956,1
    - Dst: gf_filter_process_inline
      Src: /src/gpac/src/filter_core/filter_pid.c:8961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8962
      start: 8945
    functionDepth: 6
    functionLinenumber: 8945
    functionLinenumberEnd: 8962
    functionName: gf_filter_pid_try_pull
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_sleep
    - gf_filter_process_inline
    - 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:8970,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:8971,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - pid
    - clock_time
    - timescale
    argTypes:
    - GF_FilterPid*
    - u64*
    - u32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8979
      start: 8965
    functionDepth: 1
    functionLinenumber: 8965
    functionLinenumberEnd: 8979
    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:8987,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:8988,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:8991,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8993
      start: 8981
    functionDepth: 1
    functionLinenumber: 8981
    functionLinenumberEnd: 8993
    functionName: gf_filter_pid_get_timescale
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 11
    functionsReached:
    - gf_list_last
    - PID_IS_INPUT
    - gf_list_get
    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:9000,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9001,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9008,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9012,1
    - Dst: gf_filter_pid_check_unblock
      Src: /src/gpac/src/filter_core/filter_pid.c:9021,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9026,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9028,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:9029,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9031,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9039,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9041,1
    - Dst: gf_filter_pid_clear_eos
      Src: /src/gpac/src/filter_core/filter_pid.c:9042,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9044,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 38
    argCount: 2
    argNames:
    - pid
    - clear_all
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9046
      start: 8995
    functionDepth: 8
    functionLinenumber: 8995
    functionLinenumberEnd: 9046
    functionName: gf_filter_pid_clear_eos
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 5
    functionsReached:
    - GF_LOG
    - gf_filter_pid_check_unblock
    - gf_filter_pid_clear_eos
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    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:9052,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9053,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - filter_in_charge
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9057
      start: 9048
    functionDepth: 1
    functionLinenumber: 9048
    functionLinenumberEnd: 9057
    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:9062,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9063,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9068
      start: 9059
    functionDepth: 1
    functionLinenumber: 9059
    functionLinenumberEnd: 9068
    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:9073,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9074,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - total_duration_us
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9078
      start: 9070
    functionDepth: 1
    functionLinenumber: 9070
    functionLinenumberEnd: 9078
    functionName: gf_filter_pid_set_max_buffer
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    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:9083,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9084,1
    - Dst: gf_filter_pid_query_buffer_duration_and_max
      Src: /src/gpac/src/filter_core/filter_pid.c:9088,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9091
      start: 9080
    functionDepth: 4
    functionLinenumber: 9080
    functionLinenumberEnd: 9091
    functionName: gf_filter_pid_get_max_buffer
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 3
    functionsReached:
    - GF_LOG
    - gf_filter_pid_query_buffer_duration_and_max
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_max_buffer(GF_FilterPid *pid)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_OUTPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9096,1
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9096,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9097,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - GF_FilterPid*
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9110
      start: 9093
    functionDepth: 1
    functionLinenumber: 9093
    functionLinenumberEnd: 9110
    functionName: gf_filter_pid_copy_buffer_req
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    - PID_IS_OUTPUT
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_copy_buffer_req(GF_FilterPid *dst, GF_FilterPid
      *src)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PID_IS_INPUT
      Src: /src/gpac/src/filter_core/filter_pid.c:9115,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9116,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9120
      start: 9112
    functionDepth: 1
    functionLinenumber: 9112
    functionLinenumberEnd: 9120
    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:9127,1
    - Dst: gf_list_last
      Src: /src/gpac/src/filter_core/filter_pid.c:9132,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9133,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9136,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9150,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9153,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9160,1
    - Dst: gf_filter_pid_caps_query
      Src: /src/gpac/src/filter_core/filter_pid.c:9162,1
    - Dst: gf_list_count
      Src: /src/gpac/src/filter_core/filter_pid.c:9171,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9172,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9178,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 62
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9204
      start: 9122
    functionDepth: 3
    functionLinenumber: 9122
    functionLinenumberEnd: 9204
    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_count
    - gf_filter_pid_caps_query
    - GF_LOG
    - gf_props_get_property
    - gf_list_get
    - gf_list_last
    - PID_IS_INPUT
    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:9210,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9211,1
    - Dst: gf_props_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9216
      start: 9206
    functionDepth: 3
    functionLinenumber: 9206
    functionLinenumberEnd: 9216
    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: 75
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9226,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9227,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:9230,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9247,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9262,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9264,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9265,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9275,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9277,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9281,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9285,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9287,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9288,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9291,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9293,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9294,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9296,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9300,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:9303,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9313,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9314,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9315,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9318,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9318,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9319,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9321,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9322,1
    - Dst: gf_stream_type_short_name
      Src: /src/gpac/src/filter_core/filter_pid.c:9325,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9329,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9330,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9331,1
    - Dst: GF_4CC
      Src: /src/gpac/src/filter_core/filter_pid.c:9334,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9335,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9337,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9340,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9344,1
    - Dst: gf_filter_pid_get_property_str_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9345,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9347,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9350,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9355,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9357,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9359,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9361,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9363,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9365,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9367,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9369,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9371,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9373,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9376,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9377,1
    - Dst: gf_props_get_id
      Src: /src/gpac/src/filter_core/filter_pid.c:9379,1
    - Dst: gf_filter_pid_get_property_str_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9382,1
    - Dst: gf_filter_pck_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9384,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9386,1
    - Dst: gf_filter_pck_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9388,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9392,1
    - Dst: gf_filter_pck_get_cts
      Src: /src/gpac/src/filter_core/filter_pid.c:9394,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9396,1
    - Dst: gf_filter_pck_get_dts
      Src: /src/gpac/src/filter_core/filter_pid.c:9398,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9400,1
    - Dst: gf_filter_pck_get_duration
      Src: /src/gpac/src/filter_core/filter_pid.c:9402,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9404,1
    - Dst: gf_filter_pck_get_sap
      Src: /src/gpac/src/filter_core/filter_pid.c:9406,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9413,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9418,1
    - Dst: MIN
      Src: /src/gpac/src/filter_core/filter_pid.c:9443,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9464,1
    - Dst: gf_filter_pid_get_property_first
      Src: /src/gpac/src/filter_core/filter_pid.c:9466,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9471,1
    - Dst: gf_props_dump_val
      Src: /src/gpac/src/filter_core/filter_pid.c:9485,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9492,1
    - Dst: strncmp
      Src: /src/gpac/src/filter_core/filter_pid.c:9495,1
    - Dst: gf_fileio_translate_url
      Src: /src/gpac/src/filter_core/filter_pid.c:9496,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9499,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:9502,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9503,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9504,1
    - Dst: strrchr
      Src: /src/gpac/src/filter_core/filter_pid.c:9511,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9516,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9519,1
    - Dst: gf_strcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9523,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9526,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9529,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9530,1
    - Dst: gf_strlcat
      Src: /src/gpac/src/filter_core/filter_pid.c:9534,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9535,1
    - Dst: MIN
      Src: /src/gpac/src/filter_core/filter_pid.c:9545,1
    CyclomaticComplexity: 110
    EdgeCount: 110
    ICount: 308
    argCount: 6
    argNames:
    - pid
    - szTemplate
    - szFinalName
    - file_idx
    - file_suffix
    - filename
    argTypes:
    - GF_FilterPid*
    - char[]
    - char[]
    - u32
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9547
      start: 9219
    functionDepth: 4
    functionLinenumber: 9219
    functionLinenumberEnd: 9547
    functionName: gf_filter_pid_resolve_file_template_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - gf_filter_pck_get_duration
    - gf_filter_pck_get_sap
    - gf_props_dump_val
    - gf_props_get_id
    - gf_filter_pid_get_packet
    - strstr
    - strchr
    - gf_stream_type_short_name
    - gf_fileio_translate_url
    - gf_filter_pid_get_property_first
    - memcpy
    - gf_filter_pck_get_dts
    - gf_strcpy
    - gf_filter_pck_get_property_str
    - gf_filter_pid_get_property_str_first
    - gf_filter_pck_get_cts
    - strrchr
    - strcmp
    - strlen
    - gf_strlcpy
    - sprintf
    - gf_filter_pck_get_property
    - GF_LOG
    - GF_4CC
    - MIN
    - gf_strlcat
    - strncmp
    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:9552,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: 9553
      start: 9549
    functionDepth: 5
    functionLinenumber: 9549
    functionLinenumberEnd: 9553
    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:9560,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9561,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9565,1
    - Dst: gf_filter_aggregate_packets
      Src: /src/gpac/src/filter_core/filter_pid.c:9566,1
    - Dst: gf_filter_pid_get_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:9570,1
    - Dst: gf_filter_pid_drop_packet
      Src: /src/gpac/src/filter_core/filter_pid.c:9571,1
    - Dst: gf_fq_count
      Src: /src/gpac/src/filter_core/filter_pid.c:9580,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - pid
    - discard_on
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9585
      start: 9556
    functionDepth: 11
    functionLinenumber: 9556
    functionLinenumberEnd: 9585
    functionName: gf_filter_pid_set_discard
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 36
    functionsReached:
    - GF_LOG
    - gf_fq_count
    - gf_filter_aggregate_packets
    - gf_filter_pid_drop_packet
    - gf_filter_pid_get_packet
    - PID_IS_OUTPUT
    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:9595,1
    - Dst: sprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:9597,1
    - Dst: strstr
      Src: /src/gpac/src/filter_core/filter_pid.c:9599,1
    - Dst: gf_fs_path_escape_colon
      Src: /src/gpac/src/filter_core/filter_pid.c:9602,1
    - Dst: strlen
      Src: /src/gpac/src/filter_core/filter_pid.c:9605,1
    - Dst: gf_malloc
      Src: /src/gpac/src/filter_core/filter_pid.c:9607,1
    - Dst: memcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:9608,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - sess
    - _args
    - is_dst
    argTypes:
    - GF_FilterSession*
    - char*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9611
      start: 9587
    functionDepth: 6
    functionLinenumber: 9587
    functionLinenumberEnd: 9611
    functionName: gf_filter_pid_get_dst_string
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 0
    functionsReached:
    - sprintf
    - gf_malloc
    - gf_fs_path_escape_colon
    - strlen
    - memcpy
    - strstr
    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:9620,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9621,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9627,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9632,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9637,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9641,1
    - Dst: gf_filter_pid_get_destination
      Src: /src/gpac/src/filter_core/filter_pid.c:9642,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 26
    argCount: 2
    argNames:
    - pid
    - dst_idx
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9647
      start: 9614
    functionDepth: 7
    functionLinenumber: 9614
    functionLinenumberEnd: 9647
    functionName: gf_filter_pid_get_destination_ex
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - gf_filter_pid_get_destination
    - gf_filter_pid_get_dst_string
    - gf_list_get
    - PID_IS_INPUT
    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:9651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9652
      start: 9648
    functionDepth: 8
    functionLinenumber: 9648
    functionLinenumberEnd: 9652
    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:9661,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9662,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9669,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9673,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9675,1
    - Dst: gf_filter_pid_get_dst_string
      Src: /src/gpac/src/filter_core/filter_pid.c:9679,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9681,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9685,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9687
      start: 9654
    functionDepth: 7
    functionLinenumber: 9654
    functionLinenumberEnd: 9687
    functionName: gf_filter_pid_get_source
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_mx_v
    - gf_filter_pid_get_dst_string
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    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:9692,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9693,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9699,1
    - Dst: gf_filter_in_parent_chain
      Src: /src/gpac/src/filter_core/filter_pid.c:9700,1
    - Dst: gf_filter_pid_first_pid_for_source
      Src: /src/gpac/src/filter_core/filter_pid.c:9702,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - pid
    - source
    argTypes:
    - GF_FilterPid*
    - GF_Filter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9707
      start: 9689
    functionDepth: 2
    functionLinenumber: 9689
    functionLinenumberEnd: 9707
    functionName: gf_filter_pid_first_pid_for_source
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - gf_filter_in_parent_chain
    - gf_filter_pid_first_pid_for_source
    - gf_list_get
    - PID_IS_OUTPUT
    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:9712,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9713,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9717,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9720,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:9722,1
    - Dst: gf_assert
      Src: /src/gpac/src/filter_core/filter_pid.c:9723,1
    - Dst: safe_int_dec
      Src: /src/gpac/src/filter_core/filter_pid.c:9724,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9726,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9727
      start: 9709
    functionDepth: 1
    functionLinenumber: 9709
    functionLinenumberEnd: 9727
    functionName: gf_filter_pid_discard_block
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 1
    functionsReached:
    - GF_LOG
    - safe_int_dec
    - gf_assert
    - gf_mx_p
    - 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:9732,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9733,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9738
      start: 9729
    functionDepth: 1
    functionLinenumber: 9729
    functionLinenumberEnd: 9738
    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:9743,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9744,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9748
      start: 9740
    functionDepth: 1
    functionLinenumber: 9740
    functionLinenumberEnd: 9748
    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:9753,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9754,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - pid
    - do_recompute
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9758
      start: 9750
    functionDepth: 1
    functionLinenumber: 9750
    functionLinenumberEnd: 9758
    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: 9766
      start: 9760
    functionDepth: 0
    functionLinenumber: 9760
    functionLinenumberEnd: 9766
    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:9771,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9772,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9781
      start: 9768
    functionDepth: 1
    functionLinenumber: 9768
    functionLinenumberEnd: 9781
    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:9787,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9788,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - _pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9794
      start: 9783
    functionDepth: 1
    functionLinenumber: 9783
    functionLinenumberEnd: 9794
    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: 9800
      start: 9796
    functionDepth: 0
    functionLinenumber: 9796
    functionLinenumberEnd: 9800
    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:9805,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9810
      start: 9802
    functionDepth: 1
    functionLinenumber: 9802
    functionLinenumberEnd: 9810
    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:9816,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9817,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9821,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - pid
    - idx
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9823
      start: 9812
    functionDepth: 1
    functionLinenumber: 9812
    functionLinenumberEnd: 9823
    functionName: gf_filter_pid_enum_destinations
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 2
    functionsReached:
    - GF_LOG
    - PID_IS_INPUT
    - gf_list_get
    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:9829,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9830,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - pid
    - do_ignore
    argTypes:
    - GF_FilterPid*
    - Bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9836
      start: 9825
    functionDepth: 1
    functionLinenumber: 9825
    functionLinenumberEnd: 9836
    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: 9849
      start: 9838
    functionDepth: 0
    functionLinenumber: 9838
    functionLinenumberEnd: 9849
    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:9855,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9859
      start: 9851
    functionDepth: 1
    functionLinenumber: 9851
    functionLinenumberEnd: 9859
    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:9865,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - pid
    - flags
    argTypes:
    - GF_FilterPid*
    - u32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9871
      start: 9861
    functionDepth: 1
    functionLinenumber: 9861
    functionLinenumberEnd: 9871
    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:9877,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9878,1
    - Dst: gf_mx_p
      Src: /src/gpac/src/filter_core/filter_pid.c:9883,1
    - Dst: gf_list_get
      Src: /src/gpac/src/filter_core/filter_pid.c:9885,1
    - Dst: gf_filter_pid_has_decoder
      Src: /src/gpac/src/filter_core/filter_pid.c:9886,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9887,1
    - Dst: gf_mx_v
      Src: /src/gpac/src/filter_core/filter_pid.c:9891,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9893
      start: 9873
    functionDepth: 1
    functionLinenumber: 9873
    functionLinenumberEnd: 9893
    functionName: gf_filter_pid_has_decoder
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_filter_pid_has_decoder
    - GF_LOG
    - gf_mx_v
    - gf_mx_p
    - gf_list_get
    - PID_IS_OUTPUT
    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:9899,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9900,1
    - Dst: gf_sys_clock_high_res
      Src: /src/gpac/src/filter_core/filter_pid.c:9904,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: 9909
      start: 9895
    functionDepth: 2
    functionLinenumber: 9895
    functionLinenumberEnd: 9909
    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:9939,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9943,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9947,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9951,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9954,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9955,1
    - Dst: gf_filter_pid_get_property_str
      Src: /src/gpac/src/filter_core/filter_pid.c:9957,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9962,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9963,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9964,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9965,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:9974,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9979,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:9997,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10001,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/src/filter_core/filter_pid.c:10005,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10006,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10006,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10010,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10014,1
    - Dst: gf_bs_new
      Src: /src/gpac/src/filter_core/filter_pid.c:10017,1
    - Dst: gf_odf_dovi_cfg_read_bs
      Src: /src/gpac/src/filter_core/filter_pid.c:10018,1
    - Dst: gf_bs_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10019,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10021,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10021,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/filter_core/filter_pid.c:10030,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/filter_core/filter_pid.c:10033,1
    - Dst: rfc_6381_get_codec_dolby_vision
      Src: /src/gpac/src/filter_core/filter_pid.c:10036,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10041,1
    - Dst: gf_odf_dovi_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10044,1
    - Dst: rfc_6381_get_codec_aac
      Src: /src/gpac/src/filter_core/filter_pid.c:10054,1
    - Dst: dolby_get_codec_ac4
      Src: /src/gpac/src/filter_core/filter_pid.c:10056,1
    - Dst: gf_odf_iamf_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10058,1
    - Dst: rfc_6381_get_codec_iamf
      Src: /src/gpac/src/filter_core/filter_pid.c:10059,1
    - Dst: gf_odf_iamf_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10060,1
    - Dst: rfc_6381_get_codec_m4v
      Src: /src/gpac/src/filter_core/filter_pid.c:10065,1
    - Dst: gf_odf_avc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10080,1
    - Dst: rfc_6381_get_codec_avc
      Src: /src/gpac/src/filter_core/filter_pid.c:10082,1
    - Dst: gf_odf_avc_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10083,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10087,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10087,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10088,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10124,1
    - Dst: gf_odf_hevc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10126,1
    - Dst: rfc_6381_get_codec_hevc
      Src: /src/gpac/src/filter_core/filter_pid.c:10131,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10133,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10133,1
    - Dst: gf_odf_hevc_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10136,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10139,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10143,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10143,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10145,1
    - Dst: gf_odf_av1_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10153,1
    - Dst: rfc_6381_get_codec_av1
      Src: /src/gpac/src/filter_core/filter_pid.c:10155,1
    - Dst: gf_odf_av1_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10156,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10159,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10162,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10162,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10163,1
    - Dst: gf_odf_vp_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10172,1
    - Dst: rfc_6381_get_codec_vpx
      Src: /src/gpac/src/filter_core/filter_pid.c:10175,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:10176,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10177,1
    - Dst: gf_odf_vp_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10178,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10181,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10181,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10184,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10184,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10185,1
    - Dst: gf_odf_avs3v_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10192,1
    - Dst: rfc_6381_get_codec_avs3v
      Src: /src/gpac/src/filter_core/filter_pid.c:10194,1
    - Dst: gf_odf_avs3v_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10195,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10198,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10201,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10201,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10202,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10208,1
    - Dst: rfc_6381_get_codec_mpegha
      Src: /src/gpac/src/filter_core/filter_pid.c:10216,1
    - Dst: gf_odf_vvc_cfg_read
      Src: /src/gpac/src/filter_core/filter_pid.c:10223,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10225,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10225,1
    - Dst: rfc_6381_get_codec_vvc
      Src: /src/gpac/src/filter_core/filter_pid.c:10227,1
    - Dst: gf_odf_vvc_cfg_del
      Src: /src/gpac/src/filter_core/filter_pid.c:10228,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10231,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10231,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10234,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10234,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10235,1
    - Dst: rfc_6381_get_codec_uncv
      Src: /src/gpac/src/filter_core/filter_pid.c:10241,1
    - Dst: snprintf
      Src: /src/gpac/src/filter_core/filter_pid.c:10243,1
    - Dst: gf_4cc_to_str
      Src: /src/gpac/src/filter_core/filter_pid.c:10243,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10244,1
    - Dst: gf_codecid_4cc_type
      Src: /src/gpac/src/filter_core/filter_pid.c:10247,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10249,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10254,1
    - Dst: gf_pixel_fmt_to_qt_type
      Src: /src/gpac/src/filter_core/filter_pid.c:10255,1
    - Dst: gf_filter_pid_get_property
      Src: /src/gpac/src/filter_core/filter_pid.c:10258,1
    - Dst: gf_audio_fmt_to_isobmf
      Src: /src/gpac/src/filter_core/filter_pid.c:10259,1
    - Dst: gf_codecid_mime
      Src: /src/gpac/src/filter_core/filter_pid.c:10264,1
    - Dst: strchr
      Src: /src/gpac/src/filter_core/filter_pid.c:10265,1
    - Dst: strcmp
      Src: /src/gpac/src/filter_core/filter_pid.c:10267,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10268,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:10269,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10272,1
    - Dst: gf_strlcpy
      Src: /src/gpac/src/filter_core/filter_pid.c:10273,1
    - Dst: rfc6381_codec_name_default
      Src: /src/gpac/src/filter_core/filter_pid.c:10277,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: 10280
      start: 9929
    functionDepth: 9
    functionLinenumber: 9929
    functionLinenumberEnd: 10280
    functionName: gf_filter_pid_get_rfc_6381_codec_string
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 4
    functionsReached:
    - gf_filter_pid_get_property
    - gf_odf_dovi_cfg_del
    - gf_odf_vvc_cfg_read
    - rfc_6381_get_codec_m4v
    - gf_bs_new
    - gf_odf_vp_cfg_del
    - gf_codecid_mime
    - gf_odf_vp_cfg_read
    - gf_bs_del
    - snprintf
    - gf_odf_avs3v_cfg_read
    - gf_odf_av1_cfg_del
    - gf_odf_av1_cfg_read
    - dolby_get_codec_ac4
    - gf_odf_vvc_cfg_del
    - rfc_6381_get_codec_uncv
    - rfc6381_codec_name_default
    - strchr
    - rfc_6381_get_codec_iamf
    - gf_odf_hevc_cfg_del
    - rfc_6381_get_codec_hevc
    - rfc_6381_get_codec_avc
    - gf_odf_hevc_cfg_read
    - gf_audio_fmt_to_isobmf
    - rfc_6381_get_codec_avs3v
    - rfc_6381_get_codec_dolby_vision
    - gf_odf_avc_cfg_read
    - gf_codecid_4cc_type
    - rfc_6381_get_codec_vpx
    - gf_odf_iamf_cfg_read
    - gf_odf_iamf_cfg_del
    - gf_filter_pid_get_property_str
    - gf_odf_avc_cfg_del
    - gf_odf_dovi_cfg_read_bs
    - strcmp
    - rfc_6381_get_codec_aac
    - gf_strlcpy
    - gf_pixel_fmt_to_qt_type
    - GF_LOG
    - rfc_6381_get_codec_mpegha
    - rfc_6381_get_codec_vvc
    - rfc_6381_get_codec_av1
    - memset
    - gf_odf_avs3v_cfg_del
    - gf_4cc_to_str
    linkageType: ''
    returnType: GF_EXPORT
    signature: GF_EXPORT gf_filter_pid_get_rfc_6381_codec_string(GF_FilterPid *pid,
      char szCodec[RFC6381_CODEC_NAME_SIZE_MAX], 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:10287,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10288,1
    - Dst: gf_filter_pid_set_eos_internal
      Src: /src/gpac/src/filter_core/filter_pid.c:10294,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10297
      start: 10282
    functionDepth: 12
    functionLinenumber: 10282
    functionLinenumberEnd: 10297
    functionName: gf_filter_pid_send_flush
    functionSourceFile: /src/gpac/src/filter_core/filter_pid.c
    functionUses: 6
    functionsReached:
    - GF_LOG
    - gf_filter_pid_set_eos_internal
    - PID_IS_INPUT
    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:10302,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10303,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10307
      start: 10299
    functionDepth: 1
    functionLinenumber: 10299
    functionLinenumberEnd: 10307
    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:10311,1
    - Dst: GF_LOG
      Src: /src/gpac/src/filter_core/filter_pid.c:10312,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - pid
    argTypes:
    - GF_FilterPid*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10316
      start: 10308
    functionDepth: 1
    functionLinenumber: 10308
    functionLinenumberEnd: 10316
    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: 907
    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: 519
    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_add_point
    - cr_compress
    - abort
    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:
    - memmove
    - cr_compress
    - cr_realloc
    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:
    - unicode_case1
    - cr_add_interval
    - countof
    - cr_init
    - cr_sort_and_remove_overlap
    - lre_case_folding_entry
    - cr_free
    - assert
    - cr_invert
    - cr_op
    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_in_table
    - lre_is_id_start
    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_lower_simple
    - unicode_get_short_code
    - 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:
    - printf
    - unicode_get_cc
    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: 10
    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:1193,1
    - Dst: to_nfd_rec
      Src: /src/gpac/src/quickjs/libunicode.c:1199,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/libunicode.c:1200,1
    - Dst: sort_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1208,1
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1221,1
    - Dst: unicode_get_cc
      Src: /src/gpac/src/quickjs/libunicode.c:1224,1
    - Dst: compose_pair
      Src: /src/gpac/src/quickjs/libunicode.c:1233,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    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: 1243
      start: 1171
    functionDepth: 4
    functionLinenumber: 1171
    functionLinenumberEnd: 1243
    functionName: unicode_normalize
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_get_cc
    - dbuf_init2
    - compose_pair
    - sort_cc
    - dbuf_claim
    - memcpy
    - dbuf_error
    - to_nfd_rec
    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:1255,1
    - Dst: strchr
      Src: /src/gpac/src/quickjs/libunicode.c:1258,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/libunicode.c:1260,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/libunicode.c:1263,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 2
    argNames:
    - name_table
    - name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1272
      start: 1247
    functionDepth: 0
    functionLinenumber: 1247
    functionLinenumberEnd: 1272
    functionName: unicode_find_name
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - strchr
    - memcmp
    - strlen
    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:1286,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1294,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1295,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1301,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1322,1
    - Dst: cr_invert
      Src: /src/gpac/src/quickjs/libunicode.c:1330,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1337,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1357,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1363,1
    - Dst: cr_invert
      Src: /src/gpac/src/quickjs/libunicode.c:1374,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:1376,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:1380,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1384,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1385,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1390,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1391,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 111
    argCount: 3
    argNames:
    - cr
    - script_name
    - is_ext
    argTypes:
    - CharRange*
    - char*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1276
    functionDepth: 3
    functionLinenumber: 1276
    functionLinenumberEnd: 1394
    functionName: unicode_script
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_add_interval
    - countof
    - cr_init
    - unicode_find_name
    - cr_free
    - cr_invert
    - 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: 1397
      start: 1396
    functionDepth: 0
    functionLinenumber: 1396
    functionLinenumberEnd: 1397
    functionName: M
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 30
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: M(id)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1404,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1438,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1438,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1440,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1440,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1443,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1445,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1452,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 49
    argCount: 2
    argNames:
    - cr
    - gc_mask
    argTypes:
    - CharRange*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1457
      start: 1398
    functionDepth: 1
    functionLinenumber: 1398
    functionLinenumberEnd: 1457
    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:1482,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1498,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 2
    argNames:
    - cr
    - prop_idx
    argTypes:
    - CharRange*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1504
      start: 1459
    functionDepth: 1
    functionLinenumber: 1459
    functionLinenumberEnd: 1504
    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:1526,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1529,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1532,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1533,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1534,1
    - Dst: unicode_general_category1
      Src: /src/gpac/src/quickjs/libunicode.c:1535,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1539,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1540,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1541,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1542,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1546,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/libunicode.c:1547,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1548,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1549,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1557,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1558,1
    - Dst: cr_init
      Src: /src/gpac/src/quickjs/libunicode.c:1562,1
    - Dst: cr_op
      Src: /src/gpac/src/quickjs/libunicode.c:1564,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1567,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1568,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1574,1
    - Dst: cr_invert
      Src: /src/gpac/src/quickjs/libunicode.c:1575,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/libunicode.c:1581,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:1585,1
    - Dst: cr_copy
      Src: /src/gpac/src/quickjs/libunicode.c:1586,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1587,1
    - Dst: cr_free
      Src: /src/gpac/src/quickjs/libunicode.c:1591,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 72
    argCount: 1
    argNames:
    - cr
    argTypes:
    - CharRange*
    assertStmts:
    - condition: (stack_len >= 2)
      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: 1545
        line_start: 1545
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len >= 1)
      pos:
        line_end: 1573
        line_start: 1573
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len < POP_STACK_LEN_MAX)
      pos:
        line_end: 1557
        line_start: 1557
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len < POP_STACK_LEN_MAX)
      pos:
        line_end: 1538
        line_start: 1538
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len < POP_STACK_LEN_MAX)
      pos:
        line_end: 1531
        line_start: 1531
        source_file: /src/gpac/src/quickjs/libunicode.c
    - condition: (stack_len == 1)
      pos:
        line_end: 1584
        line_start: 1584
        source_file: /src/gpac/src/quickjs/libunicode.c
    constantsTouched: []
    func_position:
      end: 1593
      start: 1519
    functionDepth: 3
    functionLinenumber: 1519
    functionLinenumberEnd: 1593
    functionName: unicode_prop_ops
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - cr_copy
    - unicode_general_category1
    - unicode_case1
    - abort
    - unicode_prop1
    - va_start
    - cr_free
    - cr_invert
    - assert
    - va_arg
    - cr_init
    - cr_op
    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:1613,1
    - Dst: unicode_general_category1
      Src: /src/gpac/src/quickjs/libunicode.c:1621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - cr
    - gc_name
    argTypes:
    - CharRange*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1622
      start: 1608
    functionDepth: 2
    functionLinenumber: 1608
    functionLinenumberEnd: 1622
    functionName: unicode_general_category
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_general_category1
    - unicode_find_name
    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:1631,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1639,1
    - Dst: cr_add_interval
      Src: /src/gpac/src/quickjs/libunicode.c:1643,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1647,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1648,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1653,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1654,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1660,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1661,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1667,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1668,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1674,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1675,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1675,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1675,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1683,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1684,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1684,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1684,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1684,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1684,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1684,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1694,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1695,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1702,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1703,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1703,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1709,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1710,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1710,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1710,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1710,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1710,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1710,1
    - Dst: unicode_prop_ops
      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: 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:1725,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1725,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1725,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1725,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1740,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1743,1
    - Dst: unicode_case1
      Src: /src/gpac/src/quickjs/libunicode.c:1746,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1749,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1756,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1763,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1771,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1772,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1772,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1772,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1772,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1772,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1772,1
    - Dst: unicode_prop_ops
      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: 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:1785,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1785,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1785,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1785,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1798,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1799,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1799,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1799,1
    - Dst: M
      Src: /src/gpac/src/quickjs/libunicode.c:1799,1
    - Dst: unicode_prop_ops
      Src: /src/gpac/src/quickjs/libunicode.c:1807,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1815,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1817,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 82
    argCount: 2
    argNames:
    - cr
    - prop_name
    argTypes:
    - CharRange*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1627
    functionDepth: 4
    functionLinenumber: 1627
    functionLinenumberEnd: 1821
    functionName: unicode_prop
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 0
    functionsReached:
    - unicode_case1
    - cr_add_interval
    - countof
    - unicode_find_name
    - M
    - unicode_prop_ops
    - unicode_prop1
    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:1907,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1917
      start: 1903
    functionDepth: 0
    functionLinenumber: 1903
    functionLinenumberEnd: 1917
    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:1929,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1934,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1940,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1946,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1952,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1959,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:1965,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:1974,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:1984,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/libunicode.c:2005,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:2061,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/libunicode.c:2062,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:2064,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/libunicode.c:2072,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:2082,1
    - Dst: unicode_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:2087,1
    - Dst: cb
      Src: /src/gpac/src/quickjs/libunicode.c:2094,1
    - Dst: unicode_sequence_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:2102,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: 2004
        line_start: 2004
        source_file: /src/gpac/src/quickjs/libunicode.c
    constantsTouched: []
    func_position:
      end: 2112
      start: 1921
    functionDepth: 2
    functionLinenumber: 1921
    functionLinenumberEnd: 2112
    functionName: unicode_sequence_prop1
    functionSourceFile: /src/gpac/src/quickjs/libunicode.c
    functionUses: 1
    functionsReached:
    - countof
    - printf
    - unicode_sequence_prop1
    - cb
    - unicode_prop1
    - assert
    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:2120,1
    - Dst: unicode_sequence_prop1
      Src: /src/gpac/src/quickjs/libunicode.c:2123,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: 2124
      start: 2116
    functionDepth: 3
    functionLinenumber: 2116
    functionLinenumberEnd: 2124
    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: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    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: 246
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 246
    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: 247
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 247
    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: 248
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 248
    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: 1166
      start: 1165
    functionDepth: 0
    functionLinenumber: 1165
    functionLinenumberEnd: 1166
    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: 1178
      start: 1177
    functionDepth: 0
    functionLinenumber: 1177
    functionLinenumberEnd: 1178
    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: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1496
    functionDepth: 0
    functionLinenumber: 1496
    functionLinenumberEnd: 1509
    functionName: get_block_size_index
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_block_size_index(size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSMallocContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1514
      start: 1511
    functionDepth: 0
    functionLinenumber: 1511
    functionLinenumberEnd: 1514
    functionName: get_zero_size_block
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSMallocBlockHeader
    signature: JSMallocBlockHeader *get_zero_size_block(JSMallocContext *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:1519,1
    - Dst: get_zero_size_block
      Src: /src/gpac/src/quickjs/quickjs.c:1520,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1522,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1523,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:1526,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSMallocContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1528
    functionName: js_malloc_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    - init_list_head
    - get_zero_size_block
    linkageType: ''
    returnType: void
    signature: void js_malloc_init(JSMallocContext *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ar
    - idx
    - block_size
    argTypes:
    - JSMallocArena*
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1530
    functionDepth: 0
    functionLinenumber: 1530
    functionLinenumberEnd: 1533
    functionName: get_arena_block
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *get_arena_block(JSMallocArena *ar, unsigned int idx, unsigned
      int block_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1535
    functionDepth: 1
    functionLinenumber: 1535
    functionLinenumberEnd: 1538
    functionName: js_rc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - container_of
    linkageType: ''
    returnType: JSMallocBlockHeader
    signature: JSMallocBlockHeader *js_rc(void *ptr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mf::js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1548,1
    - Dst: get_arena_block
      Src: /src/gpac/src/quickjs/quickjs.c:1564,1
    - Dst: get_arena_block
      Src: /src/gpac/src/quickjs/quickjs.c:1568,1
    - Dst: list_add
      Src: /src/gpac/src/quickjs/quickjs.c:1573,1
    - Dst: list_add
      Src: /src/gpac/src/quickjs/quickjs.c:1574,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1540
    functionDepth: 2
    functionLinenumber: 1540
    functionLinenumberEnd: 1576
    functionName: JSMallocArena *js_malloc_new_arena(JSMallocContext *s, int block_size_idx)
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_arena_block
    - list_add
    - mf::js_malloc
    linkageType: ''
    returnType: no_inline
    signature: no_inline JSMallocArena *js_malloc_new_arena(JSMallocContext *s, int
      block_size_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSMallocContext*::mf::js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1581,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:1587,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - size
    argTypes:
    - JSMallocContext*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1590
      start: 1578
    functionDepth: 2
    functionLinenumber: 1578
    functionLinenumberEnd: 1590
    functionName: js_malloc_large
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - JSMallocContext*::mf::js_malloc
    linkageType: ''
    returnType: no_inline
    signature: no_inline *js_malloc_large(JSMallocContext *s, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1595,1
    - Dst: get_zero_size_block
      Src: /src/gpac/src/quickjs/quickjs.c:1596,1
    - Dst: get_block_size_index
      Src: /src/gpac/src/quickjs/quickjs.c:1609,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1613,1
    - Dst: js_malloc_new_arena
      Src: /src/gpac/src/quickjs/quickjs.c:1614,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:1618,1
    - Dst: get_arena_block
      Src: /src/gpac/src/quickjs/quickjs.c:1621,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1625,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:1626,1
    - Dst: js_malloc_large
      Src: /src/gpac/src/quickjs/quickjs.c:1633,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 31
    argCount: 2
    argNames:
    - s
    - size
    argTypes:
    - JSMallocContext*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1636
      start: 1592
    functionDepth: 3
    functionLinenumber: 1592
    functionLinenumberEnd: 1636
    functionName: __js_malloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_block_size_index
    - unlikely
    - js_malloc_new_arena
    - list_entry
    - list_del
    - js_malloc_large
    - get_zero_size_block
    - get_arena_block
    linkageType: ''
    returnType: void
    signature: void *__js_malloc(JSMallocContext *s, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1644,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1645,1
    - Dst: get_zero_size_block
      Src: /src/gpac/src/quickjs/quickjs.c:1647,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1650,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:1652,1
    - Dst: JSMallocContext*::mf::js_free
      Src: /src/gpac/src/quickjs/quickjs.c:1654,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1667,1
    - Dst: list_add
      Src: /src/gpac/src/quickjs/quickjs.c:1668,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1671,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:1672,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:1673,1
    - Dst: JSMallocContext*::mf::js_free
      Src: /src/gpac/src/quickjs/quickjs.c:1674,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - s
    - ptr
    argTypes:
    - JSMallocContext*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1677
      start: 1638
    functionDepth: 2
    functionLinenumber: 1638
    functionLinenumberEnd: 1677
    functionName: __js_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add
    - unlikely
    - list_del
    - JSMallocContext*::mf::js_free
    - container_of
    - get_zero_size_block
    linkageType: ''
    returnType: void
    signature: void __js_free(JSMallocContext *s, void *ptr)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: __js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1683,1
    - Dst: __js_free
      Src: /src/gpac/src/quickjs/quickjs.c:1685,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1688,1
    - Dst: get_zero_size_block
      Src: /src/gpac/src/quickjs/quickjs.c:1690,1
    - Dst: __js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1691,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1694,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:1696,1
    - Dst: JSMallocContext*::mf::js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:1698,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:1702,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:1709,1
    - Dst: __js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1724,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1727,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:1736,1
    - Dst: __js_free
      Src: /src/gpac/src/quickjs/quickjs.c:1737,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 43
    argCount: 3
    argNames:
    - s
    - ptr
    - size
    argTypes:
    - JSMallocContext*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1740
      start: 1679
    functionDepth: 4
    functionLinenumber: 1679
    functionLinenumberEnd: 1740
    functionName: __js_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - __js_malloc
    - list_del
    - container_of
    - JSMallocContext*::mf::js_realloc
    - get_zero_size_block
    - memcpy
    - __js_free
    linkageType: ''
    returnType: void
    signature: void *__js_realloc(JSMallocContext *s, void *ptr, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1747,1
    - Dst: get_zero_size_block
      Src: /src/gpac/src/quickjs/quickjs.c:1749,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:1754,1
    - Dst: JSMallocContext*::mf::js_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1756,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - s
    - ptr
    argTypes:
    - JSMallocContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1768
      start: 1742
    functionDepth: 1
    functionLinenumber: 1742
    functionLinenumberEnd: 1768
    functionName: __js_malloc_usable_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_zero_size_block
    - JSMallocContext*::mf::js_malloc_usable_size
    - container_of
    linkageType: ''
    returnType: size_t
    signature: size_t __js_malloc_usable_size(JSMallocContext *s, const char *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:1775,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:1778,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:1779,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:1780,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSMallocContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1785
      start: 1770
    functionDepth: 1
    functionLinenumber: 1770
    functionLinenumberEnd: 1785
    functionName: js_malloc_dump_arenas
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - list_for_each
    - list_entry
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused js_malloc_dump_arenas(JSMallocContext *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:1801,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:1802,1
    - Dst: ctz32
      Src: /src/gpac/src/quickjs/quickjs.c:1807,1
    - Dst: iter_func
      Src: /src/gpac/src/quickjs/quickjs.c:1809,1
    - Dst: get_arena_block
      Src: /src/gpac/src/quickjs/quickjs.c:1809,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:1814,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:1815,1
    - Dst: iter_func
      Src: /src/gpac/src/quickjs/quickjs.c:1816,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - s
    - iter_func
    - iter_opaque
    argTypes:
    - JSMallocContext*
    - JSMallocIterFunc*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1818
      start: 1792
    functionDepth: 1
    functionLinenumber: 1792
    functionLinenumberEnd: 1818
    functionName: js_malloc_iter
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - list_for_each
    - iter_func
    - get_arena_block
    - ctz32
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused js_malloc_iter(JSMallocContext *s, JSMallocIterFunc
      *iter_func, void *iter_opaque)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:1834,1
    - Dst: JS_RunGC
      Src: /src/gpac/src/quickjs/quickjs.c:1837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1841
      start: 1823
    functionDepth: 1
    functionLinenumber: 1823
    functionLinenumberEnd: 1841
    functionName: js_trigger_gc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_RunGC
    linkageType: ''
    returnType: void
    signature: void js_trigger_gc(JSRuntime *rt, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:1845,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1846
      start: 1843
    functionDepth: 4
    functionLinenumber: 1843
    functionLinenumberEnd: 1846
    functionName: js_malloc_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __js_malloc
    linkageType: ''
    returnType: void
    signature: void *js_malloc_rt(JSRuntime *rt, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __js_free
      Src: /src/gpac/src/quickjs/quickjs.c:1850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - ptr
    argTypes:
    - JSRuntime*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1851
      start: 1848
    functionDepth: 3
    functionLinenumber: 1848
    functionLinenumberEnd: 1851
    functionName: js_free_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __js_free
    linkageType: ''
    returnType: void
    signature: void js_free_rt(JSRuntime *rt, void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:1855,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - ptr
    - size
    argTypes:
    - JSRuntime*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1856
      start: 1853
    functionDepth: 5
    functionLinenumber: 1853
    functionLinenumberEnd: 1856
    functionName: js_realloc_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __js_realloc
    linkageType: ''
    returnType: void
    signature: void *js_realloc_rt(JSRuntime *rt, void *ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __js_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:1860,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - ptr
    argTypes:
    - JSRuntime*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1861
      start: 1858
    functionDepth: 2
    functionLinenumber: 1858
    functionLinenumberEnd: 1861
    functionName: js_malloc_usable_size_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __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:1866,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1867,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:1869,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1870
      start: 1863
    functionDepth: 5
    functionLinenumber: 1863
    functionLinenumberEnd: 1870
    functionName: js_mallocz_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc_rt
    - memset
    - unlikely
    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:1876,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1877,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1878,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - size
    argTypes:
    - JSContext*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1882
      start: 1873
    functionDepth: 5
    functionLinenumber: 1873
    functionLinenumberEnd: 1882
    functionName: js_malloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - js_malloc_rt
    - JS_ThrowOutOfMemory
    - unlikely
    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:1888,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1889,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1890,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - size
    argTypes:
    - JSContext*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1894
      start: 1885
    functionDepth: 6
    functionLinenumber: 1885
    functionLinenumberEnd: 1894
    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:1898,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - ptr
    argTypes:
    - JSContext*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1899
      start: 1896
    functionDepth: 4
    functionLinenumber: 1896
    functionLinenumberEnd: 1899
    functionName: js_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    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:1905,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1906,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1907,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - ptr
    - size
    argTypes:
    - JSContext*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1902
    functionDepth: 6
    functionLinenumber: 1902
    functionLinenumberEnd: 1911
    functionName: js_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowOutOfMemory
    - js_realloc_rt
    - 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:1917,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:1918,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:1919,1
    - Dst: js_malloc_usable_size_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1923,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: 1927
      start: 1914
    functionDepth: 6
    functionLinenumber: 1914
    functionLinenumberEnd: 1927
    functionName: js_realloc2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowOutOfMemory
    - js_realloc_rt
    - 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:1931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - ptr
    argTypes:
    - JSContext*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1929
    functionDepth: 3
    functionLinenumber: 1929
    functionLinenumberEnd: 1932
    functionName: js_malloc_usable_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    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:1938,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:1940,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - s
    - n
    argTypes:
    - JSContext*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1935
    functionDepth: 6
    functionLinenumber: 1935
    functionLinenumberEnd: 1944
    functionName: js_strndup
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - js_malloc
    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:1948,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:1948,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1949
      start: 1946
    functionDepth: 7
    functionLinenumber: 1946
    functionLinenumberEnd: 1949
    functionName: js_strdup
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_strndup
    - strlen
    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:1958,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:1959,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: 1966
      start: 1951
    functionDepth: 7
    functionLinenumber: 1951
    functionLinenumberEnd: 1966
    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:1972,1
    - Dst: js_realloc_array
      Src: /src/gpac/src/quickjs/quickjs.c:1973,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: 1976
      start: 1969
    functionDepth: 8
    functionLinenumber: 1969
    functionLinenumberEnd: 1976
    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:1980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - DynBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1981
      start: 1978
    functionDepth: 1
    functionLinenumber: 1978
    functionLinenumberEnd: 1981
    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: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:1991,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - opaque
    - ptr
    - size
    argTypes:
    - void*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1993
      start: 1983
    functionDepth: 6
    functionLinenumber: 1983
    functionLinenumberEnd: 1993
    functionName: js_realloc_bytecode_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc_rt
    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:1997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - DynBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1995
    functionDepth: 1
    functionLinenumber: 1995
    functionLinenumberEnd: 1998
    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: 2002
      start: 2000
    functionDepth: 0
    functionLinenumber: 2000
    functionLinenumberEnd: 2002
    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: 2006
      start: 2004
    functionDepth: 0
    functionLinenumber: 2004
    functionLinenumberEnd: 2006
    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:2075,1
    - Dst: JS_NewClass1
      Src: /src/gpac/src/quickjs/quickjs.c:2078,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - rt
    - tab
    - start
    - count
    argTypes:
    - JSRuntime*
    - JSClassShortDef*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2082
      start: 2067
    functionDepth: 1
    functionLinenumber: 2067
    functionLinenumberEnd: 2082
    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: 2089
      start: 2086
    functionDepth: 0
    functionLinenumber: 2086
    functionLinenumberEnd: 2089
    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: 2094
      start: 2091
    functionDepth: 0
    functionLinenumber: 2091
    functionLinenumberEnd: 2094
    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:2100,1
    - Dst: __builtin_frame_address
      Src: /src/gpac/src/quickjs/quickjs.c:2102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2104
      start: 2097
    functionDepth: 0
    functionLinenumber: 2097
    functionLinenumberEnd: 2104
    functionName: js_get_stack_pointer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - _AddressOfReturnAddress
    - __builtin_frame_address
    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:2109,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:2110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - alloca_size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2111
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2111
    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: 5
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:2119,1
    - Dst: JSMallocFunctions*::js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:2123,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:2126,1
    - Dst: js_malloc_init
      Src: /src/gpac/src/quickjs/quickjs.c:2127,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2132,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2133,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2134,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2136,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2139,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2141,1
    - Dst: JS_InitAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:2143,1
    - Dst: init_class_range
      Src: /src/gpac/src/quickjs/quickjs.c:2147,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:2148,1
    - Dst: init_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:2159,1
    - Dst: JS_UpdateStackTop
      Src: /src/gpac/src/quickjs/quickjs.c:2163,1
    - Dst: JS_FreeRuntime
      Src: /src/gpac/src/quickjs/quickjs.c:2169,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 2
    argNames:
    - mf
    - opaque
    argTypes:
    - JSMallocFunctions*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2171
      start: 2114
    functionDepth: 6
    functionLinenumber: 2114
    functionLinenumberEnd: 2171
    functionName: JS_NewRuntime2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_UpdateStackTop
    - init_list_head
    - countof
    - JS_FreeRuntime
    - JS_InitAtoms
    - init_shape_hash
    - init_class_range
    - JSMallocFunctions*::js_malloc
    - memset
    - js_malloc_init
    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: 2176
      start: 2173
    functionDepth: 0
    functionLinenumber: 2173
    functionLinenumberEnd: 2176
    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: 2181
      start: 2178
    functionDepth: 0
    functionLinenumber: 2178
    functionLinenumberEnd: 2181
    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:2187,1
    - Dst: _msize
      Src: /src/gpac/src/quickjs/quickjs.c:2189,1
    - Dst: malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:2193,1
    - Dst: malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:2196,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2184
    functionDepth: 0
    functionLinenumber: 2184
    functionLinenumberEnd: 2198
    functionName: js_def_malloc_usable_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - malloc_usable_size
    - _msize
    - malloc_size
    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:2205,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:2207,1
    - Dst: malloc
      Src: /src/gpac/src/quickjs/quickjs.c:2210,1
    - Dst: js_def_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:2215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - size
    argTypes:
    - JSMallocState*
    - size_t
    assertStmts:
    - condition: (size != 0)
      pos:
        line_end: 2204
        line_start: 2204
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2217
      start: 2200
    functionDepth: 1
    functionLinenumber: 2200
    functionLinenumberEnd: 2217
    functionName: js_def_malloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - malloc
    - js_def_malloc_usable_size
    - unlikely
    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:2225,1
    - Dst: free
      Src: /src/gpac/src/quickjs/quickjs.c:2226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - ptr
    argTypes:
    - JSMallocState*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2227
      start: 2219
    functionDepth: 1
    functionLinenumber: 2219
    functionLinenumberEnd: 2227
    functionName: js_def_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free
    - js_def_malloc_usable_size
    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:2236,1
    - Dst: js_def_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:2238,1
    - Dst: free
      Src: /src/gpac/src/quickjs/quickjs.c:2242,1
    - Dst: realloc
      Src: /src/gpac/src/quickjs/quickjs.c:2248,1
    - Dst: js_def_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:2252,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - s
    - ptr
    - size
    argTypes:
    - JSMallocState*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2254
      start: 2229
    functionDepth: 2
    functionLinenumber: 2229
    functionLinenumberEnd: 2254
    functionName: js_def_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free
    - js_def_malloc_usable_size
    - 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:2265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2263
    functionDepth: 7
    functionLinenumber: 2263
    functionLinenumberEnd: 2266
    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: 2271
      start: 2268
    functionDepth: 0
    functionLinenumber: 2268
    functionLinenumberEnd: 2271
    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: 2277
      start: 2274
    functionDepth: 0
    functionLinenumber: 2274
    functionLinenumberEnd: 2277
    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: 2280
      start: 2279
    functionDepth: 0
    functionLinenumber: 2279
    functionLinenumberEnd: 2280
    functionName: malloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 996
    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: 2281
      start: 2280
    functionDepth: 0
    functionLinenumber: 2280
    functionLinenumberEnd: 2281
    functionName: free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2785
    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: 2282
      start: 2281
    functionDepth: 0
    functionLinenumber: 2281
    functionLinenumberEnd: 2282
    functionName: realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 352
    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: 2287
      start: 2283
    functionDepth: 0
    functionLinenumber: 2283
    functionLinenumberEnd: 2287
    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: 2292
      start: 2289
    functionDepth: 0
    functionLinenumber: 2289
    functionLinenumberEnd: 2292
    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: 2298
      start: 2294
    functionDepth: 0
    functionLinenumber: 2294
    functionLinenumberEnd: 2298
    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: 2303
      start: 2300
    functionDepth: 0
    functionLinenumber: 2300
    functionLinenumberEnd: 2303
    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: 2308
      start: 2305
    functionDepth: 0
    functionLinenumber: 2305
    functionLinenumberEnd: 2308
    functionName: JS_GetStripInfo
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int JS_GetStripInfo(JSRuntime *rt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2318,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:2320,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:2323,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:2327,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:2329,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - ctx
    - job_func
    - argc
    - argv
    - no_exception
    argTypes:
    - JSContext*
    - JSJobFunc*
    - int
    - JSValueConst*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2331
      start: 2310
    functionDepth: 6
    functionLinenumber: 2310
    functionLinenumberEnd: 2331
    functionName: JS_EnqueueJob2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc_rt
    - list_add_tail
    - js_malloc
    - JS_DupValue
    - JS_DupContext
    linkageType: ''
    returnType: int
    signature: "int JS_EnqueueJob2(JSContext *ctx, JSJobFunc *job_func,\n                          int
      argc, JSValueConst *argv, BOOL no_exception)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_EnqueueJob2
      Src: /src/gpac/src/quickjs/quickjs.c:2337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ctx
    - job_func
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSJobFunc*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2338
      start: 2334
    functionDepth: 7
    functionLinenumber: 2334
    functionLinenumberEnd: 2338
    functionName: JS_EnqueueJob
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_EnqueueJob2
    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:2342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2343
      start: 2340
    functionDepth: 1
    functionLinenumber: 2340
    functionLinenumberEnd: 2343
    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:2357,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2364,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2365,1
    - Dst: JSJobEntry*::job_func
      Src: /src/gpac/src/quickjs/quickjs.c:2367,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2369,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:2370,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2374,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:2375,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2377,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:2382,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 2
    argNames:
    - rt
    - pctx
    argTypes:
    - JSRuntime*
    - JSContext**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2384
      start: 2350
    functionDepth: 5
    functionLinenumber: 2350
    functionLinenumberEnd: 2384
    functionName: JS_ExecutePendingJob
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_entry
    - list_del
    - js_rc
    - JS_FreeValue
    - list_empty
    - JS_FreeContext
    - js_free
    - JS_IsException
    - JSJobEntry*::job_func
    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: 2389
      start: 2386
    functionDepth: 0
    functionLinenumber: 2386
    functionLinenumberEnd: 2389
    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: 2394
      start: 2391
    functionDepth: 0
    functionLinenumber: 2391
    functionLinenumberEnd: 2394
    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: 2399
      start: 2396
    functionDepth: 0
    functionLinenumber: 2396
    functionLinenumberEnd: 2399
    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:2405,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:2406,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2408,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:2415,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: 2418
      start: 2402
    functionDepth: 5
    functionLinenumber: 2402
    functionLinenumberEnd: 2418
    functionName: js_alloc_string_rt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc_rt
    - list_add_tail
    - js_rc
    - unlikely
    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:2423,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:2424,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:2425,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: 2429
      start: 2420
    functionDepth: 6
    functionLinenumber: 2420
    functionLinenumberEnd: 2429
    functionName: js_alloc_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowOutOfMemory
    - js_alloc_string_rt
    - unlikely
    linkageType: ''
    returnType: JSString
    signature: JSString *js_alloc_string(JSContext *ctx, int max_len, int is_wide_char)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2434,1
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:2436,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2439,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2441,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - str
    argTypes:
    - JSRuntime*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2444
      start: 2432
    functionDepth: 4
    functionLinenumber: 2432
    functionLinenumberEnd: 2444
    functionName: js_free_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - JS_FreeAtomStruct
    - js_free_rt
    - 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: 2450
      start: 2446
    functionDepth: 0
    functionLinenumber: 2446
    functionLinenumberEnd: 2450
    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:2457,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:2459,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2460,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:2462,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:2463,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2464,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2466,1
    - Dst: JS_RunGCInternal
      Src: /src/gpac/src/quickjs/quickjs.c:2470,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2481,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2482,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2483,1
    - Dst: gc_decref
      Src: /src/gpac/src/quickjs/quickjs.c:2485,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2488,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2489,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2490,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2492,1
    - Dst: JS_DumpObjectHeader
      Src: /src/gpac/src/quickjs/quickjs.c:2493,1
    - Dst: JS_DumpGCObject
      Src: /src/gpac/src/quickjs/quickjs.c:2496,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2501,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2502,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2503,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2508,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2511,1
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:2511,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2512,1
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:2512,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:2518,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2521,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:2530,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2531,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2535,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2537,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2543,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2545,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2545,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2549,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2552,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2553,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2554,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2558,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2559,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2560,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2562,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2563,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2564,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2569,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2569,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2571,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2577,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:2584,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2586,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2588,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2591,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2592,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2593,1
    - Dst: list_empty
      Src: /src/gpac/src/quickjs/quickjs.c:2595,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2597,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2599,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:2603,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2604,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2606,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2608,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2608,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:2610,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2612,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2612,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2614,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2616,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2617,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2620,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2626,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2627,1
    - Dst: JSRuntime*::malloc_ctx::mf::js_free
      Src: /src/gpac/src/quickjs/quickjs.c:2636,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 134
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (list_empty(&rt->gc_obj_list))
      pos:
        line_end: 2510
        line_start: 2510
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (list_empty(&rt->weakref_list))
      pos:
        line_end: 2511
        line_start: 2511
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2638
      start: 2452
    functionDepth: 5
    functionLinenumber: 2452
    functionLinenumberEnd: 2638
    functionName: JS_FreeRuntime
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - init_list_head
    - js_rc
    - list_del
    - atom_is_free
    - JS_FreeAtomRT
    - gc_decref
    - JS_DumpGCObject
    - JSRuntime*::malloc_ctx::mf::js_free
    - JS_DumpObjectHeader
    - JS_RunGCInternal
    - list_for_each_safe
    - list_entry
    - JS_DumpString
    - list_empty
    - printf
    - list_for_each
    - JS_FreeContext
    - js_free_rt
    - JS_FreeValueRT
    - assert
    linkageType: ''
    returnType: void
    signature: void JS_FreeRuntime(JSRuntime *rt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2645,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2648,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:2649,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2651,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2654,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:2658,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:2665,1
    - Dst: JS_AddIntrinsicBasicObjects
      Src: /src/gpac/src/quickjs/quickjs.c:2667,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:2668,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2672
      start: 2640
    functionDepth: 6
    functionLinenumber: 2640
    functionLinenumberEnd: 2672
    functionName: JS_NewContextRaw
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc_rt
    - list_add_tail
    - init_list_head
    - js_rc
    - add_gc_object
    - js_mallocz_rt
    - JS_FreeContext
    - js_free_rt
    - JS_AddIntrinsicBasicObjects
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_NewContextRaw(JSRuntime *rt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewContextRaw
      Src: /src/gpac/src/quickjs/quickjs.c:2678,1
    - Dst: JS_AddIntrinsicBaseObjects
      Src: /src/gpac/src/quickjs/quickjs.c:2682,1
    - Dst: JS_AddIntrinsicDate
      Src: /src/gpac/src/quickjs/quickjs.c:2683,1
    - Dst: JS_AddIntrinsicEval
      Src: /src/gpac/src/quickjs/quickjs.c:2684,1
    - Dst: JS_AddIntrinsicStringNormalize
      Src: /src/gpac/src/quickjs/quickjs.c:2685,1
    - Dst: JS_AddIntrinsicRegExp
      Src: /src/gpac/src/quickjs/quickjs.c:2686,1
    - Dst: JS_AddIntrinsicJSON
      Src: /src/gpac/src/quickjs/quickjs.c:2687,1
    - Dst: JS_AddIntrinsicProxy
      Src: /src/gpac/src/quickjs/quickjs.c:2688,1
    - Dst: JS_AddIntrinsicMapSet
      Src: /src/gpac/src/quickjs/quickjs.c:2689,1
    - Dst: JS_AddIntrinsicTypedArrays
      Src: /src/gpac/src/quickjs/quickjs.c:2690,1
    - Dst: JS_AddIntrinsicPromise
      Src: /src/gpac/src/quickjs/quickjs.c:2691,1
    - Dst: JS_AddIntrinsicWeakRef
      Src: /src/gpac/src/quickjs/quickjs.c:2692,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:2693,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 9
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2697
      start: 2674
    functionDepth: 7
    functionLinenumber: 2674
    functionLinenumberEnd: 2697
    functionName: JS_NewContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_AddIntrinsicWeakRef
    - JS_AddIntrinsicProxy
    - JS_AddIntrinsicEval
    - JS_AddIntrinsicRegExp
    - JS_AddIntrinsicTypedArrays
    - JS_AddIntrinsicPromise
    - JS_AddIntrinsicBaseObjects
    - JS_AddIntrinsicDate
    - JS_AddIntrinsicMapSet
    - JS_NewContextRaw
    - JS_AddIntrinsicJSON
    - JS_FreeContext
    - JS_AddIntrinsicStringNormalize
    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: 2702
      start: 2699
    functionDepth: 0
    functionLinenumber: 2699
    functionLinenumberEnd: 2702
    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: 2707
      start: 2704
    functionDepth: 0
    functionLinenumber: 2704
    functionLinenumberEnd: 2707
    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:2716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - pval
    - new_val
    argTypes:
    - JSContext*
    - JSValue*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2711
    functionDepth: 1
    functionLinenumber: 2711
    functionLinenumberEnd: 2717
    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:2723,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:2725,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: 2722
        line_start: 2722
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2726
      start: 2719
    functionDepth: 2
    functionLinenumber: 2719
    functionLinenumberEnd: 2726
    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:2732,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:2734,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: 2731
        line_start: 2731
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2735
      start: 2728
    functionDepth: 1
    functionLinenumber: 2728
    functionLinenumberEnd: 2735
    functionName: JS_GetClassProto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - JS_DupValue
    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:2746,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2747,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2753,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2756,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:2756,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - flag
    argTypes:
    - JSContext*
    - JSFreeModuleEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2759
      start: 2743
    functionDepth: 1
    functionLinenumber: 2743
    functionLinenumberEnd: 2759
    functionName: js_free_modules
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - list_entry
    - list_del
    - JS_FreeValue
    - list_for_each_safe
    linkageType: ''
    returnType: void
    signature: void js_free_modules(JSContext *ctx, JSFreeModuleEnum flag)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2763,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2765
      start: 2761
    functionDepth: 2
    functionLinenumber: 2761
    functionLinenumberEnd: 2765
    functionName: JS_DupContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_rc
    linkageType: ''
    returnType: JSContext
    signature: JSContext *JS_DupContext(JSContext *ctx)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2774,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2775,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2776,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:2776,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2779,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2780,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2782,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2783,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2785,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2787,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2790,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2792,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2793,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2794,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2795,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2796,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2797,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:2798,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:2801,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:2804,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:2807,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:2810,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:2813,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 3
    argNames:
    - rt
    - ctx
    - mark_func
    argTypes:
    - JSRuntime*
    - JSContext*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2814
      start: 2768
    functionDepth: 1
    functionLinenumber: 2768
    functionLinenumberEnd: 2814
    functionName: JS_MarkContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - list_entry
    - mark_func
    - 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: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2821,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:2823,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:2823,1
    - Dst: JS_DumpAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:2826,1
    - Dst: JS_DumpShapes
      Src: /src/gpac/src/quickjs/quickjs.c:2829,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2835,1
    - Dst: JS_DumpObjectHeader
      Src: /src/gpac/src/quickjs/quickjs.c:2836,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:2837,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:2838,1
    - Dst: JS_DumpGCObject
      Src: /src/gpac/src/quickjs/quickjs.c:2839,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:2841,1
    - Dst: JS_ComputeMemoryUsage
      Src: /src/gpac/src/quickjs/quickjs.c:2847,1
    - Dst: JS_DumpMemoryUsage
      Src: /src/gpac/src/quickjs/quickjs.c:2848,1
    - Dst: js_free_modules
      Src: /src/gpac/src/quickjs/quickjs.c:2852,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2854,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2855,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2857,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2858,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2860,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2862,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2865,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2867,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2868,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2869,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2870,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2871,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2872,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2873,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:2874,1
    - Dst: js_free_shape_null
      Src: /src/gpac/src/quickjs/quickjs.c:2876,1
    - Dst: js_free_shape_null
      Src: /src/gpac/src/quickjs/quickjs.c:2877,1
    - Dst: js_free_shape_null
      Src: /src/gpac/src/quickjs/quickjs.c:2878,1
    - Dst: js_free_shape_null
      Src: /src/gpac/src/quickjs/quickjs.c:2879,1
    - Dst: js_free_shape_null
      Src: /src/gpac/src/quickjs/quickjs.c:2880,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:2882,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:2883,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:2884,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 45
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts:
    - condition: (js_rc(ctx)->ref_count == 0)
      pos:
        line_end: 2822
        line_start: 2822
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 2885
      start: 2816
    functionDepth: 4
    functionLinenumber: 2816
    functionLinenumberEnd: 2885
    functionName: JS_FreeContext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - JS_DumpMemoryUsage
    - js_rc
    - printf
    - JS_DumpAtoms
    - JS_DumpObjectHeader
    - list_for_each
    - list_entry
    - JS_FreeValue
    - list_del
    - js_free_rt
    - js_free_modules
    - js_free_shape_null
    - remove_gc_object
    - assert
    - JS_DumpGCObject
    - JS_DumpShapes
    - JS_ComputeMemoryUsage
    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: 2890
      start: 2887
    functionDepth: 0
    functionLinenumber: 2887
    functionLinenumberEnd: 2890
    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: 2899
      start: 2892
    functionDepth: 0
    functionLinenumber: 2892
    functionLinenumberEnd: 2899
    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:2904,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - stack_size
    argTypes:
    - JSRuntime*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2905
      start: 2901
    functionDepth: 1
    functionLinenumber: 2901
    functionLinenumberEnd: 2905
    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:2909,1
    - Dst: update_stack_limit
      Src: /src/gpac/src/quickjs/quickjs.c:2910,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2911
      start: 2907
    functionDepth: 1
    functionLinenumber: 2907
    functionLinenumberEnd: 2911
    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: 2917
      start: 2913
    functionDepth: 0
    functionLinenumber: 2913
    functionLinenumberEnd: 2917
    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: 2927
      start: 2926
    functionDepth: 0
    functionLinenumber: 2926
    functionLinenumberEnd: 2927
    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: 2935
      start: 2928
    functionDepth: 0
    functionLinenumber: 2928
    functionLinenumberEnd: 2935
    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: 2940
      start: 2937
    functionDepth: 0
    functionLinenumber: 2937
    functionLinenumberEnd: 2940
    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: 2945
      start: 2942
    functionDepth: 0
    functionLinenumber: 2942
    functionLinenumberEnd: 2945
    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: 2950
      start: 2947
    functionDepth: 0
    functionLinenumber: 2947
    functionLinenumberEnd: 2950
    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: 2955
      start: 2952
    functionDepth: 0
    functionLinenumber: 2952
    functionLinenumberEnd: 2955
    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:2967,1
    - Dst: is_num
      Src: /src/gpac/src/quickjs/quickjs.c:2968,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:2976,1
    - Dst: is_num
      Src: /src/gpac/src/quickjs/quickjs.c:2977,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - pval
    - p
    argTypes:
    - uint32_t*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2990
      start: 2958
    functionDepth: 1
    functionLinenumber: 2958
    functionLinenumberEnd: 2990
    functionName: is_num_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get
    - is_num
    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: 3000
      start: 2993
    functionDepth: 0
    functionLinenumber: 2993
    functionLinenumberEnd: 3000
    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: 3010
      start: 3002
    functionDepth: 0
    functionLinenumber: 3002
    functionLinenumberEnd: 3010
    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:3015,1
    - Dst: hash_string8
      Src: /src/gpac/src/quickjs/quickjs.c:3017,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - h
    argTypes:
    - JSString*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3019
      start: 3012
    functionDepth: 1
    functionLinenumber: 3012
    functionLinenumberEnd: 3019
    functionName: hash_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - hash_string8
    - hash_string16
    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:3023,1
    - Dst: hash_string
      Src: /src/gpac/src/quickjs/quickjs.c:3024,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3024,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:3026,1
    - Dst: hash_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:3027,1
    - Dst: hash_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:3028,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - val
    - h
    argTypes:
    - JSValueConst
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3030
      start: 3021
    functionDepth: 2
    functionLinenumber: 3021
    functionLinenumberEnd: 3030
    functionName: hash_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - hash_string_rope
    - JS_VALUE_GET_STRING
    - hash_string
    - JS_VALUE_GET_TAG
    - 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:3035,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:3036,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:3038,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:3040,1
    - Dst: fputc
      Src: /src/gpac/src/quickjs/quickjs.c:3041,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:3043,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - fo
    - c
    - sep
    argTypes:
    - FILE*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3032
    functionDepth: 0
    functionLinenumber: 3032
    functionLinenumberEnd: 3045
    functionName: JS_DumpChar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fprintf
    - fputc
    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:3052,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3055,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3055,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3056,1
    - Dst: putchar
      Src: /src/gpac/src/quickjs/quickjs.c:3057,1
    - Dst: JS_DumpChar
      Src: /src/gpac/src/quickjs/quickjs.c:3059,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:3059,1
    - Dst: putchar
      Src: /src/gpac/src/quickjs/quickjs.c:3061,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3062
      start: 3047
    functionDepth: 2
    functionLinenumber: 3047
    functionLinenumberEnd: 3062
    functionName: JS_DumpString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - printf
    - js_rc
    - putchar
    - string_get
    - JS_DumpChar
    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:3069,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3071,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3075,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3078,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:3079,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3082,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3085,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3086,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:3089,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3090,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:3092,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3093,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3096,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3097
      start: 3064
    functionDepth: 3
    functionLinenumber: 3064
    functionLinenumberEnd: 3097
    functionName: JS_DumpAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - printf
    - atom_is_free
    - JS_DumpString
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpAtoms(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3104,1
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3106,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3121,1
    - Dst: JS_ATOM_COUNT_RESIZE
      Src: /src/gpac/src/quickjs/quickjs.c:3124,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: 3103
        line_start: 3103
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3127
      start: 3099
    functionDepth: 6
    functionLinenumber: 3099
    functionLinenumberEnd: 3127
    functionName: JS_ResizeAtomHash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - js_free_rt
    - js_mallocz_rt
    - JS_ATOM_COUNT_RESIZE
    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:3139,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3150,1
    - Dst: __JS_NewAtomInit
      Src: /src/gpac/src/quickjs/quickjs.c:3151,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3156
      start: 3129
    functionDepth: 7
    functionLinenumber: 3129
    functionLinenumberEnd: 3156
    functionName: JS_InitAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ResizeAtomHash
    - __JS_NewAtomInit
    - strlen
    linkageType: ''
    returnType: int
    signature: int JS_InitAtoms(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:3162,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - v
    argTypes:
    - JSRuntime*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3167
      start: 3158
    functionDepth: 2
    functionLinenumber: 3158
    functionLinenumberEnd: 3167
    functionName: JS_DupAtomRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsConst
    - js_rc
    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:3174,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3177,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3180
      start: 3169
    functionDepth: 2
    functionLinenumber: 3169
    functionLinenumberEnd: 3180
    functionName: JS_DupAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsConst
    - js_rc
    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:3188,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:3202,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3204
      start: 3182
    functionDepth: 1
    functionLinenumber: 3182
    functionLinenumberEnd: 3204
    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:3208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3209
      start: 3206
    functionDepth: 2
    functionLinenumber: 3206
    functionLinenumberEnd: 3209
    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:3220,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSAtomStruct*
    assertStmts:
    - condition: (i != 0)
      pos:
        line_end: 3219
        line_start: 3219
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3226
      start: 3211
    functionDepth: 0
    functionLinenumber: 3211
    functionLinenumberEnd: 3226
    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:3237,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:3237,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:3237,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:3243,1
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:3245,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3246,1
    - Dst: hash_string
      Src: /src/gpac/src/quickjs/quickjs.c:3251,1
    - Dst: js_string_memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:3260,1
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:3261,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3262,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:3286,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3290,1
    - Dst: js_mallocz_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3297,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3299,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3302,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:3305,1
    - Dst: atom_set_free
      Src: /src/gpac/src/quickjs/quickjs.c:3320,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3329,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3332,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3334,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:3338,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3340,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:3342,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3345,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3348,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:3352,1
    - Dst: atom_get_free
      Src: /src/gpac/src/quickjs/quickjs.c:3358,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:3370,1
    - Dst: JS_ResizeAtomHash
      Src: /src/gpac/src/quickjs/quickjs.c:3371,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:3381,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 116
    argCount: 3
    argNames:
    - rt
    - str
    - atom_type
    argTypes:
    - JSRuntime*
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3383
      start: 3230
    functionDepth: 7
    functionLinenumber: 3230
    functionLinenumberEnd: 3383
    functionName: __JS_NewAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - js_get_atom_index
    - js_free_string
    - js_string_memcmp
    - js_malloc_rt
    - list_add_tail
    - JS_ResizeAtomHash
    - atom_set_free
    - js_mallocz_rt
    - memcpy
    - atom_get_free
    - unlikely
    - JS_DumpString
    - hash_string
    - printf
    - __JS_AtomIsConst
    - js_realloc_rt
    - js_free_rt
    - max_int
    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:3390,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3393,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3395,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: 3396
      start: 3386
    functionDepth: 8
    functionLinenumber: 3386
    functionLinenumberEnd: 3396
    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:3405,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:3415,1
    - Dst: __JS_AtomIsConst
      Src: /src/gpac/src/quickjs/quickjs.c:3416,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3417,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: 3423
      start: 3399
    functionDepth: 2
    functionLinenumber: 3399
    functionLinenumberEnd: 3423
    functionName: __JS_FindAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - hash_string8
    - memcmp
    - __JS_AtomIsConst
    - js_rc
    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:3428,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3429,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3445,1
    - Dst: atom_set_free
      Src: /src/gpac/src/quickjs/quickjs.c:3457,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:3461,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3468,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3471,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSAtomStruct*
    assertStmts:
    - condition: (i != 0)
      pos:
        line_end: 3444
        line_start: 3444
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (rt->atom_count >= 0)
      pos:
        line_end: 3470
        line_start: 3470
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3472
      start: 3425
    functionDepth: 4
    functionLinenumber: 3425
    functionLinenumberEnd: 3472
    functionName: JS_FreeAtomStruct
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - js_rc
    - list_del
    - atom_set_free
    - js_free_rt
    - assert
    linkageType: ''
    returnType: void
    signature: void JS_FreeAtomStruct(JSRuntime *rt, JSAtomStruct *p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:3479,1
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:3481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - i
    argTypes:
    - JSRuntime*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3474
    functionDepth: 5
    functionLinenumber: 3474
    functionLinenumberEnd: 3482
    functionName: __JS_FreeAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - 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:3489,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:3491,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3492,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3496,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3497
      start: 3485
    functionDepth: 8
    functionLinenumber: 3485
    functionLinenumberEnd: 3497
    functionName: JS_NewAtomStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_string
    - __JS_NewAtom
    - __JS_AtomFromUInt32
    - is_num_string
    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: 3508
      start: 3500
    functionDepth: 0
    functionLinenumber: 3500
    functionLinenumberEnd: 3508
    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:3516,1
    - Dst: count_ascii
      Src: /src/gpac/src/quickjs/quickjs.c:3517,1
    - Dst: __JS_FindAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3518,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:3522,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3523,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:3525,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3525,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - str
    - len
    argTypes:
    - JSContext*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3526
      start: 3511
    functionDepth: 9
    functionLinenumber: 3511
    functionLinenumberEnd: 3526
    functionName: JS_NewAtomLen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_NewStringLen
    - JS_NewAtomStr
    - is_digit
    - count_ascii
    - __JS_FindAtom
    - JS_IsException
    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:3530,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3531
      start: 3528
    functionDepth: 10
    functionLinenumber: 3528
    functionLinenumberEnd: 3531
    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:3536,1
    - Dst: u32toa
      Src: /src/gpac/src/quickjs/quickjs.c:3541,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3542,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3543,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3545,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3545,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - n
    argTypes:
    - JSContext*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3548
      start: 3533
    functionDepth: 8
    functionLinenumber: 3533
    functionLinenumberEnd: 3548
    functionName: JS_NewAtomUInt32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - u32toa
    - JS_IsException
    - __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:3553,1
    - Dst: i64toa
      Src: /src/gpac/src/quickjs/quickjs.c:3558,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3559,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3560,1
    - Dst: __JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3562,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3562,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - n
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3565
      start: 3550
    functionDepth: 8
    functionLinenumber: 3550
    functionLinenumberEnd: 3565
    functionName: JS_NewAtomInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - i64toa
    - __JS_NewAtom
    - JS_IsException
    - 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:3572,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:3574,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - p
    - atom_type
    argTypes:
    - JSContext*
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3576
      start: 3568
    functionDepth: 8
    functionLinenumber: 3568
    functionLinenumberEnd: 3576
    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:3585,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:3585,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3586,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:3588,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3588,1
    - Dst: JS_NewSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:3589,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: 3584
        line_start: 3584
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (descr < rt->atom_size)
      pos:
        line_end: 3585
        line_start: 3585
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3590
      start: 3579
    functionDepth: 9
    functionLinenumber: 3579
    functionLinenumberEnd: 3590
    functionName: JS_NewSymbolFromAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_NewSymbol
    - JS_DupValue
    - __JS_AtomIsTaggedInt
    - assert
    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:3598,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:3599,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3599,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3602,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:3604,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3612,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:3612,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:3625,1
    - Dst: unicode_to_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:3631,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: 3601
        line_start: 3601
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!atom_is_free(p))
      pos:
        line_end: 3611
        line_start: 3611
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3639
      start: 3595
    functionDepth: 1
    functionLinenumber: 3595
    functionLinenumberEnd: 3639
    functionName: JS_AtomGetStrRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - atom_is_free
    - string_get
    - __JS_AtomToUInt32
    - unicode_to_utf8
    - snprintf
    - __JS_AtomIsTaggedInt
    - assert
    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:3643,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: 3644
      start: 3641
    functionDepth: 2
    functionLinenumber: 3641
    functionLinenumberEnd: 3644
    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:3650,1
    - Dst: u32toa
      Src: /src/gpac/src/quickjs/quickjs.c:3651,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3651,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:3652,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3656,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:3666,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3666,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:3668,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3668,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: 3655
        line_start: 3655
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3671
      start: 3646
    functionDepth: 1
    functionLinenumber: 3646
    functionLinenumberEnd: 3671
    functionName: __JS_AtomToValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - u32toa
    - __JS_AtomToUInt32
    - JS_DupValue
    - __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:3675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3676
      start: 3673
    functionDepth: 2
    functionLinenumber: 3673
    functionLinenumberEnd: 3676
    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:3680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3681
      start: 3678
    functionDepth: 2
    functionLinenumber: 3678
    functionLinenumberEnd: 3681
    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:3687,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3688,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3695,1
    - Dst: is_num_string
      Src: /src/gpac/src/quickjs/quickjs.c:3698,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: 3694
        line_start: 3694
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3706
      start: 3685
    functionDepth: 2
    functionLinenumber: 3685
    functionLinenumberEnd: 3706
    functionName: JS_AtomIsArrayIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - __JS_AtomIsTaggedInt
    - assert
    - __JS_AtomToUInt32
    - is_num_string
    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:3719,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3720,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:3720,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:3721,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3727,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3729,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3731,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:3733,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:3740,1
    - Dst: is_num
      Src: /src/gpac/src/quickjs/quickjs.c:3741,1
    - Dst: JS_ToNumber
      Src: /src/gpac/src/quickjs/quickjs.c:3744,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3744,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3745,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:3747,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3748,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3749,1
    - Dst: js_string_eq
      Src: /src/gpac/src/quickjs/quickjs.c:3752,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3752,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3753,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3757,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts:
    - condition: (atom < rt->atom_size)
      pos:
        line_end: 3720
        line_start: 3720
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 3760
      start: 3711
    functionDepth: 1
    functionLinenumber: 3711
    functionLinenumberEnd: 3760
    functionName: JS_AtomIsNumericIndex1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_string_eq
    - JS_VALUE_GET_STRING
    - is_num
    - JS_FreeValue
    - string_get
    - __JS_AtomToUInt32
    - __JS_NewFloat64
    - JS_IsException
    - JS_NewInt32
    - __JS_AtomIsTaggedInt
    - assert
    - JS_ToString
    - JS_ToNumber
    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:3766,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:3767,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:3767,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3769,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3773
      start: 3763
    functionDepth: 2
    functionLinenumber: 3763
    functionLinenumberEnd: 3773
    functionName: JS_AtomIsNumericIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - likely
    - JS_IsUndefined
    - JS_FreeValue
    - JS_IsException
    - 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:3777,1
    - Dst: __JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3778,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3779
      start: 3775
    functionDepth: 6
    functionLinenumber: 3775
    functionLinenumberEnd: 3779
    functionName: JS_FreeAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached:
    - __JS_AtomIsConst
    - __JS_FreeAtom
    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:3783,1
    - Dst: __JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3784,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - v
    argTypes:
    - JSRuntime*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3785
      start: 3781
    functionDepth: 6
    functionLinenumber: 3781
    functionLinenumberEnd: 3785
    functionName: JS_FreeAtomRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - __JS_AtomIsConst
    - __JS_FreeAtom
    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:3794,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3801
      start: 3788
    functionDepth: 1
    functionLinenumber: 3788
    functionLinenumberEnd: 3801
    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:3809,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3810,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:3815,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3816,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - plen
    - atom
    argTypes:
    - JSContext*
    - size_t*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3818
      start: 3804
    functionDepth: 3
    functionLinenumber: 3804
    functionLinenumberEnd: 3818
    functionName: JS_AtomToCStringLen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomToString
    - JS_FreeValue
    - JS_IsException
    - 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:3829,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:3830,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:3832,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3835,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:3836,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3839,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3840,1
    - Dst: JS_NewAtomLen
      Src: /src/gpac/src/quickjs/quickjs.c:3842,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:3843,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:3844,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3845,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:3848,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:3849,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - name
    - str1
    argTypes:
    - JSContext*
    - JSAtom
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3851
      start: 3821
    functionDepth: 10
    functionLinenumber: 3821
    functionLinenumberEnd: 3851
    functionName: js_atom_concat_str
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewAtomLen
    - js_malloc
    - JS_AtomToString
    - JS_FreeValue
    - JS_FreeCString
    - js_free
    - JS_IsException
    - strlen
    - memcpy
    - JS_ToCStringLen
    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:3857,1
    - Dst: js_atom_concat_str
      Src: /src/gpac/src/quickjs/quickjs.c:3859,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - name
    - n
    argTypes:
    - JSContext*
    - JSAtom
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3860
      start: 3853
    functionDepth: 11
    functionLinenumber: 3853
    functionLinenumberEnd: 3860
    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:3864,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:3864,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3865
      start: 3862
    functionDepth: 1
    functionLinenumber: 3862
    functionLinenumberEnd: 3865
    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:3878,1
    - Dst: pthread_mutex_unlock
      Src: /src/gpac/src/quickjs/quickjs.c:3886,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - pclass_id
    argTypes:
    - JSClassID*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3889
      start: 3874
    functionDepth: 0
    functionLinenumber: 3874
    functionLinenumberEnd: 3889
    functionName: JS_NewClassID
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 8
    functionsReached:
    - pthread_mutex_unlock
    - pthread_mutex_lock
    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:3894,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:3896,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - v
    argTypes:
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3898
      start: 3891
    functionDepth: 1
    functionLinenumber: 3891
    functionLinenumberEnd: 3898
    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: 3904
      start: 3900
    functionDepth: 0
    functionLinenumber: 3900
    functionLinenumberEnd: 3904
    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:3922,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:3923,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:3926,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:3927,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3929,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:3938,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:3942,1
    - Dst: JS_DupAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:3949,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: 3955
      start: 3908
    functionDepth: 6
    functionLinenumber: 3908
    functionLinenumberEnd: 3955
    functionName: JS_NewClass1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_entry
    - list_for_each
    - JS_DupAtomRT
    - js_realloc_rt
    - max_int
    - memset
    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:3962,1
    - Dst: __JS_FindAtom
      Src: /src/gpac/src/quickjs/quickjs.c:3963,1
    - Dst: __JS_NewAtomInit
      Src: /src/gpac/src/quickjs/quickjs.c:3965,1
    - Dst: JS_NewClass1
      Src: /src/gpac/src/quickjs/quickjs.c:3969,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:3970,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - rt
    - class_id
    - class_def
    argTypes:
    - JSRuntime*
    - JSClassID
    - JSClassDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3972
      start: 3957
    functionDepth: 9
    functionLinenumber: 3957
    functionLinenumberEnd: 3972
    functionName: JS_NewClass
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 8
    functionsReached:
    - __JS_NewAtomInit
    - JS_NewClass1
    - JS_FreeAtomRT
    - __JS_FindAtom
    - 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:3979,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:3981,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:3984,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:3986,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3987
      start: 3974
    functionDepth: 7
    functionLinenumber: 3974
    functionLinenumberEnd: 3987
    functionName: js_new_string8_len
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - memcpy
    - JS_AtomToString
    - JS_MKPTR
    - 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:3991,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:3991,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - buf
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3992
      start: 3989
    functionDepth: 8
    functionLinenumber: 3989
    functionLinenumberEnd: 3992
    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:3997,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4000,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - uint16_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4002
      start: 3994
    functionDepth: 7
    functionLinenumber: 3994
    functionLinenumberEnd: 4002
    functionName: js_new_string16_len
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - JS_MKPTR
    - 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:4008,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:4011,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - c
    argTypes:
    - JSContext*
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4013
      start: 4004
    functionDepth: 8
    functionLinenumber: 4004
    functionLinenumberEnd: 4013
    functionName: js_new_string_char
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_string8_len
    - js_new_string16_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:4019,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4019,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:4029,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:4031,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4038,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:4040,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - p
    - start
    - end
    argTypes:
    - JSContext*
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4042
      start: 4015
    functionDepth: 8
    functionLinenumber: 4015
    functionLinenumberEnd: 4042
    functionName: js_sub_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_new_string16_len
    - JS_DupValue
    - js_alloc_string
    - js_new_string8_len
    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:4065,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:4066,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:4072,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: 4075
      start: 4057
    functionDepth: 7
    functionLinenumber: 4057
    functionLinenumberEnd: 4075
    functionName: string_buffer_init2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_del
    - unlikely
    - 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:4079,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - s
    - size
    argTypes:
    - JSContext*
    - StringBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4080
      start: 4077
    functionDepth: 8
    functionLinenumber: 4077
    functionLinenumberEnd: 4080
    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:4084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - s
    argTypes:
    - StringBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4086
      start: 4082
    functionDepth: 5
    functionLinenumber: 4082
    functionLinenumberEnd: 4086
    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:4090,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - StringBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4095
      start: 4088
    functionDepth: 5
    functionLinenumber: 4088
    functionLinenumberEnd: 4095
    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:4106,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:4108,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - size
    argTypes:
    - StringBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4117
      start: 4097
    functionDepth: 7
    functionLinenumber: 4097
    functionLinenumberEnd: 4117
    functionName: string_buffer_widen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_set_error
    - js_realloc2
    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:4129,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:4130,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:4132,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:4132,1
    - Dst: string_buffer_widen
      Src: /src/gpac/src/quickjs/quickjs.c:4134,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:4137,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:4139,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:4140,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - s
    - new_len
    - c
    argTypes:
    - StringBuffer*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4144
      start: 4119
    functionDepth: 8
    functionLinenumber: 4119
    functionLinenumberEnd: 4144
    functionName: string_buffer_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowInternalError
    - string_buffer_widen
    - max_int
    - string_buffer_set_error
    - min_int
    - js_realloc2
    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:4148,1
    - Dst: string_buffer_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:4149,1
    - Dst: string_buffer_widen
      Src: /src/gpac/src/quickjs/quickjs.c:4157,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4162
      start: 4146
    functionDepth: 9
    functionLinenumber: 4146
    functionLinenumberEnd: 4162
    functionName: string_buffer_putc16_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_widen
    - string_buffer_realloc
    - unlikely
    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:4167,1
    - Dst: string_buffer_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:4168,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4177
      start: 4165
    functionDepth: 9
    functionLinenumber: 4165
    functionLinenumberEnd: 4177
    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:4182,1
    - Dst: string_buffer_putc16_slow
      Src: /src/gpac/src/quickjs/quickjs.c:4191,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4192
      start: 4180
    functionDepth: 10
    functionLinenumber: 4180
    functionLinenumberEnd: 4192
    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:4196,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:4198,1
    - Dst: get_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4198,1
    - Dst: get_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4200,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:4202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4203
      start: 4194
    functionDepth: 11
    functionLinenumber: 4194
    functionLinenumberEnd: 4203
    functionName: string_buffer_putc_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_lo_surrogate
    - string_buffer_putc16
    - get_hi_surrogate
    - unlikely
    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:4208,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:4213,1
    - Dst: get_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4214,1
    - Dst: get_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4215,1
    - Dst: string_buffer_putc_slow
      Src: /src/gpac/src/quickjs/quickjs.c:4223,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - StringBuffer*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4224
      start: 4206
    functionDepth: 12
    functionLinenumber: 4206
    functionLinenumberEnd: 4224
    functionName: string_buffer_putc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_lo_surrogate
    - string_buffer_putc_slow
    - get_hi_surrogate
    - 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:4232,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4234,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4235,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 2
    argNames:
    - p
    - pidx
    argTypes:
    - JSString*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4244
      start: 4226
    functionDepth: 1
    functionLinenumber: 4226
    functionLinenumberEnd: 4244
    functionName: string_getc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - from_surrogate
    - is_hi_surrogate
    - is_lo_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:4251,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4260,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - s
    - p
    - len
    argTypes:
    - StringBuffer*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4264
      start: 4246
    functionDepth: 9
    functionLinenumber: 4246
    functionLinenumberEnd: 4264
    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:4274,1
    - Dst: string_buffer_widen
      Src: /src/gpac/src/quickjs/quickjs.c:4277,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4281,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 3
    argNames:
    - s
    - p
    - len
    argTypes:
    - StringBuffer*
    - uint16_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4290
      start: 4266
    functionDepth: 9
    functionLinenumber: 4266
    functionLinenumberEnd: 4290
    functionName: string_buffer_write16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_widen
    - memcpy
    - string_buffer_realloc
    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:4295,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:4295,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - str
    argTypes:
    - StringBuffer*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4296
      start: 4293
    functionDepth: 10
    functionLinenumber: 4293
    functionLinenumberEnd: 4296
    functionName: string_buffer_puts8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_write8
    - strlen
    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:4304,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:4306,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: 4307
      start: 4298
    functionDepth: 10
    functionLinenumber: 4298
    functionLinenumberEnd: 4307
    functionName: string_buffer_concat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_write8
    - string_buffer_write16
    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:4319,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4319,1
    - Dst: JS_VALUE_GET_TAG
      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: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:4323,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:4325,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:4327,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4328,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:4329,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4330,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:4331,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4332,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4336,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:4337,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - StringBuffer*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4338
      start: 4309
    functionDepth: 11
    functionLinenumber: 4309
    functionLinenumberEnd: 4338
    functionName: string_buffer_concat_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - JS_VALUE_GET_STRING
    - string_buffer_concat
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - string_buffer_set_error
    - JS_ToString
    - JS_IsException
    - string_buffer_concat_value
    - JS_VALUE_GET_STRING_ROPE
    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:4347,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:4350,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4350,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:4351,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4352,1
    - Dst: string_buffer_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:4353,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4355,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:4356,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4357,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - StringBuffer*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4359
      start: 4340
    functionDepth: 11
    functionLinenumber: 4340
    functionLinenumberEnd: 4359
    functionName: string_buffer_concat_value_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ToStringFree
    - string_buffer_set_error
    - JS_IsException
    - string_buffer_concat
    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:4365,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:4369,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 3
    argNames:
    - s
    - c
    - count
    argTypes:
    - StringBuffer*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4373
      start: 4361
    functionDepth: 11
    functionLinenumber: 4361
    functionLinenumberEnd: 4373
    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:4382,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:4384,1
    - Dst: js_realloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:4390,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:4399,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4404,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 1
    argNames:
    - s
    argTypes:
    - StringBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4405
      start: 4375
    functionDepth: 6
    functionLinenumber: 4375
    functionLinenumberEnd: 4405
    functionName: string_buffer_end
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - JS_MKPTR
    - JS_AtomToString
    - js_realloc_rt
    - 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:4417,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:4420,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:4423,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:4425,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:4427,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:4430,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:4433,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:4439,1
    - Dst: get_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4439,1
    - Dst: get_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4440,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:4454,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:4458,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:4461,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 3
    argNames:
    - ctx
    - buf
    - buf_len
    argTypes:
    - JSContext*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4463
      start: 4408
    functionDepth: 11
    functionLinenumber: 4408
    functionLinenumberEnd: 4463
    functionName: JS_NewStringLen
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - get_lo_surrogate
    - string_buffer_putc16
    - string_buffer_end
    - unicode_from_utf8
    - string_buffer_init
    - JS_ThrowInternalError
    - count_ascii
    - string_buffer_free
    - string_buffer_putc8
    - get_hi_surrogate
    - js_new_string8_len
    - string_buffer_write8
    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:4472,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4472,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:4473,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4474,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4477,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:4478,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:4479,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:4481,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:4484,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:4485,1
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:4486,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4488,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:4489,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4492,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - str1
    - str2
    - str3
    argTypes:
    - JSContext*
    - char*
    - JSValue
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4494
      start: 4465
    functionDepth: 11
    functionLinenumber: 4465
    functionLinenumberEnd: 4494
    functionName: JS_ConcatString3
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - JS_VALUE_GET_STRING
    - string_buffer_end
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ToStringFree
    - JS_IsException
    - strlen
    - string_buffer_concat
    - string_buffer_write8
    - 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:4498,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:4501,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:4502,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - str
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4504
      start: 4496
    functionDepth: 11
    functionLinenumber: 4496
    functionLinenumberEnd: 4504
    functionName: JS_NewAtomString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_NewAtom
    - 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:4516,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:4517,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:4518,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4521,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4524,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:4545,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:4563,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4573,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4576,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:4578,1
    - Dst: unicode_to_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:4588,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4595,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: 4603
      start: 4509
    functionDepth: 7
    functionLinenumber: 4509
    functionLinenumberEnd: 4603
    functionName: JS_ToCStringLen2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - is_lo_surrogate
    - from_surrogate
    - unicode_to_utf8
    - JS_DupValue
    - JS_ToString
    - JS_IsException
    - js_alloc_string
    - is_hi_surrogate
    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:4611,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4612,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4612,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - ptr
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4613
      start: 4605
    functionDepth: 1
    functionLinenumber: 4605
    functionLinenumberEnd: 4613
    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: 4624
      start: 4615
    functionDepth: 0
    functionLinenumber: 4615
    functionLinenumberEnd: 4624
    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: 4635
      start: 4626
    functionDepth: 0
    functionLinenumber: 4626
    functionLinenumberEnd: 4635
    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:4642,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:4643,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:4644,1
    - Dst: memcmp16_8
      Src: /src/gpac/src/quickjs/quickjs.c:4646,1
    - Dst: memcmp16_8
      Src: /src/gpac/src/quickjs/quickjs.c:4649,1
    - Dst: memcmp16
      Src: /src/gpac/src/quickjs/quickjs.c:4651,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: 4654
      start: 4637
    functionDepth: 1
    functionLinenumber: 4637
    functionLinenumberEnd: 4654
    functionName: js_string_memcmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - memcmp16
    - memcmp16_8
    - 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:4663,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - p1
    - p2
    argTypes:
    - JSContext*
    - JSString*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4664
      start: 4656
    functionDepth: 2
    functionLinenumber: 4656
    functionLinenumberEnd: 4664
    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:4671,1
    - Dst: js_string_memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:4672,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - p1
    - p2
    argTypes:
    - JSContext*
    - JSString*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4682
      start: 4667
    functionDepth: 2
    functionLinenumber: 4667
    functionLinenumberEnd: 4682
    functionName: js_string_compare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_memcmp
    - min_int
    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:4687,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: 4695
      start: 4684
    functionDepth: 0
    functionLinenumber: 4684
    functionLinenumberEnd: 4695
    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:4706,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:4708,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4712,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4713,1
    - Dst: copy_str16
      Src: /src/gpac/src/quickjs/quickjs.c:4716,1
    - Dst: copy_str16
      Src: /src/gpac/src/quickjs/quickjs.c:4717,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4719,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - p1
    - p2
    argTypes:
    - JSContext*
    - JSString*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4720
      start: 4697
    functionDepth: 7
    functionLinenumber: 4697
    functionLinenumberEnd: 4720
    functionName: JS_ConcatString1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_ThrowInternalError
    - copy_str16
    - memcpy
    - 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:4723,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4724,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:4729,1
    - Dst: js_malloc_usable_size
      Src: /src/gpac/src/quickjs/quickjs.c:4731,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4735,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:4748,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - p1
    - op2
    argTypes:
    - JSContext*
    - JSString*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4756
      start: 4722
    functionDepth: 4
    functionLinenumber: 4722
    functionLinenumberEnd: 4756
    functionName: JS_ConcatStringInPlace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc_usable_size
    - JS_VALUE_GET_STRING
    - js_rc
    - JS_VALUE_GET_TAG
    - memcpy
    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:4762,1
    - Dst: JS_ConcatStringInPlace
      Src: /src/gpac/src/quickjs/quickjs.c:4763,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4764,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4767,1
    - Dst: JS_ConcatString1
      Src: /src/gpac/src/quickjs/quickjs.c:4768,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4769,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4770,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4772
      start: 4758
    functionDepth: 8
    functionLinenumber: 4758
    functionLinenumberEnd: 4772
    functionName: JS_ConcatString2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ConcatStringInPlace
    - JS_ConcatString1
    - JS_FreeValue
    - JS_VALUE_GET_STRING
    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:4777,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:4778,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4778,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4780,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4782,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4783,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4785,1
    - Dst: string_rope_get
      Src: /src/gpac/src/quickjs/quickjs.c:4787,1
    - Dst: string_rope_get
      Src: /src/gpac/src/quickjs/quickjs.c:4789,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - val
    - idx
    argTypes:
    - JSValueConst
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4791
      start: 4775
    functionDepth: 1
    functionLinenumber: 4775
    functionLinenumberEnd: 4791
    functionName: string_rope_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    - string_get
    - string_rope_get
    - JS_VALUE_GET_STRING_ROPE
    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: 4802
      start: 4798
    functionDepth: 0
    functionLinenumber: 4798
    functionLinenumberEnd: 4802
    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:4814,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4815,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4816,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:4817,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: 4816
        line_start: 4816
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 4821
      start: 4805
    functionDepth: 1
    functionLinenumber: 4805
    functionLinenumberEnd: 4821
    functionName: string_rope_iter_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_STRING_ROPE
    - JS_VALUE_GET_TAG
    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:4825,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4826,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4828,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4829
      start: 4823
    functionDepth: 1
    functionLinenumber: 4823
    functionLinenumberEnd: 4829
    functionName: string_rope_get_len
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_STRING_ROPE
    - JS_VALUE_GET_TAG
    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:4839,1
    - Dst: string_rope_get_len
      Src: /src/gpac/src/quickjs/quickjs.c:4840,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:4845,1
    - Dst: string_rope_iter_init
      Src: /src/gpac/src/quickjs/quickjs.c:4846,1
    - Dst: string_rope_iter_init
      Src: /src/gpac/src/quickjs/quickjs.c:4847,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4848,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4849,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:4853,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:4854,1
    - Dst: js_string_memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:4855,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4861,1
    - Dst: string_rope_iter_next
      Src: /src/gpac/src/quickjs/quickjs.c:4866,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: 4878
      start: 4831
    functionDepth: 2
    functionLinenumber: 4831
    functionLinenumberEnd: 4878
    functionName: js_string_rope_compare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_rope_iter_init
    - js_string_memcmp
    - string_rope_get_len
    - min_uint32
    - string_rope_iter_next
    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:4888,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4891,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4892,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4893,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4894,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:4897,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:4899,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:4901,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:4902,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4904,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4905,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:4906,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:4907,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4909,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4912,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - ctx
    - rope
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4914
      start: 4882
    functionDepth: 12
    functionLinenumber: 4882
    functionLinenumberEnd: 4914
    functionName: js_linearize_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - js_rc
    - JS_AtomToString
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - string_buffer_concat_value
    - string_buffer_init2
    - JS_VALUE_GET_STRING_ROPE
    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:4926,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4927,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4932,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4938,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:4939,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4943,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:4946,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:4949,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:4952,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:4955,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:4961,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:4965,1
    - Dst: js_rebalancee_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:4967,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:4969,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:4970,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:4970,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4972,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4978,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:4979,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 49
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4981
      start: 4919
    functionDepth: 6
    functionLinenumber: 4919
    functionLinenumberEnd: 4981
    functionName: js_new_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rebalancee_string_rope
    - JS_MKPTR
    - js_malloc
    - JS_VALUE_GET_STRING
    - js_rc
    - printf
    - JS_ThrowInternalError
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - max_int
    - JS_VALUE_GET_STRING_ROPE
    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:5003,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:5004,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:5018,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:5020,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5023,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5024,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:5030,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5031,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5031,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5032,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5035,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:5037,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5038,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5040,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:5046,1
    - Dst: js_rebalancee_string_rope_rec
      Src: /src/gpac/src/quickjs/quickjs.c:5047,1
    - Dst: js_rebalancee_string_rope_rec
      Src: /src/gpac/src/quickjs/quickjs.c:5048,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 3
    argNames:
    - ctx
    - buckets
    - val
    argTypes:
    - JSContext*
    - JSValue*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5051
      start: 5000
    functionDepth: 7
    functionLinenumber: 5000
    functionLinenumberEnd: 5051
    functionName: js_rebalancee_string_rope_rec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_rebalancee_string_rope_rec
    - JS_VALUE_GET_STRING
    - js_new_string_rope
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_DupValue
    - JS_IsException
    - JS_VALUE_GET_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:5063,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:5068,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:5070,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5073,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5074,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:5080,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:5081,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5086,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - ctx
    - rope
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5089
      start: 5056
    functionDepth: 8
    functionLinenumber: 5056
    functionLinenumberEnd: 5089
    functionName: js_rebalancee_string_rope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_rebalancee_string_rope_rec
    - js_new_string_rope
    - JS_AtomToString
    - JS_FreeValue
    - JS_IsNull
    - JS_IsException
    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:5097,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5097,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5098,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:5099,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5100,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5101,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5105,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5105,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5106,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:5107,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5108,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5109,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5115,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:5116,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5118,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5122,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:5123,1
    - Dst: JS_ConcatString2
      Src: /src/gpac/src/quickjs/quickjs.c:5125,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5127,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:5131,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5132,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:5133,1
    - Dst: JS_ConcatString2
      Src: /src/gpac/src/quickjs/quickjs.c:5135,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5135,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5136,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5137,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5140,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5140,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5141,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5146,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:5148,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5150,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:5153,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5154,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:5155,1
    - Dst: JS_ConcatString2
      Src: /src/gpac/src/quickjs/quickjs.c:5157,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5157,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5158,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5159,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5162,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5162,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5163,1
    - Dst: js_new_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:5167,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 63
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5168
      start: 5093
    functionDepth: 9
    functionLinenumber: 5093
    functionLinenumberEnd: 5168
    functionName: JS_ConcatString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - JS_VALUE_GET_STRING
    - js_new_string_rope
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ToStringFree
    - JS_DupValue
    - JS_IsException
    - JS_VALUE_GET_STRING_ROPE
    - JS_ConcatString2
    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: 5176
      start: 5172
    functionDepth: 0
    functionLinenumber: 5172
    functionLinenumberEnd: 5176
    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: 1
    argNames:
    - sh
    argTypes:
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5181
      start: 5178
    functionDepth: 0
    functionLinenumber: 5178
    functionLinenumberEnd: 5181
    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:5188,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5193
      start: 5183
    functionDepth: 6
    functionLinenumber: 5183
    functionLinenumberEnd: 5193
    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: 5199
      start: 5196
    functionDepth: 0
    functionLinenumber: 5196
    functionLinenumberEnd: 5199
    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: 5205
      start: 5202
    functionDepth: 0
    functionLinenumber: 5202
    functionLinenumberEnd: 5205
    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:5210,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - proto
    argTypes:
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5214
      start: 5207
    functionDepth: 1
    functionLinenumber: 5207
    functionLinenumberEnd: 5214
    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:5223,1
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5230,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - rt
    - new_shape_hash_bits
    argTypes:
    - JSRuntime*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5240
      start: 5216
    functionDepth: 6
    functionLinenumber: 5216
    functionLinenumberEnd: 5240
    functionName: resize_shape_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_hash
    - js_free_rt
    - js_mallocz_rt
    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:5245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5249
      start: 5242
    functionDepth: 1
    functionLinenumber: 5242
    functionLinenumberEnd: 5249
    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:5256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5262
      start: 5251
    functionDepth: 1
    functionLinenumber: 5251
    functionLinenumberEnd: 5262
    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:5271,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:5271,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5274,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5275,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5277,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5277,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:5279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - proto
    - hash_size
    - prop_size
    argTypes:
    - JSContext*
    - JSObject*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5286
      start: 5265
    functionDepth: 6
    functionLinenumber: 5265
    functionLinenumberEnd: 5286
    functionName: js_new_shape_nohash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_malloc
    - js_rc
    - add_gc_object
    - get_shape_size
    - JS_DupValue
    - memset
    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:5297,1
    - Dst: js_new_shape_nohash
      Src: /src/gpac/src/quickjs/quickjs.c:5300,1
    - Dst: shape_initial_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5305,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:5307,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: 5309
      start: 5289
    functionDepth: 7
    functionLinenumber: 5289
    functionLinenumberEnd: 5309
    functionName: js_new_shape2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - resize_shape_hash
    - js_new_shape_nohash
    - shape_initial_hash
    - js_shape_hash_link
    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:5313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - proto
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5315
      start: 5311
    functionDepth: 8
    functionLinenumber: 5311
    functionLinenumberEnd: 5315
    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:5328,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5329,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:5332,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5334,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5335,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5338,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5338,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5340,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:5341,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - ctx
    - sh1
    argTypes:
    - JSContext*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5344
      start: 5320
    functionDepth: 6
    functionLinenumber: 5320
    functionLinenumberEnd: 5344
    functionName: js_clone_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_malloc
    - js_rc
    - JS_DupAtom
    - add_gc_object
    - get_shape_size
    - JS_DupValue
    - get_shape_prop
    - memcpy
    linkageType: ''
    returnType: JSShape
    signature: JSShape *js_clone_shape(JSContext *ctx, JSShape *sh1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - sh
    argTypes:
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5350
      start: 5346
    functionDepth: 2
    functionLinenumber: 5346
    functionLinenumberEnd: 5350
    functionName: js_dup_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    linkageType: ''
    returnType: JSShape
    signature: JSShape *js_dup_shape(JSShape *sh)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5357,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5357,1
    - Dst: js_shape_hash_unlink
      Src: /src/gpac/src/quickjs/quickjs.c:5359,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:5361,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5361,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5363,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:5365,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5368,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:5369,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts:
    - condition: (js_rc(sh)->ref_count == 0)
      pos:
        line_end: 5356
        line_start: 5356
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 5370
      start: 5352
    functionDepth: 7
    functionLinenumber: 5352
    functionLinenumberEnd: 5370
    functionName: js_free_shape0
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_rc
    - js_shape_hash_unlink
    - JS_FreeAtomRT
    - js_free_rt
    - JS_FreeValueRT
    - remove_gc_object
    - get_shape_prop
    - assert
    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:5374,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5374,1
    - Dst: js_free_shape0
      Src: /src/gpac/src/quickjs/quickjs.c:5375,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5377
      start: 5372
    functionDepth: 8
    functionLinenumber: 5372
    functionLinenumberEnd: 5377
    functionName: js_free_shape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - 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:5382,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - sh
    argTypes:
    - JSRuntime*
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5383
      start: 5379
    functionDepth: 9
    functionLinenumber: 5379
    functionLinenumberEnd: 5383
    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:5396,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:5401,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5402,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5412,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:5412,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5415,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5417,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5418,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:5420,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:5427,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:5429,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5429,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5429,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5431,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:5440,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:5443,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5443,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5443,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:5446,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 4
    argNames:
    - ctx
    - psh
    - p
    - count
    argTypes:
    - JSContext*
    - JSShape**
    - JSObject*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5450
      start: 5386
    functionDepth: 7
    functionLinenumber: 5386
    functionLinenumberEnd: 5450
    functionName: resize_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - unlikely
    - js_rc
    - add_gc_object
    - js_realloc
    - get_shape_size
    - js_free
    - max_int
    - remove_gc_object
    - get_shape_prop
    - memset
    - memcpy
    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:5462,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:5464,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5466,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5475,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:5475,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5478,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5480,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5481,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:5483,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:5486,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5490,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5491,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5506,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:5512,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:5515,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts:
    - condition: (!sh->is_hashed)
      pos:
        line_end: 5461
        line_start: 5461
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (new_size <= sh->prop_size)
      pos:
        line_end: 5465
        line_start: 5465
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (j == (sh->prop_count - sh->deleted_prop_count))
      pos:
        line_end: 5505
        line_start: 5505
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 5519
      start: 5453
    functionDepth: 7
    functionLinenumber: 5453
    functionLinenumberEnd: 5519
    functionName: compact_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - js_rc
    - add_gc_object
    - memset
    - get_shape_size
    - js_realloc
    - js_free
    - max_int
    - remove_gc_object
    - get_shape_prop
    - assert
    - memcpy
    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:5532,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5533,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5533,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5536,1
    - Dst: resize_properties
      Src: /src/gpac/src/quickjs/quickjs.c:5537,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:5541,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:5548,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5552,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:5554,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: 5562
      start: 5521
    functionDepth: 8
    functionLinenumber: 5521
    functionLinenumberEnd: 5562
    functionName: add_shape_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_shape_hash_link
    - unlikely
    - JS_DupAtom
    - js_shape_hash_unlink
    - get_shape_prop
    - shape_hash
    - resize_properties
    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:5571,1
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5572,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - proto
    argTypes:
    - JSRuntime*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5581
      start: 5566
    functionDepth: 2
    functionLinenumber: 5566
    functionLinenumberEnd: 5581
    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:5592,1
    - Dst: shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5593,1
    - Dst: get_shape_hash
      Src: /src/gpac/src/quickjs/quickjs.c:5594,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5601,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5602,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5604,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5605,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5608,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5609,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: 5616
      start: 5585
    functionDepth: 1
    functionLinenumber: 5585
    functionLinenumberEnd: 5616
    functionName: find_hashed_shape_prop
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_prop
    - shape_hash
    - unlikely
    - 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:5624,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5625,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5628,1
    - Dst: JS_AtomGetStrRT
      Src: /src/gpac/src/quickjs/quickjs.c:5628,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5629,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5631,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - i
    - sh
    argTypes:
    - JSRuntime*
    - int
    - JSShape*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5632
      start: 5618
    functionDepth: 2
    functionLinenumber: 5618
    functionLinenumberEnd: 5632
    functionName: JS_DumpShape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - get_shape_prop
    - js_rc
    - 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:5642,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5643,1
    - Dst: JS_DumpShape
      Src: /src/gpac/src/quickjs/quickjs.c:5646,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:5647,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:5651,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:5652,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5653,1
    - Dst: JS_DumpShape
      Src: /src/gpac/src/quickjs/quickjs.c:5656,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:5660,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (sh->is_hashed)
      pos:
        line_end: 5646
        line_start: 5646
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 5661
      start: 5634
    functionDepth: 3
    functionLinenumber: 5634
    functionLinenumberEnd: 5661
    functionName: JS_DumpShapes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - printf
    - list_entry
    - list_for_each
    - js_rc
    - JS_DumpShape
    - assert
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpShapes(JSRuntime *rt)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: js_trigger_gc
      Src: /src/gpac/src/quickjs/quickjs.c:5671,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5672,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5673,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:5688,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:5689,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:5690,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:5693,1
    - Dst: free_property
      Src: /src/gpac/src/quickjs/quickjs.c:5695,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5699,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:5717,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:5722,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:5725,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:5777,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:5778,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5783,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 109
    argCount: 4
    argNames:
    - ctx
    - sh
    - class_id
    - props
    argTypes:
    - JSContext*
    - JSShape*
    - JSClassID
    - JSProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5784
      start: 5665
    functionDepth: 9
    functionLinenumber: 5665
    functionLinenumberEnd: 5784
    functionName: JS_NewObjectFromShape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_property
    - js_free_shape
    - JS_MKPTR
    - js_malloc
    - unlikely
    - likely
    - js_rc
    - add_gc_object
    - add_property
    - js_free
    - js_trigger_gc
    - JS_NewInt32
    - get_shape_prop
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_NewObjectFromShape(JSContext *ctx, JSShape *sh, JSClassID
      class_id,\n                                     JSProperty *props)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5788,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5791,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - proto_val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5792
      start: 5786
    functionDepth: 1
    functionLinenumber: 5786
    functionLinenumberEnd: 5792
    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:5801,1
    - Dst: find_hashed_shape_proto
      Src: /src/gpac/src/quickjs/quickjs.c:5802,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:5803,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5804,1
    - Dst: js_new_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5806,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:5810,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - proto_val
    - class_id
    argTypes:
    - JSContext*
    - JSValueConst
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5811
      start: 5795
    functionDepth: 10
    functionLinenumber: 5795
    functionLinenumberEnd: 5811
    functionName: JS_NewObjectProtoClass
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - likely
    - js_new_shape
    - js_dup_shape
    - 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:5826,1
    - Dst: get_proto_obj
      Src: /src/gpac/src/quickjs/quickjs.c:5829,1
    - Dst: js_new_shape_nohash
      Src: /src/gpac/src/quickjs/quickjs.c:5830,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:5833,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: 5834
      start: 5815
    functionDepth: 10
    functionLinenumber: 5815
    functionLinenumberEnd: 5834
    functionName: JS_NewObjectProtoClassAlloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_shape_nohash
    - JS_NewObjectFromShape
    - clz32
    - get_proto_obj
    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:5841,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5842,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5850,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5854
      start: 5837
    functionDepth: 1
    functionLinenumber: 5837
    functionLinenumberEnd: 5854
    functionName: JS_GetObjectData
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_VALUE_GET_OBJ
    - 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:5861,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5862,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5870,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5877,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5878,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:5879,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - obj
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5881
      start: 5857
    functionDepth: 1
    functionLinenumber: 5857
    functionLinenumberEnd: 5881
    functionName: JS_SetObjectData
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_IsException
    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:5885,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - class_id
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5886
      start: 5883
    functionDepth: 11
    functionLinenumber: 5883
    functionLinenumberEnd: 5886
    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:5890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - proto
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5891
      start: 5888
    functionDepth: 11
    functionLinenumber: 5888
    functionLinenumberEnd: 5891
    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:5895,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:5895,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5897
      start: 5893
    functionDepth: 10
    functionLinenumber: 5893
    functionLinenumberEnd: 5897
    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:5902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5903
      start: 5899
    functionDepth: 11
    functionLinenumber: 5899
    functionLinenumberEnd: 5903
    functionName: JS_NewObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 68
    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:5909,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:5909,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:5911,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:5912,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: 5913
      start: 5905
    functionDepth: 3
    functionLinenumber: 5905
    functionLinenumberEnd: 5913
    functionName: js_function_set_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_AtomToString
    - JS_NewInt32
    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: 5921
      start: 5915
    functionDepth: 0
    functionLinenumber: 5915
    functionLinenumberEnd: 5921
    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:5927,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5929,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:5930,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5933
      start: 5924
    functionDepth: 1
    functionLinenumber: 5924
    functionLinenumberEnd: 5933
    functionName: JS_GetFunctionBytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_class_has_bytecode
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:5941,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5943,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:5944,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:5950,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:5950,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:5952,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:5953,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:5953,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - func_obj
    - home_obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5958
      start: 5935
    functionDepth: 1
    functionLinenumber: 5935
    functionLinenumberEnd: 5958
    functionName: js_method_set_home_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_class_has_bytecode
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_DupValue
    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:5964,1
    - Dst: JS_AtomSymbolHasDescription
      Src: /src/gpac/src/quickjs/quickjs.c:5965,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:5966,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5969
      start: 5960
    functionDepth: 12
    functionLinenumber: 5960
    functionLinenumberEnd: 5969
    functionName: js_get_function_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomSymbolHasDescription
    - JS_AtomToString
    - 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:5980,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:5982,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:5984,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:5986,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:5988,1
    - Dst: js_method_set_home_object
      Src: /src/gpac/src/quickjs/quickjs.c:5991,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: 5993
      start: 5975
    functionDepth: 13
    functionLinenumber: 5975
    functionLinenumberEnd: 5993
    functionName: js_method_set_properties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - js_get_function_name
    - JS_ConcatString3
    - js_method_set_home_object
    - JS_IsException
    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:6006,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:6008,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:6010,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:6012,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:6013,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:6024,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:6026,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:6029,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:6030,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: 6032
      start: 5996
    functionDepth: 11
    functionLinenumber: 5996
    functionLinenumberEnd: 6032
    functionName: JS_NewCFunction3
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_function_set_properties
    - JS_VALUE_GET_OBJ
    - JS_NewAtom
    - JS_FreeValue
    - JS_FreeAtom
    - JS_IsException
    - JS_NewObjectProtoClassAlloc
    - JS_DupContext
    - JS_NewObjectProtoClass
    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:6039,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: 6041
      start: 6035
    functionDepth: 12
    functionLinenumber: 6035
    functionLinenumberEnd: 6041
    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:6053,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6058,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6060,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6062
      start: 6051
    functionDepth: 4
    functionLinenumber: 6051
    functionLinenumberEnd: 6062
    functionName: js_c_function_data_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_GetOpaque
    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:6067,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6072,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6075
      start: 6064
    functionDepth: 1
    functionLinenumber: 6064
    functionLinenumberEnd: 6075
    functionName: js_c_function_data_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_GetOpaque
    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:6081,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:6086,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:6087,1
    - Dst: JSCFunctionDataRecord*::func
      Src: /src/gpac/src/quickjs/quickjs.c:6096,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: 6097
      start: 6077
    functionDepth: 1
    functionLinenumber: 6077
    functionLinenumberEnd: 6097
    functionName: js_c_function_data_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - alloca
    - JSCFunctionDataRecord*::func
    - unlikely
    - JS_GetOpaque
    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:6107,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:6109,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:6111,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:6113,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:6121,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:6122,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:6123,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: 6126
      start: 6099
    functionDepth: 11
    functionLinenumber: 6099
    functionLinenumberEnd: 6126
    functionName: JS_NewCFunctionData
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_function_set_properties
    - js_malloc
    - JS_SetOpaque
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - JS_NewObjectProtoClass
    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: 6131
      start: 6128
    functionDepth: 0
    functionLinenumber: 6128
    functionLinenumberEnd: 6131
    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: 6136
      start: 6133
    functionDepth: 0
    functionLinenumber: 6133
    functionLinenumberEnd: 6136
    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:6140,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:6140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - pr
    argTypes:
    - JSRuntime*
    - JSProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6141
      start: 6138
    functionDepth: 5
    functionLinenumber: 6138
    functionLinenumberEnd: 6141
    functionName: js_autoinit_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeContext
    - js_autoinit_get_realm
    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:6146,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:6146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - pr
    - mark_func
    argTypes:
    - JSRuntime*
    - JSProperty*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6147
      start: 6143
    functionDepth: 1
    functionLinenumber: 6143
    functionLinenumberEnd: 6147
    functionName: js_autoinit_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mark_func
    - js_autoinit_get_realm
    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:6151,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6154,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6154,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6156,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6156,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:6158,1
    - Dst: js_autoinit_free
      Src: /src/gpac/src/quickjs/quickjs.c:6160,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6163,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 3
    argNames:
    - rt
    - pr
    - prop_flags
    argTypes:
    - JSRuntime*
    - JSProperty*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6165
      start: 6149
    functionDepth: 6
    functionLinenumber: 6149
    functionLinenumberEnd: 6165
    functionName: free_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_MKPTR
    - unlikely
    - free_var_ref
    - js_autoinit_free
    - JS_FreeValueRT
    linkageType: ''
    returnType: void
    signature: void free_property(JSRuntime *rt, JSProperty *pr, int prop_flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:6176,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:6179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6185
      start: 6167
    functionDepth: 1
    functionLinenumber: 6167
    functionLinenumberEnd: 6185
    functionName: "JSShapeProperty *find_own_property1(JSObject *p,\n                                                        JSAtom
      atom)"
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_prop
    - likely
    linkageType: ''
    returnType: force_inline
    signature: "force_inline JSShapeProperty *find_own_property1(JSObject *p,\n                                                        JSAtom
      atom)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:6197,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:6200,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6209
      start: 6187
    functionDepth: 1
    functionLinenumber: 6187
    functionLinenumberEnd: 6209
    functionName: "JSShapeProperty *find_own_property(JSProperty **ppr,\n                                                       JSObject
      *p,\n                                                       JSAtom atom)"
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_shape_prop
    - likely
    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: 6214
      start: 6212
    functionDepth: 0
    functionLinenumber: 6212
    functionLinenumberEnd: 6214
    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:6219,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6219,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6220,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6222,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6225,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:6228,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:6229,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:6232,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6233,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - rt
    - var_ref
    argTypes:
    - JSRuntime*
    - JSVarRef*
    assertStmts:
    - condition: (js_rc(var_ref)->ref_count > 0)
      pos:
        line_end: 6218
        line_start: 6218
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (sf->var_refs[var_ref->var_ref_idx] == var_ref)
      pos:
        line_end: 6224
        line_start: 6224
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6236
      start: 6216
    functionDepth: 4
    functionLinenumber: 6216
    functionLinenumberEnd: 6236
    functionName: free_var_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_rc
    - async_func_free
    - js_free_rt
    - JS_FreeValueRT
    - remove_gc_object
    - container_of
    - assert
    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:6240,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6244,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6247
      start: 6238
    functionDepth: 4
    functionLinenumber: 6238
    functionLinenumberEnd: 6247
    functionName: js_array_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:6252,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6256,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6258
      start: 6249
    functionDepth: 1
    functionLinenumber: 6249
    functionLinenumberEnd: 6258
    functionName: js_array_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:6262,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6265
      start: 6260
    functionDepth: 1
    functionLinenumber: 6260
    functionLinenumberEnd: 6265
    functionName: js_object_data_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:6270,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6272
      start: 6267
    functionDepth: 1
    functionLinenumber: 6267
    functionLinenumberEnd: 6272
    functionName: js_object_data_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:6276,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:6279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6280
      start: 6274
    functionDepth: 5
    functionLinenumber: 6274
    functionLinenumberEnd: 6280
    functionName: js_c_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeContext
    - JS_VALUE_GET_OBJ
    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:6285,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6288,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6289
      start: 6282
    functionDepth: 1
    functionLinenumber: 6282
    functionLinenumberEnd: 6289
    functionName: js_c_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mark_func
    - JS_VALUE_GET_OBJ
    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:6293,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6300,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6300,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:6307,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6308,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6310,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6310,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6312
      start: 6291
    functionDepth: 5
    functionLinenumber: 6291
    functionLinenumberEnd: 6312
    functionName: js_bytecode_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - free_var_ref
    - JS_VALUE_GET_OBJ
    - js_free_rt
    - JS_FreeValueRT
    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:6317,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6323,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6323,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6331,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6337,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6337,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6339
      start: 6314
    functionDepth: 1
    functionLinenumber: 6314
    functionLinenumberEnd: 6339
    functionName: js_bytecode_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - mark_func
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    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:6343,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6347,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6348,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6350,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6353
      start: 6341
    functionDepth: 4
    functionLinenumber: 6341
    functionLinenumberEnd: 6353
    functionName: js_bound_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:6358,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6362,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6363,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6365,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6366
      start: 6355
    functionDepth: 1
    functionLinenumber: 6355
    functionLinenumberEnd: 6366
    functionName: js_bound_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:6370,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6374,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:6377,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6379,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6382
      start: 6368
    functionDepth: 7
    functionLinenumber: 6368
    functionLinenumberEnd: 6382
    functionName: js_for_in_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtomRT
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:6387,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6390
      start: 6384
    functionDepth: 1
    functionLinenumber: 6384
    functionLinenumberEnd: 6390
    functionName: js_for_in_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:6403,1
    - Dst: free_property
      Src: /src/gpac/src/quickjs/quickjs.c:6405,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6408,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:6411,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6419,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:6427,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6429,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6430,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6434,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6439,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6441,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6444
      start: 6392
    functionDepth: 9
    functionLinenumber: 6392
    functionLinenumberEnd: 6444
    functionName: free_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_shape
    - free_property
    - list_add_tail
    - JS_MKPTR
    - js_rc
    - js_free_rt
    - remove_gc_object
    - get_shape_prop
    linkageType: ''
    returnType: void
    signature: void free_object(JSRuntime *rt, JSObject *p)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6448,1
    - Dst: free_object
      Src: /src/gpac/src/quickjs/quickjs.c:6450,1
    - Dst: free_function_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:6453,1
    - Dst: __async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:6456,1
    - Dst: js_free_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:6459,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:6462,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - rt
    - gp
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6464
      start: 6446
    functionDepth: 10
    functionLinenumber: 6446
    functionLinenumberEnd: 6464
    functionName: free_gc_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_function_bytecode
    - js_free_module_def
    - js_rc
    - free_object
    - abort
    - __async_func_free
    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:6476,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6477,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6477,1
    - Dst: free_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:6478,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (js_rc(p)->ref_count == 0)
      pos:
        line_end: 6476
        line_start: 6476
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6481
      start: 6466
    functionDepth: 11
    functionLinenumber: 6466
    functionLinenumberEnd: 6481
    functionName: free_zero_refcount
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - assert
    - free_gc_object
    - js_rc
    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:6486,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:6490,1
    - Dst: JS_DumpObject
      Src: /src/gpac/src/quickjs/quickjs.c:6492,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:6492,1
    - Dst: JS_DumpValueShort
      Src: /src/gpac/src/quickjs/quickjs.c:6494,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:6495,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:6503,1
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:6505,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6508,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6510,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:6517,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6518,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:6519,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6520,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6527,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6529,1
    - Dst: list_add
      Src: /src/gpac/src/quickjs/quickjs.c:6530,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6531,1
    - Dst: free_zero_refcount
      Src: /src/gpac/src/quickjs/quickjs.c:6533,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6540,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6541,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6546,1
    - Dst: JS_FreeAtomStruct
      Src: /src/gpac/src/quickjs/quickjs.c:6547,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:6551,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 2
    argNames:
    - rt
    - v
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6553
      start: 6484
    functionDepth: 12
    functionLinenumber: 6484
    functionLinenumberEnd: 6553
    functionName: __JS_FreeValueRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add
    - JS_VALUE_GET_PTR
    - JS_DumpObject
    - printf
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_STRING
    - list_del
    - js_rc
    - abort
    - JS_VALUE_GET_TAG
    - JS_FreeAtomStruct
    - free_zero_refcount
    - JS_DumpValueShort
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_STRING_ROPE
    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:6557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6558
      start: 6555
    functionDepth: 13
    functionLinenumber: 6555
    functionLinenumberEnd: 6558
    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:6570,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6571,1
    - Dst: map_delete_weakrefs
      Src: /src/gpac/src/quickjs/quickjs.c:6574,1
    - Dst: weakref_delete_weakref
      Src: /src/gpac/src/quickjs/quickjs.c:6577,1
    - Dst: finrec_delete_weakref
      Src: /src/gpac/src/quickjs/quickjs.c:6580,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:6583,1
    - Dst: free_zero_refcount
      Src: /src/gpac/src/quickjs/quickjs.c:6589,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6590
      start: 6562
    functionDepth: 12
    functionLinenumber: 6562
    functionLinenumberEnd: 6590
    functionName: gc_remove_weak_objects
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - list_for_each
    - abort
    - free_zero_refcount
    - finrec_delete_weakref
    - weakref_delete_weakref
    - map_delete_weakrefs
    linkageType: ''
    returnType: void
    signature: void gc_remove_weak_objects(JSRuntime *rt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6595,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6596,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6597,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - h
    - type
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    - JSGCObjectTypeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6598
      start: 6592
    functionDepth: 2
    functionLinenumber: 6592
    functionLinenumberEnd: 6598
    functionName: add_gc_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - js_rc
    - 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:6602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - h
    argTypes:
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6603
      start: 6600
    functionDepth: 1
    functionLinenumber: 6600
    functionLinenumberEnd: 6603
    functionName: remove_gc_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    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:6607,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:6608,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6612,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:6612,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6618
      start: 6605
    functionDepth: 1
    functionLinenumber: 6605
    functionLinenumberEnd: 6618
    functionName: JS_MarkValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 24
    functionsReached:
    - mark_func
    - JS_VALUE_HAS_REF_COUNT
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void JS_MarkValue(JSRuntime *rt, JSValueConst val, JS_MarkFunc *mark_func)
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6623,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6631,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:6633,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6640,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6642,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6646,1
    - Dst: js_autoinit_mark
      Src: /src/gpac/src/quickjs/quickjs.c:6648,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6651,1
    - Dst: gc_mark
      Src: /src/gpac/src/quickjs/quickjs.c:6661,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:6661,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6671,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6674,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6681,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:6685,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6686,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6698,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6699,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6707,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6710,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:6711,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:6718,1
    - Dst: JS_MarkContext
      Src: /src/gpac/src/quickjs/quickjs.c:6725,1
    - Dst: js_mark_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:6731,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:6735,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 82
    argCount: 3
    argNames:
    - rt
    - gp
    - mark_func
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6737
      start: 6620
    functionDepth: 2
    functionLinenumber: 6620
    functionLinenumberEnd: 6737
    functionName: mark_children
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkContext
    - JS_MKPTR
    - container_of
    - js_mark_module_def
    - js_rc
    - mark_func
    - abort
    - JS_MarkValue
    - gc_mark
    - js_autoinit_mark
    - get_shape_prop
    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:6741,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6741,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6742,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6743,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6743,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6744,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6745,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts:
    - condition: (js_rc(p)->ref_count > 0)
      pos:
        line_end: 6740
        line_start: 6740
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6747
      start: 6739
    functionDepth: 2
    functionLinenumber: 6739
    functionLinenumberEnd: 6747
    functionName: gc_decref_child
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - assert
    - list_add_tail
    - 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:6754,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:6759,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6760,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6761,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6761,1
    - Dst: mark_children
      Src: /src/gpac/src/quickjs/quickjs.c:6762,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6763,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6764,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6765,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6766,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (js_rc(p)->mark == 0)
      pos:
        line_end: 6760
        line_start: 6760
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6769
      start: 6749
    functionDepth: 3
    functionLinenumber: 6749
    functionLinenumberEnd: 6769
    functionName: gc_decref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_add_tail
    - init_list_head
    - list_entry
    - js_rc
    - list_del
    - mark_children
    - assert
    - list_for_each_safe
    linkageType: ''
    returnType: void
    signature: void gc_decref(JSRuntime *rt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6773,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6774,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6777,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6778,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6781
      start: 6771
    functionDepth: 2
    functionLinenumber: 6771
    functionLinenumberEnd: 6781
    functionName: gc_scan_incref_child
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - list_del
    - list_add_tail
    linkageType: ''
    returnType: void
    signature: void gc_scan_incref_child(JSRuntime *rt, JSGCObjectHeader *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6786
      start: 6783
    functionDepth: 2
    functionLinenumber: 6783
    functionLinenumberEnd: 6786
    functionName: gc_scan_incref_child2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    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:6794,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6795,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6796,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6796,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6797,1
    - Dst: mark_children
      Src: /src/gpac/src/quickjs/quickjs.c:6798,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6802,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6803,1
    - Dst: mark_children
      Src: /src/gpac/src/quickjs/quickjs.c:6804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: (js_rc(p)->ref_count > 0)
      pos:
        line_end: 6795
        line_start: 6795
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6806
      start: 6788
    functionDepth: 3
    functionLinenumber: 6788
    functionLinenumberEnd: 6806
    functionName: gc_scan
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - js_rc
    - list_for_each
    - mark_children
    - assert
    linkageType: ''
    returnType: void
    signature: void gc_scan(JSRuntime *rt)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6822,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6826,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:6833,1
    - Dst: JS_DumpObjectHeader
      Src: /src/gpac/src/quickjs/quickjs.c:6834,1
    - Dst: JS_DumpGCObject
      Src: /src/gpac/src/quickjs/quickjs.c:6837,1
    - Dst: free_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:6839,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:6842,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:6843,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:6849,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6850,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:6851,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6851,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6852,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6853,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6854,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6855,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6858,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:6860,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:6864,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts:
    - condition: "(js_rc(p)->gc_obj_type == JS_GC_OBJ_TYPE_JS_OBJECT ||\n               js_rc(p)->gc_obj_type
        == JS_GC_OBJ_TYPE_FUNCTION_BYTECODE ||\n               js_rc(p)->gc_obj_type
        == JS_GC_OBJ_TYPE_ASYNC_FUNCTION ||\n               js_rc(p)->gc_obj_type
        == JS_GC_OBJ_TYPE_MODULE)"
      pos:
        line_end: 6853
        line_start: 6850
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 6865
      start: 6808
    functionDepth: 11
    functionLinenumber: 6808
    functionLinenumberEnd: 6865
    functionName: gc_free_cycles
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - init_list_head
    - list_entry
    - printf
    - js_rc
    - JS_DumpObjectHeader
    - list_del
    - js_free_rt
    - assert
    - JS_DumpGCObject
    - free_gc_object
    - list_for_each_safe
    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:6873,1
    - Dst: gc_decref
      Src: /src/gpac/src/quickjs/quickjs.c:6878,1
    - Dst: gc_scan
      Src: /src/gpac/src/quickjs/quickjs.c:6881,1
    - Dst: gc_free_cycles
      Src: /src/gpac/src/quickjs/quickjs.c:6884,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - remove_weak_objects
    argTypes:
    - JSRuntime*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6885
      start: 6867
    functionDepth: 13
    functionLinenumber: 6867
    functionLinenumberEnd: 6885
    functionName: JS_RunGCInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - gc_remove_weak_objects
    - gc_decref
    - gc_free_cycles
    - gc_scan
    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:6889,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6890
      start: 6887
    functionDepth: 14
    functionLinenumber: 6887
    functionLinenumberEnd: 6890
    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:6898,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:6900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6902
      start: 6895
    functionDepth: 1
    functionLinenumber: 6895
    functionLinenumberEnd: 6902
    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:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:6922,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - hp
    argTypes:
    - JSString*
    - JSMemoryUsage_helper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6927
      start: 6919
    functionDepth: 2
    functionLinenumber: 6919
    functionLinenumberEnd: 6927
    functionName: compute_jsstring_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    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:6942,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - b
    - hp
    argTypes:
    - JSFunctionBytecode*
    - JSMemoryUsage_helper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6966
      start: 6929
    functionDepth: 1
    functionLinenumber: 6929
    functionLinenumberEnd: 6966
    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:6970,1
    - Dst: compute_jsstring_size
      Src: /src/gpac/src/quickjs/quickjs.c:6972,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:6972,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - val
    - hp
    argTypes:
    - JSValueConst
    - JSMemoryUsage_helper*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6978
      start: 6968
    functionDepth: 3
    functionLinenumber: 6968
    functionLinenumberEnd: 6978
    functionName: compute_value_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - compute_jsstring_size
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void compute_value_size(JSValueConst val, JSMemoryUsage_helper *hp)
  - BBCount: 73
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:6986,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:6994,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:6995,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:7007,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:7009,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:7010,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7025,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7037,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7038,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:7042,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:7043,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:7049,1
    - Dst: compute_bytecode_size
      Src: /src/gpac/src/quickjs/quickjs.c:7050,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:7052,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:7062,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7066,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:7075,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7090,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7104,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7115,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:7130,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7136,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7148,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7159,1
    - Dst: compute_jsstring_size
      Src: /src/gpac/src/quickjs/quickjs.c:7167,1
    - Dst: compute_jsstring_size
      Src: /src/gpac/src/quickjs/quickjs.c:7168,1
    - Dst: compute_value_size
      Src: /src/gpac/src/quickjs/quickjs.c:7175,1
    - Dst: get_shape_size
      Src: /src/gpac/src/quickjs/quickjs.c:7244,1
    - Dst: atom_is_free
      Src: /src/gpac/src/quickjs/quickjs.c:7255,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:7260,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:7261,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:7263,1
    - Dst: round
      Src: /src/gpac/src/quickjs/quickjs.c:7267,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 233
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSMemoryUsage*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7274
      start: 6980
    functionDepth: 4
    functionLinenumber: 6980
    functionLinenumberEnd: 7274
    functionName: JS_ComputeMemoryUsage
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_entry
    - js_rc
    - list_for_each
    - round
    - atom_is_free
    - get_shape_size
    - compute_value_size
    - compute_jsstring_size
    - get_shape_prop
    - memset
    - compute_bytecode_size
    linkageType: ''
    returnType: void
    signature: void JS_ComputeMemoryUsage(JSRuntime *rt, JSMemoryUsage *s)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7278,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:7293,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:7295,1
    - Dst: js_malloc_usable_size_rt
      Src: /src/gpac/src/quickjs/quickjs.c:7297,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7300,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:7303,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7307,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:7313,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:7314,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:7316,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:7318,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7321,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7323,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7327,1
    - Dst: JS_AtomGetStrRT
      Src: /src/gpac/src/quickjs/quickjs.c:7328,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7332,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7334,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7337,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7340,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7343,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7349,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7354,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7359,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7362,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7365,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7370,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7372,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7376,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7383,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7386,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7388,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7389,1
    - Dst: fprintf
      Src: /src/gpac/src/quickjs/quickjs.c:7396,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 70
    argCount: 3
    argNames:
    - fp
    - s
    - rt
    argTypes:
    - FILE*
    - JSMemoryUsage*
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7399
      start: 7276
    functionDepth: 5
    functionLinenumber: 7276
    functionLinenumberEnd: 7399
    functionName: JS_DumpMemoryUsage
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - fprintf
    - js_malloc_rt
    - js_malloc_usable_size_rt
    - countof
    - list_entry
    - list_for_each
    - js_rc
    - JS_AtomGetStrRT
    - js_free_rt
    - min_uint32
    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:7403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7404
      start: 7401
    functionDepth: 1
    functionLinenumber: 7401
    functionLinenumberEnd: 7404
    functionName: JS_GetGlobalObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 35
    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:7410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7414
      start: 7407
    functionDepth: 1
    functionLinenumber: 7407
    functionLinenumberEnd: 7414
    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: 7424
      start: 7417
    functionDepth: 0
    functionLinenumber: 7417
    functionLinenumberEnd: 7424
    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:7428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7429
      start: 7426
    functionDepth: 1
    functionLinenumber: 7426
    functionLinenumberEnd: 7429
    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:7438,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7440,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - DynBuf*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7444
      start: 7431
    functionDepth: 1
    functionLinenumber: 7431
    functionLinenumberEnd: 7444
    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:7449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v1
    argTypes:
    - DynBuf*
    - int32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7450
      start: 7446
    functionDepth: 2
    functionLinenumber: 7446
    functionLinenumberEnd: 7450
    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:7459,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: 7470
      start: 7452
    functionDepth: 1
    functionLinenumber: 7452
    functionLinenumberEnd: 7470
    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:7477,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: 7484
      start: 7472
    functionDepth: 2
    functionLinenumber: 7472
    functionLinenumberEnd: 7484
    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:7502,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:7508,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:7519,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:7524,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:7534,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: 7552
      start: 7487
    functionDepth: 3
    functionLinenumber: 7487
    functionLinenumberEnd: 7552
    functionName: find_line_num
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_sleb128
    - get_leb128
    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:7563,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7565,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7566,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:7573,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7581,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:7583,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7584
      start: 7556
    functionDepth: 1
    functionLinenumber: 7556
    functionLinenumberEnd: 7584
    functionName: get_prop_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - find_own_property
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:7601,1
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:7604,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7606,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7608,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7609,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:7610,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7611,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7614,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7616,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7616,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7618,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:7618,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:7630,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7635,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:7636,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7638,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:7639,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:7646,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/quickjs/quickjs.c:7648,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7649,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:7651,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7653,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7654,1
    - Dst: dbuf_printf
      Src: /src/gpac/src/quickjs/quickjs.c:7657,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7659,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:7661,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/quickjs.c:7662,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:7665,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:7666,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7667,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: 7669
      start: 7590
    functionDepth: 4
    functionLinenumber: 7590
    functionLinenumberEnd: 7669
    functionName: build_backtrace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_error
    - JS_DefinePropertyValue
    - js_class_has_bytecode
    - JS_NewString
    - JS_VALUE_GET_OBJ
    - dbuf_printf
    - JS_NewInt32
    - find_line_num
    - JS_FreeCString
    - dbuf_putc
    - JS_IsObject
    - JS_IsException
    - js_dbuf_init
    - JS_AtomToCString
    - get_prop_string
    - dbuf_free
    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:7675,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7677,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:7680,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7683
      start: 7672
    functionDepth: 1
    functionLinenumber: 7672
    functionLinenumberEnd: 7683
    functionName: is_backtrace_needed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property1
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:7687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7688
      start: 7685
    functionDepth: 12
    functionLinenumber: 7685
    functionLinenumberEnd: 7688
    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:7696,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:7697,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:7699,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:7699,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:7703,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:7704,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:7707,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:7710,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: 7712
      start: 7690
    functionDepth: 11
    functionLinenumber: 7690
    functionLinenumberEnd: 7712
    functionName: JS_ThrowError2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - unlikely
    - JS_NewString
    - vsnprintf
    - build_backtrace
    - JS_IsException
    - JS_Throw
    - JS_NewObjectProtoClass
    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:7724,1
    - Dst: JS_ThrowError2
      Src: /src/gpac/src/quickjs/quickjs.c:7725,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: 7726
      start: 7714
    functionDepth: 12
    functionLinenumber: 7714
    functionLinenumberEnd: 7726
    functionName: JS_ThrowError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowError2
    - JS_GetFunctionBytecode
    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:7731,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7737,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7738,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7741
      start: 7731
    functionDepth: 13
    functionLinenumber: 7731
    functionLinenumberEnd: 7741
    functionName: JS_ThrowSyntaxError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowError
    - va_end
    - format
    - va_start
    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:7746,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7752,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7753,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7756
      start: 7746
    functionDepth: 13
    functionLinenumber: 7746
    functionLinenumberEnd: 7756
    functionName: JS_ThrowTypeError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowError
    - va_end
    - format
    - va_start
    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:7761,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:7767,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7768,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7769,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7770,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - flags
    - fmt
    argTypes:
    - JSContext*
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7775
      start: 7761
    functionDepth: 13
    functionLinenumber: 7761
    functionLinenumberEnd: 7775
    functionName: JS_ThrowTypeErrorOrFalse
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - va_end
    - va_start
    - JS_ThrowError
    - is_strict_mode
    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:7781,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7785,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - atom
    - fmt
    argTypes:
    - JSContext*
    - JSAtom
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7787
      start: 7781
    functionDepth: 14
    functionLinenumber: 7781
    functionLinenumberEnd: 7787
    functionName: __JS_ThrowTypeErrorAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_AtomGetStr
    - format
    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:7793,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:7797,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - atom
    - fmt
    argTypes:
    - JSContext*
    - JSAtom
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7799
      start: 7793
    functionDepth: 14
    functionLinenumber: 7793
    functionLinenumberEnd: 7799
    functionName: __JS_ThrowSyntaxErrorAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomGetStr
    - format
    - 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: 7804
      start: 7803
    functionDepth: 0
    functionLinenumber: 7803
    functionLinenumberEnd: 7804
    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: 7805
      start: 7804
    functionDepth: 0
    functionLinenumber: 7804
    functionLinenumberEnd: 7805
    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:7809,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:7810,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - flags
    - atom
    argTypes:
    - JSContext*
    - int
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7815
      start: 7806
    functionDepth: 1
    functionLinenumber: 7806
    functionLinenumberEnd: 7815
    functionName: JS_ThrowTypeErrorReadOnly
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_strict_mode
    - JS_ThrowTypeErrorAtom
    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:7820,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7826,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7827,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7828,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7830
      start: 7820
    functionDepth: 13
    functionLinenumber: 7820
    functionLinenumberEnd: 7830
    functionName: JS_ThrowReferenceError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowError
    - va_end
    - format
    - va_start
    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:7835,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7841,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7842,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7845
      start: 7835
    functionDepth: 13
    functionLinenumber: 7835
    functionLinenumberEnd: 7845
    functionName: JS_ThrowRangeError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowError
    - va_end
    - format
    - va_start
    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:7850,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:7856,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:7857,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:7858,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7860
      start: 7850
    functionDepth: 13
    functionLinenumber: 7850
    functionLinenumberEnd: 7860
    functionName: JS_ThrowInternalError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - JS_ThrowError
    - va_end
    - format
    - va_start
    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:7867,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7871
      start: 7862
    functionDepth: 14
    functionLinenumber: 7862
    functionLinenumberEnd: 7871
    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:7875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7876
      start: 7873
    functionDepth: 14
    functionLinenumber: 7873
    functionLinenumberEnd: 7876
    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:7880,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7881
      start: 7878
    functionDepth: 14
    functionLinenumber: 7878
    functionLinenumberEnd: 7881
    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: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:7887,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:7889,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7892,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7894,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:7895,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - func_obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7897
      start: 7883
    functionDepth: 14
    functionLinenumber: 7883
    functionLinenumberEnd: 7897
    functionName: JS_ThrowTypeErrorNotAConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_prop_string
    - JS_ThrowTypeError
    - JS_FreeCString
    - JS_IsFunction
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ThrowTypeErrorNotAConstructor(JSContext *ctx,\n                                                JSValueConst
      func_obj)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:7901,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7902
      start: 7899
    functionDepth: 14
    functionLinenumber: 7899
    functionLinenumberEnd: 7902
    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:7907,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7908,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7909
      start: 7904
    functionDepth: 14
    functionLinenumber: 7904
    functionLinenumberEnd: 7909
    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:7914,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:7916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7917
      start: 7911
    functionDepth: 14
    functionLinenumber: 7911
    functionLinenumberEnd: 7917
    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:7931,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: 7932
      start: 7919
    functionDepth: 15
    functionLinenumber: 7919
    functionLinenumberEnd: 7932
    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:7939,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - class_id
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7940
      start: 7934
    functionDepth: 1
    functionLinenumber: 7934
    functionLinenumberEnd: 7940
    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:7944,1
    - Dst: JS_SetUncatchableException
      Src: /src/gpac/src/quickjs/quickjs.c:7945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7946
      start: 7942
    functionDepth: 14
    functionLinenumber: 7942
    functionLinenumberEnd: 7946
    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:7953,1
    - Dst: JS_ThrowInterrupted
      Src: /src/gpac/src/quickjs/quickjs.c:7954,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7959
      start: 7948
    functionDepth: 15
    functionLinenumber: 7948
    functionLinenumberEnd: 7959
    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:7963,1
    - Dst: __js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:7964,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7968
      start: 7961
    functionDepth: 16
    functionLinenumber: 7961
    functionLinenumberEnd: 7968
    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:7973,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7975,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7977
      start: 7970
    functionDepth: 1
    functionLinenumber: 7970
    functionLinenumberEnd: 7977
    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: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7989,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7990,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7993,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:7996,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7997,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:7998,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8000,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8005,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8008,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8011,1
    - Dst: JSClassExoticMethods*::set_prototype
      Src: /src/gpac/src/quickjs/quickjs.c:8015,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8017,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8028,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8030,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8036,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8038,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8050,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8059,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:8062,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8066,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8066,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 77
    argCount: 4
    argNames:
    - ctx
    - obj
    - proto_val
    - throw_flag
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8070
      start: 7981
    functionDepth: 15
    functionLinenumber: 7981
    functionLinenumberEnd: 8070
    functionName: JS_SetPrototypeInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_shape_prepare_update
    - JSClassExoticMethods*::set_prototype
    - JS_DupValue
    - JS_ThrowTypeErrorNotAnObject
    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:8075,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - obj
    - proto_val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8076
      start: 8073
    functionDepth: 16
    functionLinenumber: 8073
    functionLinenumberEnd: 8076
    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:8081,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8108
      start: 8079
    functionDepth: 1
    functionLinenumber: 8079
    functionLinenumberEnd: 8108
    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:8114,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8116,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8117,1
    - Dst: JSClassExoticMethods*::get_prototype
      Src: /src/gpac/src/quickjs/quickjs.c:8120,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8127,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8127,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8129,1
    - Dst: JS_GetPrototypePrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:8129,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8132
      start: 8111
    functionDepth: 2
    functionLinenumber: 8111
    functionLinenumberEnd: 8132
    functionName: JS_GetPrototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_GetPrototypePrimitive
    - JSClassExoticMethods*::get_prototype
    - JS_VALUE_GET_TAG
    - JS_DupValue
    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:8137,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8140
      start: 8134
    functionDepth: 3
    functionLinenumber: 8134
    functionLinenumberEnd: 8140
    functionName: JS_GetPrototypeFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetPrototype
    - JS_FreeValue
    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:8151,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8153,1
    - Dst: JS_IsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:8156,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8160,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8162,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8163,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8164,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8165,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8169,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8170,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8175,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8177,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8177,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:8179,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8180,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:8184,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8188,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8189,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:8194,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8195,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8212,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 60
    argCount: 3
    argNames:
    - ctx
    - val
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8214
      start: 8143
    functionDepth: 17
    functionLinenumber: 8143
    functionLinenumberEnd: 8214
    functionName: JS_OrdinaryIsInstanceOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - js_poll_interrupts
    - JS_FreeValue
    - JS_IsFunction
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_DupValue
    - JS_IsException
    - JS_IsInstanceOf
    - JS_GetPrototypeFree
    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:8221,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8223,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8224,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:8226,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:8226,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:8228,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:8229,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:8233,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8235,1
    - Dst: JS_OrdinaryIsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:8238,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - val
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8239
      start: 8217
    functionDepth: 18
    functionLinenumber: 8217
    functionLinenumberEnd: 8239
    functionName: JS_IsInstanceOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_OrdinaryIsInstanceOf
    - JS_IsUndefined
    - JS_GetProperty
    - JS_IsFunction
    - JS_IsNull
    - JS_IsException
    - JS_IsObject
    - JS_ToBoolFree
    linkageType: ''
    returnType: int
    signature: int JS_IsInstanceOf(JSContext *ctx, JSValueConst val, JSValueConst
      obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:8259,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:8262,1
    - Dst: js_autoinit_get_id
      Src: /src/gpac/src/quickjs/quickjs.c:8263,1
    - Dst: func
      Src: /src/gpac/src/quickjs/quickjs.c:8266,1
    - Dst: js_autoinit_free
      Src: /src/gpac/src/quickjs/quickjs.c:8267,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8270,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8273,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:8276,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:8277,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:8281,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 5
    argNames:
    - ctx
    - p
    - prop
    - pr
    - prs
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - JSProperty*
    - JSShapeProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8292
      start: 8251
    functionDepth: 6
    functionLinenumber: 8251
    functionLinenumberEnd: 8292
    functionName: JS_AutoInitProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - func
    - js_rc
    - js_autoinit_free
    - js_autoinit_get_id
    - js_autoinit_get_realm
    - JS_VALUE_GET_TAG
    - js_shape_prepare_update
    - JS_IsException
    - js_create_var_ref
    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:8303,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8304,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8307,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8309,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:8314,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:8315,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8317,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:8319,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:8319,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8322,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:8328,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:8329,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8331,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:8333,1
    - Dst: string_rope_get
      Src: /src/gpac/src/quickjs/quickjs.c:8333,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8336,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8344,1
    - Dst: JS_GetPrototypePrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:8344,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8348,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8352,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8355,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8357,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8360,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8362,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:8363,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8367,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8367,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8368,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8369,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8372,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8377,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8380,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:8383,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8384,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:8387,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8387,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8395,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8410,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8410,1
    - Dst: JSClassExoticMethods*::get_property
      Src: /src/gpac/src/quickjs/quickjs.c:8411,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8412,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8422,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8422,1
    - Dst: JSClassExoticMethods*::get_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8423,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8424,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8429,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:8430,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8443,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:8444,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: 8448
      start: 8294
    functionDepth: 15
    functionLinenumber: 8294
    functionLinenumberEnd: 8448
    functionName: JS_GetPropertyInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomIsNumericIndex
    - JS_AutoInitProperty
    - JSClassExoticMethods*::get_property
    - js_new_string_char
    - __JS_AtomToUInt32
    - JS_GetPropertyUint32
    - JS_CallFree
    - JS_FreeValue
    - string_rope_get
    - JS_DupValue
    - JS_ThrowReferenceErrorNotDefined
    - __JS_AtomIsTaggedInt
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_IsUninitialized
    - string_get
    - JS_NewInt32
    - JS_VALUE_GET_STRING_ROPE
    - JS_ThrowReferenceErrorUninitialized
    - find_own_property
    - JS_VALUE_GET_STRING
    - JS_GetPrototypePrimitive
    - JSClassExoticMethods*::get_own_property
    - JS_ThrowTypeErrorAtom
    - JS_VALUE_GET_TAG
    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:8452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8454
      start: 8450
    functionDepth: 1
    functionLinenumber: 8450
    functionLinenumberEnd: 8454
    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:8466,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8466,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8467,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8471,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8471,1
    - Dst: JS_ThrowTypeErrorNotASymbol
      Src: /src/gpac/src/quickjs/quickjs.c:8472,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8476,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8478,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8480,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8481,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8483,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:8487,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8488,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8490,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - ctx
    - obj
    - name
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8495
      start: 8458
    functionDepth: 15
    functionLinenumber: 8458
    functionLinenumberEnd: 8495
    functionName: JS_DefinePrivateField
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ThrowTypeErrorNotASymbol
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorAtom
    - add_property
    - JS_ThrowTypeErrorNotAnObject
    - js_symbol_to_atom
    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:8505,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8505,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8506,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8508,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8508,1
    - Dst: JS_ThrowTypeErrorNotASymbol
      Src: /src/gpac/src/quickjs/quickjs.c:8509,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8511,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8513,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8515,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8516,1
    - Dst: JS_ThrowTypeErrorPrivateNotFound
      Src: /src/gpac/src/quickjs/quickjs.c:8518,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8521,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - ctx
    - obj
    - name
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8522
      start: 8497
    functionDepth: 15
    functionLinenumber: 8497
    functionLinenumberEnd: 8522
    functionName: JS_GetPrivateField
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ThrowTypeErrorPrivateNotFound
    - JS_ThrowTypeErrorNotASymbol
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - JS_ThrowTypeErrorNotAnObject
    - js_symbol_to_atom
    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:8532,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8532,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8533,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8537,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8537,1
    - Dst: JS_ThrowTypeErrorNotASymbol
      Src: /src/gpac/src/quickjs/quickjs.c:8538,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8542,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8544,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8546,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8547,1
    - Dst: JS_ThrowTypeErrorPrivateNotFound
      Src: /src/gpac/src/quickjs/quickjs.c:8549,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8551,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:8554,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - obj
    - name
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8556
      start: 8524
    functionDepth: 15
    functionLinenumber: 8524
    functionLinenumberEnd: 8556
    functionName: JS_SetPrivateField
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ThrowTypeErrorPrivateNotFound
    - JS_ThrowTypeErrorNotASymbol
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - set_value
    - JS_ThrowTypeErrorNotAnObject
    - js_symbol_to_atom
    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:8568,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8568,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8569,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8572,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8573,1
    - Dst: JS_NewSymbolFromAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8576,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:8577,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:8579,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:8581,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8584,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8586,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8588,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:8590,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8591,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8592,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8593,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8594,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8595,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:8598,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8599,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8604,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 3
    argNames:
    - ctx
    - obj
    - home_obj
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8607
      start: 8560
    functionDepth: 15
    functionLinenumber: 8560
    functionLinenumberEnd: 8607
    functionName: JS_AddBrand
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - add_property
    - JS_DupValue
    - JS_IsException
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsObject
    - JS_FreeAtom
    - js_symbol_to_atom
    - JS_NewSymbolFromAtom
    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:8619,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8619,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8621,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:8622,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8627,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:8629,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8634,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8634,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8638,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8638,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8640,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8643,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8645,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8645,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8647,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:8647,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - obj
    - func
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8650
      start: 8611
    functionDepth: 15
    functionLinenumber: 8611
    functionLinenumberEnd: 8650
    functionName: JS_CheckBrand
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - find_own_property
    - js_class_has_bytecode
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorNotAnObject
    - js_symbol_to_atom
    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:8659,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:8660,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:8661,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8665
      start: 8652
    functionDepth: 1
    functionLinenumber: 8652
    functionLinenumberEnd: 8665
    functionName: js_string_obj_get_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_OBJ
    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:8674,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8675,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8679,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8680,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8681,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: 8680
        line_start: 8680
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 8689
      start: 8667
    functionDepth: 3
    functionLinenumber: 8667
    functionLinenumberEnd: 8689
    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:8696,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:8697,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - tab
    - len
    argTypes:
    - JSContext*
    - JSPropertyEnum*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8699
      start: 8691
    functionDepth: 7
    functionLinenumber: 8691
    functionLinenumberEnd: 8699
    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:8731,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8735,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8740,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8743,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8743,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8744,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8748,1
    - Dst: js_string_obj_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:8766,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8766,1
    - Dst: JSClassExoticMethods*::get_own_property_names
      Src: /src/gpac/src/quickjs/quickjs.c:8771,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8772,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8776,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:8783,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8785,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:8791,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:8815,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8816,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:8822,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:8822,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8824,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:8834,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8838,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:8841,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8849,1
    - Dst: js_string_obj_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:8864,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8864,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8867,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:8869,1
    - Dst: JS_AtomGetKind
      Src: /src/gpac/src/quickjs/quickjs.c:8881,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:8888,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:8891,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8895,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8896,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:8897,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:8900,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 166
    argCount: 5
    argNames:
    - ctx
    - ptab
    - plen
    - p
    - flags
    argTypes:
    - JSContext*
    - JSPropertyEnum**
    - uint32_t*
    - JSObject*
    - int
    assertStmts:
    - condition: (sym_index == atom_count)
      pos:
        line_end: 8896
        line_start: 8896
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (num_index == num_keys_count)
      pos:
        line_end: 8894
        line_start: 8894
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (str_index == num_keys_count + str_keys_count)
      pos:
        line_end: 8895
        line_start: 8895
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 8906
      start: 8703
    functionDepth: 15
    functionLinenumber: 8703
    functionLinenumberEnd: 8906
    functionName: __exception::JS_GetOwnPropertyNamesInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - get_shape_prop
    - JS_FreeAtom
    - js_malloc
    - JS_GetOwnPropertyInternal
    - JS_AtomIsArrayIndex
    - __JS_AtomFromUInt32
    - JS_MKPTR
    - JS_IsUninitialized
    - unlikely
    - rqsort
    - JS_FreePropertyEnum
    - JS_ThrowOutOfMemory
    - js_free_desc
    - JS_ThrowReferenceErrorUninitialized
    - js_string_obj_get_length
    - JSClassExoticMethods*::get_own_property_names
    - JS_AtomGetKind
    - js_free
    - max_int
    - assert
    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:8911,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:8912,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:8915,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:8916,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: 8917
      start: 8908
    functionDepth: 15
    functionLinenumber: 8908
    functionLinenumberEnd: 8917
    functionName: JS_GetOwnPropertyNames
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_GetOwnPropertyNamesInternal
    - JS_VALUE_GET_OBJ
    - 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:8929,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8936,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8940,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8940,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8942,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8942,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8945,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8945,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8946,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8949,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:8952,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:8957,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8961,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:8962,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8962,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:8963,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:8975,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:8977,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:8984,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8984,1
    - Dst: JSClassExoticMethods*::get_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:8992,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:8993,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 67
    argCount: 4
    argNames:
    - ctx
    - desc
    - p
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSObject*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8998
      start: 8922
    functionDepth: 15
    functionLinenumber: 8922
    functionLinenumberEnd: 8998
    functionName: JS_GetOwnPropertyInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_AutoInitProperty
    - find_own_property
    - JS_MKPTR
    - JS_IsUninitialized
    - unlikely
    - JSClassExoticMethods*::get_own_property
    - __JS_AtomToUInt32
    - JS_DupValue
    - __JS_AtomIsTaggedInt
    - JS_GetPropertyUint32
    - 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:9003,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:9004,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:9007,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9007,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - desc
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9008
      start: 9000
    functionDepth: 16
    functionLinenumber: 9000
    functionLinenumberEnd: 9008
    functionName: JS_GetOwnProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorNotAnObject
    - JS_GetOwnPropertyInternal
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:9015,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9015,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9017,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9018,1
    - Dst: JSClassExoticMethods*::is_extensible
      Src: /src/gpac/src/quickjs/quickjs.c:9021,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9025
      start: 9011
    functionDepth: 1
    functionLinenumber: 9011
    functionLinenumberEnd: 9025
    functionName: JS_IsExtensible
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSClassExoticMethods*::is_extensible
    - JS_VALUE_GET_OBJ
    - unlikely
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: int
    signature: int JS_IsExtensible(JSContext *ctx, JSValueConst obj)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9032,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9032,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9034,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9035,1
    - Dst: array_buffer_is_resizable
      Src: /src/gpac/src/quickjs/quickjs.c:9044,1
    - Dst: JSClassExoticMethods*::prevent_extensions
      Src: /src/gpac/src/quickjs/quickjs.c:9049,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9055
      start: 9028
    functionDepth: 1
    functionLinenumber: 9028
    functionLinenumberEnd: 9055
    functionName: JS_PreventExtensions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSClassExoticMethods*::prevent_extensions
    - unlikely
    - JS_VALUE_GET_OBJ
    - array_buffer_is_resizable
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: int
    signature: int JS_PreventExtensions(JSContext *ctx, JSValueConst obj)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9064,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9064,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9066,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9072,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9072,1
    - Dst: JSClassExoticMethods*::has_property
      Src: /src/gpac/src/quickjs/quickjs.c:9073,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9074,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9079,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9079,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:9080,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9081,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9081,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9086,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9098
      start: 9058
    functionDepth: 16
    functionLinenumber: 9058
    functionLinenumberEnd: 9098
    functionName: JS_HasProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomIsNumericIndex
    - JS_MKPTR
    - JSClassExoticMethods*::has_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - JS_GetOwnPropertyInternal
    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:9103,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:9104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9105
      start: 9101
    functionDepth: 1
    functionLinenumber: 9101
    functionLinenumberEnd: 9105
    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:9112,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:9114,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9116,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:9116,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:9118,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9119,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:9119,1
    - Dst: JS_ToPropertyKey
      Src: /src/gpac/src/quickjs/quickjs.c:9122,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9123,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9125,1
    - Dst: js_symbol_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:9126,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:9128,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:9128,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9132
      start: 9108
    functionDepth: 9
    functionLinenumber: 9108
    functionLinenumberEnd: 9132
    functionName: JS_ValueToAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_STRING
    - JS_NewAtomStr
    - JS_DupAtom
    - js_get_atom_index
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    - JS_ToPropertyKey
    - js_symbol_to_atom
    - __JS_AtomFromUInt32
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom JS_ValueToAtom(JSContext *ctx, JSValueConst val)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9140,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9140,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9141,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9145,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:9146,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9150,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9151,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9153,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9154,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9156,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9157,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9160,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9161,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9163,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9164,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9166,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9167,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9169,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9170,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9172,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9173,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9175,1
    - Dst: JS_NewBigInt64
      Src: /src/gpac/src/quickjs/quickjs.c:9176,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9178,1
    - Dst: JS_NewBigUint64
      Src: /src/gpac/src/quickjs/quickjs.c:9179,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9181,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:9182,1
    - Dst: fromfp16
      Src: /src/gpac/src/quickjs/quickjs.c:9182,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9184,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:9185,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9187,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:9188,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:9195,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:9195,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9196,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:9197,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:9197,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9199,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9200,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9201,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9203,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9204,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 91
    argCount: 3
    argNames:
    - ctx
    - this_obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9207
      start: 9134
    functionDepth: 14
    functionLinenumber: 9134
    functionLinenumberEnd: 9207
    functionName: JS_GetPropertyValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fromfp16
    - JS_IsNull
    - __JS_NewFloat64
    - JS_FreeAtom
    - JS_NewBigInt64
    - JS_ThrowTypeError
    - JS_NewUint32
    - JS_FreeValue
    - JS_DupValue
    - JS_VALUE_GET_INT
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_GetProperty
    - JS_NewInt32
    - JS_IsUndefined
    - JS_ValueToAtom
    - JS_VALUE_GET_TAG
    - JS_NewBigUint64
    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:9212,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - this_obj
    - idx
    argTypes:
    - JSContext*
    - JSValueConst
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9213
      start: 9209
    functionDepth: 15
    functionLinenumber: 9209
    functionLinenumberEnd: 9213
    functionName: JS_GetPropertyUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 19
    functionsReached:
    - JS_NewUint32
    - JS_GetPropertyValue
    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:9226,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9228,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9228,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:9230,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9230,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9231,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9231,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:9235,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9237,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9238,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9240,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9241,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9241,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9244,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: 9249
      start: 9220
    functionDepth: 17
    functionLinenumber: 9220
    functionLinenumberEnd: 9249
    functionName: JS_TryGetPropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - likely
    - unlikely
    - JS_GetProperty
    - JS_GetPropertyValue
    - JS_IsException
    - JS_NewInt32
    - JS_FreeAtom
    - JS_NewAtomInt64
    - __JS_AtomFromUInt32
    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:9258,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9258,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:9260,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9264,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9265,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - obj
    - idx
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9267
      start: 9251
    functionDepth: 15
    functionLinenumber: 9251
    functionLinenumberEnd: 9267
    functionName: JS_GetPropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetProperty
    - JS_GetPropertyValue
    - JS_NewInt32
    - JS_FreeAtom
    - JS_NewAtomInt64
    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:9274,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9277,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - this_obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9280
      start: 9269
    functionDepth: 11
    functionLinenumber: 9269
    functionLinenumberEnd: 9280
    functionName: JS_GetPropertyStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 65
    functionsReached:
    - JS_GetProperty
    - JS_NewAtom
    - JS_FreeAtom
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_GetPropertyStr(JSContext *ctx, JSValueConst this_obj,\n
      \                         const char *prop)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9289,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:9289,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9291,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9293,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:9297,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:9298,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:9299,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9300,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:9301,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9302,1
    - Dst: find_hashed_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9313,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:9319,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:9325,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:9326,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:9328,1
    - Dst: js_clone_shape
      Src: /src/gpac/src/quickjs/quickjs.c:9330,1
    - Dst: js_shape_hash_link
      Src: /src/gpac/src/quickjs/quickjs.c:9335,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:9336,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:9340,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:9340,1
    - Dst: add_shape_property
      Src: /src/gpac/src/quickjs/quickjs.c:9341,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 4
    argNames:
    - ctx
    - p
    - prop
    - prop_flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - int
    assertStmts:
    - condition: (js_rc(p->shape)->ref_count == 1)
      pos:
        line_end: 9339
        line_start: 9339
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 9344
      start: 9284
    functionDepth: 9
    functionLinenumber: 9284
    functionLinenumberEnd: 9344
    functionName: add_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - js_free_shape
    - js_shape_hash_link
    - find_hashed_shape_prop
    - unlikely
    - JS_VALUE_GET_OBJ
    - list_entry
    - js_rc
    - list_for_each
    - js_realloc
    - add_shape_property
    - js_clone_shape
    - JS_IsObject
    - js_dup_shape
    - __JS_AtomIsTaggedInt
    - assert
    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:9356,1
    - Dst: resize_properties
      Src: /src/gpac/src/quickjs/quickjs.c:9363,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:9372,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9372,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:9380,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9380,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:9384,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9391
      start: 9349
    functionDepth: 10
    functionLinenumber: 9349
    functionLinenumberEnd: 9391
    functionName: convert_fast_array_to_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - resize_properties
    - add_property
    - js_shape_prepare_update
    - js_free
    - __JS_AtomFromUInt32
    linkageType: ''
    returnType: no_inline
    signature: "no_inline convert_fast_array_to_array(JSContext *ctx,\n                                                             JSObject
      *p)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:9401,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9403,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:9404,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:9408,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9409,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 4
    argNames:
    - ctx
    - p
    - prs
    - pr
    argTypes:
    - JSContext*
    - JSObject*
    - JSShapeProperty*
    - JSProperty*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9414
      start: 9393
    functionDepth: 10
    functionLinenumber: 9393
    functionLinenumberEnd: 9414
    functionName: remove_global_object_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - JS_FreeValue
    - add_property
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: int
    signature: "int remove_global_object_property(JSContext *ctx, JSObject *p,\n                                         JSShapeProperty
      *prs, JSProperty *pr)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9428,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9433,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9439,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:9440,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9445,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9453,1
    - Dst: remove_global_object_property
      Src: /src/gpac/src/quickjs/quickjs.c:9455,1
    - Dst: free_property
      Src: /src/gpac/src/quickjs/quickjs.c:9458,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9459,1
    - Dst: compact_properties
      Src: /src/gpac/src/quickjs/quickjs.c:9468,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9479,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:9487,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9489,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:9494,1
    - Dst: JSClassExoticMethods*::delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:9504,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9504,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 73
    argCount: 3
    argNames:
    - ctx
    - p
    - atom
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9510
      start: 9416
    functionDepth: 11
    functionLinenumber: 9416
    functionLinenumberEnd: 9510
    functionName: delete_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - free_property
    - convert_fast_array_to_array
    - JS_MKPTR
    - unlikely
    - likely
    - free_var_ref
    - remove_global_object_property
    - compact_properties
    - JS_FreeValue
    - JS_AtomIsArrayIndex
    - js_shape_prepare_update
    - JSClassExoticMethods*::delete_property
    - get_shape_prop
    - JS_FreeAtom
    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:9516,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9517,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9519,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:9520,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9521,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9522,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9524,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9527,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:9529,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:9530,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: 9535
      start: 9512
    functionDepth: 14
    functionLinenumber: 9512
    functionLinenumberEnd: 9535
    functionName: call_setter
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_MKPTR
    - likely
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - 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:9545,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9549,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9549,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:9550,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9552,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9556,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9560,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9564,1
    - Dst: JS_NewAtomUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9577,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:9578,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9579,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9580,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9592,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9595,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9603,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9606,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:9609,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9612,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9620,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:9620,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9621,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9622,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 57
    argCount: 4
    argNames:
    - ctx
    - p
    - val
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9626
      start: 9538
    functionDepth: 14
    functionLinenumber: 9538
    functionLinenumberEnd: 9626
    functionName: set_array_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToArrayLengthFree
    - likely
    - unlikely
    - JS_ThrowTypeErrorReadOnly
    - JS_NewUint32
    - delete_property
    - JS_FreeValue
    - JS_AtomIsArrayIndex
    - set_value
    - JS_NewAtomUInt32
    - JS_ToUint32
    - get_shape_prop
    - JS_FreeAtom
    - JS_ThrowTypeErrorOrFalse
    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:9635,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:9636,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - p
    - new_len
    argTypes:
    - JSContext*
    - JSObject*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9643
      start: 9629
    functionDepth: 7
    functionLinenumber: 9629
    functionLinenumberEnd: 9643
    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:9656,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9656,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:9657,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9659,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:9659,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9660,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:9661,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9663,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9666,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9667,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9668,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - p
    - val
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9675
      start: 9647
    functionDepth: 8
    functionLinenumber: 9647
    functionLinenumberEnd: 9675
    functionName: add_fast_array_element
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - likely
    - JS_ThrowTypeErrorReadOnly
    - get_shape_prop
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - expand_fast_array
    - JS_NewInt32
    - JS_VALUE_GET_INT
    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:9687,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:9688,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9689,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9692,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9693,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9694,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9701,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9701,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - len
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9704
      start: 9680
    functionDepth: 14
    functionLinenumber: 9680
    functionLinenumberEnd: 9704
    functionName: js_allocate_fast_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_ThrowRangeError
    - JS_NewArray
    - JS_FreeValue
    - set_value
    - expand_fast_array
    - JS_IsException
    - JS_NewInt32
    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:9712,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9713,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9716,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9717,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9718,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9723,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9725,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9725,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - len
    - tab
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9728
      start: 9706
    functionDepth: 11
    functionLinenumber: 9706
    functionLinenumberEnd: 9728
    functionName: js_create_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_NewArray
    - set_value
    - expand_fast_array
    - JS_DupValue
    - JS_IsException
    - JS_NewInt32
    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:9736,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9737,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9740,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:9741,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9742,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9745,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9752,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9752,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - len
    - tab
    argTypes:
    - JSContext*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9755
      start: 9730
    functionDepth: 11
    functionLinenumber: 9730
    functionLinenumberEnd: 9755
    functionName: js_create_array_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_NewArray
    - set_value
    - expand_fast_array
    - JS_IsException
    - JS_NewInt32
    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:9759,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9760,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9761,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - desc
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9762
      start: 9757
    functionDepth: 1
    functionLinenumber: 9757
    functionLinenumberEnd: 9762
    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: 55
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:9779,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:9779,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:9779,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9781,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9782,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:9783,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9785,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9790,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9791,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9794,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:9795,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9800,1
    - Dst: JS_GetPrototypePrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:9800,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9805,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9806,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9807,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9813,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9815,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9818,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:9821,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:9822,1
    - Dst: set_array_length
      Src: /src/gpac/src/quickjs/quickjs.c:9823,1
    - Dst: call_setter
      Src: /src/gpac/src/quickjs/quickjs.c:9825,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:9831,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9835,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9836,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:9848,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9849,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9851,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:9852,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9852,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:9861,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9864,1
    - Dst: JS_ToBigInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:9873,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:9876,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9877,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:9878,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9882,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9893,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9893,1
    - Dst: JSClassExoticMethods*::set_property
      Src: /src/gpac/src/quickjs/quickjs.c:9894,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9896,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9897,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:9902,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:9902,1
    - Dst: JSClassExoticMethods*::get_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9903,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9905,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9907,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:9913,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9916,1
    - Dst: call_setter
      Src: /src/gpac/src/quickjs/quickjs.c:9917,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9918,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9919,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9922,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9925,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9926,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9929,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:9946,1
    - Dst: call_setter
      Src: /src/gpac/src/quickjs/quickjs.c:9949,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:9952,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9963,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9964,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9965,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9968,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9969,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:9970,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:9973,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:9973,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:9976,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:9977,1
    - Dst: add_fast_array_element
      Src: /src/gpac/src/quickjs/quickjs.c:9980,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9988,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:9990,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:9991,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:9992,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:10000,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10002,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10007,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10008,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10009,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10010,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10016,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:10017,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10020,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10023,1
    - Dst: JS_CreateProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10027,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10034,1
    CyclomaticComplexity: 77
    EdgeCount: 77
    ICount: 244
    argCount: 6
    argNames:
    - ctx
    - obj
    - prop
    - val
    - this_obj
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValue
    - JSValueConst
    - int
    assertStmts:
    - condition: (prop == JS_ATOM_length)
      pos:
        line_end: 9821
        line_start: 9821
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (p->class_id == JS_CLASS_ARRAY)
      pos:
        line_end: 9820
        line_start: 9820
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 10038
      start: 9769
    functionDepth: 16
    functionLinenumber: 9769
    functionLinenumberEnd: 10038
    functionName: JS_SetPropertyInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomIsNumericIndex
    - JS_AutoInitProperty
    - set_array_length
    - JS_ThrowTypeErrorReadOnly
    - set_value
    - __JS_AtomToUInt32
    - JS_ToNumberFree
    - JS_ToBigInt64Free
    - JS_FreeValue
    - JS_DupValue
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - __JS_AtomIsTaggedInt
    - JSClassExoticMethods*::set_property
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_NewInt32
    - call_setter
    - find_own_property
    - print_atom
    - add_fast_array_element
    - JS_GetPrototypePrimitive
    - printf
    - JSClassExoticMethods*::get_own_property
    - JS_IsUndefined
    - JS_DefineProperty
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorAtom
    - add_property
    - JS_SetPropertyValue
    - assert
    - JS_ThrowTypeErrorOrFalse
    - JS_CreateProperty
    linkageType: ''
    returnType: int
    signature: "int JS_SetPropertyInternal(JSContext *ctx, JSValueConst obj,\n                           JSAtom
      prop, JSValue val, JSValueConst this_obj, int flags)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10050
      start: 10041
    functionDepth: 0
    functionLinenumber: 10041
    functionLinenumberEnd: 10050
    functionName: can_extend_fast_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: force_inline
    signature: force_inline can_extend_fast_array(JSObject *p)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:10056,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10056,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10057,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10064,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:10065,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10068,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10070,1
    - Dst: can_extend_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:10072,1
    - Dst: add_fast_array_element
      Src: /src/gpac/src/quickjs/quickjs.c:10076,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10078,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10081,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10083,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10086,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10088,1
    - Dst: JS_ToUint8ClampFree
      Src: /src/gpac/src/quickjs/quickjs.c:10091,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10095,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:10101,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10103,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:10109,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10111,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:10117,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10119,1
    - Dst: JS_ToBigInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:10128,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10130,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:10136,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10138,1
    - Dst: tofp16
      Src: /src/gpac/src/quickjs/quickjs.c:10140,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:10143,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10145,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:10150,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10152,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10166,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10167,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10168,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10169,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:10172,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10173,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 116
    argCount: 5
    argNames:
    - ctx
    - this_obj
    - prop
    - val
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValue
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10176
      start: 10053
    functionDepth: 17
    functionLinenumber: 10053
    functionLinenumberEnd: 10176
    functionName: JS_SetPropertyValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - add_fast_array_element
    - JS_ToUint8ClampFree
    - JS_SetPropertyInternal
    - JS_ToBigInt64Free
    - JS_ValueToAtom
    - can_extend_fast_array
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - set_value
    - JS_ToInt32Free
    - JS_ToFloat64Free
    - JS_VALUE_GET_INT
    - JS_FreeAtom
    - tofp16
    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:10181,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:10181,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: 10183
      start: 10178
    functionDepth: 18
    functionLinenumber: 10178
    functionLinenumberEnd: 10183
    functionName: JS_SetPropertyUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 24
    functionsReached:
    - JS_NewUint32
    - JS_SetPropertyValue
    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:10193,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10193,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:10196,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10198,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10201,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10202,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: 10204
      start: 10185
    functionDepth: 18
    functionLinenumber: 10185
    functionLinenumberEnd: 10204
    functionName: JS_SetPropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_FreeValue
    - JS_SetPropertyValue
    - JS_NewInt32
    - JS_FreeAtom
    - JS_NewAtomInt64
    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:10211,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10213,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:10216,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10217,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: 10219
      start: 10206
    functionDepth: 17
    functionLinenumber: 10206
    functionLinenumberEnd: 10219
    functionName: JS_SetPropertyStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 74
    functionsReached:
    - JS_FreeAtom
    - JS_SetPropertyInternal
    - JS_NewAtom
    - JS_FreeValue
    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: 10230
      start: 10225
    functionDepth: 0
    functionLinenumber: 10225
    functionLinenumberEnd: 10230
    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: 36
    BranchProfiles: []
    Callsites:
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:10248,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10249,1
    - Dst: get_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10255,1
    - Dst: add_fast_array_element
      Src: /src/gpac/src/quickjs/quickjs.c:10258,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10259,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:10263,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:10266,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:10270,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:10276,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:10278,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10279,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:10280,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10284,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:10284,1
    - Dst: JS_AtomIsNumericIndex
      Src: /src/gpac/src/quickjs/quickjs.c:10289,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10293,1
    - Dst: JSClassExoticMethods*::define_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10299,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:10299,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:10302,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:10302,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10313,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10324,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10327,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:10331,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:10333,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:10341,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10342,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:10344,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:10349,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10351,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10351,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:10354,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10356,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10356,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:10360,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10363,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10369,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 127
    argCount: 7
    argNames:
    - ctx
    - p
    - prop
    - val
    - getter
    - setter
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10375
      start: 10232
    functionDepth: 14
    functionLinenumber: 10232
    functionLinenumberEnd: 10375
    functionName: JS_CreateProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_AtomIsNumericIndex
    - convert_fast_array_to_array
    - JS_ThrowTypeErrorReadOnly
    - js_rc
    - set_value
    - __JS_AtomToUInt32
    - JS_ToUint32
    - get_shape_prop
    - JS_NewUint32
    - JS_IsFunction
    - JS_DupValue
    - JS_AtomIsArrayIndex
    - __JS_AtomIsTaggedInt
    - JSClassExoticMethods*::define_own_property
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - free_var_ref
    - delete_property
    - js_create_var_ref
    - JS_IsExtensible
    - get_prop_flags
    - find_own_property
    - add_fast_array_element
    - add_property
    - JS_ThrowTypeErrorOrFalse
    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: 10405
      start: 10378
    functionDepth: 0
    functionLinenumber: 10378
    functionLinenumberEnd: 10405
    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: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:10416,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:10418,1
    - Dst: js_clone_shape
      Src: /src/gpac/src/quickjs/quickjs.c:10420,1
    - Dst: js_free_shape
      Src: /src/gpac/src/quickjs/quickjs.c:10423,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:10426,1
    - Dst: js_shape_hash_unlink
      Src: /src/gpac/src/quickjs/quickjs.c:10428,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - p
    - pprs
    argTypes:
    - JSContext*
    - JSObject*
    - JSShapeProperty**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10433
      start: 10408
    functionDepth: 9
    functionLinenumber: 10408
    functionLinenumberEnd: 10433
    functionName: js_shape_prepare_update
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 4
    functionsReached:
    - js_free_shape
    - js_rc
    - js_shape_hash_unlink
    - js_clone_shape
    - get_shape_prop
    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:10439,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - p
    - pprs
    - flags
    argTypes:
    - JSContext*
    - JSObject*
    - JSShapeProperty**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10444
      start: 10435
    functionDepth: 10
    functionLinenumber: 10435
    functionLinenumberEnd: 10444
    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: 74
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10465,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:10466,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10469,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10472,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:10477,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10478,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:10483,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:10485,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10488,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:10489,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10492,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10494,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10499,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:10509,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10510,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:10514,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10515,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:10521,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10525,1
    - Dst: remove_global_object_property
      Src: /src/gpac/src/quickjs/quickjs.c:10526,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:10529,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10531,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10552,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:10552,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10554,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10559,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:10559,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10561,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10568,1
    - Dst: js_global_object_find_uninitialized_var
      Src: /src/gpac/src/quickjs/quickjs.c:10569,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:10575,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:10577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10581,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:10581,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10583,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:10583,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:10597,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:10610,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10614,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10615,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10621,1
    - Dst: js_shape_prepare_update
      Src: /src/gpac/src/quickjs/quickjs.c:10623,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10631,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:10632,1
    - Dst: set_array_length
      Src: /src/gpac/src/quickjs/quickjs.c:10641,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10641,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:10652,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10653,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10660,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10661,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10664,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10677,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:10688,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10689,1
    - Dst: get_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10691,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:10696,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:10702,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10702,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:10712,1
    - Dst: JS_AtomIsNumericIndex1
      Src: /src/gpac/src/quickjs/quickjs.c:10714,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:10715,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10717,1
    - Dst: JS_NumberIsInteger
      Src: /src/gpac/src/quickjs/quickjs.c:10719,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10721,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10725,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10726,1
    - Dst: JS_NumberIsNegativeOrMinusZero
      Src: /src/gpac/src/quickjs/quickjs.c:10728,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10729,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10731,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:10733,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10736,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10740,1
    - Dst: get_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:10742,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:10745,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10748,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:10748,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10748,1
    - Dst: JS_CreateProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10755,1
    CyclomaticComplexity: 88
    EdgeCount: 88
    ICount: 250
    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: 10488
        line_start: 10488
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 10756
      start: 10456
    functionDepth: 18
    functionLinenumber: 10456
    functionLinenumberEnd: 10756
    functionName: JS_DefineProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 14
    functionsReached:
    - JS_AutoInitProperty
    - set_array_length
    - JS_ToArrayLengthFree
    - convert_fast_array_to_array
    - remove_global_object_property
    - set_value
    - __JS_AtomToUInt32
    - get_shape_prop
    - JS_NewUint32
    - JS_FreeValue
    - JS_IsFunction
    - JS_DupValue
    - js_global_object_find_uninitialized_var
    - JS_IsException
    - __JS_AtomIsTaggedInt
    - JS_MKPTR
    - unlikely
    - JS_VALUE_GET_OBJ
    - free_var_ref
    - js_update_property_flags
    - js_shape_prepare_update
    - JS_NewInt32
    - check_define_prop_flags
    - JS_NumberIsInteger
    - JS_NumberIsNegativeOrMinusZero
    - find_own_property
    - get_prop_flags
    - JS_IsUndefined
    - JS_VALUE_GET_TAG
    - JS_AtomIsNumericIndex1
    - JS_ThrowTypeErrorNotAnObject
    - JS_SetPropertyValue
    - assert
    - js_same_value
    - JS_ThrowTypeErrorOrFalse
    - JS_CreateProperty
    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:10765,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10768,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10770,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:10772,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:10777,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10778,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:10780,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:10781,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:10782,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: 10780
        line_start: 10780
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (id <= 3)
      pos:
        line_end: 10781
        line_start: 10781
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 10786
      start: 10758
    functionDepth: 10
    functionLinenumber: 10758
    functionLinenumberEnd: 10786
    functionName: JS_DefineAutoInitProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - abort
    - add_property
    - JS_VALUE_GET_TAG
    - assert
    - JS_DupContext
    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:10793,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10795,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: 10797
      start: 10789
    functionDepth: 19
    functionLinenumber: 10789
    functionLinenumberEnd: 10797
    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:10804,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10805,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10806,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10807,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10810,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10811,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: 10813
      start: 10799
    functionDepth: 20
    functionLinenumber: 10799
    functionLinenumberEnd: 10813
    functionName: JS_DefinePropertyValueValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - unlikely
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_FreeAtom
    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:10818,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:10818,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: 10820
      start: 10815
    functionDepth: 21
    functionLinenumber: 10815
    functionLinenumberEnd: 10820
    functionName: JS_DefinePropertyValueUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewUint32
    - JS_DefinePropertyValueValue
    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:10825,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:10825,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: 10827
      start: 10822
    functionDepth: 21
    functionLinenumber: 10822
    functionLinenumberEnd: 10827
    functionName: JS_DefinePropertyValueInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_DefinePropertyValueValue
    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:10834,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10836,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10839,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10840,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: 10842
      start: 10829
    functionDepth: 20
    functionLinenumber: 10829
    functionLinenumberEnd: 10842
    functionName: JS_DefinePropertyValueStr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeAtom
    - JS_DefinePropertyValue
    - JS_NewAtom
    - JS_FreeValue
    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:10850,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10853,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:10854,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: 10856
      start: 10845
    functionDepth: 19
    functionLinenumber: 10845
    functionLinenumberEnd: 10856
    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:10861,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:10861,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: 10864
      start: 10858
    functionDepth: 21
    functionLinenumber: 10858
    functionLinenumberEnd: 10864
    functionName: JS_CreateDataPropertyUint32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_DefinePropertyValueValue
    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:10875,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10875,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:10881,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:10883,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10885
      start: 10868
    functionDepth: 1
    functionLinenumber: 10868
    functionLinenumberEnd: 10885
    functionName: js_object_has_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - find_own_property
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_OBJ
    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:10891,1
    - Dst: js_object_has_name
      Src: /src/gpac/src/quickjs/quickjs.c:10892,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10893,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:10893,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 4
    argNames:
    - ctx
    - obj
    - name
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10897
      start: 10887
    functionDepth: 20
    functionLinenumber: 10887
    functionLinenumberEnd: 10897
    functionName: JS_DefineObjectName
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_AtomToString
    - JS_IsObject
    - js_object_has_name
    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:10902,1
    - Dst: js_object_has_name
      Src: /src/gpac/src/quickjs/quickjs.c:10903,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10906,1
    - Dst: js_get_function_name
      Src: /src/gpac/src/quickjs/quickjs.c:10909,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10910,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:10911,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:10913,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - obj
    - str
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10917
      start: 10899
    functionDepth: 20
    functionLinenumber: 10899
    functionLinenumberEnd: 10917
    functionName: JS_DefineObjectNameComputed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - js_get_function_name
    - JS_ValueToAtom
    - JS_IsObject
    - js_object_has_name
    - JS_IsException
    - JS_FreeAtom
    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:10924,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - prop
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10925
      start: 10922
    functionDepth: 1
    functionLinenumber: 10922
    functionLinenumberEnd: 10925
    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:10934,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:10935,1
    - Dst: JS_ThrowTypeErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:10950,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10958,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:10959,1
    - Dst: JS_ThrowSyntaxErrorVarRedeclaration
      Src: /src/gpac/src/quickjs/quickjs.c:10962,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - prop
    - flags
    argTypes:
    - JSContext*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10966
      start: 10929
    functionDepth: 2
    functionLinenumber: 10929
    functionLinenumberEnd: 10966
    functionName: JS_CheckDefineGlobalVar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowSyntaxErrorVarRedeclaration
    - JS_ThrowTypeErrorAtom
    - find_own_property1
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: int
    signature: int JS_CheckDefineGlobalVar(JSContext *ctx, JSAtom prop, int flags)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:10976,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:10977,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10981,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10981,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:10982,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:10985,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:10986,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10988,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:10991,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:10995,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:11000,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 3
    argNames:
    - ctx
    - prop
    - sp
    argTypes:
    - JSContext*
    - JSAtom
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11002
      start: 10969
    functionDepth: 17
    functionLinenumber: 10969
    functionLinenumberEnd: 11002
    functionName: JS_GetGlobalVarRef
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - find_own_property
    - JS_IsUninitialized
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ThrowTypeErrorReadOnly
    - JS_AtomToValue
    - JS_DupValue
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: int
    signature: int JS_GetGlobalVarRef(JSContext *ctx, JSAtom prop, JSValue *sp)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11014,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:11015,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:11018,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:11022,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - prop
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11026
      start: 11006
    functionDepth: 17
    functionLinenumber: 11006
    functionLinenumberEnd: 11026
    functionName: JS_DeleteGlobalVar
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - find_own_property
    - JS_DeleteProperty
    - JS_VALUE_GET_OBJ
    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:11037,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:11038,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11040,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:11041,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11042,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:11046,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:11047,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - obj
    - prop
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11051
      start: 11031
    functionDepth: 14
    functionLinenumber: 11031
    functionLinenumberEnd: 11051
    functionName: JS_DeleteProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowTypeError
    - delete_property
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_ToObject
    - JS_IsException
    - is_strict_mode
    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:11060,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:11060,1
    - Dst: JS_NewAtomInt64
      Src: /src/gpac/src/quickjs/quickjs.c:11062,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:11065,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:11066,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: 11068
      start: 11053
    functionDepth: 15
    functionLinenumber: 11053
    functionLinenumberEnd: 11068
    functionName: JS_DeletePropertyInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_NewAtomInt64
    - JS_DeleteProperty
    - __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:11073,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11075,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11084
      start: 11070
    functionDepth: 1
    functionLinenumber: 11070
    functionLinenumberEnd: 11084
    functionName: JS_IsFunction
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 46
    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:11089,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11091,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - val
    - func
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - JSCFunction*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11096
      start: 11086
    functionDepth: 1
    functionLinenumber: 11086
    functionLinenumberEnd: 11096
    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:11101,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11105
      start: 11098
    functionDepth: 1
    functionLinenumber: 11098
    functionLinenumberEnd: 11105
    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:11110,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11112,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - func_obj
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11115
      start: 11107
    functionDepth: 1
    functionLinenumber: 11107
    functionLinenumberEnd: 11115
    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:11120,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11124
      start: 11117
    functionDepth: 1
    functionLinenumber: 11117
    functionLinenumberEnd: 11124
    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: 11130
      start: 11127
    functionDepth: 0
    functionLinenumber: 11127
    functionLinenumberEnd: 11130
    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:11135,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - obj
    - opaque
    argTypes:
    - JSValue
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11139
      start: 11132
    functionDepth: 1
    functionLinenumber: 11132
    functionLinenumberEnd: 11139
    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:11145,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11147,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - obj
    - class_id
    argTypes:
    - JSValueConst
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11151
      start: 11142
    functionDepth: 1
    functionLinenumber: 11142
    functionLinenumberEnd: 11151
    functionName: JS_GetOpaque
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 446
    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:11155,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:11156,1
    - Dst: JS_ThrowTypeErrorInvalidClass
      Src: /src/gpac/src/quickjs/quickjs.c:11157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - obj
    - class_id
    argTypes:
    - JSContext*
    - JSValueConst
    - JSClassID
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11160
      start: 11153
    functionDepth: 2
    functionLinenumber: 11153
    functionLinenumberEnd: 11160
    functionName: JS_GetOpaque2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorInvalidClass
    - unlikely
    - JS_GetOpaque
    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:11165,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11169,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - obj
    - class_id
    argTypes:
    - JSValueConst
    - JSClassID*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11172
      start: 11162
    functionDepth: 1
    functionLinenumber: 11162
    functionLinenumberEnd: 11172
    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:11181,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:11186,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:11187,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:11191,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:11191,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:11206,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:11207,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11208,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:11209,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11211,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:11212,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11214,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:11215,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:11226,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:11227,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:11229,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:11230,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:11231,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:11233,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11234,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11237,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11239,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:11242,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11244,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 67
    argCount: 3
    argNames:
    - ctx
    - val
    - hint
    argTypes:
    - JSContext*
    - JSValue
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11246
      start: 11174
    functionDepth: 14
    functionLinenumber: 11174
    functionLinenumberEnd: 11246
    functionName: JS_ToPrimitiveFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_GetProperty
    - JS_AtomToString
    - JS_FreeValue
    - JS_IsFunction
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_IsException
    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:11250,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:11250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - val
    - hint
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11251
      start: 11248
    functionDepth: 15
    functionLinenumber: 11248
    functionLinenumberEnd: 11251
    functionName: JS_ToPrimitive
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToPrimitiveFree
    - JS_DupValue
    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:11256,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11258,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11260
      start: 11253
    functionDepth: 1
    functionLinenumber: 11253
    functionLinenumberEnd: 11260
    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:11265,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11269
      start: 11262
    functionDepth: 1
    functionLinenumber: 11262
    functionLinenumberEnd: 11269
    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:11273,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:11276,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:11280,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:11285,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11286,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:11291,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11292,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:11296,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:11299,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11313,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:11318,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11321,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:11326,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:11327,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:11328,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:11330,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11334
      start: 11271
    functionDepth: 1
    functionLinenumber: 11271
    functionLinenumberEnd: 11334
    functionName: JS_ToBoolFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - isnan
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_STRING_ROPE
    - JS_VALUE_GET_SHORT_BIG_INT
    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:11338,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:11338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11339
      start: 11336
    functionDepth: 2
    functionLinenumber: 11336
    functionLinenumberEnd: 11339
    functionName: JS_ToBool
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 101
    functionsReached:
    - JS_ToBoolFree
    - JS_DupValue
    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:11354,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:11355,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 1
    argNames:
    - pc
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11361
      start: 11341
    functionDepth: 1
    functionLinenumber: 11341
    functionLinenumberEnd: 11361
    functionName: skip_spaces
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unicode_from_utf8
    - lre_is_space
    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: 11373
      start: 11363
    functionDepth: 0
    functionLinenumber: 11363
    functionLinenumberEnd: 11373
    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: 11401
      start: 11390
    functionDepth: 0
    functionLinenumber: 11390
    functionLinenumberEnd: 11401
    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:11406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11407
      start: 11404
    functionDepth: 1
    functionLinenumber: 11404
    functionLinenumberEnd: 11407
    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:11411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11412
      start: 11409
    functionDepth: 1
    functionLinenumber: 11409
    functionLinenumberEnd: 11412
    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:11421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11422
      start: 11416
    functionDepth: 2
    functionLinenumber: 11416
    functionLinenumberEnd: 11422
    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:11429,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: 11432
      start: 11424
    functionDepth: 1
    functionLinenumber: 11424
    functionLinenumberEnd: 11432
    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: 11450
      start: 11434
    functionDepth: 0
    functionLinenumber: 11434
    functionLinenumberEnd: 11450
    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: 11465
      start: 11453
    functionDepth: 0
    functionLinenumber: 11453
    functionLinenumberEnd: 11465
    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: 11480
      start: 11468
    functionDepth: 0
    functionLinenumber: 11468
    functionLinenumberEnd: 11480
    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: 11493
      start: 11482
    functionDepth: 0
    functionLinenumber: 11482
    functionLinenumberEnd: 11493
    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: 11509
      start: 11496
    functionDepth: 0
    functionLinenumber: 11496
    functionLinenumberEnd: 11509
    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:11519,1
    - Dst: mp_add_mul1
      Src: /src/gpac/src/quickjs/quickjs.c:11521,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: 11524
      start: 11512
    functionDepth: 1
    functionLinenumber: 11512
    functionLinenumberEnd: 11524
    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: 11541
      start: 11528
    functionDepth: 0
    functionLinenumber: 11528
    functionLinenumberEnd: 11541
    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: 11550
      start: 11544
    functionDepth: 0
    functionLinenumber: 11544
    functionLinenumberEnd: 11550
    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: 11572
      start: 11554
    functionDepth: 0
    functionLinenumber: 11554
    functionLinenumberEnd: 11572
    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:11584,1
    - Dst: udiv1norm
      Src: /src/gpac/src/quickjs/quickjs.c:11586,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: 11597
      start: 11577
    functionDepth: 0
    functionLinenumber: 11577
    functionLinenumberEnd: 11597
    functionName: mp_div1norm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - udiv1norm_init
    - udiv1norm
    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:11611,1
    - Dst: udiv1norm_init
      Src: /src/gpac/src/quickjs/quickjs.c:11617,1
    - Dst: mp_sub
      Src: /src/gpac/src/quickjs/quickjs.c:11632,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:11636,1
    - Dst: udiv1norm
      Src: /src/gpac/src/quickjs/quickjs.c:11639,1
    - Dst: mp_sub_mul1
      Src: /src/gpac/src/quickjs/quickjs.c:11646,1
    - Dst: mp_add
      Src: /src/gpac/src/quickjs/quickjs.c:11657,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: 11668
      start: 11603
    functionDepth: 2
    functionLinenumber: 11603
    functionLinenumberEnd: 11668
    functionName: mp_divnorm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mp_add
    - unlikely
    - udiv1norm
    - mp_sub
    - mp_sub_mul1
    - mp_div1norm
    - 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: 11683
      start: 11671
    functionDepth: 0
    functionLinenumber: 11671
    functionLinenumberEnd: 11683
    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: 11700
      start: 11687
    functionDepth: 0
    functionLinenumber: 11687
    functionLinenumberEnd: 11700
    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:11706,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:11709,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:11712,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ctx
    - len
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11715
      start: 11702
    functionDepth: 14
    functionLinenumber: 11702
    functionLinenumberEnd: 11715
    functionName: js_bigint_new
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - JS_ThrowRangeError
    - js_malloc
    linkageType: ''
    returnType: JSBigInt
    signature: JSBigInt *js_bigint_new(JSContext *ctx, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - buf
    - a
    argTypes:
    - JSBigIntBuf*
    - js_slimb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11723
      start: 11717
    functionDepth: 0
    functionLinenumber: 11717
    functionLinenumberEnd: 11723
    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:11728,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - buf
    - a
    argTypes:
    - JSBigIntBuf*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11741
      start: 11725
    functionDepth: 1
    functionLinenumber: 11725
    functionLinenumberEnd: 11741
    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:11746,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:11746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf
    - val
    argTypes:
    - JSBigIntBuf*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11747
      start: 11744
    functionDepth: 1
    functionLinenumber: 11744
    functionLinenumberEnd: 11747
    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:11753,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:11756,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:11758,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:11761,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: 11762
      start: 11749
    functionDepth: 0
    functionLinenumber: 11749
    functionLinenumberEnd: 11762
    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:11767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - str
    - p
    argTypes:
    - JSContext*
    - char*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11768
      start: 11764
    functionDepth: 1
    functionLinenumber: 11764
    functionLinenumberEnd: 11768
    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:11773,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - js_slimb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11778
      start: 11770
    functionDepth: 15
    functionLinenumber: 11770
    functionLinenumberEnd: 11778
    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:11783,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:11786,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11789,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11797
      start: 11780
    functionDepth: 16
    functionLinenumber: 11780
    functionLinenumberEnd: 11797
    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:11802,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11805,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11818
      start: 11799
    functionDepth: 17
    functionLinenumber: 11799
    functionLinenumberEnd: 11818
    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:11824,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11829,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - js_sdlimb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11836
      start: 11820
    functionDepth: 15
    functionLinenumber: 11820
    functionLinenumberEnd: 11836
    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:11845,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:11845,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:11858,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - a
    - l
    argTypes:
    - JSContext*
    - JSBigInt*
    - int
    assertStmts:
    - condition: (js_rc(a)->ref_count == 1)
      pos:
        line_end: 11844
        line_start: 11844
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 11863
      start: 11841
    functionDepth: 7
    functionLinenumber: 11841
    functionLinenumberEnd: 11863
    functionName: js_bigint_normalize1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - assert
    - js_realloc
    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:11867,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11868
      start: 11865
    functionDepth: 8
    functionLinenumber: 11865
    functionLinenumberEnd: 11868
    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: 11874
      start: 11871
    functionDepth: 0
    functionLinenumber: 11871
    functionLinenumberEnd: 11874
    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:11882,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11887,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - a
    argTypes:
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11893
      start: 11876
    functionDepth: 1
    functionLinenumber: 11876
    functionLinenumberEnd: 11893
    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:11903,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:11906,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:11914,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - ctx
    - r
    - op1
    argTypes:
    - JSContext*
    - JSBigInt*
    - js_limb_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11917
      start: 11896
    functionDepth: 9
    functionLinenumber: 11896
    functionLinenumberEnd: 11917
    functionName: js_bigint_extend
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc
    - js_bigint_normalize
    - 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:11929,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:11930,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:11931,1
    - Dst: ADDC
      Src: /src/gpac/src/quickjs/quickjs.c:11940,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11942,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11943,1
    - Dst: ADDC
      Src: /src/gpac/src/quickjs/quickjs.c:11948,1
    - Dst: ADDC
      Src: /src/gpac/src/quickjs/quickjs.c:11953,1
    - Dst: js_bigint_extend
      Src: /src/gpac/src/quickjs/quickjs.c:11959,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: 11960
      start: 11922
    functionDepth: 15
    functionLinenumber: 11922
    functionLinenumberEnd: 11960
    functionName: js_bigint_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_extend
    - ADDC
    - js_bigint_sign
    - max_int
    - js_bigint_new
    - min_int
    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:11967,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:11968,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11969
      start: 11963
    functionDepth: 16
    functionLinenumber: 11963
    functionLinenumberEnd: 11969
    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:11976,1
    - Dst: mp_mul_basecase
      Src: /src/gpac/src/quickjs/quickjs.c:11979,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11982,1
    - Dst: mp_sub
      Src: /src/gpac/src/quickjs/quickjs.c:11983,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:11984,1
    - Dst: mp_sub
      Src: /src/gpac/src/quickjs/quickjs.c:11985,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:11986,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11987
      start: 11971
    functionDepth: 15
    functionLinenumber: 11971
    functionLinenumberEnd: 11987
    functionName: js_bigint_mul
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mp_mul_basecase
    - js_bigint_sign
    - mp_sub
    - js_bigint_new
    - js_bigint_normalize
    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:11999,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:12003,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:12004,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12008,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12012,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:12014,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:12020,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12022,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12026,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:12028,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12036,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12037,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12040,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:12043,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:12047,1
    - Dst: js_limb_clz
      Src: /src/gpac/src/quickjs/quickjs.c:12052,1
    - Dst: mp_shl
      Src: /src/gpac/src/quickjs/quickjs.c:12054,1
    - Dst: mp_shl
      Src: /src/gpac/src/quickjs/quickjs.c:12055,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12060,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12062,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12063,1
    - Dst: mp_divnorm
      Src: /src/gpac/src/quickjs/quickjs.c:12069,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12070,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12073,1
    - Dst: mp_shr
      Src: /src/gpac/src/quickjs/quickjs.c:12075,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12078,1
    - Dst: js_bigint_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:12079,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12082,1
    - Dst: mp_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12085,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:12087,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: 12090
      start: 11991
    functionDepth: 16
    functionLinenumber: 11991
    functionLinenumberEnd: 12090
    functionName: js_bigint_divrem
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mp_neg
    - js_malloc
    - mp_divnorm
    - JS_ThrowRangeError
    - js_bigint_sign
    - js_bigint_new_si
    - js_bigint_normalize1
    - mp_shr
    - js_limb_clz
    - js_free
    - js_bigint_new
    - mp_shl
    - js_bigint_normalize
    - memcpy
    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:12109,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12111,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:12140,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:12142,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 4
    argNames:
    - ctx
    - a
    - b
    - op
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12143
      start: 12093
    functionDepth: 15
    functionLinenumber: 12093
    functionLinenumberEnd: 12143
    functionName: js_bigint_logic
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_sign
    - js_bigint_normalize
    - js_bigint_new
    - abort
    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:12150,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12158
      start: 12145
    functionDepth: 15
    functionLinenumber: 12145
    functionLinenumberEnd: 12158
    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:12168,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12171,1
    - Dst: mp_shl
      Src: /src/gpac/src/quickjs/quickjs.c:12181,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:12182,1
    - Dst: js_bigint_extend
      Src: /src/gpac/src/quickjs/quickjs.c:12184,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - a
    - shift1
    argTypes:
    - JSContext*
    - JSBigInt*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12187
      start: 12160
    functionDepth: 16
    functionLinenumber: 12160
    functionLinenumberEnd: 12187
    functionName: js_bigint_shl
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_extend
    - js_bigint_new_si
    - js_bigint_sign
    - js_bigint_new
    - mp_shl
    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:12197,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:12199,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12201,1
    - Dst: mp_shr
      Src: /src/gpac/src/quickjs/quickjs.c:12210,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:12211,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - a
    - shift1
    argTypes:
    - JSContext*
    - JSBigInt*
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12214
      start: 12189
    functionDepth: 16
    functionLinenumber: 12189
    functionLinenumberEnd: 12214
    functionName: js_bigint_shr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_sign
    - js_bigint_new_si
    - mp_shr
    - js_bigint_new
    - js_bigint_normalize
    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:12223,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:12224,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:12229,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:12236,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:12238,1
    - Dst: js_limb_clz
      Src: /src/gpac/src/quickjs/quickjs.c:12246,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12258,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:12262,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:12273,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12275,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:12278,1
    - Dst: js_bigint_mul
      Src: /src/gpac/src/quickjs/quickjs.c:12280,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12283,1
    - Dst: js_bigint_mul
      Src: /src/gpac/src/quickjs/quickjs.c:12286,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12289,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:12295,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 72
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12297
      start: 12216
    functionDepth: 16
    functionLinenumber: 12216
    functionLinenumberEnd: 12297
    functionName: js_bigint_pow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_mul
    - js_bigint_sign
    - js_bigint_new_si
    - JS_ThrowRangeError
    - js_limb_clz
    - js_free
    - js_bigint_new
    - memset
    - memcpy
    - clz32
    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:12310,1
    - Dst: clz64
      Src: /src/gpac/src/quickjs/quickjs.c:12347,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 41
    argCount: 3
    argNames:
    - ctx
    - pexp
    - a
    argTypes:
    - JSContext*
    - int*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12358
      start: 12301
    functionDepth: 1
    functionLinenumber: 12301
    functionLinenumberEnd: 12358
    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: 12365
      start: 12361
    functionDepth: 0
    functionLinenumber: 12361
    functionLinenumberEnd: 12365
    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:12379,1
    - Dst: js_bigint_get_mant_exp
      Src: /src/gpac/src/quickjs/quickjs.c:12380,1
    - Dst: shr_rndn
      Src: /src/gpac/src/quickjs/quickjs.c:12387,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:12395,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - a
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12398
      start: 12369
    functionDepth: 2
    functionLinenumber: 12369
    functionLinenumberEnd: 12398
    functionName: js_bigint_to_float64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - shr_rndn
    - js_bigint_sign
    - js_bigint_get_mant_exp
    - uint64_as_float64
    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:12404,1
    - Dst: js_bigint_new_si
      Src: /src/gpac/src/quickjs/quickjs.c:12421,1
    - Dst: js_bigint_set_si64
      Src: /src/gpac/src/quickjs/quickjs.c:12444,1
    - Dst: js_bigint_shl
      Src: /src/gpac/src/quickjs/quickjs.c:12446,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - ctx
    - pres
    - a1
    argTypes:
    - JSContext*
    - int*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12447
      start: 12402
    functionDepth: 17
    functionLinenumber: 12402
    functionLinenumberEnd: 12447
    functionName: js_bigint_from_float64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_new_si
    - js_bigint_set_si64
    - js_bigint_shl
    - float64_as_uint64
    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:12456,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:12460,1
    - Dst: js_bigint_get_mant_exp
      Src: /src/gpac/src/quickjs/quickjs.c:12485,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12501
      start: 12450
    functionDepth: 2
    functionLinenumber: 12450
    functionLinenumberEnd: 12501
    functionName: js_bigint_float64_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_sign
    - js_bigint_get_mant_exp
    - float64_as_uint64
    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:12508,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:12509,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - a
    - b
    argTypes:
    - JSContext*
    - JSBigInt*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12533
      start: 12504
    functionDepth: 1
    functionLinenumber: 12504
    functionLinenumberEnd: 12533
    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:12579,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:12583,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:12587,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:12595,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12596,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12607,1
    - Dst: mp_mul1
      Src: /src/gpac/src/quickjs/quickjs.c:12618,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:12633,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12635,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:12636,1
    - Dst: js_bigint_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:12648,1
    - Dst: js_bigint_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12652,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12653,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 72
    argCount: 3
    argNames:
    - ctx
    - str
    - radix
    argTypes:
    - JSContext*
    - char*
    - int
    assertStmts:
    - condition: (c < radix)
      pos:
        line_end: 12635
        line_start: 12635
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 12657
      start: 12563
    functionDepth: 17
    functionLinenumber: 12563
    functionLinenumberEnd: 12657
    functionName: js_bigint_from_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_neg
    - assert
    - JS_ThrowRangeError
    - mp_mul1
    - to_digit
    - js_free
    - max_int
    - js_bigint_new
    - strlen
    - memset
    - js_bigint_normalize
    - clz32
    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: 12686
      start: 12668
    functionDepth: 0
    functionLinenumber: 12668
    functionLinenumberEnd: 12686
    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: 12709
      start: 12689
    functionDepth: 0
    functionLinenumber: 12689
    functionLinenumberEnd: 12709
    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:12747,1
    - Dst: i64toa_radix
      Src: /src/gpac/src/quickjs/quickjs.c:12750,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:12750,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:12751,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:12759,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:12759,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:12760,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:12763,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:12766,1
    - Dst: js_bigint_neg
      Src: /src/gpac/src/quickjs/quickjs.c:12768,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:12774,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:12777,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:12780,1
    - Dst: js_limb_safe_clz
      Src: /src/gpac/src/quickjs/quickjs.c:12781,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:12786,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12788,1
    - Dst: js_u64toa
      Src: /src/gpac/src/quickjs/quickjs.c:12806,1
    - Dst: mp_div1
      Src: /src/gpac/src/quickjs/quickjs.c:12810,1
    - Dst: limb_to_a
      Src: /src/gpac/src/quickjs/quickjs.c:12811,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12834,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:12835,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12836,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: 12758
        line_start: 12758
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 12839
      start: 12745
    functionDepth: 17
    functionLinenumber: 12745
    functionLinenumberEnd: 12839
    functionName: js_bigint_to_string1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_neg
    - js_malloc
    - JS_VALUE_GET_PTR
    - js_u64toa
    - js_bigint_sign
    - mp_div1
    - JS_VALUE_GET_TAG
    - js_limb_safe_clz
    - js_free
    - js_bigint_new
    - limb_to_a
    - assert
    - js_new_string8_len
    - memcpy
    - clz32
    - JS_VALUE_GET_SHORT_BIG_INT
    - i64toa_radix
    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:12847,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:12848,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:12851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - p
    argTypes:
    - JSContext*
    - JSBigInt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12853
      start: 12843
    functionDepth: 5
    functionLinenumber: 12843
    functionLinenumberEnd: 12853
    functionName: JS_CompactBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    - __JS_NewShortBigInt
    - JS_MKPTR
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_CompactBigInt(JSContext *ctx, JSBigInt *p)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12935,1
    - Dst: strstart
      Src: /src/gpac/src/quickjs/quickjs.c:12942,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:12951,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12959,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12962,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12966,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12971,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12972,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12983,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12985,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:12985,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:12996,1
    - Dst: js_malloc_rt
      Src: /src/gpac/src/quickjs/quickjs.c:12997,1
    - Dst: js_atod
      Src: /src/gpac/src/quickjs/quickjs.c:13021,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:13024,1
    - Dst: js_bigint_from_string
      Src: /src/gpac/src/quickjs/quickjs.c:13032,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:13037,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:13041,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:13046,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:13054,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 161
    argCount: 5
    argNames:
    - ctx
    - str
    - pp
    - radix
    - flags
    argTypes:
    - JSContext*
    - char*
    - char**
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13056
      start: 12875
    functionDepth: 18
    functionLinenumber: 12875
    functionLinenumberEnd: 13056
    functionName: js_atof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc_rt
    - JS_NewFloat64
    - strstart
    - unlikely
    - js_bigint_from_string
    - js_atod
    - is_digit
    - abort
    - to_digit
    - js_free_rt
    - JS_ThrowOutOfMemory
    - JS_CompactBigInt
    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:13070,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13075,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:13076,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:13087,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13087,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:13093,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13094,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:13104,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13105,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:13109,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:13111,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:13114,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13115,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:13116,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13118,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:13123,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13127,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:13128,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13130,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 63
    argCount: 3
    argNames:
    - ctx
    - val
    - flag
    argTypes:
    - JSContext*
    - JSValue
    - JSToNumberHintEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13135
      start: 13063
    functionDepth: 19
    functionLinenumber: 13063
    functionLinenumberEnd: 13135
    functionName: JS_ToNumberHintFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - skip_spaces
    - JS_FreeValue
    - js_atof
    - JS_FreeCString
    - JS_ToPrimitiveFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - JS_ToCStringLen
    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:13139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13140
      start: 13137
    functionDepth: 20
    functionLinenumber: 13137
    functionLinenumberEnd: 13140
    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:13144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13145
      start: 13142
    functionDepth: 20
    functionLinenumber: 13142
    functionLinenumberEnd: 13145
    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:13149,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13150
      start: 13147
    functionDepth: 21
    functionLinenumber: 13147
    functionLinenumberEnd: 13150
    functionName: JS_ToNumeric
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToNumericFree
    - JS_DupValue
    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:13158,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13159,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13161,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13164,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13167,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:13170,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - double*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13177
      start: 13152
    functionDepth: 21
    functionLinenumber: 13152
    functionLinenumberEnd: 13177
    functionName: __JS_ToFloat64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_ToNumberFree
    - abort
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    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:13183,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13185,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13187,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13188,1
    - Dst: __JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:13191,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - double*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13193
      start: 13179
    functionDepth: 22
    functionLinenumber: 13179
    functionLinenumberEnd: 13193
    functionName: JS_ToFloat64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - __JS_ToFloat64Free
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    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:13197,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - double*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13198
      start: 13195
    functionDepth: 23
    functionLinenumber: 13195
    functionLinenumberEnd: 13198
    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:13202,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13203
      start: 13200
    functionDepth: 21
    functionLinenumber: 13200
    functionLinenumberEnd: 13203
    functionName: JS_ToNumber
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToNumberFree
    - JS_DupValue
    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:13212,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:13218,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13218,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13222,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:13223,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:13224,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:13227,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:13228,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13233,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13234,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 28
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13239
      start: 13206
    functionDepth: 21
    functionLinenumber: 13206
    functionLinenumberEnd: 13239
    functionName: JS_ToIntegerFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_VALUE_GET_FLOAT64
    - JS_NewFloat64
    - trunc
    - JS_ToNumberFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_NewInt32
    - JS_VALUE_GET_INT
    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:13248,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13254,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13261,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:13262,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13275,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13276,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13284
      start: 13242
    functionDepth: 21
    functionLinenumber: 13242
    functionLinenumberEnd: 13284
    functionName: JS_ToInt32SatFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_VALUE_GET_FLOAT64
    - JS_ToNumberFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    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:13288,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13289
      start: 13286
    functionDepth: 22
    functionLinenumber: 13286
    functionLinenumberEnd: 13289
    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:13294,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13294,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: 13306
      start: 13291
    functionDepth: 22
    functionLinenumber: 13291
    functionLinenumberEnd: 13306
    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:13313,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13319,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13326,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:13327,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13340,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13341,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13347
      start: 13308
    functionDepth: 21
    functionLinenumber: 13308
    functionLinenumberEnd: 13347
    functionName: JS_ToInt64SatFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_VALUE_GET_FLOAT64
    - JS_ToNumberFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    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:13351,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13352
      start: 13349
    functionDepth: 22
    functionLinenumber: 13349
    functionLinenumberEnd: 13352
    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:13357,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13357,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: 13367
      start: 13354
    functionDepth: 22
    functionLinenumber: 13354
    functionLinenumberEnd: 13367
    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:13377,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13383,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13390,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:13394,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13411,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13412,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 39
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13420
      start: 13371
    functionDepth: 21
    functionLinenumber: 13371
    functionLinenumberEnd: 13420
    functionName: JS_ToInt64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - likely
    - JS_ToNumberFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    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:13424,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13425
      start: 13422
    functionDepth: 22
    functionLinenumber: 13422
    functionLinenumberEnd: 13425
    functionName: JS_ToInt64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 21
    functionsReached:
    - JS_ToInt64Free
    - JS_DupValue
    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:13429,1
    - Dst: JS_ToBigInt64
      Src: /src/gpac/src/quickjs/quickjs.c:13430,1
    - Dst: JS_ToInt64
      Src: /src/gpac/src/quickjs/quickjs.c:13432,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13433
      start: 13427
    functionDepth: 23
    functionLinenumber: 13427
    functionLinenumberEnd: 13433
    functionName: JS_ToInt64Ext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt64
    - JS_IsBigInt
    - 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:13442,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13448,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13455,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:13459,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13477,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13478,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 40
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int32_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13486
      start: 13436
    functionDepth: 21
    functionLinenumber: 13436
    functionLinenumberEnd: 13486
    functionName: JS_ToInt32Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - likely
    - JS_ToNumberFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    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:13490,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13490,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int32_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13491
      start: 13488
    functionDepth: 22
    functionLinenumber: 13488
    functionLinenumberEnd: 13491
    functionName: JS_ToInt32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 138
    functionsReached:
    - JS_ToInt32Free
    - JS_DupValue
    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:13495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - uint32_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13496
      start: 13493
    functionDepth: 22
    functionLinenumber: 13493
    functionLinenumberEnd: 13496
    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:13504,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13510,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:13511,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:13511,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13515,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:13516,1
    - Dst: lrint
      Src: /src/gpac/src/quickjs/quickjs.c:13524,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13529,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13530,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int32_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13538
      start: 13498
    functionDepth: 21
    functionLinenumber: 13498
    functionLinenumberEnd: 13538
    functionName: JS_ToUint8ClampFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - isnan
    - JS_VALUE_GET_FLOAT64
    - lrint
    - JS_ToNumberFree
    - max_int
    - JS_VALUE_GET_NORM_TAG
    - min_int
    - JS_IsException
    - JS_VALUE_GET_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:13545,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13552,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13559,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13561,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13571,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13572,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:13575,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:13579,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13580,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:13583,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13584,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:13587,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:13591,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: 13600
      start: 13540
    functionDepth: 21
    functionLinenumber: 13540
    functionLinenumberEnd: 13600
    functionName: JS_ToArrayLengthFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - JS_ToArrayLengthFree
    - JS_ThrowRangeError
    - JS_ToNumberFree
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_ToUint32
    - JS_VALUE_GET_INT
    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:13606,1
    - Dst: floor
      Src: /src/gpac/src/quickjs/quickjs.c:13606,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:13607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - d
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13608
      start: 13604
    functionDepth: 0
    functionLinenumber: 13604
    functionLinenumberEnd: 13608
    functionName: is_safe_integer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - floor
    - isfinite
    - fabs
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_safe_integer(double d)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:13613,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:13616,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - plen
    - val
    argTypes:
    - JSContext*
    - uint64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13622
      start: 13610
    functionDepth: 23
    functionLinenumber: 13610
    functionLinenumberEnd: 13622
    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:13629,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13630,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - plen
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13632
      start: 13626
    functionDepth: 23
    functionLinenumber: 13626
    functionLinenumberEnd: 13632
    functionName: JS_ToLengthFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt64Clamp
    - JS_FreeValue
    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:13638,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:13640,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:13640,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:13642,1
    - Dst: floor
      Src: /src/gpac/src/quickjs/quickjs.c:13642,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13643
      start: 13635
    functionDepth: 24
    functionLinenumber: 13635
    functionLinenumberEnd: 13643
    functionName: JS_NumberIsInteger
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToFloat64
    - isfinite
    - unlikely
    - JS_IsNumber
    - 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:13649,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13654,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13660,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13664,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13667,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:13668,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13673
      start: 13645
    functionDepth: 1
    functionLinenumber: 13645
    functionLinenumberEnd: 13673
    functionName: JS_NumberIsNegativeOrMinusZero
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_PTR
    - js_bigint_sign
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_SHORT_BIG_INT
    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:13677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13678
      start: 13675
    functionDepth: 18
    functionLinenumber: 13675
    functionLinenumberEnd: 13678
    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:13687,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:13691,1
    - Dst: js_dtoa
      Src: /src/gpac/src/quickjs/quickjs.c:13699,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:13700,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:13701,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: 13703
      start: 13680
    functionDepth: 8
    functionLinenumber: 13680
    functionLinenumberEnd: 13703
    functionName: js_dtoa2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - js_dtoa
    - js_dtoa_max_len
    - js_free
    - js_new_string8_len
    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:13710,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13713,1
    - Dst: js_linearize_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:13715,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13715,1
    - Dst: i32toa
      Src: /src/gpac/src/quickjs/quickjs.c:13719,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:13719,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:13720,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:13724,1
    - Dst: JS_VALUE_GET_BOOL
      Src: /src/gpac/src/quickjs/quickjs.c:13724,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:13727,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:13729,1
    - Dst: JS_ToPrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:13735,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:13736,1
    - Dst: JS_ToStringInternal
      Src: /src/gpac/src/quickjs/quickjs.c:13738,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13739,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:13744,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:13747,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:13749,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:13752,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:13752,1
    - Dst: js_bigint_to_string
      Src: /src/gpac/src/quickjs/quickjs.c:13756,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:13758,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 45
    argCount: 3
    argNames:
    - ctx
    - val
    - is_ToPropertyKey
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13760
      start: 13705
    functionDepth: 19
    functionLinenumber: 13705
    functionLinenumberEnd: 13760
    functionName: JS_ToStringInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToStringInternal
    - JS_VALUE_GET_FLOAT64
    - JS_ThrowTypeError
    - js_linearize_string_rope
    - JS_ToPrimitive
    - js_new_string8
    - JS_AtomToString
    - JS_FreeValue
    - i32toa
    - JS_DupValue
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_BOOL
    - JS_IsException
    - JS_VALUE_GET_INT
    - js_bigint_to_string
    - js_new_string8_len
    - js_dtoa2
    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:13764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13765
      start: 13762
    functionDepth: 20
    functionLinenumber: 13762
    functionLinenumberEnd: 13765
    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:13770,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:13771,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13773
      start: 13767
    functionDepth: 21
    functionLinenumber: 13767
    functionLinenumberEnd: 13773
    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:13777,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:13777,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:13778,1
    - Dst: JS_InvokeFree
      Src: /src/gpac/src/quickjs/quickjs.c:13779,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13780
      start: 13775
    functionDepth: 22
    functionLinenumber: 13775
    functionLinenumberEnd: 13780
    functionName: JS_ToLocaleStringFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsNull
    - JS_ToStringFree
    - JS_InvokeFree
    - JS_IsUndefined
    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:13784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13785
      start: 13782
    functionDepth: 20
    functionLinenumber: 13782
    functionLinenumberEnd: 13785
    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:13789,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:13791,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:13792,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13793
      start: 13787
    functionDepth: 21
    functionLinenumber: 13787
    functionLinenumberEnd: 13793
    functionName: JS_ToStringCheckObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_ToString
    - JS_VALUE_GET_TAG
    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:13811,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - c
    argTypes:
    - JSPrintValueState*
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13812
      start: 13809
    functionDepth: 0
    functionLinenumber: 13809
    functionLinenumberEnd: 13812
    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:13816,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:13816,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - str
    argTypes:
    - JSPrintValueState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13817
      start: 13814
    functionDepth: 0
    functionLinenumber: 13814
    functionLinenumberEnd: 13817
    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:13821,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:13828,1
    - Dst: vsnprintf
      Src: /src/gpac/src/quickjs/quickjs.c:13829,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:13830,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13831,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:13831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - fmt
    argTypes:
    - JSPrintValueState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13832
      start: 13821
    functionDepth: 0
    functionLinenumber: 13821
    functionLinenumberEnd: 13832
    functionName: js_printf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - format
    - vsnprintf
    - JSPrintValueState*::write_func
    - va_end
    - va_start
    - 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:13839,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - d
    argTypes:
    - JSPrintValueState*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13841
      start: 13834
    functionDepth: 1
    functionLinenumber: 13834
    functionLinenumberEnd: 13841
    functionName: js_print_float64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSPrintValueState*::write_func
    - js_dtoa
    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:13845,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:13846,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13848,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13849,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13854
      start: 13843
    functionDepth: 1
    functionLinenumber: 13843
    functionLinenumberEnd: 13854
    functionName: js_string_get_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_TAG
    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:13863,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13882,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13883,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13889,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13893,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13895,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13898,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13899,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13902,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:13903,1
    - Dst: unicode_to_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:13906,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13907,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 63
    argCount: 4
    argNames:
    - s
    - p
    - len
    - sep
    argTypes:
    - JSPrintValueState*
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13912
      start: 13857
    functionDepth: 1
    functionLinenumber: 13857
    functionLinenumberEnd: 13912
    functionName: js_print_string1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_putc
    - is_lo_surrogate
    - string_get
    - from_surrogate
    - unicode_to_utf8
    - JSPrintValueState*::write_func
    - is_hi_surrogate
    - js_printf
    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:13917,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:13918,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:13921,1
    - Dst: js_print_string1
      Src: /src/gpac/src/quickjs/quickjs.c:13922,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13924,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:13925,1
    - Dst: js_print_string_rec
      Src: /src/gpac/src/quickjs/quickjs.c:13926,1
    - Dst: js_print_string_rec
      Src: /src/gpac/src/quickjs/quickjs.c:13927,1
    - Dst: js_string_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:13927,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13929,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:13929,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: 13931
      start: 13914
    functionDepth: 2
    functionLinenumber: 13914
    functionLinenumberEnd: 13931
    functionName: js_print_string_rec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_print_string_rec
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_STRING
    - js_print_string1
    - JS_VALUE_GET_TAG
    - min_uint32
    - js_string_get_length
    - js_printf
    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:13936,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:13937,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13938,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:13938,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:13939,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13943,1
    - Dst: js_print_string_rec
      Src: /src/gpac/src/quickjs/quickjs.c:13944,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13945,1
    - Dst: js_string_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:13946,1
    - Dst: js_string_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:13947,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13948,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSPrintValueState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13950
      start: 13933
    functionDepth: 3
    functionLinenumber: 13933
    functionLinenumberEnd: 13950
    functionName: js_print_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_print_string_rec
    - JS_VALUE_GET_STRING
    - js_rc
    - js_putc
    - JS_VALUE_GET_TAG
    - js_string_get_length
    - js_printf
    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:13956,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:13958,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:13959,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSPrintValueState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13961
      start: 13952
    functionDepth: 2
    functionLinenumber: 13952
    functionLinenumberEnd: 13961
    functionName: js_print_raw_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JSPrintValueState*::write_func
    - JS_FreeCString
    - JS_ToCStringLen
    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:13970,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 9
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13976
      start: 13963
    functionDepth: 1
    functionLinenumber: 13963
    functionLinenumberEnd: 13976
    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:13981,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:13982,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:13982,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:13984,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:13986,1
    - Dst: is_ascii_ident
      Src: /src/gpac/src/quickjs/quickjs.c:13989,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13991,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:13991,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13994,1
    - Dst: js_print_string1
      Src: /src/gpac/src/quickjs/quickjs.c:13995,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:13996,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: 13985
        line_start: 13985
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 13999
      start: 13978
    functionDepth: 2
    functionLinenumber: 13978
    functionLinenumberEnd: 13999
    functionName: js_print_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_putc
    - js_print_string1
    - string_get
    - __JS_AtomToUInt32
    - is_ascii_ident
    - js_puts
    - __JS_AtomIsTaggedInt
    - assert
    - js_printf
    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:14008,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14014,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14016,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14018,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14022
      start: 14002
    functionDepth: 1
    functionLinenumber: 14002
    functionLinenumberEnd: 14022
    functionName: js_print_array_get_length
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_FLOAT64
    - find_own_property
    - JS_VALUE_GET_NORM_TAG
    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:14030,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14033,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - s
    - pcomma_state
    argTypes:
    - JSPrintValueState*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14037
      start: 14024
    functionDepth: 1
    functionLinenumber: 14024
    functionLinenumberEnd: 14037
    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:14042,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14043,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - s
    - pcomma_state
    - n
    argTypes:
    - JSPrintValueState*
    - int*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14044
      start: 14039
    functionDepth: 2
    functionLinenumber: 14039
    functionLinenumberEnd: 14044
    functionName: js_print_more_items
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_print_comma
    - js_printf
    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:14056,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14060,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14062,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:14067,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:14070,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:14077,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:14078,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14097,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14099,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14102,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:14104,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:14105,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14107,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 2
    argNames:
    - s
    - p1
    argTypes:
    - JSPrintValueState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14110
      start: 14047
    functionDepth: 1
    functionLinenumber: 14047
    functionLinenumberEnd: 14110
    functionName: js_print_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - countof
    - lre_get_flags
    - js_putc
    - string_get
    - js_puts
    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:14118,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14118,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14120,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14122,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:14123,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:14126,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14126,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14128,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14129,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:14131,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:14134,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14134,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14136,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:14140,1
    - Dst: JSPrintValueState*::write_func
      Src: /src/gpac/src/quickjs/quickjs.c:14143,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:14145,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - JSPrintValueState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14147
      start: 14113
    functionDepth: 2
    functionLinenumber: 14113
    functionLinenumberEnd: 14147
    functionName: js_print_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_putc
    - JSPrintValueState*::write_func
    - JS_FreeCString
    - js_puts
    - strlen
    - get_prop_string
    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:14163,1
    - Dst: js_print_array_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:14167,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:14169,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:14171,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14172,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:14175,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:14178,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14179,1
    - Dst: typed_array_size_log2
      Src: /src/gpac/src/quickjs/quickjs.c:14183,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14187,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14188,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:14191,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:14194,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14218,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14221,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:14224,1
    - Dst: fromfp16
      Src: /src/gpac/src/quickjs/quickjs.c:14224,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:14227,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:14230,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:14235,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14239,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14243,1
    - Dst: get_prop_string
      Src: /src/gpac/src/quickjs/quickjs.c:14244,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14244,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14246,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14248,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:14249,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14251,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14259,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14260,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:14262,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:14263,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:14264,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14267,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14269,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14270,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:14277,1
    - Dst: js_print_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:14279,1
    - Dst: get_date_string
      Src: /src/gpac/src/quickjs/quickjs.c:14283,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14283,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14284,1
    - Dst: js_print_raw_string
      Src: /src/gpac/src/quickjs/quickjs.c:14286,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:14287,1
    - Dst: js_print_error
      Src: /src/gpac/src/quickjs/quickjs.c:14290,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14295,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14296,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14298,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:14306,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:14314,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14315,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14316,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14321,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14325,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14327,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14329,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14334,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14336,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14340,1
    - Dst: js_autoinit_get_realm
      Src: /src/gpac/src/quickjs/quickjs.c:14341,1
    - Dst: js_autoinit_get_id
      Src: /src/gpac/src/quickjs/quickjs.c:14342,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14347,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14350,1
    - Dst: js_print_more_items
      Src: /src/gpac/src/quickjs/quickjs.c:14357,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:14359,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:14365,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14366,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14369,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14370,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14372,1
    - Dst: js_print_comma
      Src: /src/gpac/src/quickjs/quickjs.c:14375,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14376,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14377,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14377,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14383,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14386,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 213
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - JSPrintValueState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14388
      start: 14149
    functionDepth: 3
    functionLinenumber: 14149
    functionLinenumberEnd: 14388
    functionName: js_print_object
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_print_float64
    - fromfp16
    - js_autoinit_get_id
    - js_putc
    - js_print_more_items
    - get_shape_prop
    - typed_array_size_log2
    - js_print_raw_string
    - js_autoinit_get_realm
    - get_date_string
    - JS_IsException
    - js_print_atom
    - js_printf
    - get_prop_string
    - JS_MKPTR
    - list_entry
    - js_print_array_get_length
    - JS_FreeCString
    - js_puts
    - min_uint32
    - js_print_regexp
    - js_print_value
    - js_print_error
    - js_class_has_bytecode
    - list_for_each
    - JS_FreeValueRT
    - js_print_comma
    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: 14397
      start: 14390
    functionDepth: 0
    functionLinenumber: 14390
    functionLinenumberEnd: 14397
    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:14401,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14406,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14406,1
    - Dst: JS_VALUE_GET_BOOL
      Src: /src/gpac/src/quickjs/quickjs.c:14409,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14426,1
    - Dst: js_print_float64
      Src: /src/gpac/src/quickjs/quickjs.c:14429,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14429,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14432,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14432,1
    - Dst: js_bigint_to_string
      Src: /src/gpac/src/quickjs/quickjs.c:14436,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14437,1
    - Dst: js_print_raw_string
      Src: /src/gpac/src/quickjs/quickjs.c:14439,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14440,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:14441,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14446,1
    - Dst: js_bigint_sign
      Src: /src/gpac/src/quickjs/quickjs.c:14448,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14450,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14451,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14454,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14456,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14458,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14461,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14463,1
    - Dst: JS_VALUE_GET_STRING_ROPE
      Src: /src/gpac/src/quickjs/quickjs.c:14469,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14470,1
    - Dst: js_print_string
      Src: /src/gpac/src/quickjs/quickjs.c:14472,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14477,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14478,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14479,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14480,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:14485,1
    - Dst: js_print_stack_index
      Src: /src/gpac/src/quickjs/quickjs.c:14487,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14489,1
    - Dst: js_print_object
      Src: /src/gpac/src/quickjs/quickjs.c:14492,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:14492,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14496,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14497,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14499,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14501,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14507,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14508,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14509,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:14509,1
    - Dst: js_putc
      Src: /src/gpac/src/quickjs/quickjs.c:14510,1
    - Dst: js_puts
      Src: /src/gpac/src/quickjs/quickjs.c:14514,1
    - Dst: js_printf
      Src: /src/gpac/src/quickjs/quickjs.c:14517,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 108
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSPrintValueState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14520
      start: 14399
    functionDepth: 19
    functionLinenumber: 14399
    functionLinenumberEnd: 14520
    functionName: js_print_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_print_float64
    - js_get_atom_index
    - js_putc
    - JS_VALUE_GET_NORM_TAG
    - js_print_stack_index
    - js_bigint_sign
    - js_print_raw_string
    - JS_VALUE_GET_BOOL
    - JS_IsException
    - JS_VALUE_GET_INT
    - js_print_string
    - js_print_atom
    - js_printf
    - JS_VALUE_GET_SHORT_BIG_INT
    - js_print_object
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_OBJ
    - js_puts
    - js_bigint_to_string
    - JS_VALUE_GET_STRING_ROPE
    - JS_FreeValueRT
    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:14524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - options
    argTypes:
    - JSPrintValueOptions*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14528
      start: 14522
    functionDepth: 0
    functionLinenumber: 14522
    functionLinenumberEnd: 14528
    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:14538,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:14542,1
    - Dst: js_print_value
      Src: /src/gpac/src/quickjs/quickjs.c:14552,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: 14553
      start: 14530
    functionDepth: 20
    functionLinenumber: 14530
    functionLinenumberEnd: 14553
    functionName: JS_PrintValueInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_PrintValueSetDefaultOptions
    - js_print_value
    - 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:14558,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: 14559
      start: 14555
    functionDepth: 21
    functionLinenumber: 14555
    functionLinenumberEnd: 14559
    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:14564,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: 14565
      start: 14561
    functionDepth: 21
    functionLinenumber: 14561
    functionLinenumberEnd: 14565
    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:14570,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - opaque
    - buf
    - len
    argTypes:
    - void*
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14571
      start: 14567
    functionDepth: 0
    functionLinenumber: 14567
    functionLinenumberEnd: 14571
    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:14576,1
    - Dst: js_print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - atom
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14582
      start: 14573
    functionDepth: 3
    functionLinenumber: 14573
    functionLinenumberEnd: 14582
    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:14586,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:14587,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - str
    - atom
    argTypes:
    - JSContext*
    - char*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14589
      start: 14584
    functionDepth: 4
    functionLinenumber: 14584
    functionLinenumberEnd: 14589
    functionName: JS_DumpAtom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - print_atom
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpAtom(JSContext *ctx, const char *str, JSAtom
      atom)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14593,1
    - Dst: JS_PrintValue
      Src: /src/gpac/src/quickjs/quickjs.c:14594,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - str
    - val
    argTypes:
    - JSContext*
    - char*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14596
      start: 14591
    functionDepth: 22
    functionLinenumber: 14591
    functionLinenumberEnd: 14596
    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:14600,1
    - Dst: JS_PrintValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:14601,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - str
    - val
    argTypes:
    - JSRuntime*
    - char*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14603
      start: 14598
    functionDepth: 22
    functionLinenumber: 14598
    functionLinenumberEnd: 14603
    functionName: JS_DumpValueRT
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_PrintValueRT
    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:14607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rt
    argTypes:
    - JSRuntime*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14609
      start: 14605
    functionDepth: 0
    functionLinenumber: 14605
    functionLinenumberEnd: 14609
    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:14619,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:14621,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14623,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:14624,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14628,1
    - Dst: JS_PrintValueSetDefaultOptions
      Src: /src/gpac/src/quickjs/quickjs.c:14631,1
    - Dst: JS_PrintValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:14635,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14635,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14638
      start: 14612
    functionDepth: 22
    functionLinenumber: 14612
    functionLinenumberEnd: 14638
    functionName: JS_DumpObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_PrintValueSetDefaultOptions
    - JS_MKPTR
    - printf
    - JS_PrintValueRT
    - js_rc
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused JS_DumpObject(JSRuntime *rt, JSObject *p)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:14642,1
    - Dst: JS_DumpObject
      Src: /src/gpac/src/quickjs/quickjs.c:14643,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14645,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:14647,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:14648,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14650,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14653,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14656,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14659,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14662,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14665,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14668,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:14668,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:14671,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 2
    argNames:
    - rt
    - p
    argTypes:
    - JSRuntime*
    - JSGCObjectHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14673
      start: 14640
    functionDepth: 23
    functionLinenumber: 14640
    functionLinenumberEnd: 14673
    functionName: JS_DumpGCObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_rc
    - 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:14679,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14681,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:14682,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14687
      start: 14677
    functionDepth: 1
    functionLinenumber: 14677
    functionLinenumberEnd: 14687
    functionName: JS_IsArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 16
    functionsReached:
    - js_resolve_proxy
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: int
    signature: int JS_IsArray(JSContext *ctx, JSValueConst val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:14691,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:14691,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:14691,1
    - Dst: pow
      Src: /src/gpac/src/quickjs/quickjs.c:14695,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14697
      start: 14689
    functionDepth: 1
    functionLinenumber: 14689
    functionLinenumberEnd: 14697
    functionName: js_pow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - fabs
    - isfinite
    - unlikely
    - pow
    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:14702,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14705,1
    - Dst: js_bigint_new_si64
      Src: /src/gpac/src/quickjs/quickjs.c:14708,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14711,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14714
      start: 14699
    functionDepth: 17
    functionLinenumber: 14699
    functionLinenumberEnd: 14714
    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:14719,1
    - Dst: js_bigint_new_ui64
      Src: /src/gpac/src/quickjs/quickjs.c:14722,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:14725,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - v
    argTypes:
    - JSContext*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14727
      start: 14716
    functionDepth: 18
    functionLinenumber: 14716
    functionLinenumberEnd: 14727
    functionName: JS_NewBigUint64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_bigint_new_ui64
    - __JS_NewShortBigInt
    - JS_MKPTR
    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:14736,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14737,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:14741,1
    - Dst: JS_NewBigInt64
      Src: /src/gpac/src/quickjs/quickjs.c:14743,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:14746,1
    - Dst: skip_spaces
      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:14750,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:14755,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14757
      start: 14730
    functionDepth: 19
    functionLinenumber: 14730
    functionLinenumberEnd: 14757
    functionName: JS_StringToBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - skip_spaces
    - JS_FreeValue
    - js_atof
    - JS_FreeCString
    - JS_IsException
    - JS_NewBigInt64
    - JS_ToCStringLen
    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:14761,1
    - Dst: JS_VALUE_IS_NAN
      Src: /src/gpac/src/quickjs/quickjs.c:14762,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:14763,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14765
      start: 14759
    functionDepth: 20
    functionLinenumber: 14759
    functionLinenumberEnd: 14765
    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:14773,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14784,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14784,1
    - Dst: JS_StringToBigIntErr
      Src: /src/gpac/src/quickjs/quickjs.c:14788,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14789,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:14793,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14794,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14799,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:14800,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 37
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14803
      start: 14768
    functionDepth: 21
    functionLinenumber: 14768
    functionLinenumberEnd: 14803
    functionName: JS_ToBigIntFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_FreeValue
    - JS_ToPrimitiveFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    - __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:14807,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:14807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14808
      start: 14805
    functionDepth: 22
    functionLinenumber: 14805
    functionLinenumberEnd: 14808
    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:14815,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14816,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14820,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14821,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14823,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14830,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14834
      start: 14811
    functionDepth: 22
    functionLinenumber: 14811
    functionLinenumberEnd: 14834
    functionName: JS_ToBigInt64Free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_ToBigIntFree
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_VALUE_GET_SHORT_BIG_INT
    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:14838,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:14838,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - pres
    - val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14839
      start: 14836
    functionDepth: 23
    functionLinenumber: 14836
    functionLinenumberEnd: 14839
    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:14854,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14854,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:14856,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14857,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:14859,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14864,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14875,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14882,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:14884,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14890,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:14893,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14898,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14903,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:14906,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:14909,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14912,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14915,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:14922,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:14926,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14927,1
    - Dst: js_bigint_set_si
      Src: /src/gpac/src/quickjs/quickjs.c:14934,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:14935,1
    - Dst: js_bigint_neg
      Src: /src/gpac/src/quickjs/quickjs.c:14939,1
    - Dst: js_bigint_not
      Src: /src/gpac/src/quickjs/quickjs.c:14942,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14945,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:14947,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:14950,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:14957,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:14970,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:14972,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 129
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14980
      start: 14842
    functionDepth: 21
    functionLinenumber: 14842
    functionLinenumberEnd: 14980
    functionName: js_unary_arith_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - js_bigint_neg
    - js_bigint_set_short
    - js_bigint_add
    - __JS_NewFloat64
    - __JS_NewShortBigInt
    - JS_ThrowTypeError
    - js_bigint_set_si
    - JS_FreeValue
    - JS_IsException
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - JS_VALUE_GET_PTR
    - abort
    - JS_ToNumericFree
    - JS_CompactBigInt
    - JS_VALUE_GET_TAG
    - js_bigint_not
    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:14989,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:14990,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:14995,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:14996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14997
      start: 14982
    functionDepth: 22
    functionLinenumber: 14982
    functionLinenumberEnd: 14997
    functionName: js_post_inc_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_unary_arith_slow
    - JS_ToNumericFree
    - JS_DupValue
    - JS_IsException
    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:15004,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15005,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15007,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15008,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15008,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15009,1
    - Dst: js_bigint_not
      Src: /src/gpac/src/quickjs/quickjs.c:15011,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15011,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15012,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15015,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15018,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:15018,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15020,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15026
      start: 14999
    functionDepth: 22
    functionLinenumber: 14999
    functionLinenumberEnd: 15026
    functionName: js_not_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - unlikely
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ToInt32Free
    - js_bigint_not
    - JS_CompactBigInt
    - JS_IsException
    - JS_NewInt32
    - JS_ToNumericFree
    - __JS_NewShortBigInt
    - JS_VALUE_GET_SHORT_BIG_INT
    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:15037,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15038,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15041,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15042,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15049,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15050,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15064,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15072,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15077,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:15079,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15080,1
    - Dst: js_bigint_new_di
      Src: /src/gpac/src/quickjs/quickjs.c:15082,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:15085,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15089,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15090,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15091,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15094,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15095,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15096,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15099,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15100,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15105,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15106,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:15114,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:15119,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:15123,1
    - Dst: fmod
      Src: /src/gpac/src/quickjs/quickjs.c:15123,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:15130,1
    - Dst: js_pow
      Src: /src/gpac/src/quickjs/quickjs.c:15130,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15133,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:15135,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15142,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15143,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15145,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15146,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15147,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15149,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:15152,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:15155,1
    - Dst: js_bigint_mul
      Src: /src/gpac/src/quickjs/quickjs.c:15158,1
    - Dst: js_bigint_divrem
      Src: /src/gpac/src/quickjs/quickjs.c:15161,1
    - Dst: js_bigint_divrem
      Src: /src/gpac/src/quickjs/quickjs.c:15164,1
    - Dst: js_bigint_pow
      Src: /src/gpac/src/quickjs/quickjs.c:15167,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15170,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15172,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15173,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15176,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:15180,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15181,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:15184,1
    - Dst: fmod
      Src: /src/gpac/src/quickjs/quickjs.c:15198,1
    - Dst: js_pow
      Src: /src/gpac/src/quickjs/quickjs.c:15201,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15204,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:15206,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 173
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15213
      start: 15028
    functionDepth: 23
    functionLinenumber: 15028
    functionLinenumberEnd: 15213
    functionName: js_binary_arith_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_NewFloat64
    - fmod
    - js_bigint_set_short
    - js_bigint_add
    - JS_VALUE_GET_NORM_TAG
    - __JS_NewFloat64
    - __JS_NewShortBigInt
    - js_bigint_mul
    - JS_FreeValue
    - js_bigint_pow
    - JS_IsException
    - js_pow
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_FLOAT64
    - JS_MKPTR
    - likely
    - JS_VALUE_GET_PTR
    - abort
    - js_bigint_new_di
    - JS_ToNumericFree
    - JS_CompactBigInt
    - js_bigint_divrem
    - JS_VALUE_GET_TAG
    - JS_ToFloat64Free
    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: 15218
      start: 15215
    functionDepth: 0
    functionLinenumber: 15215
    functionLinenumberEnd: 15218
    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:15228,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15229,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15233,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15234,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:15235,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15242,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15243,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:15245,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15246,1
    - Dst: js_bigint_new_di
      Src: /src/gpac/src/quickjs/quickjs.c:15248,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:15251,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15257,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15258,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15259,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15263,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15264,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15265,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15268,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15269,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15272,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15272,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:15273,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15274,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15279,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15280,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15281,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15284,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15285,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15286,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15289,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15290,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15295,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15296,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:15298,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15304,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15305,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15307,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15308,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15309,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15311,1
    - Dst: js_bigint_add
      Src: /src/gpac/src/quickjs/quickjs.c:15312,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15313,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15314,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15317,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:15321,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15322,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:15325,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:15327,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 99
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15334
      start: 15220
    functionDepth: 23
    functionLinenumber: 15220
    functionLinenumberEnd: 15334
    functionName: js_add_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - js_bigint_set_short
    - js_bigint_add
    - JS_VALUE_GET_NORM_TAG
    - __JS_NewFloat64
    - __JS_NewShortBigInt
    - JS_FreeValue
    - JS_ConcatString
    - JS_ToPrimitiveFree
    - JS_IsException
    - JS_VALUE_GET_INT
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_VALUE_GET_FLOAT64
    - JS_MKPTR
    - likely
    - JS_VALUE_GET_PTR
    - js_bigint_new_di
    - JS_ToNumericFree
    - JS_CompactBigInt
    - tag_is_string
    - JS_VALUE_GET_TAG
    - JS_ToFloat64Free
    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:15346,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15347,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15352,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15353,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:15388,1
    - Dst: js_bigint_new_di
      Src: /src/gpac/src/quickjs/quickjs.c:15392,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:15395,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15400,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15402,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15405,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15406,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15407,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15410,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15411,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15412,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15416,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15417,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15423,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15424,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15426,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15427,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15428,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15430,1
    - Dst: js_bigint_logic
      Src: /src/gpac/src/quickjs/quickjs.c:15435,1
    - Dst: js_bigint_get_si_sat
      Src: /src/gpac/src/quickjs/quickjs.c:15441,1
    - Dst: js_bigint_shl
      Src: /src/gpac/src/quickjs/quickjs.c:15449,1
    - Dst: js_bigint_shr
      Src: /src/gpac/src/quickjs/quickjs.c:15451,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15455,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15457,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15458,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15461,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15463,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:15463,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15464,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15467,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:15467,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15486,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15488,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 155
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15495
      start: 15336
    functionDepth: 22
    functionLinenumber: 15336
    functionLinenumberEnd: 15495
    functionName: js_binary_logic_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_bigint_logic
    - js_bigint_get_si_sat
    - js_bigint_set_short
    - JS_ToInt32Free
    - JS_VALUE_GET_NORM_TAG
    - js_bigint_shr
    - __JS_NewShortBigInt
    - js_bigint_shl
    - JS_FreeValue
    - JS_IsException
    - JS_VALUE_GET_SHORT_BIG_INT
    - JS_MKPTR
    - likely
    - JS_VALUE_GET_PTR
    - unlikely
    - abort
    - js_bigint_new_di
    - JS_NewInt32
    - JS_ToNumericFree
    - JS_CompactBigInt
    - JS_VALUE_GET_TAG
    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:15503,1
    - Dst: js_bigint_set_si
      Src: /src/gpac/src/quickjs/quickjs.c:15505,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15505,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15508,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15511,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15514,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 3
    argNames:
    - ctx
    - buf1
    - op1
    argTypes:
    - JSContext*
    - JSBigIntBuf*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15517
      start: 15498
    functionDepth: 2
    functionLinenumber: 15498
    functionLinenumberEnd: 15517
    functionName: JS_ToBigIntBuf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - js_bigint_set_si
    - abort
    - js_bigint_set_short
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    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:15528,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15529,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15535,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15537,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15539,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15541,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15545,1
    - Dst: js_bigint_float64_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:15546,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15546,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15551,1
    - Dst: js_bigint_float64_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:15552,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15552,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15555,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15556,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15560,1
    - Dst: JS_ToBigIntBuf
      Src: /src/gpac/src/quickjs/quickjs.c:15561,1
    - Dst: js_bigint_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:15562,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15564,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15565,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:15585,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 4
    argNames:
    - ctx
    - op
    - op1
    - op2
    argTypes:
    - JSContext*
    - OPCodeEnum
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15588
      start: 15521
    functionDepth: 3
    functionLinenumber: 15521
    functionLinenumberEnd: 15588
    functionName: js_compare_bigint
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_ToBigIntBuf
    - JS_FreeValue
    - abort
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_INT
    - js_bigint_cmp
    - js_bigint_float64_cmp
    - JS_VALUE_GET_SHORT_BIG_INT
    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:15599,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15600,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15601,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15602,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15603,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15606,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15607,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15608,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15611,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15612,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15614,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15614,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:15616,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15616,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15617,1
    - Dst: js_string_rope_compare
      Src: /src/gpac/src/quickjs/quickjs.c:15619,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15636,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15637,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15644,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15646,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15647,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15648,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15649,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15650,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15653,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15654,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15655,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15656,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15658,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15659,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15665,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15666,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15667,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15670,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15671,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15672,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15677,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15678,1
    - Dst: js_compare_bigint
      Src: /src/gpac/src/quickjs/quickjs.c:15682,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15689,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15691,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15694,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15696,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15716,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 123
    argCount: 3
    argNames:
    - ctx
    - sp
    - op
    argTypes:
    - JSContext*
    - JSValue*
    - OPCodeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15722
      start: 15590
    functionDepth: 21
    functionLinenumber: 15590
    functionLinenumberEnd: 15722
    functionName: js_relational_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_VALUE_GET_FLOAT64
    - js_compare_bigint
    - js_string_compare
    - JS_VALUE_GET_STRING
    - JS_StringToBigInt
    - tag_is_string
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_string_rope_compare
    - JS_ToPrimitiveFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_VALUE_GET_INT
    - JS_ToNumericFree
    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: 15729
      start: 15724
    functionDepth: 0
    functionLinenumber: 15724
    functionLinenumberEnd: 15729
    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:15741,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15742,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15743,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15743,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15745,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15745,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15752,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15754,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15757,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15759,1
    - Dst: js_compare_bigint
      Src: /src/gpac/src/quickjs/quickjs.c:15763,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15766,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15767,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15768,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15772,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15772,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15774,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15775,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15776,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15777,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15777,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15778,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15778,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15782,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15783,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15784,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15785,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15788,1
    - Dst: JS_StringToBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:15789,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15790,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15791,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15793,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15794,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15800,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15801,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15802,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15805,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15806,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15807,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:15811,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15812,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15813,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15815,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15815,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:15818,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15818,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15821,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15821,1
    - Dst: tag_is_number
      Src: /src/gpac/src/quickjs/quickjs.c:15823,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15823,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15824,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15825,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15826,1
    - Dst: JS_ToPrimitiveFree
      Src: /src/gpac/src/quickjs/quickjs.c:15829,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15830,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15831,1
    - Dst: JS_IsHTMLDDA
      Src: /src/gpac/src/quickjs/quickjs.c:15837,1
    - Dst: JS_IsHTMLDDA
      Src: /src/gpac/src/quickjs/quickjs.c:15839,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15845,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15846,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:15849,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 121
    argCount: 3
    argNames:
    - ctx
    - sp
    - is_neq
    argTypes:
    - JSContext*
    - JSValue*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15855
      start: 15731
    functionDepth: 21
    functionLinenumber: 15731
    functionLinenumberEnd: 15855
    functionName: js_eq_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_VALUE_GET_FLOAT64
    - js_compare_bigint
    - JS_StringToBigInt
    - tag_is_number
    - tag_is_string
    - JS_FreeValue
    - js_strict_eq2
    - JS_VALUE_GET_TAG
    - JS_ToPrimitiveFree
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - JS_ToNumericFree
    - JS_IsHTMLDDA
    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:15864,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15865,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15866,1
    - Dst: JS_ToNumericFree
      Src: /src/gpac/src/quickjs/quickjs.c:15869,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:15870,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15871,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15874,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15875,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15876,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15877,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:15878,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15879,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:15880,1
    - Dst: JS_ToUint32Free
      Src: /src/gpac/src/quickjs/quickjs.c:15884,1
    - Dst: JS_ToUint32Free
      Src: /src/gpac/src/quickjs/quickjs.c:15885,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:15887,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15893
      start: 15857
    functionDepth: 23
    functionLinenumber: 15857
    functionLinenumberEnd: 15893
    functionName: js_shr_slow
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_ToUint32Free
    - JS_NewUint32
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_IsException
    - JS_ToNumericFree
    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:15902,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15903,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15909,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15909,1
    - Dst: tag_is_string
      Src: /src/gpac/src/quickjs/quickjs.c:15919,1
    - Dst: js_string_eq
      Src: /src/gpac/src/quickjs/quickjs.c:15922,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15922,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:15923,1
    - Dst: js_string_rope_compare
      Src: /src/gpac/src/quickjs/quickjs.c:15925,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15935,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:15936,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15945,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:15945,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15948,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15950,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15953,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15960,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:15962,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:15964,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:15970,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15973,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15973,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15974,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:15974,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:15998,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:15999,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:16001,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16002,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:16003,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:16005,1
    - Dst: js_bigint_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:16006,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 105
    argCount: 4
    argNames:
    - ctx
    - op1
    - op2
    - eq_mode
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSStrictEqModeEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16014
      start: 15895
    functionDepth: 3
    functionLinenumber: 15895
    functionLinenumberEnd: 16014
    functionName: js_strict_eq2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - isnan
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_PTR
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - unlikely
    - tag_is_string
    - JS_VALUE_GET_TAG
    - js_bigint_set_short
    - js_string_rope_compare
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_INT
    - js_string_eq
    - js_bigint_cmp
    linkageType: ''
    returnType: BOOL
    signature: "BOOL js_strict_eq2(JSContext *ctx, JSValueConst op1, JSValueConst
      op2,\n                          JSStrictEqModeEnum eq_mode)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:16018,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16019
      start: 16016
    functionDepth: 4
    functionLinenumber: 16016
    functionLinenumberEnd: 16019
    functionName: js_strict_eq
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - 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:16023,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16024
      start: 16021
    functionDepth: 5
    functionLinenumber: 16021
    functionLinenumberEnd: 16024
    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:16028,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16029
      start: 16026
    functionDepth: 4
    functionLinenumber: 16026
    functionLinenumberEnd: 16029
    functionName: js_same_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - 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:16033,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16034
      start: 16031
    functionDepth: 5
    functionLinenumber: 16031
    functionLinenumberEnd: 16034
    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:16038,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16039
      start: 16036
    functionDepth: 4
    functionLinenumber: 16036
    functionLinenumberEnd: 16039
    functionName: js_same_value_zero
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - 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:16043,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - op1
    - op2
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16044
      start: 16041
    functionDepth: 5
    functionLinenumber: 16041
    functionLinenumberEnd: 16044
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:16055,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16056,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:16059,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16060,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16062,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:16063,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16066,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16067,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16068,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16070
      start: 16046
    functionDepth: 17
    functionLinenumber: 16046
    functionLinenumberEnd: 16070
    functionName: js_operator_in
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - JS_NewBool
    - JS_ThrowTypeError
    - unlikely
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_FreeAtom
    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:16080,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16081,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16084,1
    - Dst: JS_CheckBrand
      Src: /src/gpac/src/quickjs/quickjs.c:16086,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:16095,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16096,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16098,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:16099,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:16100,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16103,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16104,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16105,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16107
      start: 16072
    functionDepth: 16
    functionLinenumber: 16072
    functionLinenumberEnd: 16107
    functionName: js_operator_private_in
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ThrowTypeError
    - find_own_property
    - JS_CheckBrand
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_IsObject
    - JS_FreeAtom
    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:16115,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16116,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16119,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16120,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:16121,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16123,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16125
      start: 16109
    functionDepth: 2
    functionLinenumber: 16109
    functionLinenumberEnd: 16125
    functionName: js_has_unscopable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsException
    - JS_IsObject
    - JS_ToBoolFree
    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:16134,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16137,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16138,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16139,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16141
      start: 16127
    functionDepth: 19
    functionLinenumber: 16127
    functionLinenumberEnd: 16141
    functionName: js_operator_instanceof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_FreeValue
    - 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:16148,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16171,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16172,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:16174,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 2
    argNames:
    - ctx
    - op1
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16192
      start: 16143
    functionDepth: 2
    functionLinenumber: 16143
    functionLinenumberEnd: 16192
    functionName: js_operator_typeof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsFunction
    - JS_VALUE_GET_NORM_TAG
    - unlikely
    - JS_VALUE_GET_OBJ
    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:16202,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16203,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16205,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:16206,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:16207,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16209,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16210,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16211,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16213
      start: 16194
    functionDepth: 15
    functionLinenumber: 16194
    functionLinenumberEnd: 16213
    functionName: js_operator_delete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_DeleteProperty
    - JS_FreeAtom
    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:16221,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16223,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: 16226
      start: 16218
    functionDepth: 14
    functionLinenumber: 16218
    functionLinenumberEnd: 16226
    functionName: js_throw_type_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_GetFunctionBytecode
    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:16231,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:16233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16236
      start: 16228
    functionDepth: 3
    functionLinenumber: 16228
    functionLinenumberEnd: 16236
    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:16241,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:16244,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16246,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16248,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - this_val
    - is_col
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16251
      start: 16238
    functionDepth: 4
    functionLinenumber: 16238
    functionLinenumberEnd: 16251
    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:16260,1
    - Dst: JS_AtomIsArrayIndex
      Src: /src/gpac/src/quickjs/quickjs.c:16262,1
    - Dst: convert_fast_array_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:16264,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16268,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: 16270
      start: 16253
    functionDepth: 19
    functionLinenumber: 16253
    functionLinenumberEnd: 16270
    functionName: js_arguments_define_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomIsArrayIndex
    - convert_fast_array_to_array
    - JS_DefineProperty
    - JS_VALUE_GET_OBJ
    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: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16283,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16284,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16285,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16285,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16286,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16286,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:16288,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:16288,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16290,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16292,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:16297,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16301,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16308,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16310
      start: 16276
    functionDepth: 10
    functionLinenumber: 16276
    functionLinenumberEnd: 16310
    functionName: js_build_arguments
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_DupValue
    - js_dup_shape
    - JS_NewInt32
    - JS_IsException
    - JS_NewObjectFromShape
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_build_arguments(JSContext *ctx, int argc, JSValueConst *argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16317,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:16321,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:16322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16323
      start: 16315
    functionDepth: 5
    functionLinenumber: 16315
    functionLinenumberEnd: 16323
    functionName: js_mapped_arguments_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_var_ref
    - js_free_rt
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: void js_mapped_arguments_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16328,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:16333,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16334
      start: 16325
    functionDepth: 1
    functionLinenumber: 16325
    functionLinenumberEnd: 16334
    functionName: js_mapped_arguments_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mark_func
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: "void js_mapped_arguments_mark(JSRuntime *rt, JSValueConst val,\n                                     JS_MarkFunc
      *mark_func)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16347,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16348,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16349,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:16351,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:16351,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16353,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16355,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:16360,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:16364,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:16370,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:16374,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:16375,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16378,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16386,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 43
    argCount: 5
    argNames:
    - ctx
    - argc
    - argv
    - sf
    - arg_count
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    - JSStackFrame*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16388
      start: 16337
    functionDepth: 10
    functionLinenumber: 16337
    functionLinenumberEnd: 16388
    functionName: js_build_mapped_arguments
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_var_ref
    - js_malloc
    - JS_VALUE_GET_OBJ
    - free_var_ref
    - JS_FreeValue
    - JS_NewInt32
    - js_free
    - JS_DupValue
    - JS_IsException
    - js_dup_shape
    - js_create_var_ref
    - JS_NewObjectFromShape
    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:16399,1
    - Dst: JS_ToObjectFree
      Src: /src/gpac/src/quickjs/quickjs.c:16401,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:16404,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16406,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:16409,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16410,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:16411,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16412,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16421,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16427,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:16433,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16442,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16444,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16451
      start: 16390
    functionDepth: 11
    functionLinenumber: 16390
    functionLinenumberEnd: 16451
    functionName: build_for_in_iterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - JS_VALUE_GET_OBJ
    - JS_GetOwnPropertyNamesInternal
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_free
    - JS_IsException
    - get_shape_prop
    - JS_NewObjectProtoClass
    - JS_ToObjectFree
    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:16456,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16457,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16460
      start: 16454
    functionDepth: 12
    functionLinenumber: 16454
    functionLinenumberEnd: 16460
    functionName: js_for_in_start
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - build_for_in_iterator
    - JS_IsException
    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:16472,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16476,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:16478,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16479,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16481,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16483,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16484,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16486,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:16489,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16491,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:16495,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16496,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16500,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16506,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16507,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16517,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 2
    argNames:
    - ctx
    - enum_obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16523
      start: 16463
    functionDepth: 20
    functionLinenumber: 16463
    functionLinenumberEnd: 16523
    functionName: js_for_in_prepare_prototype_chain_enum
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - JS_GetOwnPropertyNamesInternal
    - JS_FreeValue
    - JS_IsNull
    - JS_DupValue
    - JS_IsException
    - JS_FreePropertyEnum
    - JS_GetPrototypeFree
    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:16538,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16540,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16547,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16547,1
    - Dst: js_for_in_prepare_prototype_chain_enum
      Src: /src/gpac/src/quickjs/quickjs.c:16551,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:16558,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16559,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16561,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:16565,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16568,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16569,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:16573,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:16579,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16588,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16588,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16594,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:16602,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16602,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:16610,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 74
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16618
      start: 16526
    functionDepth: 21
    functionLinenumber: 16526
    functionLinenumberEnd: 16618
    functionName: js_for_in_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - js_for_in_prepare_prototype_chain_enum
    - JS_GetOwnPropertyNamesInternal
    - JS_AtomToValue
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_FreePropertyEnum
    - JS_GetPrototypeFree
    - __JS_AtomFromUInt32
    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:16625,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16626,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16628,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16629,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:16630,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - obj
    - method
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16633
      start: 16620
    functionDepth: 15
    functionLinenumber: 16620
    functionLinenumberEnd: 16633
    functionName: JS_GetIterator2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_Call
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    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:16640,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16641,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16643,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16643,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16644,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16645,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:16647,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16648,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16649,1
    - Dst: JS_CreateAsyncFromSyncIterator
      Src: /src/gpac/src/quickjs/quickjs.c:16651,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16652,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16656,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16657,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:16660,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16661,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16662,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:16664,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16665,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - obj
    - is_async
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16667
      start: 16635
    functionDepth: 16
    functionLinenumber: 16635
    functionLinenumberEnd: 16667
    functionName: JS_GetIterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_CreateAsyncFromSyncIterator
    - JS_GetProperty
    - JS_GetIterator2
    - JS_FreeValue
    - JS_IsFunction
    - JS_IsNull
    - JS_IsException
    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:16678,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16679,1
    - Dst: JSCFunctionType::iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:16691,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:16695,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16696,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16698,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16699,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16700,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: 16708
      start: 16670
    functionDepth: 14
    functionLinenumber: 16670
    functionLinenumberEnd: 16708
    functionName: JS_IteratorNext2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_Call
    - JS_IsException
    - JS_IsObject
    - JSCFunctionType::iterator_next
    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:16718,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16719,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:16721,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16725,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16729,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16730,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:16732,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16735,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16737,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16741,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: 16744
      start: 16711
    functionDepth: 15
    functionLinenumber: 16711
    functionLinenumberEnd: 16744
    functionName: JS_IteratorNext
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBoolFree
    - likely
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsException
    - JS_IteratorNext2
    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:16761,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16762,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16766,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:16766,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:16769,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16771,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:16773,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:16774,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16778,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:16781,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: 16784
      start: 16747
    functionDepth: 15
    functionLinenumber: 16747
    functionLinenumberEnd: 16784
    functionName: JS_IteratorClose
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsNull
    - JS_IsException
    - JS_IsObject
    - JS_Throw
    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:16792,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16793,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16795,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16797,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16798,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - sp
    - is_async
    argTypes:
    - JSContext*
    - JSValue*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16802
      start: 16787
    functionDepth: 17
    functionLinenumber: 16787
    functionLinenumberEnd: 16802
    functionName: js_for_of_start
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_GetProperty
    - JS_FreeValue
    - 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:16813,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:16813,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:16814,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16815,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16820,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16825,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16831,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - sp
    - offset
    argTypes:
    - JSContext*
    - JSValue*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16833
      start: 16808
    functionDepth: 16
    functionLinenumber: 16808
    functionLinenumberEnd: 16833
    functionName: js_for_of_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - likely
    - JS_IsUndefined
    - JS_FreeValue
    - JS_IteratorNext
    - JS_IsException
    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:16843,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16844,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16848
      start: 16835
    functionDepth: 1
    functionLinenumber: 16835
    functionLinenumberEnd: 16848
    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:16855,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16856,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:16858,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16859,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16860,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - obj
    - pdone
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16867
      start: 16850
    functionDepth: 2
    functionLinenumber: 16850
    functionLinenumberEnd: 16867
    functionName: JS_IteratorGetCompleteValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetProperty
    - JS_ToBoolFree
    - JS_IsException
    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:16874,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:16875,1
    - Dst: JS_IteratorGetCompleteValue
      Src: /src/gpac/src/quickjs/quickjs.c:16878,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16879,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16881,1
    - Dst: JS_NewCatchOffset
      Src: /src/gpac/src/quickjs/quickjs.c:16884,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16886,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16888
      start: 16869
    functionDepth: 14
    functionLinenumber: 16869
    functionLinenumberEnd: 16888
    functionName: js_iterator_get_value_done
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ThrowTypeError
    - JS_NewCatchOffset
    - JS_FreeValue
    - JS_IsException
    - JS_IsObject
    - JS_IteratorGetCompleteValue
    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:16895,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16896,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16897,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16900,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:16904,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:16905,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16907,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - val
    - done
    argTypes:
    - JSContext*
    - JSValue
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16911
      start: 16890
    functionDepth: 20
    functionLinenumber: 16890
    functionLinenumberEnd: 16911
    functionName: js_create_iterator_result
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_DefinePropertyValue
    - JS_NewObject
    - JS_FreeValue
    - JS_IsException
    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:16925,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:16926,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: 16934
      start: 16921
    functionDepth: 1
    functionLinenumber: 16921
    functionLinenumberEnd: 16934
    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:16944,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:16945,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:16949,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16957,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16958,1
    - Dst: JS_IsCFunction
      Src: /src/gpac/src/quickjs/quickjs.c:16961,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16963,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:16965,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16966,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:16968,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16969,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:16970,1
    - Dst: JS_IsCFunction
      Src: /src/gpac/src/quickjs/quickjs.c:16976,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:16977,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:16979,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:16987,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:16988,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:16995,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:16996,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:17002,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17007,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17008,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17009,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:17013,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17014,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17015,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 59
    argCount: 2
    argNames:
    - ctx
    - sp
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17017
      start: 16936
    functionDepth: 22
    functionLinenumber: 16936
    functionLinenumberEnd: 17017
    functionName: js_append_enumerate
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsCFunction
    - js_get_length32
    - JS_GetProperty
    - JS_IteratorClose
    - JS_ThrowInternalError
    - JS_FreeValue
    - JS_GetIterator
    - JS_VALUE_GET_TAG
    - JS_IteratorNext
    - js_get_fast_array
    - JS_DefinePropertyValueUint32
    - JS_DupValue
    - JS_IsException
    - JS_NewInt32
    - JS_VALUE_GET_INT
    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:17034,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:17037,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17038,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17040,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17051,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17057,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:17066,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:17072,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:17076,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17077,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:17080,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:17082,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:17087,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:17090,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: 17092
      start: 17019
    functionDepth: 20
    functionLinenumber: 17019
    functionLinenumberEnd: 17092
    functionName: JS_CopyDataProperties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_DefinePropertyValue
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - JS_GetOwnPropertyNamesInternal
    - JS_VALUE_GET_TAG
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_FreePropertyEnum
    - js_free_desc
    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: 17098
      start: 17095
    functionDepth: 0
    functionLinenumber: 17095
    functionLinenumberEnd: 17098
    functionName: JS_GetActiveFunction
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSValueConst
    signature: JSValueConst JS_GetActiveFunction(JSContext *ctx)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:17103,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17106,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:17115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - is_lexical
    argTypes:
    - JSContext*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17117
      start: 17100
    functionDepth: 6
    functionLinenumber: 17100
    functionLinenumberEnd: 17117
    functionName: js_create_var_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_rc
    - add_gc_object
    - js_malloc
    linkageType: ''
    returnType: JSVarRef
    signature: JSVarRef *js_create_var_ref(JSContext *ctx, BOOL is_lexical)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17129,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17139,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17141,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17145,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17146,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:17151,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17154,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:17155,1
    - Dst: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:17163,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17172,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 35
    argCount: 4
    argNames:
    - ctx
    - sf
    - var_idx
    - is_arg
    argTypes:
    - JSContext*
    - JSStackFrame*
    - int
    - BOOL
    assertStmts:
    - condition: (vd->is_captured)
      pos:
        line_end: 17138
        line_start: 17138
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (var_ref->pvalue == pvalue)
      pos:
        line_end: 17144
        line_start: 17144
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (var_ref_idx < b->var_ref_count)
      pos:
        line_end: 17140
        line_start: 17140
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 17176
      start: 17119
    functionDepth: 6
    functionLinenumber: 17119
    functionLinenumberEnd: 17176
    functionName: get_var_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_malloc
    - JS_VALUE_GET_OBJ
    - js_rc
    - add_gc_object
    - container_of
    - assert
    linkageType: ''
    returnType: JSVarRef
    signature: "JSVarRef *get_var_ref(JSContext *ctx, JSStackFrame *sf, int var_idx,\n
      \                            BOOL is_arg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17180,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:17181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17182
      start: 17178
    functionDepth: 1
    functionLinenumber: 17178
    functionLinenumberEnd: 17182
    functionName: js_global_object_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: void js_global_object_finalizer(JSRuntime *rt, JSValue obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17187,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:17188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17189
      start: 17184
    functionDepth: 2
    functionLinenumber: 17184
    functionLinenumberEnd: 17189
    functionName: js_global_object_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: "void js_global_object_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:17194,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:17199,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17201,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17203,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17207,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:17210,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17211,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17212,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17216,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - p1
    - atom
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    assertStmts:
    - condition: ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF)
      pos:
        line_end: 17200
        line_start: 17200
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 17218
      start: 17191
    functionDepth: 10
    functionLinenumber: 17191
    functionLinenumberEnd: 17218
    functionName: js_global_object_get_uninitialized_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_rc
    - free_var_ref
    - add_property
    - js_create_var_ref
    - assert
    linkageType: ''
    returnType: JSVarRef
    signature: "JSVarRef *js_global_object_get_uninitialized_var(JSContext *ctx, JSObject
      *p1, \n                                                        JSAtom atom)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17230,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:17231,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17233,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17235,1
    - Dst: delete_property
      Src: /src/gpac/src/quickjs/quickjs.c:17236,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17240,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - p
    - atom
    - is_lexical
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - BOOL
    assertStmts:
    - condition: ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF)
      pos:
        line_end: 17232
        line_start: 17232
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 17245
      start: 17222
    functionDepth: 12
    functionLinenumber: 17222
    functionLinenumberEnd: 17245
    functionName: js_global_object_find_uninitialized_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - find_own_property
    - delete_property
    - JS_VALUE_GET_OBJ
    - js_rc
    - js_create_var_ref
    - assert
    linkageType: ''
    returnType: JSVarRef
    signature: "JSVarRef *js_global_object_find_uninitialized_var(JSContext *ctx,
      JSObject *p,\n                                                         JSAtom
      atom, BOOL is_lexical)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17257,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:17262,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17264,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17266,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17272,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:17273,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17276,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17286,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:17292,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17294,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:17295,1
    - Dst: js_global_object_get_uninitialized_var
      Src: /src/gpac/src/quickjs/quickjs.c:17299,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17304,1
    - Dst: free_property
      Src: /src/gpac/src/quickjs/quickjs.c:17311,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17314,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17316,1
    - Dst: js_global_object_get_uninitialized_var
      Src: /src/gpac/src/quickjs/quickjs.c:17325,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17330,1
    - Dst: js_global_object_find_uninitialized_var
      Src: /src/gpac/src/quickjs/quickjs.c:17331,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:17340,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17341,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17342,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17346,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 85
    argCount: 3
    argNames:
    - ctx
    - cv
    - is_direct_or_indirect_eval
    argTypes:
    - JSContext*
    - JSClosureVar*
    - BOOL
    assertStmts:
    - condition: ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF)
      pos:
        line_end: 17263
        line_start: 17263
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF)
      pos:
        line_end: 17315
        line_start: 17315
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 17348
      start: 17247
    functionDepth: 13
    functionLinenumber: 17247
    functionLinenumberEnd: 17348
    functionName: js_closure_define_global_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_property
    - JS_AutoInitProperty
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_rc
    - free_var_ref
    - js_global_object_get_uninitialized_var
    - add_property
    - js_global_object_find_uninitialized_var
    - js_create_var_ref
    - assert
    linkageType: ''
    returnType: JSVarRef
    signature: "JSVarRef *js_closure_define_global_var(JSContext *ctx, JSClosureVar
      *cv,\n                                              BOOL is_direct_or_indirect_eval)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17357,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:17358,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17360,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17362,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17365,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:17367,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17369,1
    - Dst: JS_AutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:17371,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17377,1
    - Dst: js_global_object_get_uninitialized_var
      Src: /src/gpac/src/quickjs/quickjs.c:17381,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - ctx
    - cv
    argTypes:
    - JSContext*
    - JSClosureVar*
    assertStmts:
    - condition: ((prs->flags & JS_PROP_TMASK) == JS_PROP_VARREF)
      pos:
        line_end: 17359
        line_start: 17359
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 17382
      start: 17350
    functionDepth: 11
    functionLinenumber: 17350
    functionLinenumberEnd: 17382
    functionName: js_closure_global_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AutoInitProperty
    - find_own_property
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_rc
    - js_global_object_get_uninitialized_var
    - assert
    linkageType: ''
    returnType: JSVarRef
    signature: JSVarRef *js_closure_global_var(JSContext *ctx, JSClosureVar *cv)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17394,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:17399,1
    - Dst: JS_CheckDefineGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:17414,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17427,1
    - Dst: js_closure_define_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:17430,1
    - Dst: js_closure_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:17433,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17437,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17441,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:17446,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:17449,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17459,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 63
    argCount: 7
    argNames:
    - ctx
    - func_obj
    - b
    - cur_var_refs
    - sf
    - is_eval
    - m
    argTypes:
    - JSContext*
    - JSValue
    - JSFunctionBytecode*
    - JSVarRef**
    - JSStackFrame*
    - BOOL
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17461
      start: 17384
    functionDepth: 14
    functionLinenumber: 17384
    functionLinenumberEnd: 17461
    functionName: js_closure2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_closure_global_var
    - get_var_ref
    - JS_CheckDefineGlobalVar
    - js_mallocz
    - JS_VALUE_GET_OBJ
    - js_rc
    - abort
    - JS_FreeValue
    - js_create_var_ref
    - js_closure_define_global_var
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_closure2(JSContext *ctx, JSValue func_obj,\n                           JSFunctionBytecode
      *b,\n                           JSVarRef **cur_var_refs,\n                           JSStackFrame
      *sf,\n                           BOOL is_eval, JSModuleDef *m)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:17468,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:17469,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17470,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:17472,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:17473,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:17474,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17475,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17478,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - ctx
    - p
    - atom
    - opaque
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17482
      start: 17463
    functionDepth: 20
    functionLinenumber: 17463
    functionLinenumberEnd: 17482
    functionName: js_instantiate_prototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_MKPTR
    - JS_NewObject
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - set_cycle_flag
    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:17499,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:17500,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17501,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17502,1
    - Dst: js_closure2
      Src: /src/gpac/src/quickjs/quickjs.c:17505,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17506,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:17513,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:17525,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17526,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:17528,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:17534,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:17535,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17542,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 5
    argNames:
    - ctx
    - bfunc
    - cur_var_refs
    - sf
    - is_eval
    argTypes:
    - JSContext*
    - JSValue
    - JSVarRef**
    - JSStackFrame*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17544
      start: 17491
    functionDepth: 20
    functionLinenumber: 17491
    functionLinenumberEnd: 17544
    functionName: js_closure
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_SetConstructorBit
    - JS_DefinePropertyValue
    - js_function_set_properties
    - JS_VALUE_GET_PTR
    - JS_FreeValue
    - JS_DefineAutoInitProperty
    - js_closure2
    - JS_IsException
    - JS_NewObjectProto
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_closure(JSContext *ctx, JSValue bfunc,\n                          JSVarRef
      **cur_var_refs,\n                          JSStackFrame *sf, BOOL is_eval)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:17561,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17563,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:17565,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17566,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:17569,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17570,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:17572,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:17572,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17573,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17579,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17580,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:17582,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17583,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:17586,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:17587,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:17588,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17590,1
    - Dst: js_closure2
      Src: /src/gpac/src/quickjs/quickjs.c:17592,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17594,1
    - Dst: js_method_set_home_object
      Src: /src/gpac/src/quickjs/quickjs.c:17596,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:17597,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:17599,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:17600,1
    - Dst: JS_DefineObjectNameComputed
      Src: /src/gpac/src/quickjs/quickjs.c:17604,1
    - Dst: JS_DefineObjectName
      Src: /src/gpac/src/quickjs/quickjs.c:17608,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:17614,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17615,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:17620,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17621,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:17623,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:17624,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17626,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17627,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17633,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17634,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17635,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17636,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:17637,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: 17586
        line_start: 17586
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 17641
      start: 17548
    functionDepth: 21
    functionLinenumber: 17548
    functionLinenumberEnd: 17641
    functionName: js_op_define_class
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_IsNull
    - JS_IsObject
    - JS_DefineObjectNameComputed
    - JS_NewObjectProtoClass
    - JS_ThrowTypeError
    - JS_DefineObjectName
    - JS_FreeValue
    - js_method_set_home_object
    - JS_DupValue
    - JS_IsException
    - set_cycle_flag
    - JS_IsConstructor
    - JS_VALUE_GET_PTR
    - JS_GetProperty
    - js_closure2
    - JS_NewInt32
    - JS_NewObjectProto
    - JS_SetConstructorBit
    - assert
    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: container_of
      Src: /src/gpac/src/quickjs/quickjs.c:17646,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:17647,1
    - Dst: JS_DupValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:17649,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - rt
    - sf
    - var_ref
    argTypes:
    - JSRuntime*
    - JSStackFrame*
    - JSVarRef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17653
      start: 17643
    functionDepth: 1
    functionLinenumber: 17643
    functionLinenumberEnd: 17653
    functionName: close_var_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValueRT
    - async_func_free
    - container_of
    linkageType: ''
    returnType: void
    signature: void close_var_ref(JSRuntime *rt, JSStackFrame *sf, JSVarRef *var_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17663,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - rt
    - b
    - sf
    argTypes:
    - JSRuntime*
    - JSFunctionBytecode*
    - JSStackFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17665
      start: 17655
    functionDepth: 2
    functionLinenumber: 17655
    functionLinenumberEnd: 17665
    functionName: close_var_refs
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - close_var_ref
    linkageType: ''
    returnType: void
    signature: void close_var_refs(JSRuntime *rt, JSFunctionBytecode *b, JSStackFrame
      *sf)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: close_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:17676,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - b
    - sf
    - var_idx
    argTypes:
    - JSContext*
    - JSFunctionBytecode*
    - JSStackFrame*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17679
      start: 17667
    functionDepth: 2
    functionLinenumber: 17667
    functionLinenumberEnd: 17679
    functionName: close_lexical_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - close_var_ref
    linkageType: ''
    returnType: void
    signature: "void close_lexical_var(JSContext *ctx, JSFunctionBytecode *b,\n                              JSStackFrame
      *sf, int var_idx)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17697,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:17702,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:17703,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17718,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:17720,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17736,1
    - Dst: JSCFunctionType::generic
      Src: /src/gpac/src/quickjs/quickjs.c:17745,1
    - Dst: JSCFunctionType::generic_magic
      Src: /src/gpac/src/quickjs/quickjs.c:17758,1
    - Dst: JSCFunctionType::getter
      Src: /src/gpac/src/quickjs/quickjs.c:17762,1
    - Dst: JSCFunctionType::setter
      Src: /src/gpac/src/quickjs/quickjs.c:17765,1
    - Dst: JSCFunctionType::getter_magic
      Src: /src/gpac/src/quickjs/quickjs.c:17768,1
    - Dst: JSCFunctionType::setter_magic
      Src: /src/gpac/src/quickjs/quickjs.c:17771,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17777,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:17777,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:17781,1
    - Dst: JSCFunctionType::f_f
      Src: /src/gpac/src/quickjs/quickjs.c:17781,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17788,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:17788,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17792,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:17792,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:17796,1
    - Dst: JSCFunctionType::f_f_f
      Src: /src/gpac/src/quickjs/quickjs.c:17796,1
    - Dst: JSCFunctionType::iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:17802,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:17804,1
    - Dst: js_create_iterator_result
      Src: /src/gpac/src/quickjs/quickjs.c:17805,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:17810,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: 17815
      start: 17684
    functionDepth: 24
    functionLinenumber: 17684
    functionLinenumberEnd: 17815
    functionName: js_call_c_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JSCFunctionType::setter_magic
    - JSCFunctionType::getter_magic
    - js_check_stack_overflow
    - JS_ThrowTypeError
    - alloca
    - JSCFunctionType::f_f
    - JS_IsException
    - JS_ThrowStackOverflow
    - JS_ToFloat64
    - unlikely
    - JS_VALUE_GET_OBJ
    - abort
    - JSCFunctionType::generic_magic
    - JSCFunctionType::generic
    - JSCFunctionType::iterator_next
    - JSCFunctionType::setter
    - js_create_iterator_result
    - JSCFunctionType::getter
    - JSCFunctionType::f_f_f
    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:17826,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:17829,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:17830,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:17831,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:17840,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:17842,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:17845,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: 17848
      start: 17817
    functionDepth: 15
    functionLinenumber: 17817
    functionLinenumberEnd: 17848
    functionName: js_call_bound_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowStackOverflow
    - JS_VALUE_GET_OBJ
    - alloca
    - JS_Call
    - js_check_stack_overflow
    - js_same_value
    - 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: 109
    BranchProfiles: []
    Callsites:
    - Dst: DEF
      Src: /src/gpac/src/quickjs/quickjs.c:17899,1
    - Dst: def
      Src: /src/gpac/src/quickjs/quickjs.c:17901,1
    - Dst: def
      Src: /src/gpac/src/quickjs/quickjs.c:17903,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:17918,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17920,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:17920,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:17922,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17926,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:17946,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17947,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:17952,1
    - Dst: call_func
      Src: /src/gpac/src/quickjs/quickjs.c:17954,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17959,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:17968,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:17969,1
    - Dst: alloca
      Src: /src/gpac/src/quickjs/quickjs.c:17981,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:17982,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:17983,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:17986,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18015,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18015,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18023,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18023,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18036,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18039,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:18039,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18043,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:18043,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18047,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:18050,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18050,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18051,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18051,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:18055,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:18059,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18059,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18072,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18073,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18076,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:18078,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18079,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18084,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:18096,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18097,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18097,1
    - Dst: js_build_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:18105,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18106,1
    - Dst: js_build_mapped_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:18110,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:18111,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18116,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18119,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18125,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18128,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:18128,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:18132,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18133,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18133,1
    - Dst: js_import_meta
      Src: /src/gpac/src/quickjs/quickjs.c:18137,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18138,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18138,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:18142,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18148,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:18150,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:18151,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18152,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18152,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18173,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18177,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18178,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18182,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18183,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18184,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18189,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18195,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18202,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18210,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18292,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18292,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:18294,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18295,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18295,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18310,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18316,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18318,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18318,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18323,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18330,1
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18334,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18337,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18337,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18340,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18348,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18352,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18354,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18354,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18359,1
    - Dst: js_create_array_free
      Src: /src/gpac/src/quickjs/quickjs.c:18367,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18369,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18369,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18377,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:18381,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18382,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18382,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18384,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18385,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18386,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:18400,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18401,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18402,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18412,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18414,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18422,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:18424,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18425,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:18427,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18428,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18429,1
    - Dst: JS_CheckBrand
      Src: /src/gpac/src/quickjs/quickjs.c:18436,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18440,1
    - Dst: JS_AddBrand
      Src: /src/gpac/src/quickjs/quickjs.c:18446,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18448,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18449,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18465,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:18469,1
    - Dst: JS_ThrowSyntaxErrorVarRedeclaration
      Src: /src/gpac/src/quickjs/quickjs.c:18472,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18475,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:18478,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18481,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:18483,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18491,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18492,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:18496,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:18501,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18504,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18507,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18507,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18510,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18523,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:18526,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:18529,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:18534,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:18537,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:18540,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18541,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18541,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18543,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18544,1
    - Dst: JS_NewRegexp
      Src: /src/gpac/src/quickjs/quickjs.c:18552,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18554,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:18563,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18564,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18566,1
    - Dst: js_dynamic_import
      Src: /src/gpac/src/quickjs/quickjs.c:18574,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18575,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18578,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18589,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18592,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18592,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18595,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18599,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18603,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18607,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18618,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18621,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18621,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18627,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18628,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:18630,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18634,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:18637,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:18638,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18641,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18649,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18657,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18659,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18666,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18668,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18675,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18677,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18677,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18683,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18685,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18692,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18694,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18701,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18703,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18703,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18708,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18710,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18712,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18713,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18714,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18715,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18720,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18721,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18722,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18723,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18724,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18725,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18726,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18727,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18732,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18733,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18734,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18735,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18736,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18737,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18738,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18739,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18744,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18745,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18746,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18747,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18753,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18756,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18763,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18765,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18772,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18774,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18774,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18780,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18783,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18783,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18784,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18787,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18794,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18796,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18796,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18797,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18800,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18807,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18809,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18809,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18810,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18813,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18820,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18822,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18828,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18830,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18830,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18831,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18834,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18841,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18843,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18843,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18844,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18847,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18854,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18856,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18856,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18857,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18860,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18867,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18869,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18869,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18870,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18873,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18873,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18879,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18881,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18881,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:18882,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18885,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18892,1
    - Dst: close_lexical_var
      Src: /src/gpac/src/quickjs/quickjs.c:18894,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18905,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18906,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:18908,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18909,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18909,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:18913,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18915,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:18919,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18919,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18922,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:18926,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18931,1
    - Dst: JS_GetGlobalVarRef
      Src: /src/gpac/src/quickjs/quickjs.c:18935,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18942,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18943,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18943,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18947,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18948,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18949,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18949,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18952,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18954,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18954,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18958,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18964,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18965,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18967,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18971,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18973,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18973,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18984,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18985,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18987,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18991,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18993,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18993,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19004,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19005,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:19007,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19013,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:19013,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19023,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19024,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:19026,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19032,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:19032,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19040,1
    - Dst: JS_NewCatchOffset
      Src: /src/gpac/src/quickjs/quickjs.c:19041,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19049,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19051,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19060,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19060,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19062,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19063,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:19065,1
    - Dst: js_for_in_start
      Src: /src/gpac/src/quickjs/quickjs.c:19075,1
    - Dst: js_for_in_next
      Src: /src/gpac/src/quickjs/quickjs.c:19080,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:19086,1
    - Dst: js_for_of_next
      Src: /src/gpac/src/quickjs/quickjs.c:19096,1
    - Dst: js_for_await_of_next
      Src: /src/gpac/src/quickjs/quickjs.c:19103,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:19109,1
    - Dst: js_iterator_get_value_done
      Src: /src/gpac/src/quickjs/quickjs.c:19116,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:19121,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:19122,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:19132,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:19134,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19136,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19146,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19147,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19149,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:19150,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19151,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:19163,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19165,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19167,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19179,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19181,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:19183,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:19183,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:19188,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:19191,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19194,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19196,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:19200,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19210,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19211,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:19213,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:19215,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19241,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19243,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19246,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:19250,1
    CyclomaticComplexity: 200
    EdgeCount: 200
    ICount: 1036
    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: 19258
      start: 17872
    functionDepth: 22
    functionLinenumber: 17872
    functionLinenumberEnd: 19258
    functionName: JS_CallInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_CheckBrand
    - call_func
    - js_function_apply
    - JS_Call
    - JS_IsObject
    - js_import_meta
    - JS_GetGlobalVarRef
    - get_i8
    - JS_DupValue
    - js_for_of_next
    - JS_ThrowStackOverflow
    - JS_MKPTR
    - JS_IsUninitialized
    - JS_NewObject
    - abort
    - JS_CallInternal
    - JS_ThrowReferenceErrorUninitialized
    - JS_HasProperty
    - JS_NewBool
    - js_build_arguments
    - JS_ThrowReferenceError
    - free_arg_list
    - js_create_array_free
    - JS_IteratorClose
    - JS_NewRegexp
    - get_var_ref
    - get_u32
    - alloca
    - js_for_await_of_next
    - JS_ToObject
    - DEF
    - JS_VALUE_GET_PTR
    - js_closure
    - likely
    - free_var_ref
    - JS_GetProperty
    - JS_NewCatchOffset
    - JS_IsUndefined
    - JS_ThrowReferenceErrorUninitialized2
    - js_same_value
    - JS_ThrowTypeErrorReadOnly
    - JS_SetPropertyInternal
    - JS_AtomToString
    - JS_ThrowSyntaxErrorVarRedeclaration
    - set_value
    - JS_IsNull
    - js_check_stack_overflow
    - __JS_NewShortBigInt
    - build_arg_list
    - is_strict_mode
    - js_for_in_start
    - js_dynamic_import
    - get_u16
    - JS_AtomToValue
    - JS_IsException
    - JS_VALUE_GET_INT
    - get_i16
    - js_create_array
    - JS_GetPrototype
    - JS_VALUE_GET_OBJ
    - js_for_of_start
    - close_lexical_var
    - JS_NewInt32
    - JS_NewObjectProto
    - js_iterator_get_value_done
    - JS_VALUE_GET_TAG
    - add_property
    - JS_CallConstructorInternal
    - JS_ToBoolFree
    - js_rc
    - def
    - JS_AddBrand
    - min_int
    - JS_CallConstructor2
    - JS_CallFree
    - JS_ThrowTypeError
    - js_for_in_next
    - JS_FreeValue
    - JS_ThrowReferenceErrorNotDefined
    - CASE
    - unlikely
    - js_poll_interrupts
    - JS_EvalObject
    - JS_ThrowInternalError
    - js_build_mapped_arguments
    - JS_GetPropertyInternal
    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: 17894
      start: 17893
    functionDepth: 0
    functionLinenumber: 17893
    functionLinenumberEnd: 17894
    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: 17895
      start: 17894
    functionDepth: 0
    functionLinenumber: 17894
    functionLinenumberEnd: 17895
    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: 17909
      start: 17908
    functionDepth: 0
    functionLinenumber: 17908
    functionLinenumberEnd: 17909
    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: 17911
      start: 17910
    functionDepth: 0
    functionLinenumber: 17910
    functionLinenumberEnd: 17911
    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:
    - (
    - op
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17913
      start: 17912
    functionDepth: 0
    functionLinenumber: 17912
    functionLinenumberEnd: 17913
    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:18015,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18015,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18019,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18023,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18023,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18036,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18039,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:18039,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:18043,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:18043,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18047,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:18050,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18050,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18051,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18051,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:18055,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:18059,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18059,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18072,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18073,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18076,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:18078,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18079,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18084,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:18096,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18097,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18097,1
    - Dst: js_build_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:18105,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18106,1
    - Dst: js_build_mapped_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:18110,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:18111,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18116,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18119,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18125,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18128,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:18128,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:18132,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18133,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18133,1
    - Dst: js_import_meta
      Src: /src/gpac/src/quickjs/quickjs.c:18137,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18138,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18138,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:18142,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18148,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:18150,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:18151,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18152,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18152,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18173,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18177,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18178,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18182,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18183,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18184,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18189,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18195,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18202,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18210,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18292,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18292,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:18294,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18295,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18295,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18310,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18316,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18318,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18318,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18323,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18330,1
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18334,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18337,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18337,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18340,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18348,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18352,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18354,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18354,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18359,1
    - Dst: js_create_array_free
      Src: /src/gpac/src/quickjs/quickjs.c:18367,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18369,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18369,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18377,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:18381,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18382,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18382,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18384,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18385,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18386,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:18400,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18401,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18402,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 314
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18408
      start: 18013
    functionDepth: 23
    functionLinenumber: 18013
    functionLinenumberEnd: 18408
    functionName: SWITCH
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_create_array_free
    - js_function_apply
    - JS_AtomToString
    - min_int
    - JS_IsObject
    - __JS_NewShortBigInt
    - js_import_meta
    - JS_ThrowTypeError
    - get_u32
    - get_u16
    - JS_AtomToValue
    - JS_FreeValue
    - get_i8
    - JS_DupValue
    - JS_ToObject
    - JS_IsException
    - get_i16
    - js_create_array
    - JS_MKPTR
    - js_closure
    - unlikely
    - likely
    - JS_NewObject
    - abort
    - JS_NewInt32
    - JS_CallInternal
    - JS_NewObjectProto
    - js_build_mapped_arguments
    - js_build_arguments
    - JS_IsUndefined
    - JS_VALUE_GET_TAG
    - JS_CallConstructorInternal
    linkageType: ''
    returnType: void
    signature: void SWITCH(pc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18072,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:18073,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18076,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:18078,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18079,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18084,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18087
      start: 18068
    functionDepth: 1
    functionLinenumber: 18068
    functionLinenumberEnd: 18087
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - likely
    - JS_VALUE_GET_TAG
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_push_this)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: js_build_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:18105,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18106,1
    - Dst: js_build_mapped_arguments
      Src: /src/gpac/src/quickjs/quickjs.c:18110,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:18111,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18112,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18116,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18119,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18125,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18128,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:18128,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:18132,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18133,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18133,1
    - Dst: js_import_meta
      Src: /src/gpac/src/quickjs/quickjs.c:18137,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18138,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18138,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:18142,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 42
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18144
      start: 18100
    functionDepth: 12
    functionLinenumber: 18100
    functionLinenumberEnd: 18144
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_import_meta
    - JS_MKPTR
    - unlikely
    - js_build_arguments
    - abort
    - JS_DupValue
    - JS_IsException
    - min_int
    - JS_NewObjectProto
    - js_build_mapped_arguments
    linkageType: ''
    returnType: void
    signature: void CASE(OP_special_object)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18148,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:18150,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:18151,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18152,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18152,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18154
      start: 18146
    functionDepth: 12
    functionLinenumber: 18146
    functionLinenumberEnd: 18154
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_create_array
    - unlikely
    - get_u16
    - JS_IsException
    - 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: 18218
      start: 18213
    functionDepth: 0
    functionLinenumber: 18213
    functionLinenumberEnd: 18218
    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: 18226
      start: 18220
    functionDepth: 0
    functionLinenumber: 18220
    functionLinenumberEnd: 18226
    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: 18235
      start: 18228
    functionDepth: 0
    functionLinenumber: 18228
    functionLinenumberEnd: 18235
    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: 18245
      start: 18237
    functionDepth: 0
    functionLinenumber: 18237
    functionLinenumberEnd: 18245
    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: 18253
      start: 18247
    functionDepth: 0
    functionLinenumber: 18247
    functionLinenumberEnd: 18253
    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: 18261
      start: 18255
    functionDepth: 0
    functionLinenumber: 18255
    functionLinenumberEnd: 18261
    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: 18270
      start: 18263
    functionDepth: 0
    functionLinenumber: 18263
    functionLinenumberEnd: 18270
    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: 18277
      start: 18272
    functionDepth: 0
    functionLinenumber: 18272
    functionLinenumberEnd: 18277
    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: 18287
      start: 18279
    functionDepth: 0
    functionLinenumber: 18279
    functionLinenumberEnd: 18287
    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:18292,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18292,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:18294,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18295,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18295,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18297
      start: 18290
    functionDepth: 21
    functionLinenumber: 18290
    functionLinenumberEnd: 18297
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u32
    - unlikely
    - js_closure
    - JS_DupValue
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_fclosure)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18310,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18316,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18318,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18318,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18323,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18326
      start: 18307
    functionDepth: 23
    functionLinenumber: 18307
    functionLinenumberEnd: 18326
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - get_u16
    - JS_FreeValue
    - JS_IsException
    - JS_CallInternal
    linkageType: ''
    returnType: void
    signature: void CASE(OP_call)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18330,1
    - Dst: JS_CallConstructorInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18334,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18337,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18337,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18340,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18343
      start: 18328
    functionDepth: 1
    functionLinenumber: 18328
    functionLinenumberEnd: 18343
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - get_u16
    - JS_FreeValue
    - JS_CallConstructorInternal
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_call_constructor)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18348,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18352,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18354,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18354,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18359,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18362
      start: 18345
    functionDepth: 23
    functionLinenumber: 18345
    functionLinenumberEnd: 18362
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - get_u16
    - JS_FreeValue
    - JS_IsException
    - JS_CallInternal
    linkageType: ''
    returnType: void
    signature: void CASE(OP_call_method)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18377,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:18381,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18382,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18382,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18384,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18385,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18389
      start: 18374
    functionDepth: 1
    functionLinenumber: 18374
    functionLinenumberEnd: 18389
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - get_u16
    - js_function_apply
    - JS_FreeValue
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_apply)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:18400,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18401,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18402,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18406
      start: 18394
    functionDepth: 14
    functionLinenumber: 18394
    functionLinenumberEnd: 18406
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsObject
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void CASE(OP_return_undef)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18412,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18414,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18416
      start: 18411
    functionDepth: 14
    functionLinenumber: 18411
    functionLinenumberEnd: 18416
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsUndefined
    linkageType: ''
    returnType: void
    signature: void CASE(OP_check_ctor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:18422,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:18424,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18425,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:18427,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18428,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18429,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18432
      start: 18418
    functionDepth: 3
    functionLinenumber: 18418
    functionLinenumberEnd: 18432
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_GetPrototype
    - JS_IsUndefined
    - JS_FreeValue
    - JS_IsException
    - 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:18436,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:18440,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18443
      start: 18434
    functionDepth: 16
    functionLinenumber: 18434
    functionLinenumberEnd: 18443
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowTypeError
    - JS_CheckBrand
    linkageType: ''
    returnType: void
    signature: void CASE(OP_check_brand)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18491,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18492,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:18496,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:18501,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18504,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18507,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18507,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18510,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18513
      start: 18487
    functionDepth: 23
    functionLinenumber: 18487
    functionLinenumberEnd: 18513
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - unlikely
    - get_u16
    - JS_EvalObject
    - JS_FreeValue
    - JS_IsException
    - JS_CallInternal
    - js_same_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_eval)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18523,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:18526,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:18529,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:18534,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:18537,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:18540,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18541,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18541,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18543,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18544,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18547
      start: 18516
    functionDepth: 5
    functionLinenumber: 18516
    functionLinenumberEnd: 18547
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - free_arg_list
    - unlikely
    - get_u16
    - JS_EvalObject
    - JS_FreeValue
    - JS_Call
    - JS_IsException
    - build_arg_list
    - js_same_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_apply_eval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewRegexp
      Src: /src/gpac/src/quickjs/quickjs.c:18552,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18554,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18556
      start: 18550
    functionDepth: 1
    functionLinenumber: 18550
    functionLinenumberEnd: 18556
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewRegexp
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_regexp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:18563,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18564,1
    - Dst: JS_FreeValue
      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: 18559
    functionDepth: 3
    functionLinenumber: 18559
    functionLinenumberEnd: 18568
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_GetPrototype
    - JS_FreeValue
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_super)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_dynamic_import
      Src: /src/gpac/src/quickjs/quickjs.c:18574,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18575,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18577,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:18578,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18581
      start: 18571
    functionDepth: 1
    functionLinenumber: 18571
    functionLinenumberEnd: 18581
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_dynamic_import
    - JS_FreeValue
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_import)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18589,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18592,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18592,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18595,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18599,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18603,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18607,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18610
      start: 18584
    functionDepth: 16
    functionLinenumber: 18584
    functionLinenumberEnd: 18610
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_GetPropertyInternal
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_DupValue
    - JS_IsException
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_var_undef)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18618,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18621,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18621,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18627,1
    - Dst: JS_ThrowReferenceErrorUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18628,1
    - Dst: JS_ThrowTypeErrorReadOnly
      Src: /src/gpac/src/quickjs/quickjs.c:18630,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:18634,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:18637,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:18638,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:18641,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18649,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18652
      start: 18613
    functionDepth: 17
    functionLinenumber: 18613
    functionLinenumberEnd: 18652
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_HasProperty
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowTypeErrorReadOnly
    - JS_SetPropertyInternal
    - is_strict_mode
    - set_value
    - JS_ThrowReferenceErrorNotDefined
    - JS_ThrowReferenceErrorUninitialized
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_var)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18657,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18659,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18661
      start: 18654
    functionDepth: 1
    functionLinenumber: 18654
    functionLinenumberEnd: 18661
    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:18666,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18668,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18670
      start: 18663
    functionDepth: 2
    functionLinenumber: 18663
    functionLinenumberEnd: 18670
    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:18675,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18677,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18678
      start: 18672
    functionDepth: 2
    functionLinenumber: 18672
    functionLinenumberEnd: 18678
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - set_value
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_loc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18683,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18685,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18687
      start: 18680
    functionDepth: 1
    functionLinenumber: 18680
    functionLinenumberEnd: 18687
    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:18692,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18696
      start: 18689
    functionDepth: 2
    functionLinenumber: 18689
    functionLinenumberEnd: 18696
    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:18701,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18703,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18703,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18704
      start: 18698
    functionDepth: 2
    functionLinenumber: 18698
    functionLinenumberEnd: 18704
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - set_value
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18753,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18758
      start: 18750
    functionDepth: 1
    functionLinenumber: 18750
    functionLinenumberEnd: 18758
    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:18763,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18765,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18767
      start: 18760
    functionDepth: 2
    functionLinenumber: 18760
    functionLinenumberEnd: 18767
    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:18772,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18774,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18775
      start: 18769
    functionDepth: 2
    functionLinenumber: 18769
    functionLinenumberEnd: 18775
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u16
    - set_value
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_var_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18780,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18783,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18783,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18784,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18787,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18789
      start: 18777
    functionDepth: 16
    functionLinenumber: 18777
    functionLinenumberEnd: 18789
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowReferenceErrorUninitialized2
    - JS_DupValue
    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:18794,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18796,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18796,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18797,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18800,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18802
      start: 18791
    functionDepth: 16
    functionLinenumber: 18791
    functionLinenumberEnd: 18802
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowReferenceErrorUninitialized2
    - set_value
    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:18807,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18809,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18809,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18810,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18813,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18815
      start: 18804
    functionDepth: 16
    functionLinenumber: 18804
    functionLinenumberEnd: 18815
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowReferenceErrorUninitialized2
    - set_value
    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:18820,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18822,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18823
      start: 18817
    functionDepth: 2
    functionLinenumber: 18817
    functionLinenumberEnd: 18823
    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:18828,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18830,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18830,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18831,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18834,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18836
      start: 18825
    functionDepth: 16
    functionLinenumber: 18825
    functionLinenumberEnd: 18836
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowReferenceErrorUninitialized2
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_loc_check)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18841,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18843,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18843,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18844,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18847,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18849
      start: 18838
    functionDepth: 16
    functionLinenumber: 18838
    functionLinenumberEnd: 18849
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowReferenceErrorUninitialized2
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_loc_checkthis)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18854,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18856,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18856,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18857,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18860,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18862
      start: 18851
    functionDepth: 16
    functionLinenumber: 18851
    functionLinenumberEnd: 18862
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowReferenceErrorUninitialized2
    - set_value
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_loc_check)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18867,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18869,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18869,1
    - Dst: JS_ThrowReferenceErrorUninitialized2
      Src: /src/gpac/src/quickjs/quickjs.c:18870,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18873,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:18873,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18874
      start: 18864
    functionDepth: 16
    functionLinenumber: 18864
    functionLinenumberEnd: 18874
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - JS_ThrowReferenceErrorUninitialized2
    - set_value
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_loc_check)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18879,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18881,1
    - Dst: JS_IsUninitialized
      Src: /src/gpac/src/quickjs/quickjs.c:18881,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:18882,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:18885,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18887
      start: 18876
    functionDepth: 14
    functionLinenumber: 18876
    functionLinenumberEnd: 18887
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_IsUninitialized
    - unlikely
    - get_u16
    - set_value
    - JS_ThrowReferenceError
    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:18892,1
    - Dst: close_lexical_var
      Src: /src/gpac/src/quickjs/quickjs.c:18894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18895
      start: 18889
    functionDepth: 3
    functionLinenumber: 18889
    functionLinenumberEnd: 18895
    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:18905,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18906,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:18908,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18909,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:18909,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:18913,1
    - Dst: get_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18915,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:18919,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:18919,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:18922,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:18926,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18927
      start: 18898
    functionDepth: 12
    functionLinenumber: 18898
    functionLinenumberEnd: 18927
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_var_ref
    - get_u32
    - unlikely
    - JS_VALUE_GET_OBJ
    - get_u16
    - js_rc
    - free_var_ref
    - JS_AtomToValue
    - add_property
    - JS_IsException
    - JS_NewObjectProto
    linkageType: ''
    returnType: void
    signature: void CASE(OP_make_loc_ref)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18931,1
    - Dst: JS_GetGlobalVarRef
      Src: /src/gpac/src/quickjs/quickjs.c:18935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18938
      start: 18929
    functionDepth: 18
    functionLinenumber: 18929
    functionLinenumberEnd: 18938
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - get_u32
    - JS_GetGlobalVarRef
    linkageType: ''
    returnType: void
    signature: void CASE(OP_make_var_ref)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18942,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18943,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18943,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18947,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:18948,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18949,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18949,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18952,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18954,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18954,1
    - Dst: CASE
      Src: /src/gpac/src/quickjs/quickjs.c:18958,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18964,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18965,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18967,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18971,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18973,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18973,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:18984,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:18985,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:18987,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:18991,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:18993,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:18993,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18995
      start: 18941
    functionDepth: 17
    functionLinenumber: 18941
    functionLinenumberEnd: 18995
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - unlikely
    - get_u16
    - js_poll_interrupts
    - JS_VALUE_GET_TAG
    - CASE
    - JS_VALUE_GET_INT
    - JS_ToBoolFree
    linkageType: ''
    returnType: void
    signature: void CASE(OP_goto)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19004,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19005,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:19007,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19013,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:19013,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19015
      start: 18998
    functionDepth: 17
    functionLinenumber: 18998
    functionLinenumberEnd: 19015
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - js_poll_interrupts
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    - JS_ToBoolFree
    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:19023,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19024,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:19026,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19032,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:19032,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19034
      start: 19017
    functionDepth: 17
    functionLinenumber: 19017
    functionLinenumberEnd: 19034
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - js_poll_interrupts
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    - JS_ToBoolFree
    linkageType: ''
    returnType: void
    signature: void CASE(OP_if_false8)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19040,1
    - Dst: JS_NewCatchOffset
      Src: /src/gpac/src/quickjs/quickjs.c:19041,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19044
      start: 19037
    functionDepth: 1
    functionLinenumber: 19037
    functionLinenumberEnd: 19044
    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:19049,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19051,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19054
      start: 19046
    functionDepth: 1
    functionLinenumber: 19046
    functionLinenumberEnd: 19054
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - JS_NewInt32
    linkageType: ''
    returnType: void
    signature: void CASE(OP_gosub)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19060,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19060,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19062,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19063,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:19065,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19070
      start: 19056
    functionDepth: 14
    functionLinenumber: 19056
    functionLinenumberEnd: 19070
    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:19075,1
    - Dst: js_for_in_next
      Src: /src/gpac/src/quickjs/quickjs.c:19080,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:19086,1
    - Dst: js_for_of_next
      Src: /src/gpac/src/quickjs/quickjs.c:19096,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19099
      start: 19073
    functionDepth: 22
    functionLinenumber: 19073
    functionLinenumberEnd: 19099
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_for_of_start
    - js_for_in_next
    - js_for_in_start
    - js_for_of_next
    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:19103,1
    - Dst: js_for_of_start
      Src: /src/gpac/src/quickjs/quickjs.c:19109,1
    - Dst: js_iterator_get_value_done
      Src: /src/gpac/src/quickjs/quickjs.c:19116,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:19121,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:19122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19124
      start: 19101
    functionDepth: 18
    functionLinenumber: 19101
    functionLinenumberEnd: 19124
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowTypeError
    - js_iterator_get_value_done
    - js_for_of_start
    - js_for_await_of_next
    - 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:19146,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19147,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19149,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:19150,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19151,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19155
      start: 19140
    functionDepth: 14
    functionLinenumber: 19140
    functionLinenumberEnd: 19155
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowInternalError
    - JS_FreeValue
    - unlikely
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: void
    signature: void CASE(OP_nip_catch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:19163,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19165,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19167,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19169
      start: 19158
    functionDepth: 1
    functionLinenumber: 19158
    functionLinenumberEnd: 19169
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - JS_IsException
    - 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:19179,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19181,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:19183,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:19183,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:19188,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:19191,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19194,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19196,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:19200,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19202
      start: 19172
    functionDepth: 1
    functionLinenumber: 19172
    functionLinenumberEnd: 19202
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewBool
    - JS_CallFree
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsNull
    - JS_IsException
    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:19210,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19211,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:19213,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:19215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19216
      start: 19205
    functionDepth: 2
    functionLinenumber: 19205
    functionLinenumberEnd: 19216
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_ToBoolFree
    - JS_NewBool
    - 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: 19240
      start: 19219
    functionDepth: 0
    functionLinenumber: 19219
    functionLinenumberEnd: 19240
    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:19298,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19302,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19302,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:19303,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:19304,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19307,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19310,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19314,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19319,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19321,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19323,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19327
      start: 19289
    functionDepth: 17
    functionLinenumber: 19289
    functionLinenumberEnd: 19327
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - find_own_property
    - get_u32
    - likely
    - JS_VALUE_GET_OBJ
    - unlikely
    - JS_SetPropertyInternal
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - 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:19335,1
    - Dst: JS_NewSymbolFromAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19337,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19338,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19341
      start: 19330
    functionDepth: 10
    functionLinenumber: 19330
    functionLinenumberEnd: 19341
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - get_u32
    - JS_NewSymbolFromAtom
    linkageType: ''
    returnType: void
    signature: void CASE(OP_private_symbol)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPrivateField
      Src: /src/gpac/src/quickjs/quickjs.c:19347,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19348,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19349,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19352,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19354
      start: 19344
    functionDepth: 16
    functionLinenumber: 19344
    functionLinenumberEnd: 19354
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsException
    - JS_GetPrivateField
    - JS_FreeValue
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_private_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_SetPrivateField
      Src: /src/gpac/src/quickjs/quickjs.c:19360,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19361,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19362,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19364,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19366
      start: 19357
    functionDepth: 16
    functionLinenumber: 19357
    functionLinenumberEnd: 19366
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_SetPrivateField
    - JS_FreeValue
    - 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:19372,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19373,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19375,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19377
      start: 19369
    functionDepth: 16
    functionLinenumber: 19369
    functionLinenumberEnd: 19377
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DefinePrivateField
    - JS_FreeValue
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_private_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19383,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:19386,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19389,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19391
      start: 19380
    functionDepth: 20
    functionLinenumber: 19380
    functionLinenumberEnd: 19391
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DefinePropertyValue
    - get_u32
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_field)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19397,1
    - Dst: JS_DefineObjectName
      Src: /src/gpac/src/quickjs/quickjs.c:19400,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19401,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19403
      start: 19394
    functionDepth: 21
    functionLinenumber: 19394
    functionLinenumberEnd: 19403
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - JS_DefineObjectName
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefineObjectNameComputed
      Src: /src/gpac/src/quickjs/quickjs.c:19408,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19409,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19411
      start: 19405
    functionDepth: 21
    functionLinenumber: 19405
    functionLinenumberEnd: 19411
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_DefineObjectNameComputed
    - unlikely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_name_computed)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:19418,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:19418,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19419,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19422,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19424
      start: 19413
    functionDepth: 16
    functionLinenumber: 19413
    functionLinenumberEnd: 19424
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_IsNull
    - JS_FreeValue
    - JS_IsObject
    - JS_SetPrototypeInternal
    linkageType: ''
    returnType: void
    signature: void CASE(OP_set_proto)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19443,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19444,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19448,1
    - Dst: js_method_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:19472,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19477,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19479,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19480,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19483,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19485
      start: 19429
    functionDepth: 19
    functionLinenumber: 19429
    functionLinenumberEnd: 19485
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - unlikely
    - JS_DefineProperty
    - JS_ValueToAtom
    - JS_FreeValue
    - js_method_set_properties
    - JS_FreeAtom
    linkageType: ''
    returnType: void
    signature: void CASE(OP_define_method)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:19493,1
    - Dst: js_op_define_class
      Src: /src/gpac/src/quickjs/quickjs.c:19496,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19500
      start: 19488
    functionDepth: 22
    functionLinenumber: 19488
    functionLinenumberEnd: 19500
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_u32
    - js_op_define_class
    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: 19540
      start: 19503
    functionDepth: 0
    functionLinenumber: 19503
    functionLinenumberEnd: 19540
    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:19555,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19555,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19556,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:19557,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19558,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19559,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19561,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19563,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19566,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19574,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:19574,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:19574,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:19575,1
    - Dst: JS_ToPropertyKey
      Src: /src/gpac/src/quickjs/quickjs.c:19579,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19580,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19582,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:19587,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19587,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19588,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19588,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19592
      start: 19549
    functionDepth: 21
    functionLinenumber: 19549
    functionLinenumberEnd: 19592
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowTypeError
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - JS_IsUndefined
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_IsNull
    - JS_DupValue
    - JS_GetPropertyValue
    - JS_IsException
    - JS_VALUE_GET_INT
    - 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:19601,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19604,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:19604,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:19605,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19606,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19609,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19610,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19612,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:19615,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:19616,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19617,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19622,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19624,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19625,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19625,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19629
      start: 19595
    functionDepth: 17
    functionLinenumber: 19595
    functionLinenumberEnd: 19629
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_HasProperty
    - unlikely
    - JS_IsUndefined
    - JS_GetProperty
    - JS_ValueToAtom
    - JS_ThrowReferenceErrorNotDefined
    - JS_IsException
    - JS_FreeAtom
    - is_strict_mode
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_ref_value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19637,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19638,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19640,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19641,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19642,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19642,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19644,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19645,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19646,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19649
      start: 19632
    functionDepth: 16
    functionLinenumber: 19632
    functionLinenumberEnd: 19649
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_IsException
    - JS_FreeAtom
    - JS_GetPropertyInternal
    linkageType: ''
    returnType: void
    signature: void CASE(OP_get_super_value)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19658,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19658,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19659,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:19660,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19661,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19662,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19664,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19666,1
    - Dst: can_extend_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:19668,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19671,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19671,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19675,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19677,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19679,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:19679,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19681,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19686,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19688,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:19693,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19694,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19696,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 44
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19699
      start: 19652
    functionDepth: 18
    functionLinenumber: 19652
    functionLinenumberEnd: 19699
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - JS_VALUE_GET_OBJ
    - likely
    - get_shape_prop
    - can_extend_fast_array
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - set_value
    - JS_SetPropertyValue
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_array_el)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19707,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19708,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19710,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:19710,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:19711,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:19712,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19713,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19716,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:19719,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19720,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19721,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19722,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:19725,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:19726,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19727,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19731,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19732,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19733,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19734,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19736,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19738
      start: 19702
    functionDepth: 17
    functionLinenumber: 19702
    functionLinenumberEnd: 19738
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_HasProperty
    - unlikely
    - JS_IsUndefined
    - JS_SetPropertyInternal
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_ThrowReferenceErrorNotDefined
    - JS_DupValue
    - JS_FreeAtom
    - is_strict_mode
    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:19746,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:19747,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19750,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19751,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:19753,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:19755,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19756,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19757,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19758,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19762
      start: 19741
    functionDepth: 17
    functionLinenumber: 19741
    functionLinenumberEnd: 19762
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - JS_SetPropertyInternal
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    linkageType: ''
    returnType: void
    signature: void CASE(OP_put_super_value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_DefinePropertyValueValue
      Src: /src/gpac/src/quickjs/quickjs.c:19768,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19768,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19771,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19773
      start: 19765
    functionDepth: 21
    functionLinenumber: 19765
    functionLinenumberEnd: 19773
    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:19779,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19781,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19782
      start: 19776
    functionDepth: 23
    functionLinenumber: 19776
    functionLinenumberEnd: 19782
    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:19795,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19799
      start: 19785
    functionDepth: 21
    functionLinenumber: 19785
    functionLinenumberEnd: 19799
    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: 11
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19806,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19806,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19808,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19808,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19809,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19810,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19812,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19815,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19815,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19816,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19816,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19818,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19818,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19819,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19820,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19821,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19825,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19825,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19826,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19827,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19828,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19832,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:19834,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:19834,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:19835,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19837,1
    - Dst: js_add_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19842,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19846
      start: 19802
    functionDepth: 24
    functionLinenumber: 19802
    functionLinenumberEnd: 19846
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - unlikely
    - likely
    - js_add_slow
    - JS_IsString
    - JS_ConcatString
    - JS_VALUE_GET_TAG
    - __JS_NewFloat64
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_add)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19858,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19858,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19860,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19860,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19861,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19862,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19864,1
    - Dst: JS_VALUE_IS_BOTH_FLOAT
      Src: /src/gpac/src/quickjs/quickjs.c:19867,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19868,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19868,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19869,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19871,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19872,1
    - Dst: JS_ConcatStringInPlace
      Src: /src/gpac/src/quickjs/quickjs.c:19875,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:19875,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:19876,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:19878,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19878,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:19879,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19881,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:19888,1
    - Dst: js_add_slow
      Src: /src/gpac/src/quickjs/quickjs.c:19891,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:19893,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19895
      start: 19848
    functionDepth: 24
    functionLinenumber: 19848
    functionLinenumberEnd: 19895
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_IS_BOTH_FLOAT
    - JS_VALUE_GET_FLOAT64
    - unlikely
    - likely
    - JS_VALUE_GET_STRING
    - js_add_slow
    - JS_FreeValue
    - JS_ConcatString
    - JS_VALUE_GET_TAG
    - set_value
    - JS_ConcatStringInPlace
    - JS_DupValue
    - __JS_NewFloat64
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - JS_IsException
    linkageType: ''
    returnType: void
    signature: void CASE(OP_add_loc)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19901,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19901,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19903,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19903,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19904,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19905,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19907,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19910,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19910,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19911,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19911,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19913,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19913,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19914,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19915,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19916,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19920,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19920,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19921,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19922,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19923,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19927,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19932
      start: 19897
    functionDepth: 1
    functionLinenumber: 19897
    functionLinenumberEnd: 19932
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - unlikely
    - likely
    - JS_VALUE_GET_TAG
    - __JS_NewFloat64
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_sub)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19939,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19939,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19942,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19943,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19945,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:19950,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:19954,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19956,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19956,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19957,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19957,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19959,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19959,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19960,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19961,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19962,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19966,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19966,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:19967,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:19968,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19969,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19975,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19980
      start: 19934
    functionDepth: 1
    functionLinenumber: 19934
    functionLinenumberEnd: 19980
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - unlikely
    - likely
    - JS_VALUE_GET_TAG
    - JS_VALUE_IS_BOTH_INT
    - __JS_NewFloat64
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_mul)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:19986,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19986,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19988,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:19989,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:19990,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19995
      start: 19982
    functionDepth: 1
    functionLinenumber: 19982
    functionLinenumberEnd: 19995
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - JS_NewFloat64
    - JS_VALUE_IS_BOTH_INT
    - likely
    linkageType: ''
    returnType: void
    signature: void CASE(OP_div)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:20001,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20001,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20003,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20004,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20007,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20010,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20015
      start: 19997
    functionDepth: 1
    functionLinenumber: 19997
    functionLinenumberEnd: 20015
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - likely
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_mod)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_binary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20020,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20029,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:20030,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20032,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20032,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20035,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20038
      start: 20017
    functionDepth: 24
    functionLinenumber: 20017
    functionLinenumberEnd: 20038
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_unary_arith_slow
    - JS_TAG_IS_FLOAT64
    - js_binary_arith_slow
    - JS_VALUE_GET_TAG
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_pow)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20045,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20049,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20051,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20055,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20059,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:20060,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:20061,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:20063,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20066,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20069
      start: 20040
    functionDepth: 22
    functionLinenumber: 20040
    functionLinenumberEnd: 20069
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_unary_arith_slow
    - JS_VALUE_GET_FLOAT64
    - JS_TAG_IS_FLOAT64
    - unlikely
    - JS_VALUE_GET_TAG
    - __JS_NewFloat64
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_neg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20074,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20075,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20076,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20078,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20082,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20085
      start: 20071
    functionDepth: 22
    functionLinenumber: 20071
    functionLinenumberEnd: 20085
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_unary_arith_slow
    - unlikely
    - JS_VALUE_GET_TAG
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_inc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20090,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20091,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20092,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20094,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20098,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20101
      start: 20087
    functionDepth: 22
    functionLinenumber: 20087
    functionLinenumberEnd: 20101
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_unary_arith_slow
    - unlikely
    - JS_VALUE_GET_TAG
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_dec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20108,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20109,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20110,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20112,1
    - Dst: js_post_inc_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20116,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20120
      start: 20103
    functionDepth: 23
    functionLinenumber: 20103
    functionLinenumberEnd: 20120
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - JS_VALUE_GET_TAG
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - js_post_inc_slow
    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:20127,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20128,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20129,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20131,1
    - Dst: js_post_inc_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20135,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20139
      start: 20122
    functionDepth: 23
    functionLinenumber: 20122
    functionLinenumberEnd: 20139
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - unlikely
    - JS_VALUE_GET_TAG
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - js_post_inc_slow
    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:20148,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20149,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20150,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20152,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20158,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20159,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:20161,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20163
      start: 20141
    functionDepth: 22
    functionLinenumber: 20141
    functionLinenumberEnd: 20163
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_unary_arith_slow
    - unlikely
    - JS_VALUE_GET_TAG
    - set_value
    - JS_DupValue
    - JS_NewInt32
    - JS_VALUE_GET_INT
    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:20172,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20173,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20174,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20176,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20182,1
    - Dst: js_unary_arith_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20183,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:20185,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20187
      start: 20165
    functionDepth: 22
    functionLinenumber: 20165
    functionLinenumberEnd: 20187
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_unary_arith_slow
    - unlikely
    - JS_VALUE_GET_TAG
    - set_value
    - JS_DupValue
    - JS_NewInt32
    - JS_VALUE_GET_INT
    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:20192,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20193,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20193,1
    - Dst: js_not_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20199
      start: 20189
    functionDepth: 23
    functionLinenumber: 20189
    functionLinenumberEnd: 20199
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_VALUE_GET_INT
    - js_not_slow
    - JS_NewInt32
    - 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:20206,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20206,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20208,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20209,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20211,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20219
      start: 20202
    functionDepth: 23
    functionLinenumber: 20202
    functionLinenumberEnd: 20219
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - likely
    - js_binary_logic_slow
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_shl)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:20225,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20225,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20227,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:20229,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20230,1
    - Dst: js_shr_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20239
      start: 20221
    functionDepth: 24
    functionLinenumber: 20221
    functionLinenumberEnd: 20239
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_shr_slow
    - likely
    - JS_NewUint32
    - JS_VALUE_IS_BOTH_INT
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_shr)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:20245,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20245,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20247,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20249,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20250,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20254,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20258
      start: 20241
    functionDepth: 23
    functionLinenumber: 20241
    functionLinenumberEnd: 20258
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - likely
    - js_binary_logic_slow
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_sar)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:20264,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20264,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20265,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20266,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20267,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20275
      start: 20260
    functionDepth: 23
    functionLinenumber: 20260
    functionLinenumberEnd: 20275
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - likely
    - js_binary_logic_slow
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_and)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:20281,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20281,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20282,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20283,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20284,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20288,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20292
      start: 20277
    functionDepth: 23
    functionLinenumber: 20277
    functionLinenumberEnd: 20292
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - likely
    - js_binary_logic_slow
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    linkageType: ''
    returnType: void
    signature: void CASE(OP_or)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:20298,1
    - Dst: JS_VALUE_IS_BOTH_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20298,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:20299,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20300,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:20301,1
    - Dst: js_binary_logic_slow
      Src: /src/gpac/src/quickjs/quickjs.c:20305,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20309
      start: 20294
    functionDepth: 23
    functionLinenumber: 20294
    functionLinenumberEnd: 20309
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - likely
    - js_binary_logic_slow
    - JS_VALUE_IS_BOTH_INT
    - JS_NewInt32
    - JS_VALUE_GET_INT
    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: 20350
      start: 20313
    functionDepth: 0
    functionLinenumber: 20313
    functionLinenumberEnd: 20350
    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: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - opcode
    - ','
    - inv
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20422
      start: 20356
    functionDepth: 0
    functionLinenumber: 20356
    functionLinenumberEnd: 20422
    functionName: OP_CMP_EQ
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OP_CMP_EQ(opcode, inv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - opcode
    - ','
    - inv
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20479
      start: 20426
    functionDepth: 0
    functionLinenumber: 20426
    functionLinenumberEnd: 20479
    functionName: OP_CMP_STRICT_EQ
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OP_CMP_STRICT_EQ(opcode, inv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_operator_in
      Src: /src/gpac/src/quickjs/quickjs.c:20485,1
    - Dst: js_operator_private_in
      Src: /src/gpac/src/quickjs/quickjs.c:20491,1
    - Dst: js_operator_instanceof
      Src: /src/gpac/src/quickjs/quickjs.c:20497,1
    - Dst: js_operator_typeof
      Src: /src/gpac/src/quickjs/quickjs.c:20505,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20506,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:20507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20508
      start: 20483
    functionDepth: 20
    functionLinenumber: 20483
    functionLinenumberEnd: 20508
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_AtomToString
    - JS_FreeValue
    - js_operator_typeof
    - js_operator_private_in
    - js_operator_in
    - js_operator_instanceof
    linkageType: ''
    returnType: void
    signature: void CASE(OP_in)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_operator_delete
      Src: /src/gpac/src/quickjs/quickjs.c:20512,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:20520,1
    - Dst: JS_DeleteGlobalVar
      Src: /src/gpac/src/quickjs/quickjs.c:20524,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20525,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:20527,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20528
      start: 20510
    functionDepth: 18
    functionLinenumber: 20510
    functionLinenumberEnd: 20528
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewBool
    - get_u32
    - JS_DeleteGlobalVar
    - unlikely
    - js_operator_delete
    linkageType: ''
    returnType: void
    signature: void CASE(OP_delete)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20532,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:20534,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20535,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20537,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20539
      start: 20531
    functionDepth: 1
    functionLinenumber: 20531
    functionLinenumberEnd: 20539
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ToObject
    - JS_FreeValue
    - JS_IsException
    - 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:20543,1
    - Dst: JS_ToPropertyKey
      Src: /src/gpac/src/quickjs/quickjs.c:20550,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20551,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20553,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20556
      start: 20542
    functionDepth: 21
    functionLinenumber: 20542
    functionLinenumberEnd: 20556
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ToPropertyKey
    - JS_FreeValue
    - JS_IsException
    - 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:20561,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:20562,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20563,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20565,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20567
      start: 20560
    functionDepth: 21
    functionLinenumber: 20560
    functionLinenumberEnd: 20567
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_FreeValue
    - JS_ToString
    - 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:20579,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:20580,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20586,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20587,1
    - Dst: js_has_unscopable
      Src: /src/gpac/src/quickjs/quickjs.c:20591,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20592,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20600,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20601,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:20604,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:20605,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20610,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20611,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20611,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:20614,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20618,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20619,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:20622,1
    - Dst: JS_ThrowReferenceErrorNotDefined
      Src: /src/gpac/src/quickjs/quickjs.c:20623,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:20627,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20629,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20631,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20635,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20636,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20638,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:20639,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:20643,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20648,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20649,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20654,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20655,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20655,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20665,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 95
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20668
      start: 20570
    functionDepth: 17
    functionLinenumber: 20570
    functionLinenumberEnd: 20668
    functionName: CASE
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_HasProperty
    - JS_NewBool
    - get_u32
    - unlikely
    - js_has_unscopable
    - JS_GetProperty
    - JS_SetPropertyInternal
    - JS_AtomToValue
    - JS_FreeValue
    - set_value
    - JS_ThrowReferenceErrorNotDefined
    - JS_DeleteProperty
    - JS_IsException
    - is_strict_mode
    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: 20696
      start: 20681
    functionDepth: 0
    functionLinenumber: 20681
    functionLinenumberEnd: 20696
    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:20699,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20701
      start: 20698
    functionDepth: 1
    functionLinenumber: 20698
    functionLinenumberEnd: 20701
    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:20705,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20707
      start: 20704
    functionDepth: 1
    functionLinenumber: 20704
    functionLinenumberEnd: 20707
    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:20713,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20715
      start: 20711
    functionDepth: 3
    functionLinenumber: 20711
    functionLinenumberEnd: 20715
    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:20719,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20721
      start: 20718
    functionDepth: 3
    functionLinenumber: 20718
    functionLinenumberEnd: 20721
    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:20799,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: 20801
      start: 20796
    functionDepth: 23
    functionLinenumber: 20796
    functionLinenumberEnd: 20801
    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:20806,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20808,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: 20810
      start: 20803
    functionDepth: 23
    functionLinenumber: 20803
    functionLinenumberEnd: 20810
    functionName: JS_CallFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 7
    functionsReached:
    - JS_CallInternal
    - JS_FreeValue
    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:20819,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20821,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:20842,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:20845,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:20852,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 2
    argNames:
    - ctx
    - func_obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20860
      start: 20814
    functionDepth: 1
    functionLinenumber: 20814
    functionLinenumberEnd: 20860
    functionName: JS_GetFunctionRealm
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowTypeErrorRevokedProxy
    - JS_GetFunctionRealm
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:20868,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20869,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:20871,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20872,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:20874,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20875,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:20876,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20879,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:20882,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20883,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - ctor
    - class_id
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20885
      start: 20862
    functionDepth: 11
    functionLinenumber: 20862
    functionLinenumberEnd: 20885
    functionName: js_create_from_ctor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionRealm
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_DupValue
    - JS_IsObject
    - JS_IsException
    - JS_NewObjectProtoClass
    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:20896,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20899,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20899,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20901,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20902,1
    - Dst: JS_ThrowTypeErrorNotAConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:20903,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:20904,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:20909,1
    - Dst: call_func
      Src: /src/gpac/src/quickjs/quickjs.c:20911,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:20917,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:20921,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20922,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:20924,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:20925,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20926,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20927,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20930,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: 20934
      start: 20888
    functionDepth: 23
    functionLinenumber: 20888
    functionLinenumberEnd: 20934
    functionName: JS_CallConstructorInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_ThrowTypeError
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - JS_ThrowTypeErrorNotAConstructor
    - call_func
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_create_from_ctor
    - JS_IsException
    - JS_CallInternal
    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:20940,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: 20943
      start: 20936
    functionDepth: 24
    functionLinenumber: 20936
    functionLinenumberEnd: 20943
    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:20948,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: 20951
      start: 20945
    functionDepth: 24
    functionLinenumber: 20945
    functionLinenumberEnd: 20951
    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:20957,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:20958,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:20960,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: 20961
      start: 20953
    functionDepth: 24
    functionLinenumber: 20953
    functionLinenumberEnd: 20961
    functionName: JS_Invoke
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetProperty
    - JS_CallFree
    - JS_IsException
    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:20966,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:20967,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: 20969
      start: 20963
    functionDepth: 25
    functionLinenumber: 20963
    functionLinenumberEnd: 20969
    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: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:20982,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:20984,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:20985,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:20988,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:20989,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:20990,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20996,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:20997,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21006,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 32
    argCount: 5
    argNames:
    - ctx
    - func_obj
    - this_obj
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21014
      start: 20972
    functionDepth: 6
    functionLinenumber: 20972
    functionLinenumberEnd: 21014
    functionName: async_func_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - JS_VALUE_GET_OBJ
    - js_rc
    - add_gc_object
    - max_int
    - JS_DupValue
    - memset
    linkageType: ''
    returnType: JSAsyncFunctionState
    signature: "JSAsyncFunctionState *async_func_init(JSContext *ctx,\n                                             JSValueConst
      func_obj, JSValueConst this_obj,\n                                             int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:21022,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21024,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21026,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21027,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncFunctionState*
    assertStmts:
    - condition: (sf->cur_sp != NULL)
      pos:
        line_end: 21021
        line_start: 21021
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 21028
      start: 21016
    functionDepth: 1
    functionLinenumber: 21016
    functionLinenumberEnd: 21028
    functionName: async_func_free_frame
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - 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:21036,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:21037,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:21038,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:21041,1
    - Dst: JS_CallInternal
      Src: /src/gpac/src/quickjs/quickjs.c:21042,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21045,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:21045,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:21049,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:21052,1
    - Dst: close_var_refs
      Src: /src/gpac/src/quickjs/quickjs.c:21060,1
    - Dst: async_func_free_frame
      Src: /src/gpac/src/quickjs/quickjs.c:21062,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSAsyncFunctionState*
    assertStmts:
    - condition: (!s->is_completed)
      pos:
        line_end: 21035
        line_start: 21035
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 21065
      start: 21030
    functionDepth: 23
    functionLinenumber: 21030
    functionLinenumberEnd: 21065
    functionName: async_func_resume
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowStackOverflow
    - close_var_refs
    - JS_MKPTR
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - async_func_free_frame
    - JS_IsException
    - js_check_stack_overflow
    - assert
    - JS_CallInternal
    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:21072,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21075,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21076,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:21078,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:21079,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:21080,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:21082,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncFunctionState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21084
      start: 21067
    functionDepth: 4
    functionLinenumber: 21067
    functionLinenumberEnd: 21084
    functionName: __async_func_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_add_tail
    - async_func_free_frame
    - js_rc
    - js_free_rt
    - JS_FreeValueRT
    - remove_gc_object
    linkageType: ''
    returnType: void
    signature: void __async_func_free(JSRuntime *rt, JSAsyncFunctionState *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:21088,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:21090,1
    - Dst: list_add
      Src: /src/gpac/src/quickjs/quickjs.c:21091,1
    - Dst: free_zero_refcount
      Src: /src/gpac/src/quickjs/quickjs.c:21093,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncFunctionState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21097
      start: 21086
    functionDepth: 12
    functionLinenumber: 21086
    functionLinenumberEnd: 21097
    functionName: async_func_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_rc
    - list_del
    - free_zero_refcount
    - list_add
    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:21119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21123
      start: 21114
    functionDepth: 13
    functionLinenumber: 21114
    functionLinenumberEnd: 21123
    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:21127,1
    - Dst: free_generator_stack_rt
      Src: /src/gpac/src/quickjs/quickjs.c:21130,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:21131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21133
      start: 21125
    functionDepth: 14
    functionLinenumber: 21125
    functionLinenumberEnd: 21133
    functionName: js_generator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_generator_stack_rt
    - js_free_rt
    - JS_GetOpaque
    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:21137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21138
      start: 21135
    functionDepth: 14
    functionLinenumber: 21135
    functionLinenumberEnd: 21138
    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:21143,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:21148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21149
      start: 21140
    functionDepth: 1
    functionLinenumber: 21140
    functionLinenumberEnd: 21149
    functionName: js_generator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mark_func
    - JS_VALUE_GET_OBJ
    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:21160,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:21166,1
    - Dst: free_generator_stack
      Src: /src/gpac/src/quickjs/quickjs.c:21174,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21182,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:21185,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:21189,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:21195,1
    - Dst: free_generator_stack
      Src: /src/gpac/src/quickjs/quickjs.c:21199,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:21202,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:21202,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:21206,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21224,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:21227,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21227,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:21232,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: 21201
        line_start: 21201
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 21236
      start: 21156
    functionDepth: 24
    functionLinenumber: 21156
    functionLinenumberEnd: 21236
    functionName: js_generator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_generator_stack
    - JS_ThrowTypeError
    - JS_VALUE_GET_INT
    - JS_GetOpaque
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - JS_NewInt32
    - JS_Throw
    - assert
    - 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:21246,1
    - Dst: async_func_init
      Src: /src/gpac/src/quickjs/quickjs.c:21250,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:21257,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21258,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21260,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:21262,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21263,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:21265,1
    - Dst: free_generator_stack_rt
      Src: /src/gpac/src/quickjs/quickjs.c:21268,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:21269,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: 21271
      start: 21238
    functionDepth: 24
    functionLinenumber: 21238
    functionLinenumberEnd: 21271
    functionName: js_generator_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_init
    - js_mallocz
    - JS_SetOpaque
    - JS_FreeValue
    - js_create_from_ctor
    - js_free
    - JS_IsException
    - free_generator_stack_rt
    - async_func_resume
    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:21277,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:21280,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21282
      start: 21275
    functionDepth: 13
    functionLinenumber: 21275
    functionLinenumberEnd: 21282
    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:21287,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:21290,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21292
      start: 21284
    functionDepth: 1
    functionLinenumber: 21284
    functionLinenumberEnd: 21292
    functionName: js_async_function_resolve_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mark_func
    - JS_VALUE_GET_OBJ
    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:21303,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21305,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21307,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:21310,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:21311,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - s
    - resolving_funcs
    argTypes:
    - JSContext*
    - JSAsyncFunctionState*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21315
      start: 21294
    functionDepth: 11
    functionLinenumber: 21294
    functionLinenumberEnd: 21315
    functionName: js_async_function_resolve_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - js_rc
    - JS_FreeValue
    - JS_IsException
    - JS_NewObjectProtoClass
    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:21321,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21323,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:21326,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:21327,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21329,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21330,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:21333,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21335,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21336,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21346,1
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:21347,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21349,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21350,1
    - Dst: js_async_function_resolve_create
      Src: /src/gpac/src/quickjs/quickjs.c:21352,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21353,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:21361,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21364,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21366,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSAsyncFunctionState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21370
      start: 21317
    functionDepth: 24
    functionLinenumber: 21317
    functionLinenumberEnd: 21370
    functionName: js_async_function_resume
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_async_function_resolve_create
    - js_promise_resolve
    - JS_FreeValue
    - perform_promise_then
    - JS_Call
    - JS_IsException
    - 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:21378,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:21389,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21389,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21392,1
    - Dst: js_async_function_resume
      Src: /src/gpac/src/quickjs/quickjs.c:21394,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: 21396
      start: 21372
    functionDepth: 25
    functionLinenumber: 21372
    functionLinenumberEnd: 21396
    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:21405,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:21409,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21410,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:21411,1
    - Dst: js_async_function_resume
      Src: /src/gpac/src/quickjs/quickjs.c:21415,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:21417,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: 21420
      start: 21398
    functionDepth: 25
    functionLinenumber: 21398
    functionLinenumberEnd: 21420
    functionName: js_async_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewPromiseCapability
    - async_func_init
    - js_async_function_resume
    - async_func_free
    - JS_IsException
    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:21457,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:21458,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21459,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21460,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21461,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:21462,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:21463,1
    - Dst: async_func_free
      Src: /src/gpac/src/quickjs/quickjs.c:21466,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:21467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 2
    argNames:
    - rt
    - s
    argTypes:
    - JSRuntime*
    - JSAsyncGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21468
      start: 21451
    functionDepth: 13
    functionLinenumber: 21451
    functionLinenumberEnd: 21468
    functionName: js_async_generator_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - async_func_free
    - js_free_rt
    - JS_FreeValueRT
    - list_for_each_safe
    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:21472,1
    - Dst: js_async_generator_free
      Src: /src/gpac/src/quickjs/quickjs.c:21475,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - obj
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21477
      start: 21470
    functionDepth: 14
    functionLinenumber: 21470
    functionLinenumberEnd: 21477
    functionName: js_async_generator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_async_generator_free
    - JS_GetOpaque
    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:21482,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:21486,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:21487,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:21488,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:21489,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:21490,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:21491,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:21494,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21497
      start: 21479
    functionDepth: 2
    functionLinenumber: 21479
    functionLinenumberEnd: 21497
    functionName: js_async_generator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - mark_func
    - list_for_each
    - JS_GetOpaque
    - 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:21513,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21515,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21517,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: 21523
      start: 21504
    functionDepth: 12
    functionLinenumber: 21504
    functionLinenumberEnd: 21523
    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:21532,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21534,1
    - Dst: js_async_generator_resolve_function_create
      Src: /src/gpac/src/quickjs/quickjs.c:21537,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:21537,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21539,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:21547,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21550,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21552,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 3
    argNames:
    - ctx
    - s
    - value
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21558
      start: 21525
    functionDepth: 13
    functionLinenumber: 21525
    functionLinenumberEnd: 21558
    functionName: js_async_generator_await
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_promise_resolve
    - JS_FreeValue
    - perform_promise_then
    - JS_IsException
    - js_async_generator_resolve_function_create
    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:21568,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:21569,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:21570,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21572,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21573,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21574,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21575,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21576,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:21577,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: 21578
      start: 21560
    functionDepth: 24
    functionLinenumber: 21560
    functionLinenumberEnd: 21578
    functionName: js_async_generator_resolve_or_reject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - list_del
    - JS_FreeValue
    - JS_Call
    - 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:21586,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21586,1
    - Dst: js_async_generator_resolve_or_reject
      Src: /src/gpac/src/quickjs/quickjs.c:21588,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21589,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - ctx
    - s
    - value
    - done
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21590
      start: 21580
    functionDepth: 25
    functionLinenumber: 21580
    functionLinenumberEnd: 21590
    functionName: js_async_generator_resolve
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_create_iterator_result
    - JS_DupValue
    - JS_FreeValue
    - 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:21596,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - s
    - exception
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21597
      start: 21592
    functionDepth: 25
    functionLinenumber: 21592
    functionLinenumberEnd: 21597
    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:21604,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21607
      start: 21599
    functionDepth: 13
    functionLinenumber: 21599
    functionLinenumberEnd: 21607
    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:21617,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21621,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:21622,1
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:21623,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21625,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21626,1
    - Dst: js_async_generator_resolve_function_create
      Src: /src/gpac/src/quickjs/quickjs.c:21629,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:21630,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21633,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:21638,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21641,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21642,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21643,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - s
    - value
    argTypes:
    - JSContext*
    - JSAsyncGeneratorData*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21645
      start: 21609
    functionDepth: 13
    functionLinenumber: 21609
    functionLinenumberEnd: 21645
    functionName: js_async_generator_completed_return
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - js_promise_resolve
    - JS_FreeValue
    - perform_promise_then
    - JS_IsException
    - JS_GetException
    - js_async_generator_resolve_function_create
    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:21654,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:21656,1
    - Dst: js_async_generator_complete
      Src: /src/gpac/src/quickjs/quickjs.c:21667,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:21672,1
    - Dst: js_async_generator_completed_return
      Src: /src/gpac/src/quickjs/quickjs.c:21675,1
    - Dst: js_async_generator_reject
      Src: /src/gpac/src/quickjs/quickjs.c:21677,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21682,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:21685,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:21692,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:21699,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21701,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:21702,1
    - Dst: js_async_generator_complete
      Src: /src/gpac/src/quickjs/quickjs.c:21703,1
    - Dst: js_async_generator_reject
      Src: /src/gpac/src/quickjs/quickjs.c:21704,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21705,1
    - Dst: js_async_generator_complete
      Src: /src/gpac/src/quickjs/quickjs.c:21708,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:21709,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21710,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:21714,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:21714,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:21715,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:21725,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21726,1
    - Dst: js_async_generator_await
      Src: /src/gpac/src/quickjs/quickjs.c:21729,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21730,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:21738,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:21743,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: 21713
        line_start: 21713
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 21747
      start: 21647
    functionDepth: 26
    functionLinenumber: 21647
    functionLinenumberEnd: 21747
    functionName: js_async_generator_resume_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_INT
    - list_entry
    - js_async_generator_reject
    - js_async_generator_completed_return
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_async_generator_await
    - list_empty
    - js_async_generator_resolve
    - js_async_generator_complete
    - JS_DupValue
    - JS_GetException
    - JS_IsException
    - JS_NewInt32
    - JS_Throw
    - assert
    - abort
    - async_func_resume
    linkageType: ''
    returnType: void
    signature: "void js_async_generator_resume_next(JSContext *ctx,\n                                           JSAsyncGeneratorData
      *s)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:21755,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:21762,1
    - Dst: js_async_generator_reject
      Src: /src/gpac/src/quickjs/quickjs.c:21766,1
    - Dst: js_async_generator_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:21768,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:21774,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21774,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21777,1
    - Dst: js_async_generator_resume_next
      Src: /src/gpac/src/quickjs/quickjs.c:21779,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    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_AWAITING_RETURN ||\n               s->state
        == JS_ASYNC_GENERATOR_STATE_COMPLETED)"
      pos:
        line_end: 21762
        line_start: 21761
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 21782
      start: 21749
    functionDepth: 27
    functionLinenumber: 21749
    functionLinenumberEnd: 21782
    functionName: js_async_generator_resolve_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_async_generator_resume_next
    - js_async_generator_reject
    - JS_GetOpaque
    - js_async_generator_resolve
    - JS_DupValue
    - JS_Throw
    - assert
    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:21789,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:21793,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21794,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:21798,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:21799,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:21800,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21802,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21803,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21804,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21805,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:21808,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21812,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:21813,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:21816,1
    - Dst: js_async_generator_resume_next
      Src: /src/gpac/src/quickjs/quickjs.c:21818,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21822,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21823,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21824,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: 21826
      start: 21785
    functionDepth: 27
    functionLinenumber: 21785
    functionLinenumberEnd: 21826
    functionName: js_async_generator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewPromiseCapability
    - list_add_tail
    - JS_ThrowTypeError
    - js_async_generator_resume_next
    - js_mallocz
    - JS_FreeValue
    - JS_GetOpaque
    - JS_Call
    - JS_DupValue
    - JS_IsException
    - 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:21836,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:21840,1
    - Dst: async_func_init
      Src: /src/gpac/src/quickjs/quickjs.c:21841,1
    - Dst: async_func_resume
      Src: /src/gpac/src/quickjs/quickjs.c:21846,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21847,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:21849,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:21851,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:21852,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:21854,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:21855,1
    - Dst: js_async_generator_free
      Src: /src/gpac/src/quickjs/quickjs.c:21858,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: 21860
      start: 21828
    functionDepth: 24
    functionLinenumber: 21828
    functionLinenumberEnd: 21860
    functionName: js_async_generator_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - async_func_init
    - init_list_head
    - js_mallocz
    - JS_VALUE_GET_OBJ
    - JS_SetOpaque
    - js_async_generator_free
    - JS_FreeValue
    - js_create_from_ctor
    - JS_IsException
    - 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: 22249
      start: 22248
    functionDepth: 0
    functionLinenumber: 22248
    functionLinenumberEnd: 22249
    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: 22263
      start: 22260
    functionDepth: 0
    functionLinenumber: 22260
    functionLinenumberEnd: 22263
    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: 22265
      start: 22264
    functionDepth: 0
    functionLinenumber: 22264
    functionLinenumberEnd: 22265
    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:22273,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:22277,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:22280,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:22281,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:22285,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:22290,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - s
    - token
    argTypes:
    - JSParseState*
    - JSToken*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22294
      start: 22269
    functionDepth: 7
    functionLinenumber: 22269
    functionLinenumberEnd: 22294
    functionName: free_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeAtom
    - JS_FreeValue
    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:22303,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22304,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22311,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:22312,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:22319,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22320,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:22321,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:22327,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22328,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:22329,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:22335,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:22336,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22337,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:22338,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:22339,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22343,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22349,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:22351,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 48
    argCount: 2
    argNames:
    - s
    - token
    argTypes:
    - JSParseState*
    - JSToken*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22355
      start: 22296
    functionDepth: 24
    functionLinenumber: 22296
    functionLinenumberEnd: 22355
    functionName: __maybe_unused::dump_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_ToFloat64
    - printf
    - JS_FreeCString
    - JS_AtomGetStr
    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: 22385
      start: 22367
    functionDepth: 0
    functionLinenumber: 22367
    functionLinenumberEnd: 22385
    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:22391,1
    - Dst: get_line_col
      Src: /src/gpac/src/quickjs/quickjs.c:22399,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 3
    argNames:
    - s
    - pcol_num
    - ptr
    argTypes:
    - GetLineColCache*
    - int*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22420
      start: 22387
    functionDepth: 1
    functionLinenumber: 22387
    functionLinenumberEnd: 22420
    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:22427,1
    - Dst: JS_ThrowError2
      Src: /src/gpac/src/quickjs/quickjs.c:22428,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:22429,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: 22432
      start: 22423
    functionDepth: 12
    functionLinenumber: 22423
    functionLinenumberEnd: 22432
    functionName: js_parse_error_v
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowError2
    - build_backtrace
    - get_line_col
    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:22436,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:22443,1
    - Dst: js_parse_error_v
      Src: /src/gpac/src/quickjs/quickjs.c:22444,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:22445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - s
    - ptr
    - fmt
    argTypes:
    - JSParseState*
    - uint8_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22447
      start: 22436
    functionDepth: 13
    functionLinenumber: 22436
    functionLinenumberEnd: 22447
    functionName: js_parse_error_pos
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - va_end
    - js_parse_error_v
    - format
    - va_start
    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:22451,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:22458,1
    - Dst: js_parse_error_v
      Src: /src/gpac/src/quickjs/quickjs.c:22459,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:22460,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - s
    - fmt
    argTypes:
    - JSParseState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22462
      start: 22451
    functionDepth: 13
    functionLinenumber: 22451
    functionLinenumberEnd: 22462
    functionName: js_parse_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - va_end
    - js_parse_error_v
    - format
    - va_start
    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:22468,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:22470,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - tok
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22471
      start: 22464
    functionDepth: 14
    functionLinenumber: 22464
    functionLinenumberEnd: 22471
    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:22480,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:22482,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22483
      start: 22473
    functionDepth: 14
    functionLinenumber: 22473
    functionLinenumberEnd: 22483
    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:22488,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:22489,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22491
      start: 22485
    functionDepth: 14
    functionLinenumber: 22485
    functionLinenumberEnd: 22491
    functionName: js_parse_error_reserved_identifier
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomGetStr
    - js_parse_error
    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:22500,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:22516,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22530,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22532,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22537,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:22540,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:22541,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22550,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:22552,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 58
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - JSParseState*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22554
      start: 22493
    functionDepth: 14
    functionLinenumber: 22493
    functionLinenumberEnd: 22554
    functionName: js_parse_template_part
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - unicode_from_utf8
    - string_buffer_free
    - js_parse_error
    - string_buffer_putc8
    - js_parse_error_pos
    - JS_IsException
    - string_buffer_init
    - string_buffer_putc
    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:22567,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22631,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22637,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:22647,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22651,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22664,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22669,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:22672,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:22673,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22683,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22687,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:22689,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: 22691
      start: 22556
    functionDepth: 14
    functionLinenumber: 22556
    functionLinenumberEnd: 22691
    functionName: js_parse_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_parse_escape
    - string_buffer_end
    - unicode_from_utf8
    - string_buffer_free
    - js_parse_error
    - js_parse_error_pos
    - JS_IsException
    - string_buffer_init
    - string_buffer_putc
    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: 22696
      start: 22693
    functionDepth: 0
    functionLinenumber: 22693
    functionLinenumberEnd: 22696
    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:22710,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:22712,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22717,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:22732,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22741,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22751,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22754,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:22760,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22765,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22774,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:22780,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:22782,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:22787,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:22788,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:22789,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:22790,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:22791,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:22792,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:22801,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:22802,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 111
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22804
      start: 22698
    functionDepth: 14
    functionLinenumber: 22698
    functionLinenumberEnd: 22804
    functionName: js_parse_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_js_is_ident_next
    - string_buffer_end
    - unicode_from_utf8
    - string_buffer_free
    - js_parse_error
    - JS_FreeValue
    - string_buffer_putc8
    - js_parse_error_pos
    - JS_IsException
    - string_buffer_init
    - string_buffer_putc
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_regexp(JSParseState *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:22819,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:22822,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:22824,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: 22831
      start: 22806
    functionDepth: 7
    functionLinenumber: 22806
    functionLinenumberEnd: 22831
    functionName: ident_realloc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_realloc
    - memcpy
    - js_malloc
    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: 22860
      start: 22834
    functionDepth: 0
    functionLinenumber: 22834
    functionLinenumberEnd: 22860
    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:22871,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22873
      start: 22864
    functionDepth: 1
    functionLinenumber: 22864
    functionLinenumberEnd: 22873
    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:22896,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:22900,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22903,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:22905,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:22908,1
    - Dst: ident_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:22909,1
    - Dst: JS_NewAtomLen
      Src: /src/gpac/src/quickjs/quickjs.c:22915,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:22917,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:22918,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: 22921
      start: 22876
    functionDepth: 10
    functionLinenumber: 22876
    functionLinenumberEnd: 22921
    functionName: parse_ident
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_js_is_ident_next
    - lre_parse_escape
    - JS_NewAtomLen
    - unlikely
    - unicode_from_utf8
    - unicode_to_utf8
    - js_free
    - ident_realloc
    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:22931,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22932,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:22935,1
    - Dst: js_parse_template_part
      Src: /src/gpac/src/quickjs/quickjs.c:22951,1
    - Dst: js_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:22957,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:22982,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:22993,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23014,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:23037,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:23038,1
    - Dst: parse_ident
      Src: /src/gpac/src/quickjs/quickjs.c:23068,1
    - Dst: update_token_ident
      Src: /src/gpac/src/quickjs/quickjs.c:23075,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:23085,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23087,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:23089,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23090,1
    - Dst: parse_ident
      Src: /src/gpac/src/quickjs/quickjs.c:23095,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23116,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23117,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:23132,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:23134,1
    - Dst: JS_VALUE_IS_NAN
      Src: /src/gpac/src/quickjs/quickjs.c:23137,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:23138,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23138,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:23139,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23140,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23332,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:23340,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:23342,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23346,1
    CyclomaticComplexity: 155
    EdgeCount: 155
    ICount: 505
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23364
      start: 22924
    functionDepth: 19
    functionLinenumber: 22924
    functionLinenumberEnd: 23364
    functionName: next_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - lre_js_is_ident_first
    - lre_js_is_ident_next
    - lre_parse_escape
    - lre_is_space
    - JS_VALUE_IS_NAN
    - js_parse_string
    - unicode_from_utf8
    - is_digit
    - js_parse_error
    - JS_FreeValue
    - parse_ident
    - js_parse_template_part
    - js_atof
    - update_token_ident
    - JS_IsException
    - js_check_stack_overflow
    - free_token
    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:23382,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:23385,1
    - Dst: ident_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:23386,1
    - Dst: JS_NewAtomLen
      Src: /src/gpac/src/quickjs/quickjs.c:23392,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:23394,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:23395,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 3
    argNames:
    - s
    - pp
    - c
    argTypes:
    - JSParseState*
    - uint8_t**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23398
      start: 23368
    functionDepth: 10
    functionLinenumber: 23368
    functionLinenumberEnd: 23398
    functionName: json_parse_ident
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewAtomLen
    - unlikely
    - js_free
    - lre_is_id_continue_byte
    - ident_realloc
    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:23407,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23419,1
    - Dst: from_hex
      Src: /src/gpac/src/quickjs/quickjs.c:23435,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23437,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23459,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23464,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23466,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:23471,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:23476,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23481,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:23483,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 101
    argCount: 3
    argNames:
    - s
    - pp
    - sep
    argTypes:
    - JSParseState*
    - uint8_t**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23485
      start: 23400
    functionDepth: 14
    functionLinenumber: 23400
    functionLinenumberEnd: 23485
    functionName: json_parse_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - unicode_from_utf8
    - string_buffer_free
    - js_parse_error
    - from_hex
    - js_parse_error_pos
    - string_buffer_init
    - string_buffer_putc
    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:23498,1
    - Dst: strstart
      Src: /src/gpac/src/quickjs/quickjs.c:23500,1
    - Dst: strstart
      Src: /src/gpac/src/quickjs/quickjs.c:23509,1
    - Dst: to_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23536,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23538,1
    - Dst: js_atod
      Src: /src/gpac/src/quickjs/quickjs.c:23540,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23545,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23546,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23549,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23554,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23555,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23556,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23563,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:23564,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23565,1
    - Dst: js_atod
      Src: /src/gpac/src/quickjs/quickjs.c:23568,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:23571,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 81
    argCount: 2
    argNames:
    - s
    - pp
    argTypes:
    - JSParseState*
    - uint8_t**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23574
      start: 23487
    functionDepth: 14
    functionLinenumber: 23487
    functionLinenumberEnd: 23574
    functionName: json_parse_number
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - strstart
    - js_atod
    - is_digit
    - to_digit
    - js_parse_error_pos
    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:23582,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23583,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:23586,1
    - Dst: json_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:23608,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23640,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23648,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23666,1
    - Dst: json_parse_ident
      Src: /src/gpac/src/quickjs/quickjs.c:23699,1
    - Dst: is_digit
      Src: /src/gpac/src/quickjs/quickjs.c:23712,1
    - Dst: json_parse_number
      Src: /src/gpac/src/quickjs/quickjs.c:23723,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:23728,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 215
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23744
      start: 23576
    functionDepth: 15
    functionLinenumber: 23576
    functionLinenumberEnd: 23744
    functionName: json_next_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unicode_from_utf8
    - is_digit
    - js_parse_error
    - json_parse_number
    - js_check_stack_overflow
    - free_token
    - json_parse_string
    - json_parse_ident
    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:23754,1
    - Dst: lre_js_is_ident_next
      Src: /src/gpac/src/quickjs/quickjs.c:23755,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - p
    - s
    argTypes:
    - uint8_t*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23756
      start: 23746
    functionDepth: 1
    functionLinenumber: 23746
    functionLinenumberEnd: 23756
    functionName: match_identifier
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_js_is_ident_next
    - unicode_from_utf8
    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:23813,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:23815,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:23821,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:23825,1
    - Dst: match_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:23829,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:23834,1
    - Dst: lre_parse_escape
      Src: /src/gpac/src/quickjs/quickjs.c:23834,1
    - Dst: unicode_from_utf8
      Src: /src/gpac/src/quickjs/quickjs.c:23840,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:23844,1
    - Dst: lre_js_is_ident_first
      Src: /src/gpac/src/quickjs/quickjs.c:23846,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 78
    argCount: 2
    argNames:
    - pp
    - no_line_terminator
    argTypes:
    - uint8_t**
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23852
      start: 23769
    functionDepth: 2
    functionLinenumber: 23769
    functionLinenumberEnd: 23852
    functionName: simple_next_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - lre_js_is_ident_first
    - lre_parse_escape
    - lre_is_space
    - unicode_from_utf8
    - match_identifier
    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:23857,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - no_line_terminator
    argTypes:
    - JSParseState*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23858
      start: 23854
    functionDepth: 3
    functionLinenumber: 23854
    functionLinenumberEnd: 23858
    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:23871,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 21
    argCount: 2
    argNames:
    - pp
    - buf_end
    argTypes:
    - uint8_t**
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23883
      start: 23860
    functionDepth: 1
    functionLinenumber: 23860
    functionLinenumberEnd: 23883
    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:23896,1
    - Dst: simple_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23897,1
    - Dst: simple_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:23899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - input
    - input_len
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23906
      start: 23891
    functionDepth: 3
    functionLinenumber: 23891
    functionLinenumberEnd: 23906
    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:23909,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fd
    argTypes:
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23913
      start: 23908
    functionDepth: 1
    functionLinenumber: 23908
    functionLinenumberEnd: 23913
    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:23916,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23934
      start: 23915
    functionDepth: 2
    functionLinenumber: 23915
    functionLinenumberEnd: 23934
    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:23938,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23939
      start: 23936
    functionDepth: 1
    functionLinenumber: 23936
    functionLinenumberEnd: 23939
    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:23943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23944
      start: 23941
    functionDepth: 1
    functionLinenumber: 23941
    functionLinenumberEnd: 23944
    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:23948,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23949
      start: 23946
    functionDepth: 1
    functionLinenumber: 23946
    functionLinenumberEnd: 23949
    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:23956,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:23957,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:23958,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - source_ptr
    argTypes:
    - JSParseState*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23961
      start: 23951
    functionDepth: 1
    functionLinenumber: 23951
    functionLinenumberEnd: 23961
    functionName: emit_source_pos
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_u32
    - dbuf_putc
    - unlikely
    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:23969,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23970
      start: 23963
    functionDepth: 1
    functionLinenumber: 23963
    functionLinenumberEnd: 23970
    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:23975,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:23977,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:23977,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - name
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23979
      start: 23972
    functionDepth: 3
    functionLinenumber: 23972
    functionLinenumberEnd: 23979
    functionName: emit_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_claim
    - JS_DupAtom
    - put_u32
    linkageType: ''
    returnType: void
    signature: void emit_atom(JSParseState *s, JSAtom name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:23985,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:23988,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: 23984
        line_start: 23984
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (ls->ref_count >= 0)
      pos:
        line_end: 23987
        line_start: 23987
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 23990
      start: 23981
    functionDepth: 0
    functionLinenumber: 23981
    functionLinenumberEnd: 23990
    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:23997,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - fd
    argTypes:
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24009
      start: 23992
    functionDepth: 9
    functionLinenumber: 23992
    functionLinenumberEnd: 24009
    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:24014,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:24015,1
    - Dst: dbuf_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:24016,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24019
      start: 24011
    functionDepth: 10
    functionLinenumber: 24011
    functionLinenumberEnd: 24019
    functionName: new_label
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_set_error
    - unlikely
    - new_label_fd
    linkageType: ''
    returnType: int
    signature: int new_label(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:24024,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24025,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - label
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24027
      start: 24022
    functionDepth: 2
    functionLinenumber: 24022
    functionLinenumberEnd: 24027
    functionName: emit_label_raw
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_u8
    - emit_u32
    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:24033,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24034,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - s
    - label
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24040
      start: 24030
    functionDepth: 2
    functionLinenumber: 24030
    functionLinenumberEnd: 24040
    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:24045,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:24047,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24051,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24052,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - s
    - opcode
    - label
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24057
      start: 24043
    functionDepth: 11
    functionLinenumber: 24043
    functionLinenumberEnd: 24057
    functionName: emit_goto
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_is_live_code
    - emit_op
    - 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:24064,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:24066,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - val
    argTypes:
    - JSParseState*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24071
      start: 24060
    functionDepth: 9
    functionLinenumber: 24060
    functionLinenumberEnd: 24071
    functionName: cpool_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resize_array
    - JS_FreeValue
    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:24078,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:24081,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:24082,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:24082,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:24083,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24084,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24085,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:24090,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:24090,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24093,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:24094,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - s
    - val
    - as_atom
    argTypes:
    - JSParseState*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24096
      start: 24073
    functionDepth: 10
    functionLinenumber: 24073
    functionLinenumberEnd: 24096
    functionName: emit_push_const
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_u32
    - JS_VALUE_GET_STRING
    - JS_NewAtomStr
    - emit_op
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - __JS_AtomIsTaggedInt
    - cpool_add
    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: 24108
      start: 24100
    functionDepth: 0
    functionLinenumber: 24100
    functionLinenumberEnd: 24108
    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:24117,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24118
      start: 24110
    functionDepth: 1
    functionLinenumber: 24110
    functionLinenumberEnd: 24118
    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: 24133
      start: 24121
    functionDepth: 0
    functionLinenumber: 24121
    functionLinenumberEnd: 24133
    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: 24146
      start: 24137
    functionDepth: 0
    functionLinenumber: 24137
    functionLinenumberEnd: 24146
    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:24156,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: 24162
      start: 24149
    functionDepth: 1
    functionLinenumber: 24149
    functionLinenumberEnd: 24162
    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: 24175
      start: 24165
    functionDepth: 0
    functionLinenumber: 24165
    functionLinenumberEnd: 24175
    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:24179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - fd
    - name
    argTypes:
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24184
      start: 24177
    functionDepth: 1
    functionLinenumber: 24177
    functionLinenumberEnd: 24184
    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:24199,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: 24203
      start: 24186
    functionDepth: 2
    functionLinenumber: 24186
    functionLinenumberEnd: 24203
    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:24215,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:24217,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:24220,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:24222,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24233,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24234,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24238
      start: 24205
    functionDepth: 7
    functionLinenumber: 24205
    functionLinenumberEnd: 24238
    functionName: push_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - max_int
    - emit_u16
    - memcpy
    - js_realloc2
    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: 24249
      start: 24240
    functionDepth: 0
    functionLinenumber: 24240
    functionLinenumberEnd: 24249
    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:24256,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24257,1
    - Dst: get_first_lexical_var
      Src: /src/gpac/src/quickjs/quickjs.c:24259,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24261
      start: 24251
    functionDepth: 2
    functionLinenumber: 24251
    functionLinenumberEnd: 24261
    functionName: pop_scope
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_u16
    - emit_op
    - get_first_lexical_var
    linkageType: ''
    returnType: void
    signature: void pop_scope(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24266,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - s
    - scope
    - scope_stop
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24270
      start: 24263
    functionDepth: 2
    functionLinenumber: 24263
    functionLinenumberEnd: 24270
    functionName: close_scopes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_u16
    - emit_op
    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:24279,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:24282,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:24286,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24290
      start: 24273
    functionDepth: 14
    functionLinenumber: 24273
    functionLinenumberEnd: 24290
    functionName: add_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - memset
    - js_resize_array
    - JS_ThrowInternalError
    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:24295,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: 24305
      start: 24292
    functionDepth: 15
    functionLinenumber: 24292
    functionLinenumberEnd: 24305
    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:24310,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24317
      start: 24307
    functionDepth: 15
    functionLinenumber: 24307
    functionLinenumberEnd: 24317
    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:24322,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24326
      start: 24319
    functionDepth: 15
    functionLinenumber: 24319
    functionLinenumberEnd: 24326
    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:24334,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:24339,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24351
      start: 24330
    functionDepth: 15
    functionLinenumber: 24330
    functionLinenumberEnd: 24351
    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:24359,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:24362,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:24366,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24367,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - fd
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24370
      start: 24353
    functionDepth: 14
    functionLinenumber: 24353
    functionLinenumberEnd: 24370
    functionName: add_arg
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - memset
    - js_resize_array
    - JS_ThrowInternalError
    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:24378,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24388,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - s
    - name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24390
      start: 24373
    functionDepth: 9
    functionLinenumber: 24373
    functionLinenumberEnd: 24390
    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:24411,1
    - Dst: find_lexical_decl
      Src: /src/gpac/src/quickjs/quickjs.c:24418,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24436,1
    - Dst: find_arg
      Src: /src/gpac/src/quickjs/quickjs.c:24443,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24445,1
    - Dst: find_var_in_child_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24448,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24449,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:24454,1
    - Dst: is_child_scope
      Src: /src/gpac/src/quickjs/quickjs.c:24455,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24457,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:24466,1
    - Dst: add_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:24480,1
    - Dst: add_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:24490,1
    - Dst: find_lexical_decl
      Src: /src/gpac/src/quickjs/quickjs.c:24494,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24498,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:24502,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:24507,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:24513,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:24516,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:24525,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: 24528
      start: 24402
    functionDepth: 16
    functionLinenumber: 24402
    functionLinenumberEnd: 24528
    functionName: define_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_lexical_decl
    - js_parse_error
    - abort
    - find_global_var
    - is_child_scope
    - find_var_in_child_scope
    - add_var
    - find_arg
    - find_var
    - add_scope_var
    - add_global_var
    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:24538,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: 24546
      start: 24531
    functionDepth: 16
    functionLinenumber: 24531
    functionLinenumberEnd: 24546
    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:24579,1
    - Dst: find_own_property1
      Src: /src/gpac/src/quickjs/quickjs.c:24580,1
    - Dst: js_update_property_flags
      Src: /src/gpac/src/quickjs/quickjs.c:24582,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24588
      start: 24574
    functionDepth: 11
    functionLinenumber: 24574
    functionLinenumberEnd: 24588
    functionName: seal_template_obj
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_update_property_flags
    - find_own_property1
    - JS_VALUE_GET_OBJ
    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:24602,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:24603,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:24606,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:24607,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:24610,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:24611,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:24613,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:24624,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:24625,1
    - Dst: js_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:24632,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:24635,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:24645,1
    - Dst: js_parse_string
      Src: /src/gpac/src/quickjs/quickjs.c:24647,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:24649,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:24651,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:24652,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24658,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:24659,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:24663,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24668,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24670,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24674,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:24677,1
    - Dst: js_parse_template_part
      Src: /src/gpac/src/quickjs/quickjs.c:24681,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:24684,1
    - Dst: seal_template_obj
      Src: /src/gpac/src/quickjs/quickjs.c:24689,1
    - Dst: seal_template_obj
      Src: /src/gpac/src/quickjs/quickjs.c:24690,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:24693,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:24694,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24697,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 84
    argCount: 3
    argNames:
    - s
    - call
    - argc
    argTypes:
    - JSParseState*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24698
      start: 24590
    functionDepth: 22
    functionLinenumber: 24590
    functionLinenumberEnd: 24698
    functionName: js_parse_template
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - seal_template_obj
    - JS_NewArray
    - emit_u16
    - emit_push_const
    - emit_op
    - JS_FreeValue
    - JS_DefinePropertyValueUint32
    - JS_DupValue
    - JS_IsException
    - next_token
    - emit_atom
    - js_parse_string
    - js_parse_template_part
    - js_parse_expect
    - free_token
    - js_parse_expr
    - JS_VALUE_GET_STRING
    - js_parse_error
    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: 24717
      start: 24711
    functionDepth: 0
    functionLinenumber: 24711
    functionLinenumberEnd: 24717
    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:24735,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:24736,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:24737,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24739,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24740,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24750,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24752,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:24755,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:24756,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24757,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24758,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24766,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24768,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:24777,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24782,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24783,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24794,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24797,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24802,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24805,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24808,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:24810,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:24812,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24816,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24817,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24825,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:24827,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:24833,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: 24837
      start: 24720
    functionDepth: 20
    functionLinenumber: 24720
    functionLinenumberEnd: 24837
    functionName: __exception::js_parse_property_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - token_is_ident
    - js_parse_expect
    - token_is_pseudo_keyword
    - JS_ValueToAtom
    - js_parse_error
    - js_parse_assign_expr
    - next_token
    - JS_DupAtom
    - JS_FreeAtom
    - peek_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: 24849
      start: 24844
    functionDepth: 0
    functionLinenumber: 24844
    functionLinenumberEnd: 24849
    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:24855,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - s
    - sp
    argTypes:
    - JSParseState*
    - JSParsePos*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24856
      start: 24851
    functionDepth: 20
    functionLinenumber: 24851
    functionLinenumberEnd: 24856
    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: 24879
      start: 24859
    functionDepth: 0
    functionLinenumber: 24859
    functionLinenumberEnd: 24879
    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:24893,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - p1
    - p2
    argTypes:
    - uint8_t*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24894
      start: 24885
    functionDepth: 0
    functionLinenumber: 24885
    functionLinenumberEnd: 24894
    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:24911,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:24934,1
    - Dst: js_parse_template_part
      Src: /src/gpac/src/quickjs/quickjs.c:24938,1
    - Dst: is_regexp_allowed
      Src: /src/gpac/src/quickjs/quickjs.c:24977,1
    - Dst: js_parse_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:24979,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:24988,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:24989,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:24995,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:25001,1
    - Dst: has_lf_in_range
      Src: /src/gpac/src/quickjs/quickjs.c:25003,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:25012,1
    CyclomaticComplexity: 45
    EdgeCount: 45
    ICount: 109
    argCount: 3
    argNames:
    - s
    - pbits
    - no_line_terminator
    argTypes:
    - JSParseState*
    - int*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25015
      start: 24899
    functionDepth: 21
    functionLinenumber: 24899
    functionLinenumberEnd: 25015
    functionName: js_parse_skip_parens_token
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_regexp
    - js_parse_seek_token
    - js_parse_get_pos
    - is_regexp_allowed
    - token_is_pseudo_keyword
    - has_lf_in_range
    - js_parse_template_part
    - next_token
    - free_token
    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:25022,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25027,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25028,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25033,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:25034,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25037,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25038,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25039,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25040,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: 25033
        line_start: 25033
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 25043
      start: 25017
    functionDepth: 7
    functionLinenumber: 25017
    functionLinenumberEnd: 25043
    functionName: set_object_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u32
    - JS_DupAtom
    - emit_op
    - JS_FreeAtom
    - get_prev_opcode
    - put_u32
    - assert
    - emit_atom
    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:25050,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25055,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25059,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:25060,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: 25059
        line_start: 25059
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 25064
      start: 25045
    functionDepth: 2
    functionLinenumber: 25045
    functionLinenumberEnd: 25064
    functionName: set_object_name_computed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - emit_op
    - 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:25073,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25076,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25083,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25085,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25087,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25088,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25089,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25090,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25091,1
    - Dst: js_parse_property_name
      Src: /src/gpac/src/quickjs/quickjs.c:25095,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25101,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25102,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25103,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25104,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25105,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:25125,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25129,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25131,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25132,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25140,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25144,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25146,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25148,1
    - Dst: set_object_name_computed
      Src: /src/gpac/src/quickjs/quickjs.c:25151,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25152,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25153,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25156,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25159,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:25162,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25163,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25164,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25167,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25172,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25175,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25179,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 107
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25181
      start: 25066
    functionDepth: 20
    functionLinenumber: 25066
    functionLinenumberEnd: 25181
    functionName: js_parse_object_literal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - set_object_name
    - js_parse_property_name
    - js_parse_expect
    - emit_op
    - js_parse_error
    - js_parse_function_decl
    - js_parse_assign_expr
    - next_token
    - emit_u16
    - JS_FreeAtom
    - emit_u8
    - emit_atom
    - set_object_name_computed
    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:25205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25206
      start: 25203
    functionDepth: 1
    functionLinenumber: 25203
    functionLinenumberEnd: 25206
    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:25216,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:25228,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25236,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25238,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25239,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25240,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:25241,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25245,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:25246,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:25251,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:25258,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 3
    argNames:
    - s
    - has_super
    - pfd
    argTypes:
    - JSParseState*
    - BOOL
    - JSFunctionDef**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25262
      start: 25208
    functionDepth: 10
    functionLinenumber: 25208
    functionLinenumberEnd: 25262
    functionName: js_parse_class_default_ctor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_u16
    - js_new_function_def
    - emit_class_field_init
    - emit_op
    - emit_return
    - push_scope
    - cpool_add
    - emit_atom
    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: 25278
      start: 25265
    functionDepth: 0
    functionLinenumber: 25265
    functionLinenumberEnd: 25278
    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:25287,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25288,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25289,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25292,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25293,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25295,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25296,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25297,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25299,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25301,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25302,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25304,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25306
      start: 25283
    functionDepth: 12
    functionLinenumber: 25283
    functionLinenumberEnd: 25306
    functionName: emit_class_field_init
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - emit_label
    - emit_op
    - emit_goto
    - emit_u16
    - emit_atom
    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:25311,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25312
      start: 25309
    functionDepth: 11
    functionLinenumber: 25309
    functionLinenumberEnd: 25312
    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:25327,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25337,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25339,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25341,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25342,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25343,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25345,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25346,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25347,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25349,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25351,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - s
    - cf
    argTypes:
    - JSParseState*
    - ClassFieldsDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25355
      start: 25322
    functionDepth: 12
    functionLinenumber: 25322
    functionLinenumberEnd: 25355
    functionName: emit_class_init_start
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_label
    - js_parse_function_class_fields_init
    - emit_op
    - emit_goto
    - emit_u16
    - emit_atom
    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:25362,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:25365,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25367,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25368,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - s
    - cf
    argTypes:
    - JSParseState*
    - ClassFieldsDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25370
      start: 25357
    functionDepth: 10
    functionLinenumber: 25357
    functionLinenumberEnd: 25370
    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:25391,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:25395,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25398,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25399,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25402,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25410,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:25413,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25417,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25419,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25422,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:25427,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:25432,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:25436,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25438,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25440,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25451,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25452,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25453,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25467,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:25473,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25479,1
    - Dst: emit_class_init_start
      Src: /src/gpac/src/quickjs/quickjs.c:25485,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:25493,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:25500,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25501,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25502,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25503,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25505,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25507,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25508,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25510,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:25512,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25519,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25524,1
    - Dst: js_parse_property_name
      Src: /src/gpac/src/quickjs/quickjs.c:25527,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25538,1
    - Dst: find_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:25547,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:25561,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:25568,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25575,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25577,1
    - Dst: get_private_setter_name
      Src: /src/gpac/src/quickjs/quickjs.c:25582,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25585,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:25586,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25588,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25592,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25594,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25597,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25599,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25600,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25602,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25612,1
    - Dst: find_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:25617,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:25621,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25624,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25625,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25626,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25627,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25628,1
    - Dst: emit_class_init_start
      Src: /src/gpac/src/quickjs/quickjs.c:25632,1
    - Dst: js_atom_concat_num
      Src: /src/gpac/src/quickjs/quickjs.c:25637,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:25640,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25641,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25644,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25645,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25646,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25647,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25650,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25651,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25652,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25655,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25656,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25657,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25659,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25661,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25662,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25663,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25667,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25669,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25672,1
    - Dst: set_object_name_computed
      Src: /src/gpac/src/quickjs/quickjs.c:25675,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25676,1
    - Dst: set_object_name_computed
      Src: /src/gpac/src/quickjs/quickjs.c:25678,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25679,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25680,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:25682,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25683,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25684,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:25687,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25703,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:25714,1
    - Dst: find_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:25721,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25724,1
    - Dst: add_private_class_field
      Src: /src/gpac/src/quickjs/quickjs.c:25727,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25730,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25731,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25732,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25733,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25734,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25735,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25738,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25740,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25741,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25743,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25747,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25748,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:25753,1
    - Dst: js_parse_class_default_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:25758,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25762,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:25766,1
    - Dst: js_strndup
      Src: /src/gpac/src/quickjs/quickjs.c:25768,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25775,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25784,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25785,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25786,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25787,1
    - Dst: emit_class_init_start
      Src: /src/gpac/src/quickjs/quickjs.c:25791,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:25801,1
    - Dst: emit_class_init_end
      Src: /src/gpac/src/quickjs/quickjs.c:25806,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25808,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25810,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25811,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25812,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25816,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25820,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25821,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25822,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25829,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25830,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25831,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25832,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25838,1
    - Dst: emit_class_init_end
      Src: /src/gpac/src/quickjs/quickjs.c:25839,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25840,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25841,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25842,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:25845,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:25846,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:25850,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25852,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25853,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25854,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25860,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25861,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:25866,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25873,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25874,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25878,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25879,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:25880,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: 25883
      start: 25373
    functionDepth: 20
    functionLinenumber: 25373
    functionLinenumberEnd: 25883
    functionName: js_parse_class
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_strndup
    - add_private_class_field
    - js_parse_class_default_ctor
    - emit_u16
    - JS_DupAtom
    - peek_token
    - js_parse_property_name
    - find_private_class_field
    - JS_FreeAtom
    - set_object_name
    - js_parse_left_hand_side_expr
    - emit_op
    - emit_class_init_start
    - pop_scope
    - next_token
    - emit_u8
    - emit_atom
    - emit_class_init_end
    - js_parse_expect
    - push_scope
    - js_atom_concat_num
    - js_parse_expect_semi
    - put_u32
    - define_var
    - emit_u32
    - js_parse_function_decl2
    - get_private_setter_name
    - js_parse_error
    - js_parse_error_reserved_identifier
    - add_export_entry
    - js_parse_assign_expr
    - js_free
    - set_object_name_computed
    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:25890,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25897,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25902,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25908,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:25909,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25918,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25920,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25921,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:25921,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25927,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25935,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25936,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25937,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25938,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:25939,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25945,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:25946,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25951,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25953,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25956,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25959,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:25960,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25962,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25963,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25964,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25965,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25967,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:25968,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25969,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25972,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25973,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:25974,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:25975,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25977,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25978,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25979,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25980,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:25985,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25988,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:25991,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:25995,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26001,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26002,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26003,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26005,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26008,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 100
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26009
      start: 25885
    functionDepth: 20
    functionLinenumber: 25885
    functionLinenumberEnd: 26009
    functionName: js_parse_array_literal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_label
    - emit_u32
    - js_parse_expect
    - emit_op
    - js_parse_assign_expr
    - emit_goto
    - next_token
    - emit_u16
    - emit_u8
    - emit_atom
    - __JS_AtomFromUInt32
    - new_label
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_array_literal(JSParseState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - s
    - scope_level
    argTypes:
    - JSFunctionDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26030
      start: 26012
    functionDepth: 0
    functionLinenumber: 26012
    functionLinenumberEnd: 26030
    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: 27
    BranchProfiles: []
    Callsites:
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:26046,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26048,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26049,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26052,1
    - Dst: has_with_scope
      Src: /src/gpac/src/quickjs/quickjs.c:26056,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26063,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26067,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26068,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26080,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26082,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26084,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26086,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26098,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26101,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26102,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26103,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26104,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:26105,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26106,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26109,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26110,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26111,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26115,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26116,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26119,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26120,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26121,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26124,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26127,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26128,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26129,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26132,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26138,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26141,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26142,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26143,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26144,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:26145,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 120
    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: 26163
      start: 26032
    functionDepth: 14
    functionLinenumber: 26032
    functionLinenumberEnd: 26163
    functionName: get_lvalue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - has_with_scope
    - get_u32
    - emit_u32
    - get_u16
    - emit_op
    - js_parse_error
    - abort
    - update_label
    - get_prev_opcode
    - emit_u16
    - emit_atom
    - new_label
    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: 40
    BranchProfiles: []
    Callsites:
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26190,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26193,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26204,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26207,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26210,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26213,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26220,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26221,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26225,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26230,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26233,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26236,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26239,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26249,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26252,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26255,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26258,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26267,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26268,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26269,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26272,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26273,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26276,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26277,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26278,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26281,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26284,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26287,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26290,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 108
    argCount: 7
    argNames:
    - s
    - opcode
    - scope
    - name
    - label
    - special
    - is_let
    argTypes:
    - JSParseState*
    - int
    - int
    - JSAtom
    - int
    - PutLValueEnum
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26292
      start: 26176
    functionDepth: 7
    functionLinenumber: 26176
    functionLinenumberEnd: 26292
    functionName: put_lvalue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_label
    - emit_u32
    - emit_op
    - abort
    - emit_u16
    - JS_FreeAtom
    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:26296,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26298,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26300,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26303
      start: 26294
    functionDepth: 15
    functionLinenumber: 26294
    functionLinenumberEnd: 26303
    functionName: js_parse_expr_paren
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_expr
    - js_parse_expect
    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:26308,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:26309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - atom
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26310
      start: 26305
    functionDepth: 14
    functionLinenumber: 26305
    functionLinenumberEnd: 26310
    functionName: js_unsupported_keyword
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomGetStr
    - js_parse_error
    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:26318,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26322,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26326,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26342,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:26344,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 29
    argCount: 3
    argNames:
    - s
    - name
    - tok
    argTypes:
    - JSParseState*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26347
      start: 26312
    functionDepth: 17
    functionLinenumber: 26312
    functionLinenumberEnd: 26347
    functionName: js_define_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - define_var
    - abort
    - js_parse_error
    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:26357,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26358,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26359,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26360,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26361,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26361,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26362,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26363,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26364,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26366,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26367,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26368,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26369,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26371,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 2
    argNames:
    - s
    - depth
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26373
      start: 26349
    functionDepth: 12
    functionLinenumber: 26349
    functionLinenumberEnd: 26373
    functionName: js_emit_spread_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_label
    - emit_u32
    - emit_op
    - emit_goto
    - emit_u16
    - emit_u8
    - new_label
    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:26391,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - s
    - name
    argTypes:
    - JSParseState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26392
      start: 26375
    functionDepth: 14
    functionLinenumber: 26375
    functionLinenumberEnd: 26392
    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: 26411
      start: 26399
    functionDepth: 0
    functionLinenumber: 26399
    functionLinenumberEnd: 26411
    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:26420,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26423,1
    - Dst: js_parse_check_duplicate_parameter
      Src: /src/gpac/src/quickjs/quickjs.c:26424,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26426,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26431,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 17
    argCount: 3
    argNames:
    - s
    - tok
    - is_arg
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26433
      start: 26413
    functionDepth: 20
    functionLinenumber: 26413
    functionLinenumberEnd: 26433
    functionName: js_parse_destructuring_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - next_token
    - JS_DupAtom
    - JS_FreeAtom
    - js_parse_check_duplicate_parameter
    linkageType: ''
    returnType: JSAtom
    signature: JSAtom js_parse_destructuring_var(JSParseState *s, int tok, int is_arg)
  - BBCount: 91
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:26449,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26453,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:26454,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26459,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26460,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26461,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26462,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26463,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26465,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26466,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26468,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26472,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26475,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26478,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26479,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:26485,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26488,1
    - Dst: js_parse_destructuring_var
      Src: /src/gpac/src/quickjs/quickjs.c:26491,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:26494,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26496,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26497,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26498,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26499,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26508,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26511,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26516,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26519,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26520,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26521,1
    - Dst: js_parse_property_name
      Src: /src/gpac/src/quickjs/quickjs.c:26524,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26529,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:26532,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26538,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26539,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26540,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26541,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26542,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26545,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26550,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26551,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26552,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26553,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26554,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26557,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26558,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:26560,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26565,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26570,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26573,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26574,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26575,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26576,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26579,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26583,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26584,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26585,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26586,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26587,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26590,1
    - Dst: js_parse_destructuring_var
      Src: /src/gpac/src/quickjs/quickjs.c:26593,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:26596,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26598,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26599,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26600,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26601,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26611,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26614,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26624,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26628,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26632,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26633,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26636,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26644,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26648,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26652,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:26655,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26663,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26668,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26669,1
    - Dst: js_parse_check_duplicate_parameter
      Src: /src/gpac/src/quickjs/quickjs.c:26673,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26677,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26682,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26683,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26684,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26685,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26686,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:26688,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26691,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26692,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26693,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26694,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26698,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26705,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26706,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:26711,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:26714,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26722,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26723,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26724,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26725,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26726,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26728,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26729,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:26732,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26733,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26736,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26742,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26746,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26748,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26750,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26757,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:26761,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26764,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26769,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26772,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26777,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26778,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26779,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26780,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:26782,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26786,1
    - Dst: js_emit_spread_code
      Src: /src/gpac/src/quickjs/quickjs.c:26787,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26789,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26790,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26791,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:26793,1
    - Dst: js_parse_destructuring_var
      Src: /src/gpac/src/quickjs/quickjs.c:26798,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:26801,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:26803,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26805,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:26806,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:26807,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26808,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26818,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26821,1
    - Dst: js_emit_spread_code
      Src: /src/gpac/src/quickjs/quickjs.c:26827,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26829,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:26830,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26831,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26836,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26837,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26838,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26839,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26840,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26842,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26843,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:26846,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26847,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:26850,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26857,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:26859,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26864,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:26865,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26866,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26869,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26872,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26873,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26875,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26877,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:26878,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26880,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26881,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26888,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:26892,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26900,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:26902,1
    CyclomaticComplexity: 135
    EdgeCount: 135
    ICount: 404
    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: 26904
      start: 26437
    functionDepth: 22
    functionLinenumber: 26437
    functionLinenumberEnd: 26904
    functionName: js_parse_destructuring_element
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - put_lvalue
    - emit_u16
    - JS_FreeAtom
    - JS_DupAtom
    - js_parse_property_name
    - pop_break_entry
    - set_object_name
    - get_lvalue
    - emit_label
    - js_parse_left_hand_side_expr
    - emit_op
    - js_parse_skip_parens_token
    - js_emit_spread_code
    - next_token
    - emit_u8
    - emit_atom
    - JS_ThrowInternalError
    - abort
    - push_break_entry
    - emit_goto
    - js_parse_expect
    - js_parse_destructuring_var
    - js_parse_destructuring_element
    - js_define_var
    - emit_u32
    - need_var_reference
    - js_parse_error
    - add_export_entry
    - js_parse_assign_expr
    - memset
    - js_parse_check_duplicate_parameter
    - new_label
    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:26918,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26920,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26921,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26922,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26924,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26925,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:26926,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:26927,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: 26928
      start: 26913
    functionDepth: 12
    functionLinenumber: 26913
    functionLinenumberEnd: 26928
    functionName: optional_chain_test
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_goto
    - emit_label
    - new_label
    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:26945,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26946,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26947,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:26947,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:26948,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:26950,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:26952,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:26953,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:26959,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26963,1
    - Dst: js_parse_template
      Src: /src/gpac/src/quickjs/quickjs.c:26967,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:26971,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:26973,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:26987,1
    - Dst: js_parse_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:26989,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:26991,1
    - Dst: JSParseState*::ctx::compile_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:26992,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:26994,1
    - Dst: get_line_col
      Src: /src/gpac/src/quickjs/quickjs.c:26997,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:26998,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:27002,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:27003,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27009,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27010,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:27015,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27019,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:27025,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27029,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27031,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27034,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27036,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27037,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27038,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27041,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27043,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27046,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27048,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:27055,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:27058,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27059,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27060,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:27063,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27068,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27074,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27077,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27078,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27079,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27083,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27084,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27085,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27086,1
    - Dst: js_parse_object_literal
      Src: /src/gpac/src/quickjs/quickjs.c:27093,1
    - Dst: js_parse_array_literal
      Src: /src/gpac/src/quickjs/quickjs.c:27096,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27101,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27104,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:27106,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27107,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27109,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27110,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27112,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27113,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27114,1
    - Dst: js_parse_postfix_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27116,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27121,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27122,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27123,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27124,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27131,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27135,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27139,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27140,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27141,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27142,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27143,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27144,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27145,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27146,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27148,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27152,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27155,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:27157,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27158,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27160,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27161,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27163,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27164,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27166,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27169,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27170,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27173,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27176,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27180,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27184,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27187,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27189,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27191,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27195,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27206,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27209,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27222,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27233,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:27238,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27247,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27252,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27253,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27257,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27258,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27276,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27281,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27282,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27286,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27287,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27296,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27297,1
    - Dst: has_with_scope
      Src: /src/gpac/src/quickjs/quickjs.c:27310,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:27330,1
    - Dst: js_parse_template
      Src: /src/gpac/src/quickjs/quickjs.c:27338,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27342,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27343,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27344,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27346,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27348,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27349,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27350,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27352,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27359,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27363,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27369,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27373,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27374,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27375,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27376,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27381,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27383,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27387,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27390,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:27391,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27393,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27394,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27395,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27396,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27398,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27399,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27400,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27403,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27404,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27405,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27406,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27408,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27409,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27410,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27411,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27414,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27417,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27418,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27423,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27426,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27429,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27431,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27439,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27440,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27441,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27444,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27445,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27450,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27451,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27453,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27454,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27455,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27456,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:27458,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27461,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27462,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27463,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27466,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27467,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27468,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27469,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27474,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27477,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27483,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27484,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27487,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27488,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27489,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27494,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27495,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27498,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27499,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27500,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27501,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:27503,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27505,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27506,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27508,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27509,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27517,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27520,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:27523,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27524,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:27527,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27529,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27530,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27531,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:27533,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27534,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:27536,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:27539,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:27540,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:27541,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27544,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:27547,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27549,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27550,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27553,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:27559,1
    - Dst: optional_chain_test
      Src: /src/gpac/src/quickjs/quickjs.c:27561,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27563,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27565,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:27567,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27569,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27571,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27573,1
    - Dst: emit_label_raw
      Src: /src/gpac/src/quickjs/quickjs.c:27582,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:27585,1
    CyclomaticComplexity: 172
    EdgeCount: 172
    ICount: 578
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27597
      start: 26931
    functionDepth: 23
    functionLinenumber: 26931
    functionLinenumberEnd: 27597
    functionName: js_parse_postfix_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_parse_class
    - js_parse_regexp
    - emit_class_field_init
    - token_is_pseudo_keyword
    - js_parse_array_literal
    - build_backtrace
    - get_prev_opcode
    - emit_u16
    - JS_DupAtom
    - peek_token
    - JS_FreeAtom
    - js_parse_object_literal
    - token_is_ident
    - get_u32
    - emit_label
    - emit_push_const
    - emit_source_pos
    - emit_op
    - get_u16
    - JS_AtomToValue
    - JS_FreeValue
    - js_parse_function_decl
    - JS_IsException
    - next_token
    - JS_VALUE_GET_INT
    - emit_u8
    - emit_atom
    - JS_VALUE_GET_SHORT_BIG_INT
    - get_line_col
    - emit_label_raw
    - js_parse_template
    - emit_goto
    - js_parse_postfix_expr
    - optional_chain_test
    - js_parse_expect
    - js_parse_expr_paren
    - has_with_scope
    - emit_u32
    - JSParseState*::ctx::compile_regexp
    - js_parse_expr
    - js_parse_error
    - JS_VALUE_GET_TAG
    - js_parse_error_reserved_identifier
    - js_parse_assign_expr
    - new_label
    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:27605,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:27607,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:27609,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27616,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27621,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:27623,1
    - Dst: emit_push_const
      Src: /src/gpac/src/quickjs/quickjs.c:27624,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:27625,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27626,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27629,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27631,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27632,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27634,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27635,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27636,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27644,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27649,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27652,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:27653,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27654,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27656,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27657,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:27658,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:27664,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27668,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27674,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27678,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27679,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:27680,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27684,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27685,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 77
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27689
      start: 27599
    functionDepth: 20
    functionLinenumber: 27599
    functionLinenumberEnd: 27689
    functionName: js_parse_delete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u32
    - emit_label
    - emit_push_const
    - js_parse_unary
    - emit_op
    - JS_AtomToValue
    - JS_FreeValue
    - js_parse_error
    - emit_goto
    - get_prev_opcode
    - next_token
    - JS_FreeAtom
    - emit_u8
    - emit_atom
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_delete(JSParseState *s)
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27705,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:27707,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27711,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27712,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27715,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27716,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27719,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27722,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27723,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27726,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27727,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:27730,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27741,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:27743,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27745,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27747,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27748,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27749,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27756,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:27758,1
    - Dst: get_prev_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:27763,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27766,1
    - Dst: js_parse_delete
      Src: /src/gpac/src/quickjs/quickjs.c:27771,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27777,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:27779,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27780,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:27782,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27785,1
    - Dst: js_parse_postfix_expr
      Src: /src/gpac/src/quickjs/quickjs.c:27789,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27797,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27799,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27800,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:27801,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27803,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:27816,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27820,1
    - Dst: js_parse_unary
      Src: /src/gpac/src/quickjs/quickjs.c:27822,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27824,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27825,1
    CyclomaticComplexity: 37
    EdgeCount: 37
    ICount: 116
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27829
      start: 27692
    functionDepth: 24
    functionLinenumber: 27692
    functionLinenumberEnd: 27829
    functionName: js_parse_unary
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - get_lvalue
    - put_lvalue
    - JS_ThrowSyntaxError
    - emit_source_pos
    - js_parse_unary
    - emit_op
    - abort
    - js_parse_error
    - js_parse_delete
    - get_prev_opcode
    - js_parse_postfix_expr
    - next_token
    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:27839,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:27842,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27845,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27846,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27850,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:27852,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27854,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27857,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:27858,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:27859,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:27860,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:27863,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:27986,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:27988,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:27990,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:27992,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:27993,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 160
    argCount: 3
    argNames:
    - s
    - level
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27996
      start: 27832
    functionDepth: 25
    functionLinenumber: 27832
    functionLinenumberEnd: 27996
    functionName: js_parse_expr_binary
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - emit_u16
    - emit_source_pos
    - js_parse_unary
    - js_parse_expr_binary
    - emit_op
    - abort
    - next_token
    - JS_DupAtom
    - JS_FreeAtom
    - peek_token
    - emit_atom
    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:28005,1
    - Dst: js_parse_logical_and_or
      Src: /src/gpac/src/quickjs/quickjs.c:28008,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28012,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28015,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28017,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28018,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28019,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:28022,1
    - Dst: js_parse_logical_and_or
      Src: /src/gpac/src/quickjs/quickjs.c:28025,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28031,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28036,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 3
    argNames:
    - s
    - op
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28039
      start: 27999
    functionDepth: 26
    functionLinenumber: 27999
    functionLinenumberEnd: 28039
    functionName: js_parse_logical_and_or
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_parse_logical_and_or
    - emit_label
    - js_parse_expr_binary
    - emit_op
    - js_parse_error
    - emit_goto
    - next_token
    - new_label
    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:28045,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28048,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28050,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28053,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28054,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28055,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28056,1
    - Dst: js_parse_expr_binary
      Src: /src/gpac/src/quickjs/quickjs.c:28058,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28063,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28066
      start: 28041
    functionDepth: 27
    functionLinenumber: 28041
    functionLinenumberEnd: 28066
    functionName: js_parse_coalesce_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_logical_and_or
    - emit_label
    - js_parse_expr_binary
    - emit_op
    - emit_goto
    - next_token
    - new_label
    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:28073,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28076,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28078,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28080,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28082,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28085,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28087,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28089,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28092,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28095
      start: 28069
    functionDepth: 28
    functionLinenumber: 28069
    functionLinenumberEnd: 28095
    functionName: js_parse_cond_expr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - next_token
    - emit_label
    - js_parse_assign_expr2
    - js_parse_coalesce_expr
    - js_parse_assign_expr
    - emit_goto
    - js_parse_expect
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_cond_expr(JSParseState *s, int parse_flags)
  - BBCount: 45
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28108,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28110,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28111,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28120,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28123,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28126,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28135,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28136,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28138,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28142,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28143,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28145,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28147,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28148,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28150,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28151,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28152,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28153,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28154,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28155,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28158,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28159,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28160,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28163,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28165,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28166,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28167,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28168,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28170,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28171,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:28172,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28173,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28174,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28178,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28179,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:28180,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28181,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28183,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28184,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28185,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28186,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28187,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28189,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28190,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28192,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28193,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28194,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28195,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:28196,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28199,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28200,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:28201,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28202,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28204,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28205,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28206,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28207,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28208,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28209,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28211,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28212,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:28213,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28214,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28216,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28217,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28219,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28220,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:28221,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28223,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28224,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28225,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28226,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28228,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28229,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28234,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28235,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28236,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:28237,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28238,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:28242,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28243,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:28246,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28252,1
    - Dst: js_parse_get_pos
      Src: /src/gpac/src/quickjs/quickjs.c:28257,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28258,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:28261,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28263,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28264,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28269,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28273,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28274,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:28278,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:28279,1
    - Dst: js_parse_cond_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28288,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28296,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28298,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28301,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28302,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:28308,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:28317,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28318,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28320,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28324,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28326,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28330,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28332,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28333,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28335,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28337,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28338,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:28343,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28348,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28351,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28354,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28357,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:28360,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28365,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28367,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28369,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28373,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28377,1
    CyclomaticComplexity: 68
    EdgeCount: 68
    ICount: 206
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28380
      start: 28098
    functionDepth: 29
    functionLinenumber: 28098
    functionLinenumberEnd: 28380
    functionName: js_parse_assign_expr2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_parse_assign_expr2
    - put_lvalue
    - token_is_pseudo_keyword
    - JS_FreeAtom
    - peek_token
    - set_object_name
    - get_lvalue
    - emit_label
    - emit_source_pos
    - emit_op
    - js_parse_cond_expr
    - js_parse_function_decl
    - js_parse_skip_parens_token
    - next_token
    - emit_u8
    - emit_atom
    - js_parse_seek_token
    - emit_return
    - js_parse_get_pos
    - abort
    - emit_goto
    - js_parse_destructuring_element
    - emit_u32
    - js_parse_error
    - new_label
    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:28384,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28385
      start: 28382
    functionDepth: 30
    functionLinenumber: 28382
    functionLinenumberEnd: 28385
    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:28392,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28405,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28407,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - s
    - parse_flags
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28410
      start: 28388
    functionDepth: 30
    functionLinenumber: 28388
    functionLinenumberEnd: 28410
    functionName: js_parse_expr2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - js_parse_assign_expr2
    - next_token
    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:28414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28415
      start: 28412
    functionDepth: 31
    functionLinenumber: 28412
    functionLinenumberEnd: 28415
    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: 28432
      start: 28417
    functionDepth: 0
    functionLinenumber: 28417
    functionLinenumberEnd: 28432
    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: 28439
      start: 28434
    functionDepth: 0
    functionLinenumber: 28434
    functionLinenumberEnd: 28439
    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:28449,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28455,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28462,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28467,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28471,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28474,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28475,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28476,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28482,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28484,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28486,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 35
    argCount: 3
    argNames:
    - s
    - name
    - is_cont
    argTypes:
    - JSParseState*
    - JSAtom
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28488
      start: 28441
    functionDepth: 14
    functionLinenumber: 28441
    functionLinenumberEnd: 28488
    functionName: emit_break
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - close_scopes
    - emit_goto
    - js_parse_error
    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:28498,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28503,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28511,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28518,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28523,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28524,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28525,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28526,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28528,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28529,1
    - Dst: emit_goto
      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: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28533,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28534,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28535,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28536,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28537,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28538,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28539,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28541,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28542,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28543,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28547,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28558,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28559,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28560,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28567,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28568,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28569,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28571,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28572,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28574,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28576,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 66
    argCount: 2
    argNames:
    - s
    - hasval
    argTypes:
    - JSParseState*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28578
      start: 28491
    functionDepth: 12
    functionLinenumber: 28491
    functionLinenumberEnd: 28578
    functionName: emit_return
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - emit_label
    - emit_op
    - emit_goto
    - emit_u16
    - emit_atom
    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:28591,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28592
      start: 28589
    functionDepth: 1
    functionLinenumber: 28589
    functionLinenumberEnd: 28592
    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:28596,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28599,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:28601,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28606,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28608,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28611
      start: 28594
    functionDepth: 20
    functionLinenumber: 28594
    functionLinenumberEnd: 28611
    functionName: js_parse_block
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_expect
    - pop_scope
    - js_parse_statement_or_decl
    - 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:28624,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28626,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28628,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28631,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:28633,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28636,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28643,1
    - Dst: need_var_reference
      Src: /src/gpac/src/quickjs/quickjs.c:28645,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28650,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28651,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28652,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28653,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28655,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28656,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:28659,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:28660,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28661,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28664,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:28666,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:28667,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28668,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28670,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28671,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28675,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28680,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28681,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28682,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28683,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28686,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:28690,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28691,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:28692,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28695,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28700,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28706,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 85
    argCount: 4
    argNames:
    - s
    - parse_flags
    - tok
    - export_flag
    argTypes:
    - JSParseState*
    - int
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28708
      start: 28614
    functionDepth: 30
    functionLinenumber: 28614
    functionLinenumberEnd: 28708
    functionName: js_parse_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - set_object_name
    - emit_u16
    - get_lvalue
    - js_define_var
    - js_parse_assign_expr2
    - put_lvalue
    - emit_source_pos
    - emit_op
    - need_var_reference
    - js_parse_error
    - js_parse_error_reserved_identifier
    - add_export_entry
    - js_parse_skip_parens_token
    - next_token
    - JS_DupAtom
    - JS_FreeAtom
    - js_parse_destructuring_element
    - emit_atom
    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:28714,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28715
      start: 28711
    functionDepth: 4
    functionLinenumber: 28711
    functionLinenumberEnd: 28715
    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:28723,1
    - Dst: js_parse_get_pos
      Src: /src/gpac/src/quickjs/quickjs.c:28725,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28728,1
    - Dst: has_lf_in_range
      Src: /src/gpac/src/quickjs/quickjs.c:28746,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28755,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 27
    argCount: 2
    argNames:
    - s
    - decl_mask
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28760
      start: 28718
    functionDepth: 21
    functionLinenumber: 28718
    functionLinenumberEnd: 28760
    functionName: is_let
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_seek_token
    - js_parse_get_pos
    - token_is_pseudo_keyword
    - has_lf_in_range
    - next_token
    linkageType: ''
    returnType: int
    signature: int is_let(JSParseState *s, int decl_mask)
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28780,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28781,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28782,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:28783,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28788,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28792,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28796,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28799,1
    - Dst: is_let
      Src: /src/gpac/src/quickjs/quickjs.c:28802,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28812,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:28817,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28821,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28825,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28826,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28827,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:28830,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28831,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28834,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28836,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28837,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:28839,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:28840,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28841,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:28845,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:28846,1
    - Dst: js_parse_left_hand_side_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28850,1
    - Dst: get_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28852,1
    - Dst: put_lvalue
      Src: /src/gpac/src/quickjs/quickjs.c:28855,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28860,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28863,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28870,1
    - Dst: js_parse_assign_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:28870,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28871,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28875,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:28876,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28877,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:28880,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:28882,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28888,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28893,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:28897,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:28899,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28902,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:28905,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:28910,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28918,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28920,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28923,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28926,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:28928,1
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/quickjs.c:28937,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:28939,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:28940,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28951,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:28952,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:28955,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28957,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28962,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28964,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28966,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28968,1
    - Dst: emit_u8
      Src: /src/gpac/src/quickjs/quickjs.c:28969,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28972,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:28975,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28977,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:28979,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28982,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28984,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:28986,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:28987,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 161
    argCount: 3
    argNames:
    - s
    - label_name
    - is_async
    argTypes:
    - JSParseState*
    - int
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28989
      start: 28764
    functionDepth: 32
    functionLinenumber: 28764
    functionLinenumberEnd: 28989
    functionName: js_parse_for_in_of
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - put_lvalue
    - js_parse_assign_expr2
    - token_is_pseudo_keyword
    - emit_u16
    - JS_DupAtom
    - JS_FreeAtom
    - peek_token
    - pop_break_entry
    - get_lvalue
    - emit_label
    - js_parse_left_hand_side_expr
    - emit_op
    - pop_scope
    - js_parse_skip_parens_token
    - next_token
    - dbuf_claim
    - emit_u8
    - emit_atom
    - js_parse_statement
    - is_let
    - push_break_entry
    - emit_goto
    - js_parse_expect
    - push_scope
    - dbuf_put
    - js_parse_destructuring_element
    - js_define_var
    - js_parse_expr
    - js_parse_error
    - js_parse_assign_expr
    - memset
    - close_scopes
    - new_label
    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:28994,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:28995,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:28996,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28998
      start: 28991
    functionDepth: 2
    functionLinenumber: 28991
    functionLinenumberEnd: 28998
    functionName: set_eval_ret_undefined
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_u16
    - emit_op
    linkageType: ''
    returnType: void
    signature: void set_eval_ret_undefined(JSParseState *s)
  - BBCount: 158
    BranchProfiles: []
    Callsites:
    - Dst: is_label
      Src: /src/gpac/src/quickjs/quickjs.c:29010,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29013,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29017,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29022,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29024,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29033,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29034,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:29043,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29045,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29046,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:29053,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29060,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29064,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29068,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:29071,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:29073,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:29074,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:29076,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:29077,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:29079,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29087,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29090,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:29093,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:29095,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29096,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:29097,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29105,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29110,1
    - Dst: js_parse_var
      Src: /src/gpac/src/quickjs/quickjs.c:29112,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:29114,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29120,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29123,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29124,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:29125,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29127,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:29133,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29137,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29138,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29141,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:29142,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29147,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29148,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29156,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29157,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29159,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29162,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29165,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29167,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:29168,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29170,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:29172,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29174,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29176,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29178,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29186,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29187,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29188,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29190,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29193,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29196,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29198,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:29200,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29203,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29204,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:29206,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29210,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29213,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29215,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29217,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29228,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29231,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:29235,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29238,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29242,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29246,1
    - Dst: js_parse_for_in_of
      Src: /src/gpac/src/quickjs/quickjs.c:29251,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29259,1
    - Dst: is_let
      Src: /src/gpac/src/quickjs/quickjs.c:29263,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29273,1
    - Dst: js_parse_var
      Src: /src/gpac/src/quickjs/quickjs.c:29275,1
    - Dst: js_parse_expr2
      Src: /src/gpac/src/quickjs/quickjs.c:29278,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29280,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:29284,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29286,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29289,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29290,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29291,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29292,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29294,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29302,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:29303,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29305,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29307,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29316,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29319,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:29320,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29322,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29324,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29326,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29330,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:29331,1
    - Dst: close_scopes
      Src: /src/gpac/src/quickjs/quickjs.c:29336,1
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/quickjs.c:29344,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:29346,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:29347,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29357,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29360,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29362,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29363,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29372,1
    - Dst: emit_break
      Src: /src/gpac/src/quickjs/quickjs.c:29378,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29381,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:29384,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29394,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29397,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:29398,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29401,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29402,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29403,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29406,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29416,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29418,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29422,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29424,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:29425,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29427,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29429,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29431,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29433,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29434,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29439,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29441,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29444,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29449,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29456,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:29457,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29462,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:29465,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29469,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:29473,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29477,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29479,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29480,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29482,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29483,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29492,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29493,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29495,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29496,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29497,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:29498,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29500,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29502,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:29506,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29509,1
    - Dst: js_is_live_code
      Src: /src/gpac/src/quickjs/quickjs.c:29511,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29513,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29515,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29516,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29517,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29519,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29523,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29526,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29527,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29531,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29533,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:29538,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29541,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29545,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29546,1
    - Dst: js_define_var
      Src: /src/gpac/src/quickjs/quickjs.c:29547,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29548,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29552,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:29553,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:29554,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:29556,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29560,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29562,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29563,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:29567,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29570,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29571,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29572,1
    - Dst: js_is_live_code
      Src: /src/gpac/src/quickjs/quickjs.c:29574,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29576,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29579,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29580,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29581,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29582,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29586,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29588,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29589,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29594,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:29596,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29597,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29599,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29602,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29606,1
    - Dst: push_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29609,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:29616,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29619,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:29620,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29621,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:29622,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29623,1
    - Dst: js_parse_block
      Src: /src/gpac/src/quickjs/quickjs.c:29626,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29630,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:29631,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29632,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:29633,1
    - Dst: pop_break_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29635,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29637,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:29638,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29643,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29648,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29653,1
    - Dst: js_parse_expr_paren
      Src: /src/gpac/src/quickjs/quickjs.c:29656,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29659,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:29660,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29664,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29665,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:29666,1
    - Dst: set_eval_ret_undefined
      Src: /src/gpac/src/quickjs/quickjs.c:29668,1
    - Dst: js_parse_statement
      Src: /src/gpac/src/quickjs/quickjs.c:29669,1
    - Dst: pop_scope
      Src: /src/gpac/src/quickjs/quickjs.c:29673,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:29680,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:29685,1
    - Dst: is_let
      Src: /src/gpac/src/quickjs/quickjs.c:29689,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:29698,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:29699,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29702,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:29706,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29716,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:29719,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:29725,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:29727,1
    - Dst: js_unsupported_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:29734,1
    - Dst: emit_source_pos
      Src: /src/gpac/src/quickjs/quickjs.c:29739,1
    - Dst: js_parse_expr
      Src: /src/gpac/src/quickjs/quickjs.c:29740,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29745,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:29746,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:29748,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:29750,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29755,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29758,1
    CyclomaticComplexity: 271
    EdgeCount: 271
    ICount: 671
    argCount: 2
    argNames:
    - s
    - decl_mask
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29760
      start: 29000
    functionDepth: 33
    functionLinenumber: 29000
    functionLinenumberEnd: 29760
    functionName: js_parse_statement_or_decl
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_parse_class
    - token_is_pseudo_keyword
    - set_eval_ret_undefined
    - JS_DupAtom
    - JS_FreeAtom
    - emit_u16
    - peek_token
    - js_unsupported_keyword
    - pop_break_entry
    - emit_label
    - emit_source_pos
    - js_parse_block
    - is_label
    - emit_op
    - pop_scope
    - js_parse_function_decl
    - js_parse_skip_parens_token
    - next_token
    - js_parse_statement_or_decl
    - dbuf_claim
    - js_parse_statement
    - is_let
    - emit_break
    - emit_return
    - js_parse_expr2
    - push_break_entry
    - emit_goto
    - js_parse_var
    - js_parse_expect
    - push_scope
    - js_parse_expect_semi
    - dbuf_put
    - put_u32
    - js_parse_destructuring_element
    - define_var
    - js_parse_expr_paren
    - js_parse_for_in_of
    - js_define_var
    - js_parse_expr
    - emit_u32
    - js_parse_error
    - js_parse_error_reserved_identifier
    - add_var
    - js_is_live_code
    - memset
    - close_scopes
    - new_label
    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:29766,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29768,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:29771,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:29772,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:29782,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29784
      start: 29763
    functionDepth: 7
    functionLinenumber: 29763
    functionLinenumberEnd: 29784
    functionName: js_new_module_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_add_tail
    - js_mallocz
    - js_rc
    - add_gc_object
    - JS_FreeAtom
    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:29793,1
    - Dst: mark_func
      Src: /src/gpac/src/quickjs/quickjs.c:29800,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29804,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29805,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29806,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29807,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29808,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29809,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29810,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:29811,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - rt
    - m
    - mark_func
    argTypes:
    - JSRuntime*
    - JSModuleDef*
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29812
      start: 29786
    functionDepth: 2
    functionLinenumber: 29786
    functionLinenumberEnd: 29812
    functionName: js_mark_module_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_MarkValue
    - mark_func
    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:29818,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:29822,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29823,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:29825,1
    - Dst: free_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:29830,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:29831,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:29832,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:29834,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:29836,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:29840,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:29842,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:29843,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29845,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29846,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29847,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29848,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29849,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29850,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29851,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:29852,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:29856,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:29858,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:29859,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:29860,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:29862,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 2
    argNames:
    - rt
    - m
    argTypes:
    - JSRuntime*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29864
      start: 29814
    functionDepth: 7
    functionLinenumber: 29814
    functionLinenumberEnd: 29864
    functionName: js_free_module_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_add_tail
    - free_var_ref
    - js_rc
    - list_del
    - JS_FreeAtomRT
    - js_free_rt
    - JS_FreeValueRT
    - remove_gc_object
    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:29871,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29877,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - m
    - module_name
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29881
      start: 29866
    functionDepth: 9
    functionLinenumber: 29866
    functionLinenumberEnd: 29881
    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: 29894
      start: 29883
    functionDepth: 0
    functionLinenumber: 29883
    functionLinenumberEnd: 29894
    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:29903,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:29906,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:29907,1
    - Dst: JS_ThrowSyntaxErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29909,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:29914,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:29920,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29921,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29922,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: 29925
      start: 29896
    functionDepth: 14
    functionLinenumber: 29896
    functionLinenumberEnd: 29925
    functionName: add_export_entry2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_export_entry
    - js_parse_error
    - JS_ThrowSyntaxErrorAtom
    - js_resize_array
    - JS_DupAtom
    - memset
    - 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:29931,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: 29933
      start: 29927
    functionDepth: 15
    functionLinenumber: 29927
    functionLinenumberEnd: 29933
    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:29940,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - m
    - req_module_idx
    argTypes:
    - JSContext*
    - JSModuleDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29948
      start: 29935
    functionDepth: 9
    functionLinenumber: 29935
    functionLinenumberEnd: 29948
    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:29956,1
    - Dst: js_new_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:29959,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - name_str
    - func
    argTypes:
    - JSContext*
    - char*
    - JSModuleInitFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29964
      start: 29951
    functionDepth: 11
    functionLinenumber: 29951
    functionLinenumberEnd: 29964
    functionName: JS_NewCModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - JS_NewAtom
    - js_new_module_def
    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:29970,1
    - Dst: add_export_entry2
      Src: /src/gpac/src/quickjs/quickjs.c:29973,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29975,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - m
    - export_name
    argTypes:
    - JSContext*
    - JSModuleDef*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29980
      start: 29966
    functionDepth: 15
    functionLinenumber: 29966
    functionLinenumberEnd: 29980
    functionName: JS_AddModuleExport
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - add_export_entry2
    - JS_FreeAtom
    - JS_NewAtom
    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:29987,1
    - Dst: find_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:29990,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:29991,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:29994,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:29997,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: 29999
      start: 29982
    functionDepth: 11
    functionLinenumber: 29982
    functionLinenumberEnd: 29999
    functionName: JS_SetModuleExport
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - find_export_entry
    - JS_NewAtom
    - JS_FreeValue
    - set_value
    - JS_FreeAtom
    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:30003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - m
    - val
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30005
      start: 30001
    functionDepth: 2
    functionLinenumber: 30001
    functionLinenumberEnd: 30005
    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:30009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30010
      start: 30007
    functionDepth: 1
    functionLinenumber: 30007
    functionLinenumberEnd: 30010
    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: 30021
      start: 30012
    functionDepth: 0
    functionLinenumber: 30012
    functionLinenumberEnd: 30021
    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: 30034
      start: 30023
    functionDepth: 0
    functionLinenumber: 30023
    functionLinenumberEnd: 30034
    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:30048,1
    - Dst: strrchr
      Src: /src/gpac/src/quickjs/quickjs.c:30051,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:30057,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:30058,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:30061,1
    - Dst: strrchr
      Src: /src/gpac/src/quickjs/quickjs.c:30074,1
    - Dst: strcmp
      Src: /src/gpac/src/quickjs/quickjs.c:30079,1
    - Dst: strcmp
      Src: /src/gpac/src/quickjs/quickjs.c:30079,1
    - Dst: pstrcat
      Src: /src/gpac/src/quickjs/quickjs.c:30090,1
    - Dst: pstrcat
      Src: /src/gpac/src/quickjs/quickjs.c:30091,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 40
    argCount: 3
    argNames:
    - ctx
    - base_name
    - name
    argTypes:
    - JSContext*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30094
      start: 30037
    functionDepth: 8
    functionLinenumber: 30037
    functionLinenumberEnd: 30094
    functionName: js_default_module_normalize_name
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - pstrcat
    - js_strdup
    - strrchr
    - strcmp
    - strlen
    - memcpy
    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:30102,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30108
      start: 30096
    functionDepth: 1
    functionLinenumber: 30096
    functionLinenumberEnd: 30108
    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:30122,1
    - Dst: JSRuntime*::module_normalize_func
      Src: /src/gpac/src/quickjs/quickjs.c:30124,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30130,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30132,1
    - Dst: js_find_loaded_module
      Src: /src/gpac/src/quickjs/quickjs.c:30137,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30139,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30140,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30144,1
    - Dst: JS_ThrowReferenceError
      Src: /src/gpac/src/quickjs/quickjs.c:30149,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30151,1
    - Dst: JSRuntime*::u::module_loader_func2
      Src: /src/gpac/src/quickjs/quickjs.c:30155,1
    - Dst: JSRuntime*::u::module_loader_func
      Src: /src/gpac/src/quickjs/quickjs.c:30157,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30159,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: 30161
      start: 30111
    functionDepth: 14
    functionLinenumber: 30111
    functionLinenumberEnd: 30161
    functionName: js_host_resolve_imported_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewAtom
    - JSRuntime*::u::module_loader_func2
    - JS_FreeAtom
    - js_free
    - js_default_module_normalize_name
    - JSRuntime*::module_normalize_func
    - JS_ThrowReferenceError
    - js_find_loaded_module
    - JSRuntime*::u::module_loader_func
    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:30171,1
    - Dst: JS_AtomToCString
      Src: /src/gpac/src/quickjs/quickjs.c:30174,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:30176,1
    - Dst: js_host_resolve_imported_module
      Src: /src/gpac/src/quickjs/quickjs.c:30179,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:30180,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:30181,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: 30183
      start: 30163
    functionDepth: 15
    functionLinenumber: 30163
    functionLinenumberEnd: 30183
    functionName: js_host_resolve_imported_module_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeCString
    - JS_AtomToCString
    - js_host_resolve_imported_module
    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: 30206
      start: 30196
    functionDepth: 0
    functionLinenumber: 30196
    functionLinenumberEnd: 30206
    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:30213,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30219,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - s
    - m
    - name
    argTypes:
    - JSContext*
    - JSResolveState*
    - JSModuleDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30221
      start: 30208
    functionDepth: 9
    functionLinenumber: 30208
    functionLinenumberEnd: 30221
    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:30242,1
    - Dst: add_resolve_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30244,1
    - Dst: find_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:30246,1
    - Dst: js_resolve_export1
      Src: /src/gpac/src/quickjs/quickjs.c:30263,1
    - Dst: js_resolve_export1
      Src: /src/gpac/src/quickjs/quickjs.c:30279,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: 30303
      start: 30231
    functionDepth: 10
    functionLinenumber: 30231
    functionLinenumberEnd: 30303
    functionName: js_resolve_export1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_resolve_export1
    - find_resolve_entry
    - find_export_entry
    - add_resolve_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:30322,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30325,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30326,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: 30329
      start: 30308
    functionDepth: 11
    functionLinenumber: 30308
    functionLinenumberEnd: 30329
    functionName: js_resolve_export
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resolve_export1
    - JS_FreeAtom
    - 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:30342,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30343,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30344,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:30347,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30348,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30349,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:30352,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30353,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30354,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: 30357
      start: 30331
    functionDepth: 14
    functionLinenumber: 30331
    functionLinenumberEnd: 30357
    functionName: js_resolve_export_throw_error
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomGetStr
    - JS_ThrowSyntaxError
    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: 30393
      start: 30385
    functionDepth: 0
    functionLinenumber: 30385
    functionLinenumberEnd: 30393
    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:30407,1
    - Dst: find_exported_name
      Src: /src/gpac/src/quickjs/quickjs.c:30416,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:30418,1
    - Dst: get_exported_names
      Src: /src/gpac/src/quickjs/quickjs.c:30438,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: 30442
      start: 30395
    functionDepth: 9
    functionLinenumber: 30395
    functionLinenumberEnd: 30442
    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:30447,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30448
      start: 30445
    functionDepth: 1
    functionLinenumber: 30445
    functionLinenumberEnd: 30448
    functionName: js_module_ns_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property1
    - JS_VALUE_GET_OBJ
    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:30463,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:30464,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30465,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30465,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:30469,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:30469,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:30470,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30472,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30473,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - p1
    - p2
    - opaque
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30475
      start: 30454
    functionDepth: 3
    functionLinenumber: 30454
    functionLinenumberEnd: 30475
    functionName: exported_names_cmp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_compare
    - JS_VALUE_GET_STRING
    - JS_AtomToString
    - JS_FreeValue
    - JS_IsException
    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:30486,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:30489,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:30493,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30498,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:30502,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - p
    - atom
    - opaque
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30504
      start: 30477
    functionDepth: 15
    functionLinenumber: 30477
    functionLinenumberEnd: 30504
    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_GetModuleNamespace
    - js_resolve_export_throw_error
    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:30514,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30515,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30517,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:30519,1
    - Dst: get_exported_names
      Src: /src/gpac/src/quickjs/quickjs.c:30520,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30521,1
    - Dst: js_resolve_export
      Src: /src/gpac/src/quickjs/quickjs.c:30537,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:30542,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30553,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:30565,1
    - Dst: add_property
      Src: /src/gpac/src/quickjs/quickjs.c:30574,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:30579,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:30586,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30597,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:30599,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:30600,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:30606,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30607,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 71
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30609
      start: 30506
    functionDepth: 20
    functionLinenumber: 30506
    functionLinenumberEnd: 30609
    functionName: js_build_module_ns
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_DefinePropertyValue
    - get_exported_names
    - js_resolve_export
    - JS_VALUE_GET_OBJ
    - rqsort
    - js_rc
    - JS_AtomToString
    - JS_FreeValue
    - add_property
    - JS_DefineAutoInitProperty
    - js_free
    - JS_IsException
    - memset
    - js_resolve_export_throw_error
    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:30613,1
    - Dst: js_build_module_ns
      Src: /src/gpac/src/quickjs/quickjs.c:30615,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30616,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:30620,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30621
      start: 30611
    functionDepth: 21
    functionLinenumber: 30611
    functionLinenumberEnd: 30621
    functionName: JS_GetModuleNamespace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - js_build_module_ns
    - JS_IsException
    - 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:30634,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30634,1
    - Dst: js_host_resolve_imported_module_atom
      Src: /src/gpac/src/quickjs/quickjs.c:30641,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:30649,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30653
      start: 30624
    functionDepth: 16
    functionLinenumber: 30624
    functionLinenumberEnd: 30653
    functionName: js_resolve_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - printf
    - js_resolve_module
    - JS_AtomGetStr
    - js_host_resolve_imported_module_atom
    linkageType: ''
    returnType: int
    signature: int js_resolve_module(JSContext *ctx, JSModuleDef *m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:30662,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30665,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:30668,1
    - Dst: js_closure2
      Src: /src/gpac/src/quickjs/quickjs.c:30669,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30670,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30672,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30676
      start: 30656
    functionDepth: 15
    functionLinenumber: 30656
    functionLinenumberEnd: 30676
    functionName: js_create_module_bytecode_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - JS_FreeValue
    - js_closure2
    - JS_IsException
    - JS_NewObjectProtoClass
    linkageType: ''
    returnType: int
    signature: int js_create_module_bytecode_function(JSContext *ctx, JSModuleDef
      *m)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:30695,1
    - Dst: js_create_module_bytecode_function
      Src: /src/gpac/src/quickjs/quickjs.c:30702,1
    - Dst: js_create_module_function
      Src: /src/gpac/src/quickjs/quickjs.c:30711,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30716
      start: 30679
    functionDepth: 16
    functionLinenumber: 30679
    functionLinenumberEnd: 30716
    functionName: js_create_module_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_create_module_function
    - js_create_module_bytecode_function
    - js_create_var_ref
    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:30732,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:30733,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30740,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30740,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30750,1
    - Dst: js_inner_module_linking
      Src: /src/gpac/src/quickjs/quickjs.c:30762,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30765,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:30770,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30778,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30778,1
    - Dst: js_resolve_export
      Src: /src/gpac/src/quickjs/quickjs.c:30790,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:30792,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30800,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30803,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:30803,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30804,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:30804,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30805,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30813,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30819,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:30820,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30821,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:30827,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30828,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:30830,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30832,1
    - Dst: js_resolve_export
      Src: /src/gpac/src/quickjs/quickjs.c:30840,1
    - Dst: js_resolve_export_throw_error
      Src: /src/gpac/src/quickjs/quickjs.c:30843,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:30851,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30852,1
    - Dst: js_create_var_ref
      Src: /src/gpac/src/quickjs/quickjs.c:30854,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30856,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:30859,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30862,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30867,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:30870,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30873,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:30886,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:30892,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:30893,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:30895,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30898,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:30911,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 128
    argCount: 4
    argNames:
    - ctx
    - m
    - pstack_top
    - index
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSModuleDef**
    - int
    assertStmts:
    - condition: (m->status == JS_MODULE_STATUS_UNLINKED)
      pos:
        line_end: 30749
        line_start: 30749
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->dfs_ancestor_index <= m->dfs_index)
      pos:
        line_end: 30897
        line_start: 30897
        source_file: /src/gpac/src/quickjs/quickjs.c
    - 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: 30767
        line_start: 30764
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30916
      start: 30721
    functionDepth: 24
    functionLinenumber: 30721
    functionLinenumberEnd: 30916
    functionName: js_inner_module_linking
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowStackOverflow
    - js_resolve_export
    - print_atom
    - JS_VALUE_GET_OBJ
    - printf
    - js_rc
    - JS_GetModuleNamespace
    - JS_FreeValue
    - JS_Call
    - js_inner_module_linking
    - set_value
    - min_int
    - JS_IsException
    - js_check_stack_overflow
    - assert
    - js_create_var_ref
    - JS_AtomGetStr
    - js_resolve_export_throw_error
    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:30927,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:30927,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30930,1
    - Dst: js_inner_module_linking
      Src: /src/gpac/src/quickjs/quickjs.c:30935,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30938,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30944,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:30945,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: 30937
        line_start: 30937
        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: 30932
        line_start: 30929
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (stack_top == NULL)
      pos:
        line_end: 30943
        line_start: 30943
        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: 30946
        line_start: 30944
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 30949
      start: 30920
    functionDepth: 25
    functionLinenumber: 30920
    functionLinenumberEnd: 30949
    functionName: js_link_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - assert
    - JS_AtomGetStr
    - js_inner_module_linking
    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:30970,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:30972,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:30973,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:30979,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 2
    argNames:
    - ctx
    - n_stack_levels
    argTypes:
    - JSContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30986
      start: 30953
    functionDepth: 3
    functionLinenumber: 30953
    functionLinenumberEnd: 30986
    functionName: JS_GetScriptOrModuleName
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - js_class_has_bytecode
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:30990,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30991
      start: 30988
    functionDepth: 3
    functionLinenumber: 30988
    functionLinenumberEnd: 30991
    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:30998,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:30999,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31000,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31004,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31005
      start: 30993
    functionDepth: 12
    functionLinenumber: 30993
    functionLinenumberEnd: 31005
    functionName: JS_GetImportMeta
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectProto
    - JS_DupValue
    - JS_IsException
    - 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:31012,1
    - Dst: js_find_loaded_module
      Src: /src/gpac/src/quickjs/quickjs.c:31018,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31019,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:31022,1
    - Dst: JS_GetImportMeta
      Src: /src/gpac/src/quickjs/quickjs.c:31025,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31026
      start: 31007
    functionDepth: 14
    functionLinenumber: 31007
    functionLinenumberEnd: 31026
    functionName: js_import_meta
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_ThrowTypeError
    - JS_GetImportMeta
    - JS_GetScriptOrModuleName
    - JS_FreeAtom
    - js_find_loaded_module
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_import_meta(JSContext *ctx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31030,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:31030,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31031
      start: 31028
    functionDepth: 1
    functionLinenumber: 31028
    functionLinenumberEnd: 31031
    functionName: JS_NewModuleValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    - JS_MKPTR
    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:31045,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31047,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: 31049
      start: 31033
    functionDepth: 24
    functionLinenumber: 31033
    functionLinenumberEnd: 31049
    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:31055,1
    - Dst: JS_GetModuleNamespace
      Src: /src/gpac/src/quickjs/quickjs.c:31059,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31060,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:31061,1
    - Dst: js_load_module_rejected
      Src: /src/gpac/src/quickjs/quickjs.c:31062,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31065,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31067,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31068,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: 31070
      start: 31051
    functionDepth: 25
    functionLinenumber: 31051
    functionLinenumberEnd: 31070
    functionName: js_load_module_fulfilled
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - js_load_module_rejected
    - JS_GetModuleNamespace
    - JS_FreeValue
    - JS_Call
    - JS_IsException
    - JS_GetException
    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:31082,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:31086,1
    - Dst: js_free_modules
      Src: /src/gpac/src/quickjs/quickjs.c:31087,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:31092,1
    - Dst: JS_EvalFunction
      Src: /src/gpac/src/quickjs/quickjs.c:31093,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31094,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:31096,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31097,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31099,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31100,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:31104,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:31108,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:31109,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31110,1
    - Dst: js_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:31111,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31112,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31113,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31114,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31115,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: 31116
      start: 31072
    functionDepth: 24
    functionLinenumber: 31072
    functionLinenumberEnd: 31116
    functionName: JS_LoadModuleInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewCFunctionData
    - JS_NewModuleValue
    - JS_EvalFunction
    - JS_FreeValue
    - js_host_resolve_imported_module
    - JS_Call
    - js_free_modules
    - JS_IsException
    - JS_GetException
    - js_resolve_module
    - js_promise_then
    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:31125,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31126,1
    - Dst: JS_LoadModuleInternal
      Src: /src/gpac/src/quickjs/quickjs.c:31128,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31130,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - basename
    - filename
    argTypes:
    - JSContext*
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31133
      start: 31120
    functionDepth: 25
    functionLinenumber: 31120
    functionLinenumberEnd: 31133
    functionName: JS_LoadModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewPromiseCapability
    - JS_FreeValue
    - JS_IsException
    - JS_LoadModuleInternal
    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:31145,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:31146,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:31149,1
    - Dst: JS_ToCString
      Src: /src/gpac/src/quickjs/quickjs.c:31153,1
    - Dst: JS_LoadModuleInternal
      Src: /src/gpac/src/quickjs/quickjs.c:31157,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:31159,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:31160,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:31163,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31164,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31166,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31167,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:31168,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31170
      start: 31135
    functionDepth: 25
    functionLinenumber: 31135
    functionLinenumberEnd: 31170
    functionName: js_dynamic_import_job
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_ThrowTypeError
    - JS_LoadModuleInternal
    - JS_IsString
    - JS_FreeValue
    - JS_Call
    - JS_FreeCString
    - JS_GetException
    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:31179,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:31183,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31184,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31185,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:31188,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31189,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31190,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:31195,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31196,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:31199,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:31200,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:31201,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:31204,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31205,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:31207,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:31212,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:31213,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:31216,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:31217,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:31217,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:31222,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31223,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:31225,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31226,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:31227,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:31230,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:31233,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:31237,1
    - Dst: JSContext*::rt::module_check_attrs
      Src: /src/gpac/src/quickjs/quickjs.c:31239,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31242,1
    - Dst: JS_EnqueueJob
      Src: /src/gpac/src/quickjs/quickjs.c:31254,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31256,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31258,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31259,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31260,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31263,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:31264,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31265,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31267,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31268,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 88
    argCount: 3
    argNames:
    - ctx
    - specifier
    - options
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31270
      start: 31172
    functionDepth: 24
    functionLinenumber: 31172
    functionLinenumberEnd: 31270
    functionName: js_dynamic_import
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_NewPromiseCapability
    - JS_DefinePropertyValue
    - JS_IsString
    - JS_Call
    - JS_IsObject
    - JS_GetException
    - JS_FreeAtom
    - JS_ThrowTypeError
    - JS_AtomToValue
    - JS_GetOwnPropertyNamesInternal
    - JS_FreeValue
    - JS_ToString
    - JS_IsException
    - JS_EnqueueJob
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - JSContext*::rt::module_check_attrs
    - JS_GetScriptOrModuleName
    - JS_FreePropertyEnum
    - JS_NewObjectProto
    - JS_IsUndefined
    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:31275,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31277,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31279,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts:
    - condition: (m->cycle_root == m)
      pos:
        line_end: 31276
        line_start: 31276
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31283
      start: 31272
    functionDepth: 24
    functionLinenumber: 31272
    functionLinenumberEnd: 31283
    functionName: js_set_module_evaluated
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - JS_Call
    - JS_FreeValue
    - JS_IsUndefined
    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: 31300
      start: 31292
    functionDepth: 0
    functionLinenumber: 31292
    functionLinenumberEnd: 31300
    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:31307,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:31308,1
    - Dst: find_in_exec_module_list
      Src: /src/gpac/src/quickjs/quickjs.c:31313,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31315,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31316,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31317,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31318,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:31321,1
    - Dst: gather_available_ancestors
      Src: /src/gpac/src/quickjs/quickjs.c:31326,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 3
    argNames:
    - ctx
    - module
    - exec_list
    argTypes:
    - JSContext*
    - JSModuleDef*
    - ExecModuleList*
    assertStmts:
    - condition: (!m->eval_has_exception)
      pos:
        line_end: 31315
        line_start: 31315
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->status == JS_MODULE_STATUS_EVALUATING_ASYNC)
      pos:
        line_end: 31314
        line_start: 31314
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->async_evaluation)
      pos:
        line_end: 31316
        line_start: 31316
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->pending_async_dependencies > 0)
      pos:
        line_end: 31317
        line_start: 31317
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31333
      start: 31302
    functionDepth: 15
    functionLinenumber: 31302
    functionLinenumberEnd: 31333
    functionName: gather_available_ancestors
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowStackOverflow
    - gather_available_ancestors
    - js_resize_array
    - js_check_stack_overflow
    - assert
    - 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: 31341
      start: 31335
    functionDepth: 0
    functionLinenumber: 31335
    functionLinenumberEnd: 31341
    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:31351,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:31351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - str
    - m
    argTypes:
    - JSContext*
    - char*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31352
      start: 31347
    functionDepth: 3
    functionLinenumber: 31347
    functionLinenumberEnd: 31352
    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:31358,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:31363,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:31365,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:31366,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31369,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31373,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31374,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31375,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31378,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:31382,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31384,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31385,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31387,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:31392,1
    - Dst: js_async_module_execution_rejected
      Src: /src/gpac/src/quickjs/quickjs.c:31393,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31395,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: 31368
        line_start: 31368
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->status == JS_MODULE_STATUS_EVALUATING_ASYNC)
      pos:
        line_end: 31372
        line_start: 31372
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!module->eval_has_exception)
      pos:
        line_end: 31373
        line_start: 31373
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->async_evaluation)
      pos:
        line_end: 31374
        line_start: 31374
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->cycle_root == module)
      pos:
        line_end: 31383
        line_start: 31383
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31398
      start: 31355
    functionDepth: 24
    functionLinenumber: 31355
    functionLinenumberEnd: 31398
    functionName: js_async_module_execution_rejected
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowStackOverflow
    - JS_VALUE_GET_PTR
    - JS_IsUndefined
    - js_dump_module
    - JS_NewModuleValue
    - JS_FreeValue
    - JS_Call
    - JS_DupValue
    - js_check_stack_overflow
    - assert
    - js_async_module_execution_rejected
    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:31403,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:31408,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31411,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31414,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31415,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31416,1
    - Dst: js_set_module_evaluated
      Src: /src/gpac/src/quickjs/quickjs.c:31418,1
    - Dst: gather_available_ancestors
      Src: /src/gpac/src/quickjs/quickjs.c:31424,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31425,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:31430,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:31436,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:31436,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31439,1
    - Dst: js_execute_async_module
      Src: /src/gpac/src/quickjs/quickjs.c:31441,1
    - Dst: js_execute_sync_module
      Src: /src/gpac/src/quickjs/quickjs.c:31444,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:31445,1
    - Dst: js_async_module_execution_rejected
      Src: /src/gpac/src/quickjs/quickjs.c:31446,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31449,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31450,1
    - Dst: js_set_module_evaluated
      Src: /src/gpac/src/quickjs/quickjs.c:31453,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:31457,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: 31410
        line_start: 31410
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->status == JS_MODULE_STATUS_EVALUATING_ASYNC)
      pos:
        line_end: 31413
        line_start: 31413
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!module->eval_has_exception)
      pos:
        line_end: 31414
        line_start: 31414
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (module->async_evaluation)
      pos:
        line_end: 31415
        line_start: 31415
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->eval_has_exception)
      pos:
        line_end: 31438
        line_start: 31438
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31459
      start: 31400
    functionDepth: 25
    functionLinenumber: 31400
    functionLinenumberEnd: 31459
    functionName: js_async_module_execution_fulfilled
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_set_module_evaluated
    - JS_VALUE_GET_PTR
    - js_execute_sync_module
    - js_dump_module
    - rqsort
    - printf
    - JS_NewModuleValue
    - js_execute_async_module
    - JS_FreeValue
    - gather_available_ancestors
    - js_free
    - assert
    - js_async_module_execution_rejected
    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:31466,1
    - Dst: js_async_function_call
      Src: /src/gpac/src/quickjs/quickjs.c:31468,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31469,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:31471,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:31472,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:31473,1
    - Dst: js_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:31474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31475,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31476,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31477,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31478,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31479,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31481
      start: 31461
    functionDepth: 26
    functionLinenumber: 31461
    functionLinenumberEnd: 31481
    functionName: js_execute_async_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewCFunctionData
    - js_dump_module
    - JS_NewModuleValue
    - JS_FreeValue
    - JS_IsException
    - js_async_function_call
    - js_promise_then
    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:31488,1
    - Dst: JSModuleDef*::init_func
      Src: /src/gpac/src/quickjs/quickjs.c:31492,1
    - Dst: js_async_function_call
      Src: /src/gpac/src/quickjs/quickjs.c:31498,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31499,1
    - Dst: JS_PromiseState
      Src: /src/gpac/src/quickjs/quickjs.c:31501,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31503,1
    - Dst: JS_PromiseResult
      Src: /src/gpac/src/quickjs/quickjs.c:31505,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31506,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31509,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:31510,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:31512,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - m
    - pvalue
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31518
      start: 31484
    functionDepth: 26
    functionLinenumber: 31484
    functionLinenumberEnd: 31518
    functionName: js_execute_sync_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowTypeError
    - JSModuleDef*::init_func
    - js_async_function_call
    - js_dump_module
    - JS_FreeValue
    - JS_IsException
    - JS_GetException
    - JS_PromiseState
    - JS_PromiseResult
    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:31530,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:31533,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:31534,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:31535,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31542,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31553,1
    - Dst: js_inner_module_evaluation
      Src: /src/gpac/src/quickjs/quickjs.c:31567,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31570,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:31574,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31578,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31581,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:31587,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:31588,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31596,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31601,1
    - Dst: js_execute_async_module
      Src: /src/gpac/src/quickjs/quickjs.c:31605,1
    - Dst: js_execute_sync_module
      Src: /src/gpac/src/quickjs/quickjs.c:31607,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31611,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: 31552
        line_start: 31552
        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: 31571
        line_start: 31569
        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: 31578
        line_start: 31577
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!m->async_evaluation)
      pos:
        line_end: 31595
        line_start: 31595
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->dfs_ancestor_index <= m->dfs_index)
      pos:
        line_end: 31610
        line_start: 31610
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!m->async_evaluation)
      pos:
        line_end: 31600
        line_start: 31600
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31630
      start: 31522
    functionDepth: 27
    functionLinenumber: 31522
    functionLinenumberEnd: 31630
    functionName: js_inner_module_evaluation
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowStackOverflow
    - js_execute_sync_module
    - js_dump_module
    - js_execute_async_module
    - js_inner_module_evaluation
    - js_resize_array
    - JS_DupValue
    - min_int
    - JS_GetException
    - js_check_stack_overflow
    - assert
    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:31640,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31642,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:31650,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31651,1
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:31652,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31653,1
    - Dst: js_inner_module_evaluation
      Src: /src/gpac/src/quickjs/quickjs.c:31657,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31660,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31663,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31667,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31668,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31669,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31670,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31672,1
    - Dst: js_dump_module
      Src: /src/gpac/src/quickjs/quickjs.c:31675,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31677,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31679,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31682,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:31684,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:31686,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:31688,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31690,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 40
    argCount: 2
    argNames:
    - ctx
    - m
    argTypes:
    - JSContext*
    - JSModuleDef*
    assertStmts:
    - 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: 31643
        line_start: 31641
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->status == JS_MODULE_STATUS_EVALUATED)
      pos:
        line_end: 31667
        line_start: 31667
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->eval_has_exception)
      pos:
        line_end: 31668
        line_start: 31668
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (!m->eval_has_exception)
      pos:
        line_end: 31678
        line_start: 31678
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m1->status == JS_MODULE_STATUS_EVALUATING)
      pos:
        line_end: 31659
        line_start: 31659
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (m->status == JS_MODULE_STATUS_EVALUATED)
      pos:
        line_end: 31681
        line_start: 31681
        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: 31677
        line_start: 31676
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (stack_top == NULL)
      pos:
        line_end: 31687
        line_start: 31687
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 31691
      start: 31634
    functionDepth: 28
    functionLinenumber: 31634
    functionLinenumberEnd: 31691
    functionName: js_evaluate_module
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewPromiseCapability
    - JS_IsUndefined
    - js_dump_module
    - JS_FreeValue
    - js_inner_module_evaluation
    - JS_Call
    - JS_DupValue
    - JS_IsException
    - assert
    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:31700,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:31702,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31707,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:31711,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31712,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31715,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31717,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:31719,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31720,1
    - Dst: js_parse_error_pos
      Src: /src/gpac/src/quickjs/quickjs.c:31724,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:31727,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:31728,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:31729,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31730,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:31735,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31737,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31741,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:31743,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:31744,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31745,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31748,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31752,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:31755,1
    - Dst: JSContext*::rt::module_check_attrs
      Src: /src/gpac/src/quickjs/quickjs.c:31757,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:31760,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 57
    argCount: 2
    argNames:
    - s
    - rme
    argTypes:
    - JSParseState*
    - JSReqModuleEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31761
      start: 31693
    functionDepth: 20
    functionLinenumber: 31693
    functionLinenumberEnd: 31761
    functionName: js_parse_with_clause
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - token_is_ident
    - next_token
    - JS_HasProperty
    - JS_DefinePropertyValue
    - JS_IsUndefined
    - JSContext*::rt::module_check_attrs
    - js_parse_error
    - JS_ValueToAtom
    - JS_DupValue
    - js_parse_error_pos
    - js_parse_expect
    - JS_DupAtom
    - JS_FreeAtom
    - JS_IsException
    - JS_NewObjectProto
    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:31769,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31770,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31773,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31776,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31779,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31782,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31783,1
    - Dst: add_req_module_entry
      Src: /src/gpac/src/quickjs/quickjs.c:31787,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31788,1
    - Dst: js_parse_with_clause
      Src: /src/gpac/src/quickjs/quickjs.c:31792,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 2
    argNames:
    - s
    - m
    argTypes:
    - JSParseState*
    - JSModuleDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31796
      start: 31764
    functionDepth: 21
    functionLinenumber: 31764
    functionLinenumberEnd: 31796
    functionName: js_parse_from_clause
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_req_module_entry
    - token_is_pseudo_keyword
    - JS_ValueToAtom
    - js_parse_error
    - next_token
    - JS_FreeAtom
    - js_parse_with_clause
    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:31806,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:31811,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:31813,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:31814,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:31815,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31821,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:31828,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31829,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31832,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31834,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:31836,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31837,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:31840,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:31840,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31841,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31844,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:31848,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31849,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31852,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31854,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31856,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31858,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31862,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:31864,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31866,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31867,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31872,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:31875,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:31877,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:31878,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:31889,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31891,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:31893,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31894,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31897,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:31898,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:31900,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:31903,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31905,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:31910,1
    - Dst: add_star_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:31913,1
    - Dst: js_parse_class
      Src: /src/gpac/src/quickjs/quickjs.c:31919,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:31921,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:31922,1
    - Dst: js_parse_function_decl2
      Src: /src/gpac/src/quickjs/quickjs.c:31923,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:31928,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:31932,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:31937,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:31939,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:31940,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:31941,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:31943,1
    - Dst: js_parse_var
      Src: /src/gpac/src/quickjs/quickjs.c:31950,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31952,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:31954,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 139
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31955
      start: 31798
    functionDepth: 31
    functionLinenumber: 31798
    functionLinenumberEnd: 31955
    functionName: js_parse_export
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_class
    - token_is_pseudo_keyword
    - add_star_export_entry
    - JS_DupAtom
    - JS_FreeAtom
    - peek_token
    - emit_u16
    - token_is_ident
    - set_object_name
    - emit_op
    - next_token
    - emit_atom
    - js_parse_from_clause
    - js_parse_var
    - js_parse_expect
    - js_parse_expect_semi
    - js_string_find_invalid_codepoint
    - define_var
    - js_parse_function_decl2
    - JS_VALUE_GET_STRING
    - js_parse_error
    - JS_ValueToAtom
    - add_export_entry
    - js_parse_assign_expr
    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:31971,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:31976,1
    - Dst: add_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:31980,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:31986,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:31992,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: 31996
      start: 31963
    functionDepth: 14
    functionLinenumber: 31963
    functionLinenumberEnd: 31996
    functionName: add_import
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - js_resize_array
    - add_closure_var
    - js_parse_error
    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:32005,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32010,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32013,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32014,1
    - Dst: add_req_module_entry
      Src: /src/gpac/src/quickjs/quickjs.c:32017,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32018,1
    - Dst: js_parse_with_clause
      Src: /src/gpac/src/quickjs/quickjs.c:32022,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:32028,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32031,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32033,1
    - Dst: add_import
      Src: /src/gpac/src/quickjs/quickjs.c:32035,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32037,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32041,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32047,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:32049,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:32050,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32051,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:32053,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:32054,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32057,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32059,1
    - Dst: add_import
      Src: /src/gpac/src/quickjs/quickjs.c:32061,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32063,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32065,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:32072,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:32072,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:32073,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32076,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:32081,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:32082,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32085,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32088,1
    - Dst: token_is_pseudo_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:32090,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32091,1
    - Dst: token_is_ident
      Src: /src/gpac/src/quickjs/quickjs.c:32093,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:32094,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32097,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32098,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:32102,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32104,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32105,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32108,1
    - Dst: add_import
      Src: /src/gpac/src/quickjs/quickjs.c:32110,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32112,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32113,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:32116,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:32119,1
    - Dst: js_parse_from_clause
      Src: /src/gpac/src/quickjs/quickjs.c:32123,1
    - Dst: js_parse_expect_semi
      Src: /src/gpac/src/quickjs/quickjs.c:32130,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 132
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32131
      start: 31998
    functionDepth: 22
    functionLinenumber: 31998
    functionLinenumberEnd: 32131
    functionName: js_parse_import
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - token_is_ident
    - add_req_module_entry
    - js_parse_from_clause
    - js_parse_expect
    - JS_VALUE_GET_STRING
    - js_string_find_invalid_codepoint
    - add_import
    - JS_ValueToAtom
    - token_is_pseudo_keyword
    - js_parse_error
    - js_parse_error_reserved_identifier
    - js_parse_expect_semi
    - next_token
    - JS_DupAtom
    - JS_FreeAtom
    - js_parse_with_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:32139,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:32140,1
    - Dst: js_parse_function_decl
      Src: /src/gpac/src/quickjs/quickjs.c:32141,1
    - Dst: js_parse_export
      Src: /src/gpac/src/quickjs/quickjs.c:32146,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:32149,1
    - Dst: js_parse_import
      Src: /src/gpac/src/quickjs/quickjs.c:32152,1
    - Dst: js_parse_statement_or_decl
      Src: /src/gpac/src/quickjs/quickjs.c:32155,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32159
      start: 32133
    functionDepth: 34
    functionLinenumber: 32133
    functionLinenumberEnd: 32159
    functionName: js_parse_source_element
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_export
    - js_parse_import
    - token_is_pseudo_keyword
    - js_parse_function_decl
    - js_parse_statement_or_decl
    - peek_token
    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:32171,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:32176,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:32182,1
    - Dst: js_dbuf_bytecode_init
      Src: /src/gpac/src/quickjs/quickjs.c:32191,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:32207,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32215,1
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:32219,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: 32224
      start: 32161
    functionDepth: 11
    functionLinenumber: 32161
    functionLinenumberEnd: 32224
    functionName: js_new_function_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_add_tail
    - init_list_head
    - countof
    - js_mallocz
    - js_dbuf_bytecode_init
    - JS_NewAtom
    - js_dbuf_init
    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:32238,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32251,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:32252,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: 32259
      start: 32226
    functionDepth: 7
    functionLinenumber: 32226
    functionLinenumberEnd: 32259
    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:32267,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:32269,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:32270,1
    - Dst: free_bytecode_atoms
      Src: /src/gpac/src/quickjs/quickjs.c:32273,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:32275,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32276,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32277,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32278,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:32281,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32283,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32285,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32288,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32290,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32292,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32294,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32297,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32299,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32303,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32305,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32308,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32310,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:32311,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32313,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:32317,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32319,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 40
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32320
      start: 32261
    functionDepth: 8
    functionLinenumber: 32261
    functionLinenumberEnd: 32320
    functionName: js_free_function_def
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_free_function_def
    - list_entry
    - list_del
    - JS_FreeValue
    - js_free
    - JS_FreeAtom
    - free_bytecode_atoms
    - list_for_each_safe
    - dbuf_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: 32329
      start: 32323
    functionDepth: 0
    functionLinenumber: 32323
    functionLinenumberEnd: 32329
    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:32333,1
    - Dst: skip_lines
      Src: /src/gpac/src/quickjs/quickjs.c:32336,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32337,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32340,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 3
    argNames:
    - source
    - line
    - line1
    argTypes:
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32345
      start: 32331
    functionDepth: 1
    functionLinenumber: 32331
    functionLinenumberEnd: 32345
    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:32359,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:32364,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:32371,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32384,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32394,1
    - Dst: print_lines
      Src: /src/gpac/src/quickjs/quickjs.c:32412,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:32422,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32425,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32429,1
    - Dst: print_lines
      Src: /src/gpac/src/quickjs/quickjs.c:32431,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32437,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32440,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:32445,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32450,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32456,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32459,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32461,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32463,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32472,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32474,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32476,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32480,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32483,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32486,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:32486,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32489,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:32489,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32493,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32493,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32496,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32496,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32496,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32499,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:32499,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32502,1
    - Dst: get_i32
      Src: /src/gpac/src/quickjs/quickjs.c:32502,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32505,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32505,1
    - Dst: get_i8
      Src: /src/gpac/src/quickjs/quickjs.c:32509,1
    - Dst: get_i16
      Src: /src/gpac/src/quickjs/quickjs.c:32512,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32516,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32520,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32522,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32524,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32527,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32529,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32531,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32533,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32534,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32534,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:32538,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32542,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32545,1
    - Dst: JS_PrintValue
      Src: /src/gpac/src/quickjs/quickjs.c:32547,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32551,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:32552,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32552,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32555,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:32556,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32556,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32557,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:32557,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32560,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:32561,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32561,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32562,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32562,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32566,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:32567,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32567,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32568,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32570,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32572,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32574,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32576,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:32576,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32578,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32578,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:32584,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32587,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32589,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:32591,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32598,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32600,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:32602,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32609,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32611,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:32613,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32619,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32624,1
    - Dst: print_lines
      Src: /src/gpac/src/quickjs/quickjs.c:32625,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:32627,1
    CyclomaticComplexity: 79
    EdgeCount: 79
    ICount: 262
    argCount: 16
    argNames:
    - ctx
    - pass
    - tab
    - len
    - vardefs
    - args
    - arg_count
    - vars
    - var_count
    - closure_var
    - closure_var_count
    - cpool
    - cpool_count
    - source
    - label_slots
    - b
    argTypes:
    - JSContext*
    - int
    - uint8_t*
    - int
    - JSBytecodeVarDef*
    - JSVarDef*
    - int
    - JSVarDef*
    - int
    - JSClosureVar*
    - int
    - JSValue*
    - uint32_t
    - char*
    - LabelSlot*
    - JSFunctionBytecode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32628
      start: 32347
    functionDepth: 22
    functionLinenumber: 32347
    functionLinenumberEnd: 32628
    functionName: dump_byte_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - short_opcode_info
    - get_u32
    - get_u8
    - print_atom
    - js_mallocz
    - get_u16
    - printf
    - JS_PrintValue
    - find_line_num
    - get_i8
    - js_free
    - get_i32
    - get_i16
    - print_lines
    linkageType: ''
    returnType: void
    signature: "void dump_byte_code(JSContext *ctx, int pass,\n                           const
      uint8_t *tab, int len,\n                           const JSBytecodeVarDef *vardefs,
      \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:32640,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:32646,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:32652,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32658,1
    - Dst: get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:32664,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:32669,1
    - Dst: get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:32679,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32685,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 51
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32688
      start: 32630
    functionDepth: 3
    functionLinenumber: 32630
    functionLinenumberEnd: 32688
    functionName: dump_pc2line
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - get_sleb128
    - get_leb128
    linkageType: ''
    returnType: __maybe_unused
    signature: __maybe_unused dump_pc2line(JSContext *ctx, const uint8_t *buf, int
      len)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:32698,1
    - Dst: find_line_num
      Src: /src/gpac/src/quickjs/quickjs.c:32699,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32700,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:32703,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32704,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32706,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32708,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32709,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32712,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32714,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:32714,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32717,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32720,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32723,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:32729,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32731,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32732,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32736,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32739,1
    - Dst: JS_AtomGetStr
      Src: /src/gpac/src/quickjs/quickjs.c:32742,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32745,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32748,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32751,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32754,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32757,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32760,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32763,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32766,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32769,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32774,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32775,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32776,1
    - Dst: dump_byte_code
      Src: /src/gpac/src/quickjs/quickjs.c:32777,1
    - Dst: dump_pc2line
      Src: /src/gpac/src/quickjs/quickjs.c:32787,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:32789,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 72
    argCount: 2
    argNames:
    - ctx
    - b
    argTypes:
    - JSContext*
    - JSFunctionBytecode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32790
      start: 32690
    functionDepth: 23
    functionLinenumber: 32690
    functionLinenumberEnd: 32790
    functionName: js_dump_function_bytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dump_byte_code
    - printf
    - find_line_num
    - dump_pc2line
    - 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:32803,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:32807,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32817,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 8
    argNames:
    - ctx
    - s
    - closure_type
    - var_idx
    - var_name
    - is_const
    - is_lexical
    - var_kind
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSClosureTypeEnum
    - int
    - JSAtom
    - BOOL
    - BOOL
    - JSVarKindEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32819
      start: 32793
    functionDepth: 14
    functionLinenumber: 32793
    functionLinenumberEnd: 32819
    functionName: add_closure_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupAtom
    - js_resize_array
    - JS_ThrowInternalError
    linkageType: ''
    returnType: int
    signature: "int add_closure_var(JSContext *ctx, JSFunctionDef *s,\n                           JSClosureTypeEnum
      closure_type,\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: 32831
      start: 32821
    functionDepth: 0
    functionLinenumber: 32821
    functionLinenumberEnd: 32831
    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: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32844,1
    - Dst: add_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:32857,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 9
    argNames:
    - ctx
    - s
    - fd
    - closure_type
    - var_idx
    - var_name
    - is_const
    - is_lexical
    - var_kind
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSFunctionDef*
    - JSClosureTypeEnum
    - int
    - JSAtom
    - BOOL
    - BOOL
    - JSVarKindEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32859
      start: 32835
    functionDepth: 15
    functionLinenumber: 32835
    functionLinenumberEnd: 32859
    functionName: get_closure_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - add_closure_var
    - get_closure_var
    linkageType: ''
    returnType: int
    signature: "int get_closure_var(JSContext *ctx, JSFunctionDef *s,\n                           JSFunctionDef
      *fd, JSClosureTypeEnum closure_type,\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: 32867
      start: 32861
    functionDepth: 0
    functionLinenumber: 32861
    functionLinenumberEnd: 32867
    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: 32877
      start: 32869
    functionDepth: 0
    functionLinenumber: 32869
    functionLinenumberEnd: 32877
    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: 32887
      start: 32879
    functionDepth: 0
    functionLinenumber: 32879
    functionLinenumberEnd: 32887
    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:32905,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32906,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:32914,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:32925,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: 32913
        line_start: 32913
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 32931
      start: 32889
    functionDepth: 1
    functionLinenumber: 32889
    functionLinenumberEnd: 32931
    functionName: optimize_scope_make_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - put_u16
    - assert
    - dbuf_putc
    - 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: 2
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32936,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32944
      start: 32933
    functionDepth: 15
    functionLinenumber: 32933
    functionLinenumberEnd: 32944
    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:32957,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32963,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:32969,1
    - Dst: add_var_this
      Src: /src/gpac/src/quickjs/quickjs.c:32975,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - s
    - var_name
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32983
      start: 32946
    functionDepth: 16
    functionLinenumber: 32946
    functionLinenumberEnd: 32983
    functionName: resolve_pseudo_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_var
    - add_var_this
    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:32991,1
    - Dst: get_with_scope_opcode
      Src: /src/gpac/src/quickjs/quickjs.c:32991,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:32992,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:32992,1
    - Dst: new_label_fd
      Src: /src/gpac/src/quickjs/quickjs.c:32994,1
    - Dst: dbuf_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:32996,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33000,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33001,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:33002,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: 33004
      start: 32987
    functionDepth: 10
    functionLinenumber: 32987
    functionLinenumberEnd: 33004
    functionName: var_object_test
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_set_error
    - update_label
    - dbuf_put_u32
    - dbuf_putc
    - get_with_scope_opcode
    - 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: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - vd
    argTypes:
    - JSFunctionDef*
    - JSVarDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33012
      start: 33006
    functionDepth: 0
    functionLinenumber: 33006
    functionLinenumberEnd: 33012
    functionName: capture_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void capture_var(JSFunctionDef *s, JSVarDef *vd)
  - BBCount: 88
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33042,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33043,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33043,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33044,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33052,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33053,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:33054,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:33063,1
    - Dst: resolve_pseudo_var
      Src: /src/gpac/src/quickjs/quickjs.c:33067,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:33072,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:33076,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33085,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33086,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33086,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33087,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33098,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33099,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33100,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33101,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33102,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33102,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33103,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33104,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33104,1
    - Dst: can_opt_put_ref_value
      Src: /src/gpac/src/quickjs/quickjs.c:33106,1
    - Dst: optimize_scope_make_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33117,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33123,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33124,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33125,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33125,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33126,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33128,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33129,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33130,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33130,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33131,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33139,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33144,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33153,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33154,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33161,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33163,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33165,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33168,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33174,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33176,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33179,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33182,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33186,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33193,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33194,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:33195,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33199,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33200,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:33201,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33213,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33214,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33214,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33215,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33222,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33223,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33225,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33226,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:33227,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:33237,1
    - Dst: resolve_pseudo_var
      Src: /src/gpac/src/quickjs/quickjs.c:33242,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:33247,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:33252,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33259,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33260,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33263,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33264,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:33265,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33271,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33272,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33275,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33276,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:33277,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33301,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33320,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33328,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33329,1
    - Dst: var_object_test
      Src: /src/gpac/src/quickjs/quickjs.c:33330,1
    - Dst: add_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33335,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33340,1
    - Dst: can_opt_put_global_ref_value
      Src: /src/gpac/src/quickjs/quickjs.c:33352,1
    - Dst: optimize_scope_make_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33353,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33357,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33358,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33358,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33364,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33365,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33366,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33371,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33372,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33375,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33376,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33379,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33380,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33380,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33386,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33387,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33391,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33392,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33403,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33404,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33404,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33405,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33412,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33413,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33414,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: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33416,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33417,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33418,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33418,1
    - Dst: can_opt_put_ref_value
      Src: /src/gpac/src/quickjs/quickjs.c:33421,1
    - Dst: optimize_scope_make_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33427,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33433,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33434,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33434,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33435,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33441,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33448,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33461,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33463,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33465,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33468,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33472,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33474,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33477,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33480,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33489,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33490,1
    CyclomaticComplexity: 145
    EdgeCount: 145
    ICount: 382
    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: 33494
      start: 33015
    functionDepth: 17
    functionLinenumber: 33015
    functionLinenumberEnd: 33494
    functionName: resolve_scope_var
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_func_var
    - can_opt_put_global_ref_value
    - var_object_test
    - dbuf_put_u16
    - resolve_pseudo_var
    - can_opt_put_ref_value
    - dbuf_put_u32
    - dbuf_putc
    - find_var
    - JS_DupAtom
    - add_arguments_var
    - capture_var
    - optimize_scope_make_ref
    - add_closure_var
    - get_closure_var
    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: 33509
      start: 33497
    functionDepth: 0
    functionLinenumber: 33497
    functionLinenumberEnd: 33509
    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:33516,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33518,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33519,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - bc
    - is_ref
    - idx
    argTypes:
    - DynBuf*
    - BOOL
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33520
      start: 33511
    functionDepth: 1
    functionLinenumber: 33511
    functionLinenumberEnd: 33520
    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:33534,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33538,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33539,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33556,1
    - Dst: JS_ThrowSyntaxErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33570,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 44
    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: 33582
      start: 33522
    functionDepth: 16
    functionLinenumber: 33522
    functionLinenumberEnd: 33582
    functionName: resolve_scope_private_field1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - capture_var
    - JS_ThrowSyntaxErrorAtom
    - find_private_class_field_all
    - 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:33592,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33596,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33603,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33604,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33605,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33608,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33609,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33611,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33616,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33617,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33618,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33619,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33620,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33624,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33625,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33625,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33626,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:33629,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33635,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33636,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33641,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:33642,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33642,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33643,1
    - Dst: get_private_setter_name
      Src: /src/gpac/src/quickjs/quickjs.c:33648,1
    - Dst: resolve_scope_private_field1
      Src: /src/gpac/src/quickjs/quickjs.c:33651,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33654,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33657,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33658,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33659,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33661,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33663,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33664,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33666,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:33667,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33668,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:33672,1
    - Dst: get_loc_or_ref
      Src: /src/gpac/src/quickjs/quickjs.c:33676,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:33677,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:33680,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_PRIVATE_SETTER)
      pos:
        line_end: 33656
        line_start: 33656
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (var_kind != JS_VAR_NORMAL)
      pos:
        line_end: 33595
        line_start: 33595
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 33683
      start: 33585
    functionDepth: 17
    functionLinenumber: 33585
    functionLinenumberEnd: 33683
    functionName: resolve_scope_private_field
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - resolve_scope_private_field1
    - get_private_setter_name
    - dbuf_put_u16
    - abort
    - JS_FreeAtom
    - dbuf_put_u32
    - dbuf_putc
    - JS_DupAtom
    - assert
    - get_loc_or_ref
    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:
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33693,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - s
    - scope_level
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33696
      start: 33685
    functionDepth: 1
    functionLinenumber: 33685
    functionLinenumberEnd: 33696
    functionName: mark_eval_captured_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - capture_var
    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: 2
    argNames:
    - var_name
    - var_kind
    argTypes:
    - JSAtom
    - JSVarKindEnum
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33707
      start: 33699
    functionDepth: 0
    functionLinenumber: 33699
    functionLinenumberEnd: 33707
    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(JSAtom var_name, JSVarKindEnum var_kind)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33719,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33723,1
    - Dst: add_var_this
      Src: /src/gpac/src/quickjs/quickjs.c:33731,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33733,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33735,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33737,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:33741,1
    - Dst: add_arguments_arg
      Src: /src/gpac/src/quickjs/quickjs.c:33746,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:33749,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33753,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33761,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:33769,1
    - Dst: add_var_this
      Src: /src/gpac/src/quickjs/quickjs.c:33781,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33783,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33785,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:33787,1
    - Dst: add_arguments_var
      Src: /src/gpac/src/quickjs/quickjs.c:33792,1
    - Dst: add_func_var
      Src: /src/gpac/src/quickjs/quickjs.c:33797,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33803,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33804,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33815,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33816,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33827,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33828,1
    - Dst: is_var_in_arg_scope
      Src: /src/gpac/src/quickjs/quickjs.c:33837,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:33838,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33839,1
    - Dst: get_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:33856,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 100
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (s->is_eval || s->closure_var_count == 0)
      pos:
        line_end: 33768
        line_start: 33768
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 33864
      start: 33709
    functionDepth: 16
    functionLinenumber: 33709
    functionLinenumberEnd: 33864
    functionName: add_eval_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - add_arguments_arg
    - add_func_var
    - assert
    - is_var_in_arg_scope
    - add_var_this
    - add_var
    - add_arguments_var
    - capture_var
    - get_closure_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:33874,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - ctx
    - cv
    - vd
    - var_idx
    argTypes:
    - JSContext*
    - JSClosureVar*
    - JSBytecodeVarDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33875
      start: 33866
    functionDepth: 3
    functionLinenumber: 33866
    functionLinenumberEnd: 33875
    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                                 JSBytecodeVarDef
      *vd, int var_idx)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:33892,1
    - Dst: set_closure_from_var
      Src: /src/gpac/src/quickjs/quickjs.c:33900,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33915,1
    - Dst: set_closure_from_var
      Src: /src/gpac/src/quickjs/quickjs.c:33922,1
    - Dst: is_var_in_arg_scope
      Src: /src/gpac/src/quickjs/quickjs.c:33929,1
    - Dst: set_closure_from_var
      Src: /src/gpac/src/quickjs/quickjs.c:33931,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:33951,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:33959,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 66
    argCount: 4
    argNames:
    - ctx
    - s
    - b
    - scope_idx
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - JSFunctionBytecode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33962
      start: 33879
    functionDepth: 6
    functionLinenumber: 33879
    functionLinenumberEnd: 33962
    functionName: add_closure_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - is_var_in_arg_scope
    - abort
    - set_closure_from_var
    - JS_DupAtom
    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: 33977
      start: 33976
    functionDepth: 0
    functionLinenumber: 33976
    functionLinenumberEnd: 33977
    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: 33978
      start: 33977
    functionDepth: 0
    functionLinenumber: 33977
    functionLinenumberEnd: 33978
    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: 33979
      start: 33978
    functionDepth: 0
    functionLinenumber: 33978
    functionLinenumberEnd: 33979
    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:33988,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/quickjs.c:33991,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34007,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/quickjs.c:34031,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34046,1
    - Dst: va_arg
      Src: /src/gpac/src/quickjs/quickjs.c:34047,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34061,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34066,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34067,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34072,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34077,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:34078,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34083,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34084,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34089,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34090,1
    - Dst: get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:34091,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:34100,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 104
    argCount: 2
    argNames:
    - s
    - pos
    argTypes:
    - CodeContext*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34102
      start: 33980
    functionDepth: 1
    functionLinenumber: 33980
    functionLinenumberEnd: 34102
    functionName: code_match
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - get_u8
    - get_u32
    - get_u16
    - va_end
    - va_start
    - va_arg
    linkageType: ''
    returnType: BOOL
    signature: BOOL code_match(CodeContext *s, int pos, ...)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34112,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34113,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34114,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34115,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34121,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34122,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34123,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34124,1
    - Dst: new_label_fd
      Src: /src/gpac/src/quickjs/quickjs.c:34132,1
    - Dst: dbuf_set_error
      Src: /src/gpac/src/quickjs/quickjs.c:34134,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34138,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34139,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34140,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34141,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34164,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34165,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:34171,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34175,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34176,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34179,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34180,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34180,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34183,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34186,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34187,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34189,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34190,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34190,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34191,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34194,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34198,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34200,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34201,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:34205,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 80
    argCount: 3
    argNames:
    - ctx
    - s
    - bc
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - DynBuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34209
      start: 34104
    functionDepth: 10
    functionLinenumber: 34104
    functionLinenumberEnd: 34209
    functionName: instantiate_hoisted_definitions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_set_error
    - dbuf_put_u16
    - abort
    - update_label
    - dbuf_put_u32
    - dbuf_putc
    - js_free
    - JS_DupAtom
    - JS_FreeAtom
    - new_label_fd
    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:34220,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34223,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34224,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:34228,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34232,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34239,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34240,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34244,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34245,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34250,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34251,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: 34231
        line_start: 34231
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 34259
      start: 34211
    functionDepth: 7
    functionLinenumber: 34211
    functionLinenumberEnd: 34259
    functionName: skip_dead_code
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u32
    - printf
    - JS_FreeAtom
    - update_label
    - assert
    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:34273,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 2
    argNames:
    - s
    - label
    argTypes:
    - JSFunctionDef*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34282
      start: 34261
    functionDepth: 0
    functionLinenumber: 34261
    functionLinenumberEnd: 34282
    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: 68
    BranchProfiles: []
    Callsites:
    - Dst: js_dbuf_bytecode_init
      Src: /src/gpac/src/quickjs/quickjs.c:34297,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34322,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34323,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34323,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34324,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34342,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34348,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34349,1
    - Dst: mark_eval_captured_variables
      Src: /src/gpac/src/quickjs/quickjs.c:34350,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34351,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34352,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34353,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34357,1
    - Dst: mark_eval_captured_variables
      Src: /src/gpac/src/quickjs/quickjs.c:34358,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34359,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34360,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34369,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34370,1
    - Dst: resolve_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:34371,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34373,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34379,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34380,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34381,1
    - Dst: resolve_scope_var
      Src: /src/gpac/src/quickjs/quickjs.c:34384,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34386,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34395,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34396,1
    - Dst: resolve_scope_private_field
      Src: /src/gpac/src/quickjs/quickjs.c:34397,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:34400,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34410,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34411,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34413,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34427,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34431,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34436,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34437,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34447,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34447,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34448,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34453,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34454,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:34474,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:34475,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34480,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34481,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34492,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34493,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34501,1
    - Dst: instantiate_hoisted_definitions
      Src: /src/gpac/src/quickjs/quickjs.c:34504,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34514,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34515,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34516,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34517,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34521,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34522,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34535,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34541,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34542,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34555,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34571,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:34571,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34574,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34578,1
    - Dst: get_label_pos
      Src: /src/gpac/src/quickjs/quickjs.c:34578,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:34581,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34583,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34584,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34585,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34586,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34591,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34592,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34609,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34610,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34611,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34615,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:34620,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:34626,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/quickjs.c:34628,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:34629,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:34640,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:34642,1
    CyclomaticComplexity: 85
    EdgeCount: 85
    ICount: 283
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 34492
        line_start: 34492
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 34410
        line_start: 34410
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (lab1 >= 0 && lab1 < s->label_count)
      pos:
        line_end: 34573
        line_start: 34573
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 34645
      start: 34286
    functionDepth: 18
    functionLinenumber: 34286
    functionLinenumberEnd: 34645
    functionName: resolve_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_dbuf_bytecode_init
    - dbuf_put_u16
    - dbuf_put_u32
    - mark_eval_captured_variables
    - instantiate_hoisted_definitions
    - JS_DupAtom
    - JS_FreeAtom
    - resolve_scope_private_field
    - get_u32
    - get_u16
    - dbuf_free
    - get_label_pos
    - skip_dead_code
    - code_match
    - dbuf_putc
    - M2
    - dbuf_put
    - JS_ThrowOutOfMemory
    - resolve_scope_var
    - update_label
    - assert
    - 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: 34660
      start: 34648
    functionDepth: 0
    functionLinenumber: 34648
    functionLinenumberEnd: 34660
    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:34675,1
    - Dst: get_line_col_cached
      Src: /src/gpac/src/quickjs/quickjs.c:34677,1
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:34680,1
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:34681,1
    - Dst: get_line_col_cached
      Src: /src/gpac/src/quickjs/quickjs.c:34694,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34704,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34708,1
    - Dst: dbuf_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:34709,1
    - Dst: dbuf_put_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:34710,1
    - Dst: dbuf_put_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:34712,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 30
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34719
      start: 34668
    functionDepth: 3
    functionLinenumber: 34668
    functionLinenumberEnd: 34719
    functionName: compute_pc2line_info
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_line_col_cached
    - dbuf_put_sleb128
    - dbuf_putc
    - js_dbuf_init
    - dbuf_put_leb128
    linkageType: ''
    returnType: void
    signature: void compute_pc2line_info(JSFunctionDef *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:34724,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: 34732
      start: 34721
    functionDepth: 6
    functionLinenumber: 34721
    functionLinenumberEnd: 34732
    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:34743,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34750,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 19
    argCount: 3
    argNames:
    - s
    - pos
    - label
    argTypes:
    - CodeContext*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34757
      start: 34734
    functionDepth: 0
    functionLinenumber: 34734
    functionLinenumberEnd: 34757
    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:34767,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:34769,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34775,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34781,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:34812,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: 34768
        line_start: 34768
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 34814
      start: 34762
    functionDepth: 1
    functionLinenumber: 34762
    functionLinenumberEnd: 34814
    functionName: find_jump_target
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - update_label
    - get_u32
    - assert
    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:34820,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34824,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34825,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34829,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34830,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34834,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:34835,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 2
    argNames:
    - bc_out
    - val
    argTypes:
    - DynBuf*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34836
      start: 34816
    functionDepth: 1
    functionLinenumber: 34816
    functionLinenumberEnd: 34836
    functionName: push_short_int
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_put_u32
    - dbuf_putc
    - 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:34844,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34847,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34850,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34853,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34856,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34859,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34862,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34865,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34868,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34871,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34878,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34879,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34882,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34883,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34886,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34887,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34892,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34893,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 53
    argCount: 3
    argNames:
    - bc_out
    - op
    - idx
    argTypes:
    - DynBuf*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34894
      start: 34838
    functionDepth: 1
    functionLinenumber: 34838
    functionLinenumberEnd: 34894
    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: 192
    BranchProfiles: []
    Callsites:
    - Dst: js_dbuf_bytecode_init
      Src: /src/gpac/src/quickjs/quickjs.c:34916,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:34920,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:34927,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34936,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34937,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34938,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34942,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34943,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34944,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34948,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34949,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34950,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34956,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:34957,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34959,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34960,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34966,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34967,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34969,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34970,1
    - Dst: capture_var
      Src: /src/gpac/src/quickjs/quickjs.c:34975,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34978,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34979,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34983,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34984,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34985,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34989,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34990,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34991,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34994,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:34995,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:34996,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35009,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35014,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35015,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35017,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35025,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35028,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35029,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35032,1
    - Dst: put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:35033,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35036,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35047,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35048,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35050,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35051,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:35052,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35055,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35056,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:35068,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35072,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:35077,1
    - Dst: code_has_label
      Src: /src/gpac/src/quickjs/quickjs.c:35078,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:35080,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:35087,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35088,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35089,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:35090,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35103,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:35105,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:35107,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35115,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35120,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:35122,1
    - Dst: code_has_label
      Src: /src/gpac/src/quickjs/quickjs.c:35124,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:35125,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35126,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35130,1
    - Dst: code_has_label
      Src: /src/gpac/src/quickjs/quickjs.c:35133,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:35136,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35143,1
    - Dst: skip_dead_code
      Src: /src/gpac/src/quickjs/quickjs.c:35145,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35147,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35161,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35162,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:35163,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35170,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35171,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:35172,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35181,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35182,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35188,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35189,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35194,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35195,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:35198,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35211,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35212,1
    - Dst: find_jump_target
      Src: /src/gpac/src/quickjs/quickjs.c:35215,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35217,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35219,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35227,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35228,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35229,1
    - Dst: add_reloc
      Src: /src/gpac/src/quickjs/quickjs.c:35232,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35235,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35242,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35253,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35255,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35256,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35261,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:35261,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35263,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35264,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35277,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:35277,1
    - Dst: update_label
      Src: /src/gpac/src/quickjs/quickjs.c:35293,1
    - Dst: get_i32
      Src: /src/gpac/src/quickjs/quickjs.c:35303,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35305,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35307,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35310,1
    - Dst: push_short_int
      Src: /src/gpac/src/quickjs/quickjs.c:35311,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35317,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35323,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:35323,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35327,1
    - Dst: push_short_int
      Src: /src/gpac/src/quickjs/quickjs.c:35328,1
    - Dst: get_i32
      Src: /src/gpac/src/quickjs/quickjs.c:35336,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35338,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35340,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35343,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35344,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35345,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35357,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35359,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35360,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35361,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35369,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35371,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35372,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35373,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35381,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35383,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35384,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35391,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35392,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35393,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35403,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:35403,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35404,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:35404,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35405,1
    - Dst: M4
      Src: /src/gpac/src/quickjs/quickjs.c:35405,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35414,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35420,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35422,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35423,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35428,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:35428,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35434,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35436,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35437,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35442,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:35442,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35444,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35445,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35460,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35462,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35463,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35464,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35476,1
    - Dst: M4
      Src: /src/gpac/src/quickjs/quickjs.c:35476,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35480,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35484,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35490,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35491,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35507,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35510,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:35510,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35511,1
    - Dst: M2
      Src: /src/gpac/src/quickjs/quickjs.c:35511,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35513,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35514,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35515,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35522,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35524,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35527,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35528,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35532,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35533,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35535,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35536,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35543,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35545,1
    - Dst: push_short_int
      Src: /src/gpac/src/quickjs/quickjs.c:35546,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35547,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35548,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35557,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:35557,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35559,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35560,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35561,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35562,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35566,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35567,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35576,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35577,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35578,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35590,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35591,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35593,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35594,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35598,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35599,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35613,1
    - Dst: M3
      Src: /src/gpac/src/quickjs/quickjs.c:35613,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35618,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35623,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35624,1
    - Dst: put_short_code
      Src: /src/gpac/src/quickjs/quickjs.c:35625,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35628,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35630,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35631,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35632,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35633,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35637,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35639,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35640,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35641,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35652,1
    - Dst: M4
      Src: /src/gpac/src/quickjs/quickjs.c:35652,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35667,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35668,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35669,1
    - Dst: code_match
      Src: /src/gpac/src/quickjs/quickjs.c:35673,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35676,1
    - Dst: dbuf_putc
      Src: /src/gpac/src/quickjs/quickjs.c:35677,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:35678,1
    - Dst: add_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35692,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:35693,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:35700,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:35738,1
    - Dst: put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:35766,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35769,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35772,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35778,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35781,1
    - Dst: compute_pc2line_info
      Src: /src/gpac/src/quickjs/quickjs.c:35784,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:35785,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:35788,1
    - Dst: dbuf_error
      Src: /src/gpac/src/quickjs/quickjs.c:35791,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:35792,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:35798,1
    CyclomaticComplexity: 263
    EdgeCount: 263
    ICount: 776
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (diff == (int16_t)diff)
      pos:
        line_end: 35027
        line_start: 35027
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 35014
        line_start: 35014
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label_slots[i].first_reloc == NULL)
      pos:
        line_end: 35699
        line_start: 35699
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (ls->addr == -1)
      pos:
        line_end: 35016
        line_start: 35016
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (diff == (int8_t)diff)
      pos:
        line_end: 35031
        line_start: 35031
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 35216
        line_start: 35216
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (label >= 0 && label < s->label_count)
      pos:
        line_end: 35146
        line_start: 35146
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 35800
      start: 34897
    functionDepth: 15
    functionLinenumber: 34897
    functionLinenumberEnd: 35800
    functionName: resolve_labels
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_dbuf_bytecode_init
    - dbuf_put_u16
    - dbuf_put_u32
    - JS_FreeAtom
    - get_u32
    - put_u16
    - get_u16
    - code_has_label
    - capture_var
    - dbuf_free
    - js_mallocz
    - add_pc2line_info
    - push_short_int
    - skip_dead_code
    - code_match
    - M3
    - dbuf_putc
    - put_u8
    - M2
    - memmove
    - dbuf_put
    - put_u32
    - compute_pc2line_info
    - JS_ThrowOutOfMemory
    - get_i32
    - M4
    - put_short_code
    - add_reloc
    - update_label
    - js_free
    - find_jump_target
    - assert
    - dbuf_error
    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:35819,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:35825,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:35832,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:35836,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:35849,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: 35854
      start: 35815
    functionDepth: 14
    functionLinenumber: 35815
    functionLinenumberEnd: 35854
    functionName: ss_check
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resize_array
    - JS_ThrowInternalError
    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:35868,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:35875,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35885,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:35894,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:35897,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:35899,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:35903,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35909,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:35919,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:35926,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35941,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:35946,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35956,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35962,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35963,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35967,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35968,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35973,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35974,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35979,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35980,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35984,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35985,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:35989,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:35990,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:36028,1
    - Dst: ss_check
      Src: /src/gpac/src/quickjs/quickjs.c:36040,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36044,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36045,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36046,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36050,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36051,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36052,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 192
    argCount: 3
    argNames:
    - ctx
    - fd
    - pstack_size
    argTypes:
    - JSContext*
    - JSFunctionDef*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36055
      start: 35856
    functionDepth: 15
    functionLinenumber: 35856
    functionLinenumberEnd: 36055
    functionName: compute_stack_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - short_opcode_info
    - get_u32
    - ss_check
    - js_malloc
    - printf
    - get_u16
    - JS_ThrowInternalError
    - js_free
    linkageType: ''
    returnType: __exception
    signature: "__exception compute_stack_size(JSContext *ctx,\n                                          JSFunctionDef
      *fd,\n                                          int *pstack_size)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: add_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:36100,1
    - Dst: find_closure_var
      Src: /src/gpac/src/quickjs/quickjs.c:36111,1
    - Dst: JS_ThrowSyntaxErrorAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36113,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 39
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36122
      start: 36057
    functionDepth: 15
    functionLinenumber: 36057
    functionLinenumberEnd: 36122
    functionName: add_global_variables
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_closure_var
    - JS_ThrowSyntaxErrorAtom
    - add_closure_var
    linkageType: ''
    returnType: int
    signature: int add_global_variables(JSContext *ctx, JSFunctionDef *fd)
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: add_eval_variables
      Src: /src/gpac/src/quickjs/quickjs.c:36168,1
    - Dst: add_global_variables
      Src: /src/gpac/src/quickjs/quickjs.c:36172,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:36177,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:36181,1
    - Dst: js_create_function
      Src: /src/gpac/src/quickjs/quickjs.c:36183,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:36184,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:36187,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:36193,1
    - Dst: dump_byte_code
      Src: /src/gpac/src/quickjs/quickjs.c:36194,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:36199,1
    - Dst: resolve_variables
      Src: /src/gpac/src/quickjs/quickjs.c:36203,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:36208,1
    - Dst: dump_byte_code
      Src: /src/gpac/src/quickjs/quickjs.c:36209,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:36214,1
    - Dst: resolve_labels
      Src: /src/gpac/src/quickjs/quickjs.c:36218,1
    - Dst: compute_stack_size
      Src: /src/gpac/src/quickjs/quickjs.c:36221,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:36238,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:36241,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:36245,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36246,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36258,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36276,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36293,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36294,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:36299,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36301,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36307,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:36308,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:36319,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36327,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36340,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:36346,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36348,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:36364,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:36366,1
    - Dst: js_dump_function_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:36370,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:36376,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:36379,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:36380,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:36382,1
    CyclomaticComplexity: 50
    EdgeCount: 50
    ICount: 184
    argCount: 2
    argNames:
    - ctx
    - fd
    argTypes:
    - JSContext*
    - JSFunctionDef*
    assertStmts:
    - condition: (cpool_idx >= 0)
      pos:
        line_end: 36186
        line_start: 36186
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 36384
      start: 36127
    functionDepth: 24
    functionLinenumber: 36127
    functionLinenumberEnd: 36384
    functionName: js_create_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_free_function_def
    - js_rc
    - list_del
    - add_gc_object
    - JS_FreeAtom
    - js_create_function
    - JS_DupContext
    - JS_IsException
    - memcpy
    - js_dump_function_bytecode
    - list_for_each_safe
    - dbuf_free
    - add_eval_variables
    - dump_byte_code
    - resolve_labels
    - JS_MKPTR
    - js_mallocz
    - list_entry
    - add_global_variables
    - js_realloc
    - printf
    - resolve_variables
    - compute_stack_size
    - js_free
    - assert
    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:36393,1
    - Dst: JS_AtomGetStrRT
      Src: /src/gpac/src/quickjs/quickjs.c:36394,1
    - Dst: free_bytecode_atoms
      Src: /src/gpac/src/quickjs/quickjs.c:36398,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:36402,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:36406,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:36410,1
    - Dst: JS_FreeContext
      Src: /src/gpac/src/quickjs/quickjs.c:36413,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:36415,1
    - Dst: JS_FreeAtomRT
      Src: /src/gpac/src/quickjs/quickjs.c:36417,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:36418,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:36419,1
    - Dst: remove_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:36422,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:36423,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:36424,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:36426,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 2
    argNames:
    - rt
    - b
    argTypes:
    - JSRuntime*
    - JSFunctionBytecode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36428
      start: 36386
    functionDepth: 8
    functionLinenumber: 36386
    functionLinenumberEnd: 36428
    functionName: free_function_bytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - list_add_tail
    - printf
    - js_rc
    - JS_AtomGetStrRT
    - JS_FreeAtomRT
    - JS_FreeContext
    - js_free_rt
    - JS_FreeValueRT
    - remove_gc_object
    - free_bytecode_atoms
    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:36439,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:36443,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36446,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36452,1
    - Dst: strcmp
      Src: /src/gpac/src/quickjs/quickjs.c:36508,1
    - Dst: js_parse_seek_token
      Src: /src/gpac/src/quickjs/quickjs.c:36513,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 72
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36514
      start: 36430
    functionDepth: 21
    functionLinenumber: 36430
    functionLinenumberEnd: 36514
    functionName: js_parse_directives
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_seek_token
    - js_parse_get_pos
    - snprintf
    - strcmp
    - 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: 36520
      start: 36517
    functionDepth: 0
    functionLinenumber: 36517
    functionLinenumberEnd: 36520
    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:36530,1
    - Dst: is_strict_future_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:36533,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36534,1
    - Dst: is_strict_future_keyword
      Src: /src/gpac/src/quickjs/quickjs.c:36540,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36541,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36571,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 36
    argCount: 3
    argNames:
    - s
    - fd
    - func_name
    argTypes:
    - JSParseState*
    - JSFunctionDef*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36572
      start: 36522
    functionDepth: 14
    functionLinenumber: 36522
    functionLinenumberEnd: 36572
    functionName: js_parse_function_check_names
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_strict_future_keyword
    - js_parse_error
    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:36579,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36599
      start: 36575
    functionDepth: 12
    functionLinenumber: 36575
    functionLinenumberEnd: 36599
    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:36625,1
    - Dst: peek_token
      Src: /src/gpac/src/quickjs/quickjs.c:36626,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36627,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36631,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36634,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:36648,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36655,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36656,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36657,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36663,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36667,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:36673,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36676,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36677,1
    - Dst: find_lexical_decl
      Src: /src/gpac/src/quickjs/quickjs.c:36685,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:36686,1
    - Dst: find_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:36699,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36702,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36703,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:36710,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36715,1
    - Dst: js_new_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:36721,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:36725,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36772,1
    - Dst: emit_class_field_init
      Src: /src/gpac/src/quickjs/quickjs.c:36776,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:36786,1
    - Dst: add_arg
      Src: /src/gpac/src/quickjs/quickjs.c:36790,1
    - Dst: js_parse_skip_parens_token
      Src: /src/gpac/src/quickjs/quickjs.c:36798,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36801,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:36804,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:36810,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36824,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36830,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36831,1
    - Dst: add_arg
      Src: /src/gpac/src/quickjs/quickjs.c:36834,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36835,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36836,1
    - Dst: js_parse_destructuring_element
      Src: /src/gpac/src/quickjs/quickjs.c:36838,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:36847,1
    - Dst: js_parse_error_reserved_identifier
      Src: /src/gpac/src/quickjs/quickjs.c:36852,1
    - Dst: js_parse_check_duplicate_parameter
      Src: /src/gpac/src/quickjs/quickjs.c:36856,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:36858,1
    - Dst: add_arg
      Src: /src/gpac/src/quickjs/quickjs.c:36862,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36865,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36868,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36869,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36871,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36872,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36873,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36874,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36876,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36877,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36886,1
    - Dst: new_label
      Src: /src/gpac/src/quickjs/quickjs.c:36889,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36890,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36891,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36892,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36893,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36894,1
    - Dst: emit_goto
      Src: /src/gpac/src/quickjs/quickjs.c:36895,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36896,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:36897,1
    - Dst: set_object_name
      Src: /src/gpac/src/quickjs/quickjs.c:36899,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36900,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36901,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36902,1
    - Dst: emit_label
      Src: /src/gpac/src/quickjs/quickjs.c:36903,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36904,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36905,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36906,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36913,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36914,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36915,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36916,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36917,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36921,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:36925,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:36930,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:36936,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:36953,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:36954,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36957,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36958,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36959,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36960,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:36961,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36962,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36968,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:36969,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36976,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:36982,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:36987,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:36991,1
    - Dst: js_parse_function_check_names
      Src: /src/gpac/src/quickjs/quickjs.c:36995,1
    - Dst: js_parse_assign_expr
      Src: /src/gpac/src/quickjs/quickjs.c:36998,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37002,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37004,1
    - Dst: js_strndup
      Src: /src/gpac/src/quickjs/quickjs.c:37011,1
    - Dst: js_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:37020,1
    - Dst: js_parse_directives
      Src: /src/gpac/src/quickjs/quickjs.c:37024,1
    - Dst: js_parse_function_check_names
      Src: /src/gpac/src/quickjs/quickjs.c:37028,1
    - Dst: js_parse_source_element
      Src: /src/gpac/src/quickjs/quickjs.c:37032,1
    - Dst: js_strndup
      Src: /src/gpac/src/quickjs/quickjs.c:37038,1
    - Dst: next_token
      Src: /src/gpac/src/quickjs/quickjs.c:37043,1
    - Dst: js_is_live_code
      Src: /src/gpac/src/quickjs/quickjs.c:37049,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:37050,1
    - Dst: reparse_ident_token
      Src: /src/gpac/src/quickjs/quickjs.c:37059,1
    - Dst: cpool_add
      Src: /src/gpac/src/quickjs/quickjs.c:37067,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37076,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37077,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37079,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37080,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37084,1
    - Dst: emit_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37085,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:37091,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37100,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37101,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37102,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37103,1
    - Dst: find_var
      Src: /src/gpac/src/quickjs/quickjs.c:37106,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:37108,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37113,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37114,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37115,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37116,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37122,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37126,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37127,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37128,1
    - Dst: define_var
      Src: /src/gpac/src/quickjs/quickjs.c:37132,1
    - Dst: add_global_var
      Src: /src/gpac/src/quickjs/quickjs.c:37150,1
    - Dst: add_export_entry
      Src: /src/gpac/src/quickjs/quickjs.c:37155,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:37165,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: 37169
      start: 36603
    functionDepth: 35
    functionLinenumber: 36603
    functionLinenumberEnd: 37169
    functionName: js_parse_function_decl2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_free_function_def
    - js_strndup
    - js_new_function_def
    - emit_class_field_init
    - token_is_pseudo_keyword
    - emit_u16
    - JS_DupAtom
    - JS_FreeAtom
    - peek_token
    - cpool_add
    - set_object_name
    - emit_label
    - emit_op
    - js_parse_skip_parens_token
    - js_parse_directives
    - next_token
    - add_arg
    - emit_atom
    - reparse_ident_token
    - find_lexical_decl
    - js_parse_function_check_names
    - emit_return
    - find_global_var
    - js_parse_source_element
    - emit_goto
    - find_var
    - js_parse_expect
    - push_scope
    - js_parse_destructuring_element
    - define_var
    - emit_u32
    - js_parse_error
    - js_parse_error_reserved_identifier
    - add_export_entry
    - js_parse_assign_expr
    - add_var
    - js_is_live_code
    - js_parse_check_duplicate_parameter
    - add_global_var
    - new_label
    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:37177,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: 37179
      start: 37171
    functionDepth: 36
    functionLinenumber: 37171
    functionLinenumberEnd: 37179
    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:37186,1
    - Dst: js_parse_directives
      Src: /src/gpac/src/quickjs/quickjs.c:37189,1
    - Dst: add_var
      Src: /src/gpac/src/quickjs/quickjs.c:37198,1
    - Dst: js_parse_source_element
      Src: /src/gpac/src/quickjs/quickjs.c:37204,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37213,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37214,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37216,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37217,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37219,1
    - Dst: emit_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37220,1
    - Dst: emit_op
      Src: /src/gpac/src/quickjs/quickjs.c:37222,1
    - Dst: emit_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37223,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:37225,1
    - Dst: emit_return
      Src: /src/gpac/src/quickjs/quickjs.c:37227,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSParseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37231
      start: 37181
    functionDepth: 35
    functionLinenumber: 37181
    functionLinenumberEnd: 37231
    functionName: js_parse_program
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - emit_op
    - emit_return
    - js_parse_source_element
    - add_var
    - js_parse_directives
    - next_token
    - emit_u16
    - emit_atom
    linkageType: ''
    returnType: __exception
    signature: __exception js_parse_program(JSParseState *s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:37237,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: 37249
      start: 37233
    functionDepth: 0
    functionLinenumber: 37233
    functionLinenumberEnd: 37249
    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: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:37258,1
    - Dst: js_closure
      Src: /src/gpac/src/quickjs/quickjs.c:37260,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37261,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:37263,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:37266,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37268,1
    - Dst: js_create_module_function
      Src: /src/gpac/src/quickjs/quickjs.c:37269,1
    - Dst: js_link_module
      Src: /src/gpac/src/quickjs/quickjs.c:37271,1
    - Dst: js_evaluate_module
      Src: /src/gpac/src/quickjs/quickjs.c:37273,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37274,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37279,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:37280,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 28
    argCount: 5
    argNames:
    - ctx
    - fun_obj
    - this_obj
    - var_refs
    - sf
    argTypes:
    - JSContext*
    - JSValue
    - JSValueConst
    - JSVarRef**
    - JSStackFrame*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37283
      start: 37251
    functionDepth: 29
    functionLinenumber: 37251
    functionLinenumberEnd: 37283
    functionName: JS_EvalFunctionInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_VALUE_GET_PTR
    - js_closure
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_create_module_function
    - js_evaluate_module
    - JS_IsException
    - js_link_module
    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:37287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - fun_obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37288
      start: 37285
    functionDepth: 30
    functionLinenumber: 37285
    functionLinenumberEnd: 37288
    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:37304,1
    - Dst: skip_shebang
      Src: /src/gpac/src/quickjs/quickjs.c:37305,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:37312,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:37313,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:37313,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:37314,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:37315,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:37315,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:37327,1
    - Dst: js_new_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:37330,1
    - Dst: js_new_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:37336,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:37355,1
    - Dst: add_closure_variables
      Src: /src/gpac/src/quickjs/quickjs.c:37357,1
    - Dst: push_scope
      Src: /src/gpac/src/quickjs/quickjs.c:37368,1
    - Dst: js_parse_program
      Src: /src/gpac/src/quickjs/quickjs.c:37371,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:37374,1
    - Dst: js_free_function_def
      Src: /src/gpac/src/quickjs/quickjs.c:37375,1
    - Dst: js_create_function
      Src: /src/gpac/src/quickjs/quickjs.c:37383,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:37384,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:37389,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:37391,1
    - Dst: JS_EvalFunctionInternal
      Src: /src/gpac/src/quickjs/quickjs.c:37396,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:37402,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:37402,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: 37312
        line_start: 37312
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (js_class_has_bytecode(p->class_id))
      pos:
        line_end: 37314
        line_start: 37314
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (sf != NULL)
      pos:
        line_end: 37311
        line_start: 37311
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 37404
      start: 37291
    functionDepth: 36
    functionLinenumber: 37291
    functionLinenumberEnd: 37404
    functionName: __JS_EvalInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_function_def
    - js_new_function_def
    - add_closure_variables
    - js_parse_init
    - JS_DupAtom
    - js_create_function
    - js_parse_program
    - JS_NewModuleValue
    - JS_FreeValue
    - JS_IsException
    - js_resolve_module
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    - JS_EvalFunctionInternal
    - push_scope
    - free_token
    - js_new_module_def
    - skip_shebang
    - js_class_has_bytecode
    - JS_NewAtom
    - JS_VALUE_GET_TAG
    - assert
    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:37415,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:37416,1
    - Dst: JSContext*::eval_internal
      Src: /src/gpac/src/quickjs/quickjs.c:37422,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: 37427
      start: 37407
    functionDepth: 14
    functionLinenumber: 37407
    functionLinenumberEnd: 37427
    functionName: JS_EvalInternal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JSContext*::eval_internal
    - unlikely
    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:37436,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:37437,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:37438,1
    - Dst: JS_EvalInternal
      Src: /src/gpac/src/quickjs/quickjs.c:37441,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:37442,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: 37444
      start: 37429
    functionDepth: 15
    functionLinenumber: 37429
    functionLinenumberEnd: 37444
    functionName: JS_EvalObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_IsString
    - JS_FreeCString
    - JS_DupValue
    - JS_EvalInternal
    - JS_ToCStringLen
    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:37454,1
    - Dst: JS_EvalInternal
      Src: /src/gpac/src/quickjs/quickjs.c:37457,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: 37454
        line_start: 37453
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 37460
      start: 37446
    functionDepth: 15
    functionLinenumber: 37446
    functionLinenumberEnd: 37460
    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:37465,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: 37467
      start: 37462
    functionDepth: 16
    functionLinenumber: 37462
    functionLinenumberEnd: 37467
    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:37471,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:37472,1
    - Dst: js_resolve_module
      Src: /src/gpac/src/quickjs/quickjs.c:37473,1
    - Dst: js_free_modules
      Src: /src/gpac/src/quickjs/quickjs.c:37474,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37479
      start: 37469
    functionDepth: 17
    functionLinenumber: 37469
    functionLinenumberEnd: 37479
    functionName: JS_ResolveModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_resolve_module
    - js_free_modules
    - JS_VALUE_GET_PTR
    - 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:37500,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - s
    argTypes:
    - JSObjectList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37501
      start: 37498
    functionDepth: 0
    functionLinenumber: 37498
    functionLinenumberEnd: 37501
    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: 37506
      start: 37503
    functionDepth: 0
    functionLinenumber: 37503
    functionLinenumberEnd: 37506
    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:37514,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37517,1
    - Dst: js_object_list_get_hash
      Src: /src/gpac/src/quickjs/quickjs.c:37526,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: 37531
      start: 37508
    functionDepth: 6
    functionLinenumber: 37508
    functionLinenumberEnd: 37531
    functionName: js_object_list_resize_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    - js_object_list_get_hash
    - js_malloc
    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:37540,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:37544,1
    - Dst: max_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:37545,1
    - Dst: js_object_list_resize_hash
      Src: /src/gpac/src/quickjs/quickjs.c:37548,1
    - Dst: js_object_list_get_hash
      Src: /src/gpac/src/quickjs/quickjs.c:37552,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - s
    - obj
    argTypes:
    - JSContext*
    - JSObjectList*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37557
      start: 37535
    functionDepth: 9
    functionLinenumber: 37535
    functionLinenumberEnd: 37557
    functionName: js_object_list_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - max_uint32
    - unlikely
    - js_object_list_resize_hash
    - 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:37568,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 3
    argNames:
    - ctx
    - s
    - obj
    argTypes:
    - JSContext*
    - JSObjectList*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37577
      start: 37560
    functionDepth: 1
    functionLinenumber: 37560
    functionLinenumberEnd: 37577
    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:37581,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSObjectList*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37583
      start: 37579
    functionDepth: 5
    functionLinenumber: 37579
    functionLinenumberEnd: 37583
    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: 37663
      start: 37656
    functionDepth: 0
    functionLinenumber: 37656
    functionLinenumberEnd: 37663
    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:37667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37668
      start: 37665
    functionDepth: 1
    functionLinenumber: 37665
    functionLinenumberEnd: 37668
    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:37672,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37673,1
    - Dst: dbuf_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37674,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37675
      start: 37670
    functionDepth: 1
    functionLinenumber: 37670
    functionLinenumberEnd: 37675
    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:37679,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:37680,1
    - Dst: dbuf_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37681,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37682
      start: 37677
    functionDepth: 1
    functionLinenumber: 37677
    functionLinenumberEnd: 37682
    functionName: bc_put_u32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_be
    - dbuf_put_u32
    - 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:37686,1
    - Dst: bswap64
      Src: /src/gpac/src/quickjs/quickjs.c:37687,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:37688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37689
      start: 37684
    functionDepth: 1
    functionLinenumber: 37684
    functionLinenumberEnd: 37689
    functionName: bc_put_u64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - is_be
    - bswap64
    - dbuf_put
    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:37693,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37694
      start: 37691
    functionDepth: 2
    functionLinenumber: 37691
    functionLinenumberEnd: 37694
    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:37698,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - v
    argTypes:
    - BCWriterState*
    - int32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37699
      start: 37696
    functionDepth: 3
    functionLinenumber: 37696
    functionLinenumberEnd: 37699
    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: 37705
      start: 37701
    functionDepth: 0
    functionLinenumber: 37701
    functionLinenumberEnd: 37705
    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:37711,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:37723,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:37731,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - s
    - pres
    - atom
    argTypes:
    - BCWriterState*
    - uint32_t*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37745
      start: 37707
    functionDepth: 9
    functionLinenumber: 37707
    functionLinenumberEnd: 37745
    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:37751,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:37752,1
    - Dst: bc_atom_to_idx
      Src: /src/gpac/src/quickjs/quickjs.c:37754,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37758,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - s
    - atom
    argTypes:
    - BCWriterState*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37760
      start: 37747
    functionDepth: 10
    functionLinenumber: 37747
    functionLinenumberEnd: 37760
    functionName: bc_put_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsTaggedInt
    - __JS_AtomToUInt32
    - bc_atom_to_idx
    - bc_put_leb128
    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:37769,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:37770,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37779,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37780,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37780,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37788,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:37789,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37789,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37793,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:37794,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37794,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37795,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37796,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37796,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37800,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:37801,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37801,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37802,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:37803,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37803,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37805,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37806,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37806,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37810,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37811,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37811,1
    - Dst: put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37812,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:37813,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37813,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 46
    argCount: 2
    argNames:
    - bc_buf
    - bc_len
    argTypes:
    - uint8_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37820
      start: 37762
    functionDepth: 1
    functionLinenumber: 37762
    functionLinenumberEnd: 37820
    functionName: bc_byte_swap
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - short_opcode_info
    - get_u32
    - put_u16
    - get_u16
    - bswap16
    - bswap32
    - put_u32
    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:37830,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:37833,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:37838,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:37839,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37845,1
    - Dst: bc_atom_to_idx
      Src: /src/gpac/src/quickjs/quickjs.c:37846,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37848,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:37856,1
    - Dst: bc_byte_swap
      Src: /src/gpac/src/quickjs/quickjs.c:37857,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:37859,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37861,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:37864,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: 37866
      start: 37822
    functionDepth: 10
    functionLinenumber: 37822
    functionLinenumberEnd: 37866
    functionName: JS_WriteFunctionBytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - short_opcode_info
    - get_u32
    - js_malloc
    - is_be
    - bc_atom_to_idx
    - bc_byte_swap
    - js_free
    - dbuf_put
    - put_u32
    - memcpy
    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:37871,1
    - Dst: bc_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37874,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:37876,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - BCWriterState*
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37878
      start: 37868
    functionDepth: 3
    functionLinenumber: 37868
    functionLinenumberEnd: 37878
    functionName: JS_WriteString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_leb128
    - bc_put_u16
    - dbuf_put
    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:37888,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:37890,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:37891,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:37893,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37913,1
    - Dst: bc_put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:37917,1
    - Dst: bc_put_u64
      Src: /src/gpac/src/quickjs/quickjs.c:37919,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37923,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37927
      start: 37880
    functionDepth: 3
    functionLinenumber: 37880
    functionLinenumberEnd: 37927
    functionName: JS_WriteBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u32
    - bc_put_u64
    - JS_VALUE_GET_PTR
    - js_bigint_set_short
    - JS_VALUE_GET_TAG
    - bc_put_leb128
    - bc_put_u8
    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:37933,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37937,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37939,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37940,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37941,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37942,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37943,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37944,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37945,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37946,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37947,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37948,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37949,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:37950,1
    - Dst: bc_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37951,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37952,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37953,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37955,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37956,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37957,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37958,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37959,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37960,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37961,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37962,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37964,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37967,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37968,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37969,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37971,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37972,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37973,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37974,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37975,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:37976,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:37977,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37980,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:37985,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:37986,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37988,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37989,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37990,1
    - Dst: bc_set_flags
      Src: /src/gpac/src/quickjs/quickjs.c:37991,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:37992,1
    - Dst: bc_put_u16
      Src: /src/gpac/src/quickjs/quickjs.c:37993,1
    - Dst: JS_WriteFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:37996,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38000,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38001,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:38002,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38004,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:38005,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38007,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38012,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 78
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts:
    - condition: (idx <= 16)
      pos:
        line_end: 37991
        line_start: 37991
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (idx <= 16)
      pos:
        line_end: 37949
        line_start: 37949
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (idx <= 8)
      pos:
        line_end: 37975
        line_start: 37975
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 38018
      start: 37931
    functionDepth: 11
    functionLinenumber: 37931
    functionLinenumberEnd: 38018
    functionName: JS_WriteFunctionTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_atom
    - JS_WriteFunctionBytecode
    - JS_VALUE_GET_PTR
    - JS_WriteObjectRec
    - bc_put_u16
    - bc_set_flags
    - bc_put_leb128
    - dbuf_put
    - assert
    - bc_put_u8
    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:38022,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38025,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38026,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38028,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38031,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38032,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38036,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38039,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38041,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38043,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38044,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38046,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38049,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38052,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38055,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38058,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38059,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38060,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38061,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38064,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38066,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38071
      start: 38020
    functionDepth: 11
    functionLinenumber: 38020
    functionLinenumberEnd: 38071
    functionName: JS_WriteModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_atom
    - JS_VALUE_GET_PTR
    - JS_WriteObjectRec
    - bc_put_leb128
    - bc_put_u8
    linkageType: ''
    returnType: int
    signature: int JS_WriteModule(BCWriterState *s, JSValueConst obj)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:38077,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38087,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38090,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:38093,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38095,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38098,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38103,1
    - Dst: JS_NewAtomUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:38110,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:38113,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38114,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38117,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38120,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38124,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:38132,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38135,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38138,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38142,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 74
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38150
      start: 38074
    functionDepth: 14
    functionLinenumber: 38074
    functionLinenumberEnd: 38150
    functionName: JS_WriteArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - js_get_length32
    - find_own_property
    - JS_WriteObjectRec
    - JS_VALUE_GET_OBJ
    - JS_NewAtomUInt32
    - bc_put_leb128
    - JS_FreeAtom
    - bc_put_u8
    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:38154,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38161,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38166,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:38167,1
    - Dst: JS_AtomIsString
      Src: /src/gpac/src/quickjs/quickjs.c:38170,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38173,1
    - Dst: bc_put_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38179,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38180,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 30
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38189
      start: 38152
    functionDepth: 14
    functionLinenumber: 38152
    functionLinenumberEnd: 38189
    functionName: JS_WriteObjectTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_AtomIsString
    - JS_ThrowTypeError
    - bc_put_atom
    - JS_WriteObjectRec
    - JS_VALUE_GET_OBJ
    - bc_put_leb128
    - get_shape_prop
    - bc_put_u8
    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:38193,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38196,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38197,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38198,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38199,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38200,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:38200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38203
      start: 38191
    functionDepth: 3
    functionLinenumber: 38191
    functionLinenumberEnd: 38203
    functionName: JS_WriteTypedArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_WriteObjectRec
    - JS_VALUE_GET_OBJ
    - bc_put_leb128
    - bc_put_u8
    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:38207,1
    - Dst: JS_ThrowTypeErrorDetachedArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:38210,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38213,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38214,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38215,1
    - Dst: dbuf_put
      Src: /src/gpac/src/quickjs/quickjs.c:38216,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38218
      start: 38205
    functionDepth: 3
    functionLinenumber: 38205
    functionLinenumberEnd: 38218
    functionName: JS_WriteArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_ThrowTypeErrorDetachedArrayBuffer
    - bc_put_leb128
    - dbuf_put
    - bc_put_u8
    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:38222,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:38224,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38225,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38226,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38227,1
    - Dst: bc_put_u64
      Src: /src/gpac/src/quickjs/quickjs.c:38228,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:38229,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts:
    - condition: (!abuf->detached)
      pos:
        line_end: 38223
        line_start: 38223
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 38235
      start: 38220
    functionDepth: 9
    functionLinenumber: 38220
    functionLinenumberEnd: 38235
    functionName: JS_WriteSharedArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_put_u64
    - JS_VALUE_GET_OBJ
    - js_resize_array
    - bc_put_leb128
    - assert
    - bc_put_u8
    linkageType: ''
    returnType: int
    signature: int JS_WriteSharedArrayBuffer(BCWriterState *s, JSValueConst obj)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:38241,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:38242,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:38246,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38249,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38252,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38255,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:38255,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38258,1
    - Dst: bc_put_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:38259,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:38259,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38264,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:38265,1
    - Dst: bc_put_u64
      Src: /src/gpac/src/quickjs/quickjs.c:38266,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:38271,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38272,1
    - Dst: JS_WriteString
      Src: /src/gpac/src/quickjs/quickjs.c:38273,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:38280,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:38281,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38283,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38284,1
    - Dst: JS_WriteFunctionTag
      Src: /src/gpac/src/quickjs/quickjs.c:38292,1
    - Dst: JS_WriteModule
      Src: /src/gpac/src/quickjs/quickjs.c:38298,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:38303,1
    - Dst: js_object_list_find
      Src: /src/gpac/src/quickjs/quickjs.c:38307,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38309,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38310,1
    - Dst: js_object_list_add
      Src: /src/gpac/src/quickjs/quickjs.c:38313,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38318,1
    - Dst: JS_WriteArray
      Src: /src/gpac/src/quickjs/quickjs.c:38325,1
    - Dst: JS_WriteObjectTag
      Src: /src/gpac/src/quickjs/quickjs.c:38328,1
    - Dst: JS_WriteArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:38331,1
    - Dst: JS_WriteSharedArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:38336,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38339,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38340,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38346,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38347,1
    - Dst: JS_WriteTypedArray
      Src: /src/gpac/src/quickjs/quickjs.c:38352,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:38354,1
    - Dst: JS_WriteBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:38366,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:38371,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 138
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCWriterState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38378
      start: 38237
    functionDepth: 21
    functionLinenumber: 38237
    functionLinenumberEnd: 38378
    functionName: JS_WriteObjectRec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - bc_put_u64
    - JS_WriteObjectRec
    - JS_VALUE_GET_NORM_TAG
    - bc_put_leb128
    - js_check_stack_overflow
    - JS_ThrowTypeError
    - JS_WriteString
    - JS_FreeValue
    - js_object_list_find
    - JS_ToString
    - JS_IsException
    - JS_VALUE_GET_INT
    - JS_WriteModule
    - JS_ThrowStackOverflow
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_OBJ
    - JS_ThrowInternalError
    - JS_WriteSharedArrayBuffer
    - JS_WriteFunctionTag
    - js_object_list_add
    - JS_WriteArrayBuffer
    - bc_put_u8
    - JS_WriteTypedArray
    - JS_VALUE_GET_STRING
    - JS_WriteBigInt
    - JS_WriteArray
    - bc_put_sleb128
    - JS_WriteObjectTag
    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:38388,1
    - Dst: bc_put_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38389,1
    - Dst: bc_put_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:38391,1
    - Dst: JS_WriteString
      Src: /src/gpac/src/quickjs/quickjs.c:38394,1
    - Dst: dbuf_claim
      Src: /src/gpac/src/quickjs/quickjs.c:38402,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:38404,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:38405,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:38407,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:38411,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCWriterState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38413
      start: 38381
    functionDepth: 4
    functionLinenumber: 38381
    functionLinenumberEnd: 38413
    functionName: JS_WriteObjectAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - dbuf_claim
    - JS_WriteString
    - bc_put_leb128
    - js_dbuf_init
    - memmove
    - bc_put_u8
    - memcpy
    - dbuf_free
    linkageType: ''
    returnType: int
    signature: int JS_WriteObjectAtoms(BCWriterState *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:38420,1
    - Dst: js_dbuf_init
      Src: /src/gpac/src/quickjs/quickjs.c:38430,1
    - Dst: js_object_list_init
      Src: /src/gpac/src/quickjs/quickjs.c:38431,1
    - Dst: JS_WriteObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:38433,1
    - Dst: JS_WriteObjectAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:38435,1
    - Dst: js_object_list_end
      Src: /src/gpac/src/quickjs/quickjs.c:38437,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:38438,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:38439,1
    - Dst: js_object_list_end
      Src: /src/gpac/src/quickjs/quickjs.c:38447,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:38448,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:38449,1
    - Dst: dbuf_free
      Src: /src/gpac/src/quickjs/quickjs.c:38450,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: 38457
      start: 38415
    functionDepth: 22
    functionLinenumber: 38415
    functionLinenumberEnd: 38457
    functionName: JS_WriteObject2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_WriteObjectRec
    - js_object_list_end
    - JS_WriteObjectAtoms
    - js_object_list_init
    - js_free
    - js_dbuf_init
    - memset
    - dbuf_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:38462,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: 38463
      start: 38459
    functionDepth: 23
    functionLinenumber: 38459
    functionLinenumberEnd: 38463
    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:38488,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38497,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38502,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38505,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38510,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:38512,1
    - Dst: vfprintf
      Src: /src/gpac/src/quickjs/quickjs.c:38513,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:38514,1
    - Dst: strchr
      Src: /src/gpac/src/quickjs/quickjs.c:38515,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - s
    - fmt
    argTypes:
    - BCReaderState*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38517
      start: 38488
    functionDepth: 0
    functionLinenumber: 38488
    functionLinenumberEnd: 38517
    functionName: bc_read_trace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - strchr
    - printf
    - format
    - va_end
    - va_start
    - vfprintf
    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:38525,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38528
      start: 38522
    functionDepth: 14
    functionLinenumber: 38522
    functionLinenumberEnd: 38528
    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:38532,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38534,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint8_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38538
      start: 38530
    functionDepth: 15
    functionLinenumber: 38530
    functionLinenumberEnd: 38538
    functionName: bc_get_u8
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_read_error_end
    - unlikely
    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:38543,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38545,1
    - Dst: get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38547,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:38548,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:38549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint16_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38553
      start: 38540
    functionDepth: 15
    functionLinenumber: 38540
    functionLinenumberEnd: 38553
    functionName: bc_get_u16
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - get_u16
    - is_be
    - 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:38558,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38560,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:38562,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:38563,1
    - Dst: bswap32
      Src: /src/gpac/src/quickjs/quickjs.c:38564,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38568
      start: 38555
    functionDepth: 15
    functionLinenumber: 38555
    functionLinenumberEnd: 38568
    functionName: bc_get_u32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u32
    - unlikely
    - is_be
    - bswap32
    - bc_read_error_end
    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:38573,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38575,1
    - Dst: get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:38577,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:38578,1
    - Dst: bswap64
      Src: /src/gpac/src/quickjs/quickjs.c:38579,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38583
      start: 38570
    functionDepth: 15
    functionLinenumber: 38570
    functionLinenumberEnd: 38583
    functionName: bc_get_u64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - get_u64
    - unlikely
    - is_be
    - bswap64
    - 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:38588,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:38589,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38590,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38593
      start: 38585
    functionDepth: 15
    functionLinenumber: 38585
    functionLinenumberEnd: 38593
    functionName: bc_get_leb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_read_error_end
    - unlikely
    - get_leb128
    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:38598,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:38599,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38600,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - int32_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38603
      start: 38595
    functionDepth: 15
    functionLinenumber: 38595
    functionLinenumberEnd: 38603
    functionName: bc_get_sleb128
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_read_error_end
    - unlikely
    - get_sleb128
    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:38608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38609
      start: 38606
    functionDepth: 16
    functionLinenumber: 38606
    functionLinenumberEnd: 38609
    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:38614,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - s
    - pval
    argTypes:
    - BCReaderState*
    - uint16_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38620
      start: 38611
    functionDepth: 16
    functionLinenumber: 38611
    functionLinenumberEnd: 38620
    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:38625,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38626,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:38627,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: 38631
      start: 38622
    functionDepth: 15
    functionLinenumber: 38622
    functionLinenumberEnd: 38631
    functionName: bc_get_buf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_read_error_end
    - memcpy
    - unlikely
    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:38637,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38640,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:38644,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38649,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - s
    - patom
    - idx
    argTypes:
    - BCReaderState*
    - JSAtom*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38653
      start: 38633
    functionDepth: 14
    functionLinenumber: 38633
    functionLinenumberEnd: 38653
    functionName: bc_idx_to_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - __JS_AtomIsTaggedInt
    - JS_DupAtom
    - JS_ThrowSyntaxError
    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:38658,1
    - Dst: __JS_AtomFromUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:38661,1
    - Dst: bc_idx_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38664,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - s
    - patom
    argTypes:
    - BCReaderState*
    - JSAtom*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38666
      start: 38655
    functionDepth: 16
    functionLinenumber: 38655
    functionLinenumberEnd: 38666
    functionName: bc_get_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_idx_to_atom
    - bc_get_leb128
    - __JS_AtomFromUInt32
    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:38675,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:38680,1
    - Dst: js_alloc_string
      Src: /src/gpac/src/quickjs/quickjs.c:38683,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38690,1
    - Dst: js_free_string
      Src: /src/gpac/src/quickjs/quickjs.c:38691,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:38694,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:38697,1
    - Dst: bswap16
      Src: /src/gpac/src/quickjs/quickjs.c:38700,1
    - Dst: JS_DumpString
      Src: /src/gpac/src/quickjs/quickjs.c:38706,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38706,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38709
      start: 38668
    functionDepth: 16
    functionLinenumber: 38668
    functionLinenumberEnd: 38709
    functionName: JS_ReadString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_string
    - bc_get_leb128
    - is_be
    - JS_DumpString
    - JS_ThrowInternalError
    - printf
    - bswap16
    - js_alloc_string
    - bc_read_error_end
    - memcpy
    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: 38718
      start: 38711
    functionDepth: 0
    functionLinenumber: 38711
    functionLinenumberEnd: 38718
    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:38730,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:38731,1
    - Dst: bc_get_buf
      Src: /src/gpac/src/quickjs/quickjs.c:38736,1
    - Dst: is_be
      Src: /src/gpac/src/quickjs/quickjs.c:38741,1
    - Dst: bc_byte_swap
      Src: /src/gpac/src/quickjs/quickjs.c:38742,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:38747,1
    - Dst: short_opcode_info
      Src: /src/gpac/src/quickjs/quickjs.c:38748,1
    - Dst: get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:38754,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:38757,1
    - Dst: bc_idx_to_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38759,1
    - Dst: put_u32
      Src: /src/gpac/src/quickjs/quickjs.c:38764,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38766,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38766,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38766,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: 38776
      start: 38720
    functionDepth: 16
    functionLinenumber: 38720
    functionLinenumberEnd: 38776
    functionName: JS_ReadFunctionBytecode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - short_opcode_info
    - get_u32
    - print_atom
    - unlikely
    - bc_idx_to_atom
    - put_u32
    - printf
    - is_be
    - bc_get_buf
    - bc_byte_swap
    - bc_read_trace
    - JS_DupAtom
    - bc_read_error_end
    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:38786,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38788,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38791,1
    - Dst: __JS_NewShortBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:38792,1
    - Dst: js_bigint_new
      Src: /src/gpac/src/quickjs/quickjs.c:38794,1
    - Dst: bc_get_u32
      Src: /src/gpac/src/quickjs/quickjs.c:38799,1
    - Dst: bc_get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:38802,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38812,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38823,1
    - Dst: JS_CompactBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:38824,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:38826,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38828
      start: 38778
    functionDepth: 16
    functionLinenumber: 38778
    functionLinenumberEnd: 38828
    functionName: JS_ReadBigInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_get_u64
    - bc_get_leb128
    - JS_FreeValue
    - bc_get_u8
    - bc_read_trace
    - bc_get_u32
    - js_bigint_new
    - __JS_NewShortBigInt
    - JS_CompactBigInt
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadBigInt(BCReaderState *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:38835,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - s
    - p
    argTypes:
    - BCReaderState*
    - JSObject*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38842
      start: 38832
    functionDepth: 9
    functionLinenumber: 38832
    functionLinenumberEnd: 38842
    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:38846,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:38846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - obj
    argTypes:
    - BCReaderState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38847
      start: 38844
    functionDepth: 10
    functionLinenumber: 38844
    functionLinenumberEnd: 38847
    functionName: BC_add_object_ref
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - BC_add_object_ref1
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: int
    signature: int BC_add_object_ref(BCReaderState *s, JSValueConst obj)
  - BBCount: 42
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:38861,1
    - Dst: bc_get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38863,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38866,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38867,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38868,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38869,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38870,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38871,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38872,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38873,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38874,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38875,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38876,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38878,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38881,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38883,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38885,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38887,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38889,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38891,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:38893,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:38895,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:38897,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:38899,1
    - Dst: JS_ThrowOutOfMemory
      Src: /src/gpac/src/quickjs/quickjs.c:38919,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:38921,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:38925,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:38936,1
    - Dst: add_gc_object
      Src: /src/gpac/src/quickjs/quickjs.c:38937,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:38939,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38942,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38942,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38942,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38944,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38947,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38951,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38954,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:38956,1
    - Dst: bc_get_leb128_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38959,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:38961,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38964,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38965,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38966,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38967,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38968,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38970,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38970,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38970,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38973,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38976,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38980,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:38982,1
    - Dst: bc_get_u16
      Src: /src/gpac/src/quickjs/quickjs.c:38985,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38988,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38989,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38990,1
    - Dst: bc_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:38991,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38993,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:38993,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:38993,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38996,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:38999,1
    - Dst: JS_ReadFunctionBytecode
      Src: /src/gpac/src/quickjs/quickjs.c:39000,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39002,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39006,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39007,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39010,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39010,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:39010,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39012,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:39015,1
    - Dst: bc_get_buf
      Src: /src/gpac/src/quickjs/quickjs.c:39018,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39021,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39024,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:39025,1
    - Dst: bc_get_buf
      Src: /src/gpac/src/quickjs/quickjs.c:39028,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39031,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39034,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39037,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39038,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39042,1
    - Dst: JS_DupContext
      Src: /src/gpac/src/quickjs/quickjs.c:39044,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39047,1
    CyclomaticComplexity: 72
    EdgeCount: 72
    ICount: 200
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39049
      start: 38849
    functionDepth: 17
    functionLinenumber: 38849
    functionLinenumberEnd: 39049
    functionName: JS_ReadFunctionTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ReadObjectRec
    - js_rc
    - add_gc_object
    - bc_read_trace
    - bc_get_buf
    - bc_get_flags
    - JS_DupContext
    - bc_get_atom
    - JS_FreeValue
    - bc_get_u8
    - JS_IsException
    - memcpy
    - bc_get_leb128_int
    - bc_get_u16
    - JS_MKPTR
    - js_mallocz
    - JS_ThrowOutOfMemory
    - print_atom
    - printf
    - JS_ReadFunctionBytecode
    - bc_get_leb128_u16
    - memset
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadFunctionTag(BCReaderState *s)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39060,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39063,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39063,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:39063,1
    - Dst: js_new_module_def
      Src: /src/gpac/src/quickjs/quickjs.c:39065,1
    - Dst: JS_NewModuleValue
      Src: /src/gpac/src/quickjs/quickjs.c:39068,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39069,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:39073,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39079,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39081,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39082,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39088,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:39092,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:39097,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39101,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39104,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39106,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39109,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39114,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:39118,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39123,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39128,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:39132,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39138,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:39140,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39143,1
    - Dst: bc_get_leb128_int
      Src: /src/gpac/src/quickjs/quickjs.c:39145,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:39150,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39154,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39155,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39160,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:39160,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 118
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39163
      start: 39051
    functionDepth: 17
    functionLinenumber: 39051
    functionLinenumberEnd: 39163
    functionName: JS_ReadModule
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_get_leb128_int
    - JS_MKPTR
    - print_atom
    - bc_get_atom
    - js_mallocz
    - printf
    - JS_ReadObjectRec
    - JS_NewModuleValue
    - JS_FreeValue
    - bc_get_u8
    - bc_read_trace
    - JS_IsException
    - js_new_module_def
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadModule(BCReaderState *s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:39174,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:39175,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39177,1
    - Dst: bc_get_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39180,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39183,1
    - Dst: print_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39183,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:39183,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39185,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39186,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39187,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39190,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39191,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39197,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 32
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39199
      start: 39165
    functionDepth: 20
    functionLinenumber: 39165
    functionLinenumberEnd: 39199
    functionName: JS_ReadObjectTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - BC_add_object_ref
    - print_atom
    - bc_get_atom
    - JS_ReadObjectRec
    - JS_NewObject
    - bc_get_leb128
    - printf
    - JS_FreeValue
    - bc_read_trace
    - JS_IsException
    - JS_FreeAtom
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadObjectTag(BCReaderState *s)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:39210,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:39211,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39214,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39217,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39218,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:39224,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39230,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39231,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:39233,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39234,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:39238,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39242,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 40
    argCount: 2
    argNames:
    - s
    - tag
    argTypes:
    - BCReaderState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39244
      start: 39201
    functionDepth: 22
    functionLinenumber: 39201
    functionLinenumberEnd: 39244
    functionName: JS_ReadArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - BC_add_object_ref
    - JS_ReadObjectRec
    - JS_IsUndefined
    - bc_get_leb128
    - JS_NewArray
    - JS_FreeValue
    - JS_DefinePropertyValueUint32
    - JS_PreventExtensions
    - JS_IsException
    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:39254,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39257,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39258,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39260,1
    - Dst: BC_add_object_ref1
      Src: /src/gpac/src/quickjs/quickjs.c:39265,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39267,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39268,1
    - Dst: js_get_array_buffer
      Src: /src/gpac/src/quickjs/quickjs.c:39270,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39271,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:39275,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:39276,1
    - Dst: js_typed_array_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:39277,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39280,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:39283,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39285,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39288,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39289,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39291
      start: 39246
    functionDepth: 16
    functionLinenumber: 39246
    functionLinenumberEnd: 39291
    functionName: JS_ReadTypedArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_ThrowTypeError
    - JS_ReadObjectRec
    - JS_VALUE_GET_OBJ
    - bc_get_leb128
    - js_get_array_buffer
    - BC_add_object_ref1
    - JS_FreeValue
    - bc_get_u8
    - js_typed_array_constructor
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadTypedArray(BCReaderState *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39300,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39302,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39305,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:39310,1
    - Dst: bc_read_error_end
      Src: /src/gpac/src/quickjs/quickjs.c:39311,1
    - Dst: js_array_buffer_constructor3
      Src: /src/gpac/src/quickjs/quickjs.c:39315,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39321,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:39323,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39328,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39330
      start: 39293
    functionDepth: 16
    functionLinenumber: 39293
    functionLinenumberEnd: 39330
    functionName: JS_ReadArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - BC_add_object_ref
    - unlikely
    - bc_get_leb128
    - JS_FreeValue
    - js_array_buffer_constructor3
    - JS_IsException
    - bc_read_error_end
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadArrayBuffer(BCReaderState *s)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39341,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39343,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39346,1
    - Dst: bc_get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:39351,1
    - Dst: js_array_buffer_constructor3
      Src: /src/gpac/src/quickjs/quickjs.c:39355,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39360,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:39362,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39366,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39368
      start: 39332
    functionDepth: 16
    functionLinenumber: 39332
    functionLinenumberEnd: 39368
    functionName: JS_ReadSharedArrayBuffer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - bc_get_u64
    - JS_ThrowTypeError
    - BC_add_object_ref
    - bc_get_leb128
    - JS_FreeValue
    - js_array_buffer_constructor3
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadSharedArrayBuffer(BCReaderState *s)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39375,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39376,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:39378,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39379,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:39382,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39384,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:39386,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:39388,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39391,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39392,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39394
      start: 39370
    functionDepth: 14
    functionLinenumber: 39370
    functionLinenumberEnd: 39394
    functionName: JS_ReadDate
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - BC_add_object_ref
    - JS_ReadObjectRec
    - JS_IsNumber
    - JS_SetObjectData
    - JS_FreeValue
    - JS_IsException
    - JS_NewObjectProtoClass
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadDate(BCReaderState *s)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39401,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39402,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:39404,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39405,1
    - Dst: BC_add_object_ref
      Src: /src/gpac/src/quickjs/quickjs.c:39407,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39409,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39412,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39413,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39415
      start: 39396
    functionDepth: 11
    functionLinenumber: 39396
    functionLinenumberEnd: 39415
    functionName: JS_ReadObjectValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - BC_add_object_ref
    - JS_ReadObjectRec
    - JS_FreeValue
    - JS_ToObject
    - JS_IsException
    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:39423,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:39424,1
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:39426,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39429,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39440,1
    - Dst: bc_get_sleb128
      Src: /src/gpac/src/quickjs/quickjs.c:39445,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39447,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:39448,1
    - Dst: bc_get_u64
      Src: /src/gpac/src/quickjs/quickjs.c:39454,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39456,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:39457,1
    - Dst: JS_ReadString
      Src: /src/gpac/src/quickjs/quickjs.c:39463,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:39466,1
    - Dst: JS_ReadFunctionTag
      Src: /src/gpac/src/quickjs/quickjs.c:39472,1
    - Dst: JS_ReadModule
      Src: /src/gpac/src/quickjs/quickjs.c:39477,1
    - Dst: JS_ReadObjectTag
      Src: /src/gpac/src/quickjs/quickjs.c:39480,1
    - Dst: JS_ReadArray
      Src: /src/gpac/src/quickjs/quickjs.c:39484,1
    - Dst: JS_ReadTypedArray
      Src: /src/gpac/src/quickjs/quickjs.c:39487,1
    - Dst: JS_ReadArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:39490,1
    - Dst: JS_ReadSharedArrayBuffer
      Src: /src/gpac/src/quickjs/quickjs.c:39495,1
    - Dst: JS_ReadDate
      Src: /src/gpac/src/quickjs/quickjs.c:39498,1
    - Dst: JS_ReadObjectValue
      Src: /src/gpac/src/quickjs/quickjs.c:39501,1
    - Dst: JS_ReadBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:39504,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:39510,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39511,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39513,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:39515,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39518,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:39518,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:39523,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39526,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 97
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39528
      start: 39417
    functionDepth: 23
    functionLinenumber: 39417
    functionLinenumberEnd: 39528
    functionName: JS_ReadObjectRec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 7
    functionsReached:
    - JS_ReadDate
    - JS_ReadTypedArray
    - JS_ReadString
    - bc_read_trace
    - __JS_NewFloat64
    - js_check_stack_overflow
    - JS_ReadArray
    - bc_get_u8
    - JS_ReadObjectValue
    - JS_ReadFunctionTag
    - JS_DupValue
    - JS_ReadSharedArrayBuffer
    - JS_ThrowStackOverflow
    - bc_get_u64
    - JS_MKPTR
    - JS_ReadObjectTag
    - JS_ReadModule
    - bc_get_sleb128
    - JS_ReadArrayBuffer
    - JS_NewInt32
    - JS_NewBool
    - JS_ReadBigInt
    - JS_ThrowSyntaxError
    - bc_get_leb128
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ReadObjectRec(BCReaderState *s)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: bc_get_u8
      Src: /src/gpac/src/quickjs/quickjs.c:39537,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:39540,1
    - Dst: bc_get_leb128
      Src: /src/gpac/src/quickjs/quickjs.c:39544,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39547,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:39550,1
    - Dst: JS_ReadString
      Src: /src/gpac/src/quickjs/quickjs.c:39556,1
    - Dst: JS_NewAtomStr
      Src: /src/gpac/src/quickjs/quickjs.c:39559,1
    - Dst: bc_read_trace
      Src: /src/gpac/src/quickjs/quickjs.c:39566,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39568
      start: 39530
    functionDepth: 17
    functionLinenumber: 39530
    functionLinenumberEnd: 39568
    functionName: JS_ReadObjectAtoms
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowSyntaxError
    - js_mallocz
    - JS_NewAtomStr
    - bc_get_leb128
    - JS_ReadString
    - bc_get_u8
    - bc_read_trace
    linkageType: ''
    returnType: int
    signature: int JS_ReadObjectAtoms(BCReaderState *s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39575,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:39577,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:39579,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - s
    argTypes:
    - BCReaderState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39580
      start: 39570
    functionDepth: 7
    functionLinenumber: 39570
    functionLinenumberEnd: 39580
    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:39591,1
    - Dst: JS_ReadObjectAtoms
      Src: /src/gpac/src/quickjs/quickjs.c:39604,1
    - Dst: JS_ReadObjectRec
      Src: /src/gpac/src/quickjs/quickjs.c:39607,1
    - Dst: bc_reader_free
      Src: /src/gpac/src/quickjs/quickjs.c:39609,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: 39611
      start: 39582
    functionDepth: 24
    functionLinenumber: 39582
    functionLinenumberEnd: 39611
    functionName: JS_ReadObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memset
    - bc_reader_free
    - JS_ReadObjectAtoms
    - 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:39625,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:39625,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:39627,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39629
      start: 39623
    functionDepth: 14
    functionLinenumber: 39623
    functionLinenumberEnd: 39629
    functionName: check_function
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsFunction
    - likely
    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:39633,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39635
      start: 39631
    functionDepth: 1
    functionLinenumber: 39631
    functionLinenumberEnd: 39635
    functionName: check_exception_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_IsException
    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:39644,1
    - Dst: memcmp
      Src: /src/gpac/src/quickjs/quickjs.c:39650,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39651,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:39653,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39655,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ctx
    - name
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39658
      start: 39637
    functionDepth: 11
    functionLinenumber: 39637
    functionLinenumberEnd: 39658
    functionName: find_atom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcmp
    - JS_NewAtom
    - abort
    - strlen
    - JS_DupAtom
    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:39664,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39665,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:39667,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39668,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: 39672
      start: 39660
    functionDepth: 11
    functionLinenumber: 39660
    functionLinenumberEnd: 39672
    functionName: JS_NewObjectProtoList
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectProtoClassAlloc
    - JS_SetPropertyFunctionList
    - JS_FreeValue
    - JS_IsException
    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:39682,1
    - Dst: JS_NewAtomString
      Src: /src/gpac/src/quickjs/quickjs.c:39686,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:39694,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:39698,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - p
    - atom
    - opaque
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39701
      start: 39674
    functionDepth: 13
    functionLinenumber: 39674
    functionLinenumberEnd: 39701
    functionName: JS_InstantiateFunctionListItem2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectProtoList
    - abort
    - JS_NewCFunction2
    - JS_NewAtomString
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_InstantiateFunctionListItem2(JSContext *ctx, JSObject *p,\n
      \                                              JSAtom atom, void *opaque)"
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: find_atom
      Src: /src/gpac/src/quickjs/quickjs.c:39713,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39716,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39719,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39722,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:39725,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39727,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39728,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39747,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:39759,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/quickjs/quickjs.c:39760,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39763,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:39768,1
    - Dst: JS_NewCFunction2
      Src: /src/gpac/src/quickjs/quickjs.c:39769,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39772,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39773,1
    - Dst: JS_DefinePropertyGetSet
      Src: /src/gpac/src/quickjs/quickjs.c:39777,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:39783,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:39786,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:39789,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:39795,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39798,1
    - Dst: JS_DefineAutoInitProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39802,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:39807,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39809,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 89
    argCount: 4
    argNames:
    - ctx
    - obj
    - atom
    - e
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSCFunctionListEntry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39812
      start: 39703
    functionDepth: 20
    functionLinenumber: 39703
    functionLinenumberEnd: 39812
    functionName: JS_InstantiateFunctionListItem
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_NewBool
    - JS_DefinePropertyGetSet
    - JS_DefinePropertyValue
    - JS_NewCFunction2
    - JS_GetProperty
    - JS_AtomToValue
    - abort
    - JS_FreeValue
    - JS_DefineAutoInitProperty
    - snprintf
    - JS_IsException
    - JS_NewInt32
    - __JS_NewFloat64
    - JS_FreeAtom
    - find_atom
    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:39821,1
    - Dst: JS_InstantiateFunctionListItem
      Src: /src/gpac/src/quickjs/quickjs.c:39824,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:39825,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 4
    argNames:
    - ctx
    - obj
    - tab
    - len
    argTypes:
    - JSContext*
    - JSValueConst
    - JSCFunctionListEntry*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39830
      start: 39814
    functionDepth: 21
    functionLinenumber: 39814
    functionLinenumberEnd: 39830
    functionName: JS_SetPropertyFunctionList
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 12
    functionsReached:
    - JS_FreeAtom
    - JS_InstantiateFunctionListItem
    - find_atom
    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:39837,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - ctx
    - m
    - tab
    - len
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSCFunctionListEntry*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39841
      start: 39832
    functionDepth: 16
    functionLinenumber: 39832
    functionLinenumberEnd: 39841
    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:39853,1
    - Dst: JS_NewString
      Src: /src/gpac/src/quickjs/quickjs.c:39857,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:39860,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:39863,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:39866,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:39869,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:39873,1
    - Dst: JS_SetModuleExport
      Src: /src/gpac/src/quickjs/quickjs.c:39875,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 4
    argNames:
    - ctx
    - m
    - tab
    - len
    argTypes:
    - JSContext*
    - JSModuleDef*
    - JSCFunctionListEntry*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39879
      start: 39843
    functionDepth: 13
    functionLinenumber: 39843
    functionLinenumberEnd: 39879
    functionName: JS_SetModuleExportList
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_NewObjectProtoList
    - JS_NewCFunction2
    - JS_NewString
    - JS_SetModuleExport
    - abort
    - __JS_NewFloat64
    - JS_NewInt32
    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:39887,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39888,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:39890,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39891,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:39894,1
    - Dst: set_cycle_flag
      Src: /src/gpac/src/quickjs/quickjs.c:39895,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: 39897
      start: 39882
    functionDepth: 20
    functionLinenumber: 39882
    functionLinenumberEnd: 39897
    functionName: JS_SetConstructor2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_DupValue
    - set_cycle_flag
    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:39903,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - func_obj
    - proto
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39905
      start: 39900
    functionDepth: 21
    functionLinenumber: 39900
    functionLinenumberEnd: 39905
    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:39933,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39934,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:39937,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39938,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39943,1
    - Dst: JS_NewObjectProtoClassAlloc
      Src: /src/gpac/src/quickjs/quickjs.c:39950,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39952,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39955,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:39957,1
    - Dst: JS_NewCFunction3
      Src: /src/gpac/src/quickjs/quickjs.c:39961,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:39963,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:39965,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/quickjs/quickjs.c:39968,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:39969,1
    - Dst: JS_SetConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:39973,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39975,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39976,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39979,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39980,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:39981,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: 39983
      start: 39916
    functionDepth: 22
    functionLinenumber: 39916
    functionLinenumberEnd: 39983
    functionName: JS_NewCConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_SetConstructor2
    - JS_GetProperty
    - JS_FreeValue
    - JS_NewCFunction3
    - JS_DupValue
    - JS_DefinePropertyValueStr
    - JS_IsException
    - JS_NewObjectProtoClassAlloc
    - JS_SetPropertyFunctionList
    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:39988,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: 39989
      start: 39985
    functionDepth: 16
    functionLinenumber: 39985
    functionLinenumberEnd: 39989
    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:39996,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:39996,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:39998,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:39998,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: 39999
      start: 39991
    functionDepth: 24
    functionLinenumber: 39991
    functionLinenumberEnd: 39999
    functionName: js_global_isNaN
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ToFloat64
    - isnan
    - unlikely
    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:40005,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:40005,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40007,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:40007,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: 40008
      start: 40001
    functionDepth: 24
    functionLinenumber: 40001
    functionLinenumberEnd: 40008
    functionName: js_global_isFinite
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ToFloat64
    - isfinite
    - unlikely
    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:40014,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40021,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40024,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:40027,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:40031,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:40038,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40039,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:40041,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40042,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40043,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:40044,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:40044,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:40045,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40045,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40047,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:40051,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:40054,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40056,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:40057,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40057,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 44
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40060
      start: 40012
    functionDepth: 21
    functionLinenumber: 40012
    functionLinenumberEnd: 40060
    functionName: JS_ToObject
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 6
    functionsReached:
    - JS_NewObjectClass
    - JS_ThrowTypeError
    - JS_DefinePropertyValue
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_NewInt32
    - JS_DupValue
    - JS_VALUE_GET_NORM_TAG
    - JS_ToString
    - JS_IsException
    - 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:40064,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40065,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40067
      start: 40062
    functionDepth: 22
    functionLinenumber: 40062
    functionLinenumberEnd: 40067
    functionName: JS_ToObjectFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ToObject
    - JS_FreeValue
    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:40075,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40076,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40083,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40084,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40085,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:40088,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40091,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40092,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40093,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:40096,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40099,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40101,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40102,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40105,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40107,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:40110,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40113,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40115,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40116,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40117,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:40117,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40118,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40122,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40124,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40125,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40126,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:40126,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40127,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40133,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40142,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40143,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40144,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 74
    argCount: 3
    argNames:
    - ctx
    - d
    - desc
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40146
      start: 40069
    functionDepth: 17
    functionLinenumber: 40069
    functionLinenumberEnd: 40146
    functionName: js_obj_to_desc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsFunction
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    - JS_IsObject
    - JS_ToBoolFree
    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:40155,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40158,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:40160,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: 40162
      start: 40148
    functionDepth: 19
    functionLinenumber: 40148
    functionLinenumberEnd: 40162
    functionName: JS_DefinePropertyDesc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_desc
    - JS_DefineProperty
    - js_obj_to_desc
    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:40174,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40175,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40179,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40180,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40182,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40184,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40187,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40188,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40189,1
    - Dst: JS_DefinePropertyDesc
      Src: /src/gpac/src/quickjs/quickjs.c:40191,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40197,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40198,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40199,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 30
    argCount: 3
    argNames:
    - ctx
    - obj
    - properties
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40201
      start: 40164
    functionDepth: 22
    functionLinenumber: 40164
    functionLinenumberEnd: 40201
    functionName: JS_ObjectDefineProperties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreePropertyEnum
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - JS_GetOwnPropertyNamesInternal
    - JS_FreeValue
    - JS_ThrowTypeErrorNotAnObject
    - JS_DefinePropertyDesc
    - JS_ToObject
    - JS_IsException
    - JS_IsObject
    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:40207,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40208,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40209,1
    - Dst: JS_GetActiveFunction
      Src: /src/gpac/src/quickjs/quickjs.c:40209,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:40210,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40212,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:40216,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40219,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: 40224
      start: 40203
    functionDepth: 22
    functionLinenumber: 40203
    functionLinenumberEnd: 40224
    functionName: js_object_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_NewObject
    - js_create_from_ctor
    - JS_ToObject
    - JS_VALUE_GET_NORM_TAG
    - JS_GetActiveFunction
    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:40233,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:40233,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40234,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:40235,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40236,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40239,1
    - Dst: JS_ObjectDefineProperties
      Src: /src/gpac/src/quickjs/quickjs.c:40240,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40241,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: 40246
      start: 40226
    functionDepth: 23
    functionLinenumber: 40226
    functionLinenumberEnd: 40246
    functionName: js_object_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_ObjectDefineProperties
    - JS_FreeValue
    - JS_IsNull
    - JS_IsException
    - JS_IsObject
    - 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:40254,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40257,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40258,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40259,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:40261,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: 40262
      start: 40248
    functionDepth: 15
    functionLinenumber: 40248
    functionLinenumberEnd: 40262
    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:40269,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40271,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: 40272
      start: 40264
    functionDepth: 16
    functionLinenumber: 40264
    functionLinenumberEnd: 40272
    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:40286,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40287,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40288,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:40289,1
    - Dst: JS_DefinePropertyDesc
      Src: /src/gpac/src/quickjs/quickjs.c:40294,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40295,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40299,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40301,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: 40303
      start: 40275
    functionDepth: 20
    functionLinenumber: 40275
    functionLinenumberEnd: 40303
    functionName: js_object_defineProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_ValueToAtom
    - JS_VALUE_GET_TAG
    - JS_DefinePropertyDesc
    - JS_DupValue
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    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:40311,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40314,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: 40315
      start: 40305
    functionDepth: 23
    functionLinenumber: 40305
    functionLinenumberEnd: 40315
    functionName: js_object_defineProperties
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ObjectDefineProperties
    - JS_DupValue
    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:40329,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40330,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:40333,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40334,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40337,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:40338,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40339,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40354,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40355,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40356,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: 40362
      start: 40318
    functionDepth: 22
    functionLinenumber: 40318
    functionLinenumberEnd: 40362
    functionName: js_object___defineGetter__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - JS_DefineProperty
    - JS_ValueToAtom
    - JS_FreeValue
    - check_function
    - JS_ToObject
    - JS_IsException
    - JS_FreeAtom
    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:40375,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40376,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40377,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40379,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40380,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40384,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:40385,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:40388,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40389,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40389,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:40393,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40394,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40398,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40398,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40399,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40399,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40402,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40402,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40403,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40404,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40407,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40408,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40409,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40410,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:40412,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40415,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40416,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:40420,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40421,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40423,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40424,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: 40426
      start: 40364
    functionDepth: 22
    functionLinenumber: 40364
    functionLinenumberEnd: 40426
    functionName: js_object_getOwnPropertyDescriptor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_DefinePropertyValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_NewObject
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - JS_ThrowTypeErrorNotAnObject
    - JS_GetOwnPropertyInternal
    - JS_FreeAtom
    - js_free_desc
    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:40438,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40439,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40442,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40443,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:40446,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40447,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:40453,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40454,1
    - Dst: js_object_getOwnPropertyDescriptor
      Src: /src/gpac/src/quickjs/quickjs.c:40458,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40459,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40460,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40462,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:40463,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40468,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40469,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40473,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40475,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: 40477
      start: 40428
    functionDepth: 23
    functionLinenumber: 40428
    functionLinenumberEnd: 40477
    functionName: js_object_getOwnPropertyDescriptors
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_VALUE_GET_OBJ
    - JS_NewObject
    - JS_IsUndefined
    - JS_AtomToValue
    - JS_GetOwnPropertyNamesInternal
    - JS_FreeValue
    - js_object_getOwnPropertyDescriptor
    - JS_ToObject
    - JS_IsException
    - JS_FreePropertyEnum
    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:40489,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40490,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40492,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40493,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:40495,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40496,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40505,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:40510,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:40517,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40518,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40522,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40523,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:40527,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40528,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:40530,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40531,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40533,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40535,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40536,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40538,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40542,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40548,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40550,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40553,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40554,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 79
    argCount: 4
    argNames:
    - ctx
    - obj1
    - flags
    - kind
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40556
      start: 40479
    functionDepth: 22
    functionLinenumber: 40479
    functionLinenumberEnd: 40556
    functionName: JS_GetOwnPropertyNames2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - JS_AtomToValue
    - JS_GetOwnPropertyNamesInternal
    - JS_NewArray
    - JS_FreeValue
    - JS_ToObject
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_FreePropertyEnum
    - JS_CreateDataPropertyUint32
    - js_free_desc
    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:40561,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: 40563
      start: 40558
    functionDepth: 23
    functionLinenumber: 40558
    functionLinenumberEnd: 40563
    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:40568,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: 40570
      start: 40565
    functionDepth: 23
    functionLinenumber: 40565
    functionLinenumberEnd: 40570
    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:40575,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: 40577
      start: 40572
    functionDepth: 23
    functionLinenumber: 40572
    functionLinenumberEnd: 40577
    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:40586,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40588,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:40592,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40596,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: 40597
      start: 40579
    functionDepth: 15
    functionLinenumber: 40579
    functionLinenumberEnd: 40597
    functionName: js_object_isExtensible
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsExtensible
    - JS_VALUE_GET_TAG
    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:40606,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40608,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40610,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:40612,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40616,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40619,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40620,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: 40622
      start: 40599
    functionDepth: 15
    functionLinenumber: 40599
    functionLinenumberEnd: 40622
    functionName: js_object_preventExtensions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ThrowTypeError
    - JS_VALUE_GET_TAG
    - JS_PreventExtensions
    - JS_DupValue
    - JS_ThrowTypeErrorNotAnObject
    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:40632,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:40633,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_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40637,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40640,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40641,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40642,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40643,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40647,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: 40648
      start: 40624
    functionDepth: 22
    functionLinenumber: 40624
    functionLinenumberEnd: 40648
    functionName: js_object_hasOwnProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_ToObject
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_FreeAtom
    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:40658,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40659,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40661,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:40662,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40663,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40666,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40667,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:40668,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40669,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40673,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: 40674
      start: 40650
    functionDepth: 22
    functionLinenumber: 40650
    functionLinenumberEnd: 40674
    functionName: js_object_hasOwn
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_ToObject
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_FreeAtom
    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:40679,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: 40680
      start: 40676
    functionDepth: 22
    functionLinenumber: 40676
    functionLinenumberEnd: 40680
    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:40690,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:40691,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40692,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:40693,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40695,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40696,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:40698,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40700,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:40705,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40708,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40725,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40726,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40727,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:40729,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40730,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:40731,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:40734,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: 40735
      start: 40682
    functionDepth: 22
    functionLinenumber: 40682
    functionLinenumberEnd: 40735
    functionName: js_object_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - js_new_string8
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - JS_AtomToString
    - JS_FreeValue
    - JS_IsFunction
    - JS_IsString
    - JS_ConcatString3
    - JS_IsNull
    - JS_IsArray
    - JS_ToObject
    - JS_IsException
    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:40740,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: 40741
      start: 40737
    functionDepth: 25
    functionLinenumber: 40737
    functionLinenumberEnd: 40741
    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:40751,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40752,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:40755,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40755,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:40756,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40757,1
    - Dst: JS_CopyDataProperties
      Src: /src/gpac/src/quickjs/quickjs.c:40759,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40761,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40766,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40767,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: 40769
      start: 40743
    functionDepth: 22
    functionLinenumber: 40743
    functionLinenumberEnd: 40769
    functionName: js_object_assign
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_FreeValue
    - JS_CopyDataProperties
    - JS_IsNull
    - JS_ToObject
    - JS_IsException
    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:40780,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40781,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:40783,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:40787,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40790,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40792,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40801,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:40807,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40810,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40814,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40815,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40818,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: 40820
      start: 40771
    functionDepth: 19
    functionLinenumber: 40771
    functionLinenumberEnd: 40820
    functionName: js_object_seal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - JS_DefineProperty
    - JS_GetOwnPropertyNamesInternal
    - JS_PreventExtensions
    - JS_DupValue
    - JS_GetOwnPropertyInternal
    - JS_IsObject
    - JS_FreePropertyEnum
    - js_free_desc
    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:40831,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:40834,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40836,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40843,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:40847,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:40855,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40860,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:40861,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:40864,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: 40866
      start: 40822
    functionDepth: 16
    functionLinenumber: 40822
    functionLinenumberEnd: 40866
    functionName: js_object_isSealed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_VALUE_GET_OBJ
    - JS_GetOwnPropertyNamesInternal
    - JS_GetOwnPropertyInternal
    - JS_IsObject
    - JS_FreePropertyEnum
    - js_free_desc
    - JS_IsExtensible
    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:40879,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40880,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:40883,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40884,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40886,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40887,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:40892,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40893,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40900,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40901,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40904,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40905,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:40907,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40908,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40909,1
    - Dst: JS_DefinePropertyValueValue
      Src: /src/gpac/src/quickjs/quickjs.c:40912,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40915,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40918,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40920,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40921,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40924,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:40926,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40928,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40929,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40930,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: 40932
      start: 40868
    functionDepth: 21
    functionLinenumber: 40868
    functionLinenumberEnd: 40932
    functionName: js_object_fromEntries
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObject
    - JS_GetProperty
    - JS_IteratorClose
    - JS_FreeValue
    - JS_GetIterator
    - JS_IteratorNext
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    - JS_IsObject
    - JS_DefinePropertyValueValue
    - JS_GetPropertyUint32
    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:40937,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:40937,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: 40938
      start: 40934
    functionDepth: 5
    functionLinenumber: 40934
    functionLinenumberEnd: 40938
    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:40945,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40946,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40947,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40948,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40950,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40951,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40952,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40953,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40954,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:40956,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40957,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40958,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:40960,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:40960,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:40961,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40962,1
    - Dst: JS_ThrowTypeErrorNotAConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:40963,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40964,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 3
    argNames:
    - ctx
    - obj
    - defaultConstructor
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40968
      start: 40940
    functionDepth: 15
    functionLinenumber: 40940
    functionLinenumberEnd: 40968
    functionName: JS_SpeciesConstructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_GetProperty
    - JS_ThrowTypeErrorNotAConstructor
    - JS_FreeValue
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsNull
    - JS_DupValue
    - JS_IsException
    - JS_IsObject
    - JS_IsConstructor
    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:40974,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:40975,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:40977,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:40978,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40980
      start: 40970
    functionDepth: 22
    functionLinenumber: 40970
    functionLinenumberEnd: 40980
    functionName: js_object_get___proto__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetPrototype
    - JS_ToObject
    - JS_FreeValue
    - JS_IsException
    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:40985,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:40985,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:40986,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:40987,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:40987,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:40989,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - this_val
    - proto
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40993
      start: 40982
    functionDepth: 16
    functionLinenumber: 40982
    functionLinenumberEnd: 40993
    functionName: js_object_set___proto__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_SetPrototypeInternal
    - JS_IsNull
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    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:41003,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41005,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41006,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41008,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:41010,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41011,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:41013,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41017,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41017,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:41022,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41025,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41026,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:41027,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41030,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41031,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: 41033
      start: 40995
    functionDepth: 22
    functionLinenumber: 40995
    functionLinenumberEnd: 41033
    functionName: js_object_isPrototypeOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - JS_FreeValue
    - JS_IsNull
    - JS_DupValue
    - JS_ToObject
    - JS_IsException
    - JS_IsObject
    - JS_GetPrototypeFree
    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:41043,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:41044,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41046,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41047,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:41050,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41050,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:41054,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:41055,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:41061,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41062,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: 41064
      start: 41035
    functionDepth: 22
    functionLinenumber: 41035
    functionLinenumberEnd: 41064
    functionName: js_object_propertyIsEnumerable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_GetOwnPropertyInternal
    - JS_ToObject
    - JS_IsException
    - JS_FreeAtom
    - js_free_desc
    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:41074,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41075,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:41077,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:41078,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:41082,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41082,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41087,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:41090,1
    - Dst: JS_GetPrototypeFree
      Src: /src/gpac/src/quickjs/quickjs.c:41093,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41094,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:41096,1
    - Dst: js_poll_interrupts
      Src: /src/gpac/src/quickjs/quickjs.c:41101,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:41106,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41107,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: 41109
      start: 41066
    functionDepth: 22
    functionLinenumber: 41066
    functionLinenumberEnd: 41109
    functionName: js_object___lookupGetter__
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - JS_VALUE_GET_OBJ
    - js_poll_interrupts
    - JS_ValueToAtom
    - JS_FreeValue
    - JS_IsNull
    - JS_ToObject
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_DupValue
    - JS_FreeAtom
    - js_free_desc
    - JS_GetPrototypeFree
    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: 41157
      start: 41153
    functionDepth: 0
    functionLinenumber: 41153
    functionLinenumberEnd: 41157
    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:41168,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:41169,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:41172,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:41174,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:41177,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:41179,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:41184,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:41186,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:41189,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:41191,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:41194,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:41195,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41196,1
    - Dst: JS_EvalObject
      Src: /src/gpac/src/quickjs/quickjs.c:41199,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41200,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41201,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41203,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41205,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41206,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:41208,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41210,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:41211,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41214,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:41216,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41217,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:41224,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41226,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: 41228
      start: 41160
    functionDepth: 16
    functionLinenumber: 41160
    functionLinenumberEnd: 41228
    functionName: js_function_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionRealm
    - string_buffer_end
    - JS_IsUndefined
    - JS_GetProperty
    - JS_EvalObject
    - string_buffer_free
    - JS_FreeValue
    - string_buffer_putc8
    - JS_SetPrototypeInternal
    - string_buffer_puts8
    - JS_DupValue
    - JS_IsException
    - JS_IsObject
    - string_buffer_concat_value
    - string_buffer_init
    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:41234,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41235,1
    - Dst: JS_ToUint32Free
      Src: /src/gpac/src/quickjs/quickjs.c:41239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - pres
    - obj
    argTypes:
    - JSContext*
    - uint32_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41240
      start: 41230
    functionDepth: 23
    functionLinenumber: 41230
    functionLinenumberEnd: 41240
    functionName: js_get_length32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_GetProperty
    - JS_IsException
    - 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:41246,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41247,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:41251,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - pres
    - obj
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41252
      start: 41242
    functionDepth: 24
    functionLinenumber: 41242
    functionLinenumberEnd: 41252
    functionName: js_get_length64
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetProperty
    - JS_ToLengthFree
    - JS_IsException
    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:41258,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:41260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - ctx
    - tab
    - len
    argTypes:
    - JSContext*
    - JSValue*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41261
      start: 41254
    functionDepth: 5
    functionLinenumber: 41254
    functionLinenumberEnd: 41261
    functionName: free_arg_list
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_free
    - JS_FreeValue
    linkageType: ''
    returnType: void
    signature: void free_arg_list(JSContext *ctx, JSValue *tab, uint32_t len)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:41272,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:41273,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41276,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:41280,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:41286,1
    - Dst: max_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:41286,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41289,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41295,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41299,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41304,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41305,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:41306,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 3
    argNames:
    - ctx
    - plen
    - array_arg
    argTypes:
    - JSContext*
    - uint32_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41314
      start: 41264
    functionDepth: 25
    functionLinenumber: 41264
    functionLinenumberEnd: 41314
    functionName: build_arg_list
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowTypeError
    - max_uint32
    - free_arg_list
    - js_mallocz
    - JS_VALUE_GET_OBJ
    - JS_ThrowRangeError
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - JS_IsException
    - js_get_length64
    - JS_GetPropertyUint32
    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:41325,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:41329,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:41330,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41331,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:41333,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:41337,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41339,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:41341,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: 41343
      start: 41318
    functionDepth: 26
    functionLinenumber: 41318
    functionLinenumberEnd: 41343
    functionName: js_function_apply
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - free_arg_list
    - JS_Call
    - JS_VALUE_GET_TAG
    - check_function
    - build_arg_list
    - 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:41349,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41351,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: 41353
      start: 41345
    functionDepth: 24
    functionLinenumber: 41345
    functionLinenumberEnd: 41353
    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:41363,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:41366,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41368,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41370,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:41371,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:41372,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:41373,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41376,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41377,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41380,1
    - Dst: JS_GetOwnProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41385,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41389,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41391,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41392,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:41394,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:41396,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41401,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:41402,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:41403,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:41404,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:41407,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:41413,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41415,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41416,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41419,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41422,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41423,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:41425,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41426,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:41427,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:41429,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41430,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41432,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41436,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: 41438
      start: 41355
    functionDepth: 20
    functionLinenumber: 41355
    functionLinenumberEnd: 41438
    functionName: js_function_bind
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_NewFloat64
    - JS_DefinePropertyValue
    - JS_GetOwnProperty
    - JS_AtomToString
    - JS_IsString
    - check_function
    - JS_VALUE_GET_NORM_TAG
    - JS_NewObjectProtoClass
    - js_malloc
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - JS_VALUE_GET_INT
    - JS_IsConstructor
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - trunc
    - JS_NewInt32
    - JS_VALUE_GET_TAG
    - JS_ConcatString3
    - 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:41446,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41449,1
    - Dst: js_class_has_bytecode
      Src: /src/gpac/src/quickjs/quickjs.c:41450,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:41453,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41477,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41478,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:41479,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:41480,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: 41482
      start: 41440
    functionDepth: 15
    functionLinenumber: 41440
    functionLinenumberEnd: 41482
    functionName: js_function_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_class_has_bytecode
    - JS_VALUE_GET_OBJ
    - JS_NewStringLen
    - JS_GetProperty
    - JS_IsUndefined
    - JS_AtomToString
    - JS_ConcatString3
    - check_function
    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:41488,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:41492,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: 41493
      start: 41484
    functionDepth: 18
    functionLinenumber: 41484
    functionLinenumberEnd: 41493
    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:41515,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41516,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41518,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41519,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:41521,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41522,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:41525,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41526,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41530,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41535,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41536,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:41539,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41541,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 38
    argCount: 2
    argNames:
    - ctx
    - items
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41544
      start: 41508
    functionDepth: 22
    functionLinenumber: 41508
    functionLinenumberEnd: 41544
    functionName: iterator_to_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetProperty
    - JS_IteratorClose
    - JS_NewArray
    - JS_GetIterator
    - JS_IteratorNext
    - JS_DefinePropertyValueInt64
    - JS_FreeValue
    - JS_IsException
    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:41553,1
    - Dst: JS_GetActiveFunction
      Src: /src/gpac/src/quickjs/quickjs.c:41554,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41555,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41556,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:41558,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41562,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:41563,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41571,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:41573,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41574,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41575,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41580,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:41581,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:41582,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41582,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41584,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:41590,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41591,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41595,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41596,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41598,1
    - Dst: iterator_to_array
      Src: /src/gpac/src/quickjs/quickjs.c:41605,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41606,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41608,1
    - Dst: build_backtrace
      Src: /src/gpac/src/quickjs/quickjs.c:41613,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41616,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: 41618
      start: 41546
    functionDepth: 23
    functionLinenumber: 41546
    functionLinenumberEnd: 41618
    functionName: js_error_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - JS_GetFunctionRealm
    - JS_DefinePropertyValue
    - iterator_to_array
    - unlikely
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - build_backtrace
    - JS_DupValue
    - JS_ToString
    - JS_IsException
    - JS_IsObject
    - JS_GetActiveFunction
    - JS_NewObjectProtoClass
    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:41625,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:41626,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41627,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41628,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:41629,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:41631,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41632,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41635,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41636,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:41637,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:41639,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41640,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41641,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:41644,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:41644,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:41645,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:41646,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: 41647
      start: 41620
    functionDepth: 22
    functionLinenumber: 41620
    functionLinenumberEnd: 41647
    functionName: js_error_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_GetProperty
    - JS_AtomToString
    - JS_FreeValue
    - JS_ConcatString
    - JS_ConcatString3
    - JS_ToStringFree
    - JS_IsEmptyString
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    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:41677,1
    - Dst: JS_IsError
      Src: /src/gpac/src/quickjs/quickjs.c:41677,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: 41678
      start: 41674
    functionDepth: 2
    functionLinenumber: 41674
    functionLinenumberEnd: 41678
    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:41692,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41695,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:41697,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41697,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ctx
    - errors
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41700
      start: 41687
    functionDepth: 20
    functionLinenumber: 41687
    functionLinenumberEnd: 41700
    functionName: js_aggregate_error_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_DupValue
    - JS_NewObjectProtoClass
    - JS_IsException
    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:41714,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:41715,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:41738,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:41739,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:41741,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41742,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:41745,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:41746,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:41748,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41749,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41754,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41759,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41762,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: 41772
      start: 41704
    functionDepth: 19
    functionLinenumber: 41704
    functionLinenumberEnd: 41772
    functionName: JS_CopySubArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DeletePropertyInt64
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - set_value
    - JS_TryGetPropertyInt64
    - JS_DupValue
    - JS_SetPropertyInt64
    - min_int64
    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:41780,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41781,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:41783,1
    - Dst: JS_ToArrayLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:41785,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41785,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41787,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41787,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41791,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41791,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41797,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: 41799
      start: 41774
    functionDepth: 22
    functionLinenumber: 41774
    functionLinenumberEnd: 41799
    functionName: js_array_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_ToArrayLengthFree
    - JS_NewUint32
    - JS_IsNumber
    - JS_FreeValue
    - js_create_from_ctor
    - JS_SetPropertyUint32
    - JS_DupValue
    - JS_IsException
    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:41822,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:41823,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41830,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41831,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:41833,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:41833,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:41834,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:41835,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:41838,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:41839,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:41841,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41842,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:41844,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41845,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41847,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41848,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:41851,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41852,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41858,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41859,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41860,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41862,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41865,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:41870,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41871,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:41873,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41875,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:41877,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:41878,1
    - Dst: js_array_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:41880,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41882,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41883,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41886,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41887,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41891,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:41892,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41893,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41895,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:41898,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41903,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41903,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:41908,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41910,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41913,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41914,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41915,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41916,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: 41918
      start: 41801
    functionDepth: 25
    functionLinenumber: 41801
    functionLinenumberEnd: 41918
    functionName: js_array_from
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_IteratorClose
    - JS_NewArray
    - JS_Call
    - JS_IsNull
    - check_function
    - JS_ThrowTypeError
    - JS_NewUint32
    - JS_FreeValue
    - JS_IsFunction
    - JS_DefinePropertyValueInt64
    - JS_ToObject
    - JS_IsException
    - JS_IsConstructor
    - js_get_length64
    - JS_GetProperty
    - JS_GetIterator2
    - JS_IteratorNext
    - JS_NewInt32
    - JS_IsUndefined
    - JS_CallConstructor
    - js_array_constructor
    - JS_GetPropertyInt64
    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:41926,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:41927,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:41928,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:41930,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41932,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41935,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:41935,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41940,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:41940,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41942,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: 41946
      start: 41920
    functionDepth: 25
    functionLinenumber: 41920
    functionLinenumberEnd: 41946
    functionName: js_array_of
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_CallConstructor
    - JS_NewUint32
    - JS_NewArray
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - JS_NewInt32
    - JS_CreateDataPropertyUint32
    - JS_IsConstructor
    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:41952,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:41956,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: 41957
      start: 41948
    functionDepth: 2
    functionLinenumber: 41948
    functionLinenumberEnd: 41957
    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:41962,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41963
      start: 41959
    functionDepth: 1
    functionLinenumber: 41959
    functionLinenumberEnd: 41963
    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:41972,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41977,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41978,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:41980,1
    - Dst: JS_GetFunctionRealm
      Src: /src/gpac/src/quickjs/quickjs.c:41982,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41984,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:41988,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41989,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:41993,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:41994,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:41995,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:41996,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:41999,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42002,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:42003,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42004,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42008
      start: 41966
    functionDepth: 5
    functionLinenumber: 41966
    functionLinenumberEnd: 42008
    functionName: JS_ArraySpeciesGetCtor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetFunctionRealm
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsNull
    - JS_IsArray
    - JS_IsException
    - JS_IsObject
    - JS_IsConstructor
    - js_same_value
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ArraySpeciesGetCtor(JSContext *ctx, JSValueConst obj)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42014,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42015,1
    - Dst: js_array_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:42016,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:42018,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42020,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - ctor
    - len
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42022
      start: 42010
    functionDepth: 25
    functionLinenumber: 42010
    functionLinenumberEnd: 42022
    functionName: JS_ArrayCreateFromCtor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_CallConstructor
    - JS_IsUndefined
    - JS_FreeValue
    - js_array_constructor
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ArrayCreateFromCtor(JSContext *ctx, JSValueConst ctor, int64_t
      len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ArraySpeciesGetCtor
      Src: /src/gpac/src/quickjs/quickjs.c:42029,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42030,1
    - Dst: JS_ArrayCreateFromCtor
      Src: /src/gpac/src/quickjs/quickjs.c:42032,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42033,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - obj
    - len
    argTypes:
    - JSContext*
    - JSValueConst
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42035
      start: 42025
    functionDepth: 26
    functionLinenumber: 42025
    functionLinenumberEnd: 42035
    functionName: JS_ArraySpeciesCreate
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsException
    - JS_ArrayCreateFromCtor
    - JS_FreeValue
    - JS_ArraySpeciesGetCtor
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_ArraySpeciesCreate(JSContext *ctx, JSValueConst obj, int64_t
      len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:42048,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42050,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42051,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42053,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42054,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:42055,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42056
      start: 42044
    functionDepth: 2
    functionLinenumber: 42044
    functionLinenumberEnd: 42056
    functionName: JS_isConcatSpreadable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_GetProperty
    - JS_IsArray
    - JS_IsException
    - JS_IsObject
    - JS_ToBoolFree
    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:42066,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42067,1
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:42070,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42077,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42078,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42080,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42086,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42089,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: 42091
      start: 42058
    functionDepth: 25
    functionLinenumber: 42058
    functionLinenumberEnd: 42091
    functionName: js_array_at
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_ToInt64Sat
    - js_get_fast_array
    - JS_TryGetPropertyInt64
    - JS_DupValue
    - JS_ToObject
    - js_get_length64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_at(JSContext *ctx, JSValueConst this_val,\n                           int
      argc, JSValueConst *argv)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42103,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42104,1
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:42107,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:42114,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42118,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42119,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42122,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42125,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42127,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42128,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42130,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42133,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42135,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42137,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42146,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42147,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 49
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42149
      start: 42093
    functionDepth: 25
    functionLinenumber: 42093
    functionLinenumberEnd: 42149
    functionName: js_array_with
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_ThrowRangeError
    - JS_FreeValue
    - JS_ToInt64Sat
    - js_get_fast_array
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - js_allocate_fast_array
    - js_get_length64
    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:42160,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42161,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:42164,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42165,1
    - Dst: JS_isConcatSpreadable
      Src: /src/gpac/src/quickjs/quickjs.c:42174,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42178,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42181,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42185,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42189,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42196,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42199,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42199,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42205,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42205,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42208,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42212,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42213,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: 42215
      start: 42151
    functionDepth: 27
    functionLinenumber: 42151
    functionLinenumberEnd: 42215
    functionName: js_array_concat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_ThrowTypeError
    - JS_ArraySpeciesCreate
    - JS_FreeValue
    - JS_DefinePropertyValueInt64
    - JS_isConcatSpreadable
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - js_get_length64
    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:42240,1
    - Dst: js_typed_array_get_length_unsafe
      Src: /src/gpac/src/quickjs/quickjs.c:42241,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42245,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42246,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42254,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:42267,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42268,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:42272,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42273,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:42278,1
    - Dst: js_typed_array___speciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:42279,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42280,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:42284,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42285,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42293,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42294,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42298,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42303,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42304,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42309,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42310,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42311,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42316,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42323,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42329,1
    - Dst: JS_SetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:42334,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:42334,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42339,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42340,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42340,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42346,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42349,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:42357,1
    - Dst: js_typed_array___speciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:42358,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42359,1
    - Dst: JS_Invoke
      Src: /src/gpac/src/quickjs/quickjs.c:42362,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:42363,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42364,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42367,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42370,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42371,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42375,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42376,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42377,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: 42379
      start: 42228
    functionDepth: 27
    functionLinenumber: 42228
    functionLinenumberEnd: 42379
    functionName: js_array_every
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_NewArray
    - JS_Call
    - check_function
    - js_typed_array___speciesCreate
    - JS_GetPropertyInt64
    - JS_ArraySpeciesCreate
    - JS_FreeValue
    - JS_DefinePropertyValueInt64
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - js_get_length64
    - check_exception_free
    - js_typed_array_get_length_unsafe
    - JS_NewInt32
    - JS_Invoke
    - JS_TryGetPropertyInt64
    - JS_SetPropertyValue
    - JS_ToBoolFree
    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:42396,1
    - Dst: js_typed_array_get_length_unsafe
      Src: /src/gpac/src/quickjs/quickjs.c:42397,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42401,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42402,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42407,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42412,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42416,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42422,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42423,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42427,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42438,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42439,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42443,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42448,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42449,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42455,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42456,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42457,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42459,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42461,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42465,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42469,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42470,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42471,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: 42473
      start: 42384
    functionDepth: 25
    functionLinenumber: 42384
    functionLinenumberEnd: 42473
    functionName: js_array_reduce
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_ThrowTypeError
    - JS_FreeValue
    - JS_Call
    - check_function
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_DupValue
    - js_typed_array_get_length_unsafe
    - JS_IsException
    - JS_GetPropertyInt64
    - js_get_length64
    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:42481,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42482,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42486,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:42487,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42492,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:42493,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42499,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42500,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42507,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: 42509
      start: 42475
    functionDepth: 25
    functionLinenumber: 42475
    functionLinenumberEnd: 42509
    functionName: js_array_fill
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_FreeValue
    - JS_ToObject
    - JS_DupValue
    - JS_SetPropertyInt64
    - JS_ToInt64Clamp
    - js_get_length64
    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:42520,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42521,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:42528,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42531,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:42533,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42541,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42542,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:42544,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42546,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42550,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42554,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:42555,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42558,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 43
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42560
      start: 42511
    functionDepth: 25
    functionLinenumber: 42511
    functionLinenumberEnd: 42560
    functionName: js_array_includes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_FreeValue
    - js_strict_eq2
    - js_get_fast_array
    - JS_ToObject
    - JS_IsException
    - JS_ToInt64Clamp
    - JS_GetPropertyInt64
    - js_get_length64
    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:42570,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42571,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:42578,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42581,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:42583,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42590,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:42594,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42595,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42599,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42604,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42605,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42608,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 44
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42610
      start: 42562
    functionDepth: 25
    functionLinenumber: 42562
    functionLinenumberEnd: 42610
    functionName: js_array_indexOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_FreeValue
    - js_strict_eq2
    - js_get_fast_array
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_ToInt64Clamp
    - js_get_length64
    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:42619,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42620,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:42627,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42632,1
    - Dst: js_strict_eq2
      Src: /src/gpac/src/quickjs/quickjs.c:42636,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42637,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42641,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42645,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42646,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42649,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42651
      start: 42612
    functionDepth: 25
    functionLinenumber: 42612
    functionLinenumberEnd: 42651
    functionName: js_array_lastIndexOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_FreeValue
    - js_strict_eq2
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_ToInt64Clamp
    - js_get_length64
    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:42671,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42672,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:42676,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42694,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42695,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:42697,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42698,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:42703,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42704,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:42706,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42708,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42709,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42712,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42713,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42717,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42718,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42720,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:42722,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42727,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42728,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42729,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: 42731
      start: 42660
    functionDepth: 25
    functionLinenumber: 42660
    functionLinenumberEnd: 42731
    functionName: js_array_find
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_FreeValue
    - JS_Call
    - check_function
    - JS_ToObject
    - JS_GetPropertyValue
    - JS_IsException
    - JS_NewInt32
    - JS_ToBoolFree
    - js_get_length64
    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:42738,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42739,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42741,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42742,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:42745,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42747,1
    - Dst: js_object_toString
      Src: /src/gpac/src/quickjs/quickjs.c:42748,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:42750,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42752,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: 42754
      start: 42733
    functionDepth: 24
    functionLinenumber: 42733
    functionLinenumberEnd: 42754
    functionName: js_array_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - js_object_toString
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsFunction
    - JS_ToObject
    - JS_IsException
    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:42765,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42766,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42770,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:42771,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42772,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:42774,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:42780,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:42785,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:42787,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:42790,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42791,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:42793,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:42793,1
    - Dst: JS_ToLocaleStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:42795,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:42797,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42801,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42802,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:42803,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:42806,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42807,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42809,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: 42811
      start: 42756
    functionDepth: 25
    functionLinenumber: 42756
    functionLinenumberEnd: 42811
    functionName: js_array_join
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - string_buffer_free
    - string_buffer_concat_value_free
    - JS_FreeValue
    - string_buffer_putc8
    - JS_IsNull
    - JS_ToObject
    - JS_ToString
    - JS_IsException
    - string_buffer_concat
    - JS_ToLocaleStringFree
    - string_buffer_init
    - js_get_length64
    - JS_GetPropertyUint32
    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:42821,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42822,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42828,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42829,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:42832,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42840,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42841,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:42843,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42846,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:42847,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42850,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42854,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42854,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42857,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42861,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42862,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: 42864
      start: 42813
    functionDepth: 25
    functionLinenumber: 42813
    functionLinenumberEnd: 42864
    functionName: js_array_pop
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_DeletePropertyInt64
    - JS_VALUE_GET_OBJ
    - JS_CopySubArray
    - JS_FreeValue
    - js_get_fast_array
    - JS_ToObject
    - JS_IsException
    - memmove
    - JS_GetPropertyInt64
    - js_get_length64
    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:42873,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:42873,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:42874,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:42875,1
    - Dst: can_extend_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42876,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:42877,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:42878,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:42879,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:42883,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:42884,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42885,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42889,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:42890,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:42892,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:42896,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42897,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:42901,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:42906,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42911,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:42912,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:42915,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42915,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42918,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42919,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42922,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 48
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - unshift
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42924
      start: 42866
    functionDepth: 25
    functionLinenumber: 42866
    functionLinenumberEnd: 42924
    functionName: js_array_push
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_ThrowTypeError
    - likely
    - JS_VALUE_GET_OBJ
    - unlikely
    - JS_CopySubArray
    - get_shape_prop
    - can_extend_fast_array
    - JS_VALUE_GET_TAG
    - JS_FreeValue
    - expand_fast_array
    - JS_DupValue
    - JS_ToObject
    - JS_SetPropertyInt64
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - js_get_length64
    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:42936,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:42937,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:42941,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42955,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42958,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42962,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42966,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42972,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42977,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:42979,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42990,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:42991,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: 42993
      start: 42926
    functionDepth: 25
    functionLinenumber: 42926
    functionLinenumberEnd: 42993
    functionName: js_array_reverse
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DeletePropertyInt64
    - JS_FreeValue
    - js_get_fast_array
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_SetPropertyInt64
    - js_get_length64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_reverse(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43009,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43010,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43013,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43014,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43018,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43022,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43024,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43028,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43038,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43039,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: 43041
      start: 42999
    functionDepth: 25
    functionLinenumber: 42999
    functionLinenumberEnd: 43041
    functionName: js_array_toReversed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - js_get_fast_array
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - js_allocate_fast_array
    - js_get_length64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_toReversed(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43053,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43054,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43057,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43061,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43062,1
    - Dst: max_int64
      Src: /src/gpac/src/quickjs/quickjs.c:43065,1
    - Dst: JS_ArraySpeciesGetCtor
      Src: /src/gpac/src/quickjs/quickjs.c:43067,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43068,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43072,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43073,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:43076,1
    - Dst: JS_ArrayCreateFromCtor
      Src: /src/gpac/src/quickjs/quickjs.c:43078,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43079,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43080,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43085,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:43089,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43093,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43093,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43096,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43100,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43101,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 52
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43103
      start: 43043
    functionDepth: 26
    functionLinenumber: 43043
    functionLinenumberEnd: 43103
    functionName: js_array_slice
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - js_create_array
    - JS_ArrayCreateFromCtor
    - JS_SetProperty
    - JS_IsUndefined
    - JS_FreeValue
    - JS_ArraySpeciesGetCtor
    - js_get_fast_array
    - max_int64
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_IsException
    - JS_CreateDataPropertyUint32
    - JS_ToInt64Clamp
    - js_get_length64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_slice(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43115,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43116,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43119,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43130,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43134,1
    - Dst: JS_ArraySpeciesGetCtor
      Src: /src/gpac/src/quickjs/quickjs.c:43142,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43143,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:43146,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43147,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:43151,1
    - Dst: can_extend_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43152,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:43157,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43158,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43167,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:43168,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:43171,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43172,1
    - Dst: memmove
      Src: /src/gpac/src/quickjs/quickjs.c:43176,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:43184,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43184,1
    - Dst: JS_ArrayCreateFromCtor
      Src: /src/gpac/src/quickjs/quickjs.c:43186,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43187,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43188,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43193,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:43197,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43201,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43201,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:43205,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43211,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43216,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43216,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43220,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43220,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43222,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43226,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43227,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 107
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43229
      start: 43105
    functionDepth: 26
    functionLinenumber: 43105
    functionLinenumberEnd: 43229
    functionName: js_array_splice
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_ArrayCreateFromCtor
    - set_value
    - get_shape_prop
    - JS_ToInt64Clamp
    - JS_ThrowTypeError
    - JS_FreeValue
    - JS_ArraySpeciesGetCtor
    - can_extend_fast_array
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - JS_CreateDataPropertyUint32
    - js_get_length64
    - js_create_array
    - JS_DeletePropertyInt64
    - JS_VALUE_GET_PTR
    - unlikely
    - JS_IsUndefined
    - JS_CopySubArray
    - JS_TryGetPropertyInt64
    - expand_fast_array
    - JS_SetPropertyInt64
    - memmove
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_splice(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43249,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43250,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43255,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43262,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43271,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43275,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43276,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43282,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43287,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43289,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43291,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43293,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43296,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43299,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43301,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:43306,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43314,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43315,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 69
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts:
    - condition: (pval == last)
      pos:
        line_end: 43305
        line_start: 43305
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 43317
      start: 43231
    functionDepth: 25
    functionLinenumber: 43231
    functionLinenumberEnd: 43317
    functionName: js_array_toSpliced
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - assert
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - js_get_fast_array
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - JS_ToInt64Clamp
    - js_allocate_fast_array
    - js_get_length64
    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:43325,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43326,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43329,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43332,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43336,1
    - Dst: JS_ToInt64Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:43337,1
    - Dst: min_int64
      Src: /src/gpac/src/quickjs/quickjs.c:43341,1
    - Dst: JS_CopySubArray
      Src: /src/gpac/src/quickjs/quickjs.c:43343,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43350,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: 43352
      start: 43319
    functionDepth: 25
    functionLinenumber: 43319
    functionLinenumberEnd: 43352
    functionName: js_array_copyWithin
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_CopySubArray
    - JS_FreeValue
    - JS_ToObject
    - JS_ToInt64Clamp
    - js_get_length64
    - min_int64
    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:43364,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:43365,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43370,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43375,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43376,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:43377,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43379,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43380,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43382,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43383,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43385,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:43389,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43393,1
    - Dst: JS_FlattenIntoArray
      Src: /src/gpac/src/quickjs/quickjs.c:43395,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43401,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43406,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43409,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43417,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: 43419
      start: 43354
    functionDepth: 25
    functionLinenumber: 43354
    functionLinenumberEnd: 43419
    functionName: JS_FlattenIntoArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowStackOverflow
    - JS_NewInt64
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_FlattenIntoArray
    - JS_FreeValue
    - JS_Call
    - JS_DefinePropertyValueInt64
    - JS_TryGetPropertyInt64
    - JS_IsArray
    - JS_IsException
    - js_check_stack_overflow
    - js_get_length64
    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:43430,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43431,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:43442,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43445,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:43446,1
    - Dst: JS_ArraySpeciesCreate
      Src: /src/gpac/src/quickjs/quickjs.c:43450,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43451,1
    - Dst: JS_FlattenIntoArray
      Src: /src/gpac/src/quickjs/quickjs.c:43453,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43456,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43460,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43461,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: 43463
      start: 43421
    functionDepth: 27
    functionLinenumber: 43421
    functionLinenumberEnd: 43463
    functionName: js_array_flatten
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - JS_IsUndefined
    - JS_FlattenIntoArray
    - JS_ArraySpeciesCreate
    - JS_FreeValue
    - check_function
    - JS_ToObject
    - JS_IsException
    - js_get_length64
    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:43496,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:43500,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43501,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:43503,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:43504,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:43508,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:43517,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43518,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:43520,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:43523,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43524,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:43526,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:43528,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 3
    argNames:
    - a
    - b
    - opaque
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43539
      start: 43480
    functionDepth: 24
    functionLinenumber: 43480
    functionLinenumberEnd: 43539
    functionName: js_array_cmp_generic
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_compare
    - JS_VALUE_GET_STRING
    - memcmp
    - JS_VALUE_GET_TAG
    - JS_Call
    - JS_ToFloat64Free
    - JS_ToString
    - JS_IsException
    - JS_VALUE_GET_INT
    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:43551,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:43552,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43556,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43557,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:43566,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43573,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43578,1
    - Dst: rqsort
      Src: /src/gpac/src/quickjs/quickjs.c:43586,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43593,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:43593,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43595,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43597,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:43604,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43606,1
    - Dst: JS_DeletePropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43610,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43617,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43619,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:43619,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:43621,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43623,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: 43625
      start: 43541
    functionDepth: 25
    functionLinenumber: 43541
    functionLinenumberEnd: 43625
    functionName: js_array_sort
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MKPTR
    - JS_DeletePropertyInt64
    - JS_IsUndefined
    - rqsort
    - JS_FreeValue
    - check_function
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - js_free
    - JS_SetPropertyInt64
    - js_get_length64
    - js_realloc2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_array_sort(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43640,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:43640,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43642,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43646,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:43647,1
    - Dst: js_allocate_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43650,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43651,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43655,1
    - Dst: js_get_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:43658,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43660,1
    - Dst: JS_TryGetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:43663,1
    - Dst: js_array_sort
      Src: /src/gpac/src/quickjs/quickjs.c:43669,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43670,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43672,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43678,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43679,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: 43681
      start: 43631
    functionDepth: 26
    functionLinenumber: 43631
    functionLinenumberEnd: 43681
    functionName: js_array_toSorted
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_array_sort
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_IsFunction
    - js_get_fast_array
    - JS_TryGetPropertyInt64
    - JS_ToObject
    - JS_DupValue
    - JS_IsException
    - js_allocate_fast_array
    - js_get_length64
    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:43691,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43694,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:43695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43697
      start: 43689
    functionDepth: 4
    functionLinenumber: 43689
    functionLinenumberEnd: 43697
    functionName: js_array_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:43702,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43705,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43707
      start: 43699
    functionDepth: 2
    functionLinenumber: 43699
    functionLinenumberEnd: 43707
    functionName: js_array_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:43720,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:43723,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43726,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:43728,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43729,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:43731,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:43737,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43740,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43742,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: 43744
      start: 43709
    functionDepth: 22
    functionLinenumber: 43709
    functionLinenumberEnd: 43744
    functionName: js_create_array_iterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - js_malloc
    - JS_SetOpaque
    - JS_FreeValue
    - JS_ToStringCheckObject
    - JS_ToObject
    - JS_IsException
    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:43755,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43758,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43760,1
    - Dst: typed_array_is_oob
      Src: /src/gpac/src/quickjs/quickjs.c:43763,1
    - Dst: JS_ThrowTypeErrorArrayBufferOOB
      Src: /src/gpac/src/quickjs/quickjs.c:43764,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:43769,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43777,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:43786,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:43788,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43789,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:43796,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:43799,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43800,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43801,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: 43805
      start: 43746
    functionDepth: 24
    functionLinenumber: 43746
    functionLinenumberEnd: 43805
    functionName: js_array_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorArrayBufferOOB
    - js_create_array
    - JS_GetOpaque2
    - js_get_length32
    - JS_VALUE_GET_OBJ
    - JS_IsUndefined
    - JS_NewUint32
    - typed_array_is_oob
    - JS_FreeValue
    - JS_IsException
    - JS_GetPropertyUint32
    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:43816,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43819,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43820,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:43821,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43823
      start: 43814
    functionDepth: 4
    functionLinenumber: 43814
    functionLinenumberEnd: 43823
    functionName: js_iterator_wrap_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:43828,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43831,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43832,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43834
      start: 43825
    functionDepth: 2
    functionLinenumber: 43825
    functionLinenumberEnd: 43834
    functionName: js_iterator_wrap_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:43842,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:43846,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43848,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43849,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:43851,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43851,1
    - Dst: JS_IteratorNext2
      Src: /src/gpac/src/quickjs/quickjs.c:43855,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43856,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: 43859
      start: 43836
    functionDepth: 16
    functionLinenumber: 43836
    functionLinenumberEnd: 43859
    functionName: js_iterator_wrap_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_IteratorNext
    - JS_IsNull
    - JS_IsException
    - JS_IteratorNext2
    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:43877,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:43878,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:43879,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43880,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:43886,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: 43888
      start: 43868
    functionDepth: 20
    functionLinenumber: 43868
    functionLinenumberEnd: 43888
    functionName: js_iterator_constructor_getset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_DupValue
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    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:43895,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43896,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43897,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43900,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:43902,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: 43903
      start: 43890
    functionDepth: 14
    functionLinenumber: 43890
    functionLinenumberEnd: 43903
    functionName: js_iterator_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_create_from_ctor
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                      int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43915,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43918,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43919,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:43921,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:43922,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43924
      start: 43913
    functionDepth: 4
    functionLinenumber: 43913
    functionLinenumberEnd: 43924
    functionName: js_iterator_concat_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: void js_iterator_concat_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:43929,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43932,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43933,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:43935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43937
      start: 43926
    functionDepth: 2
    functionLinenumber: 43926
    functionLinenumberEnd: 43937
    functionName: js_iterator_concat_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    linkageType: ''
    returnType: void
    signature: "void js_iterator_concat_mark(JSRuntime *rt, JSValueConst val,\n                                    JS_MarkFunc
      *mark_func)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:43949,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:43953,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43965,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:43966,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43967,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:43972,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43973,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43974,1
    - Dst: JS_IteratorNext2
      Src: /src/gpac/src/quickjs/quickjs.c:43978,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43979,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43985,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:43986,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43987,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:43992,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:43995,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:43996,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44000,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44001,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44002,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44005,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44006,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 71
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44012
      start: 43939
    functionDepth: 16
    functionLinenumber: 43939
    functionLinenumberEnd: 44012
    functionName: js_iterator_concat_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_GetOpaque2
    - JS_ToBoolFree
    - JS_IsUndefined
    - JS_GetProperty
    - JS_GetIterator2
    - JS_FreeValue
    - JS_IsException
    - JS_IteratorNext2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_concat_next(JSContext *ctx, JSValueConst this_val,\n
      \                                      int argc, JSValueConst *argv,\n                                       int
      *pdone, int magic)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:44020,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44024,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44026,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44028,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44029,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:44033,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44037,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44038,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44039,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44043
      start: 44014
    functionDepth: 24
    functionLinenumber: 44014
    functionLinenumberEnd: 44043
    functionName: js_iterator_concat_return
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_GetOpaque2
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_concat_return(JSContext *ctx, JSValueConst this_val,\n
      \                                        int argc, JSValueConst *argv)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:44057,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:44067,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:44068,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44071,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44072,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:44074,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44075,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44076,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44079,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:44082,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44083,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:44085,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44089,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:44090,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44092
      start: 44051
    functionDepth: 15
    functionLinenumber: 44051
    functionLinenumberEnd: 44092
    functionName: js_iterator_concat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_ThrowTypeError
    - js_malloc
    - JS_GetProperty
    - JS_SetOpaque
    - JS_FreeValue
    - JS_IsFunction
    - JS_ThrowTypeErrorNotAnObject
    - js_free
    - JS_DupValue
    - JS_IsException
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_iterator_concat(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:44102,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:44103,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44104,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44106,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44107,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44109,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44109,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44110,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:44112,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44113,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44114,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44119,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44120,1
    - Dst: JS_OrdinaryIsInstanceOf
      Src: /src/gpac/src/quickjs/quickjs.c:44123,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44127,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:44131,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44132,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:44134,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:44139,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44143,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44144,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44145,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: 44147
      start: 44094
    functionDepth: 18
    functionLinenumber: 44094
    functionLinenumberEnd: 44147
    functionName: js_iterator_from
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_ThrowTypeError
    - JS_OrdinaryIsInstanceOf
    - js_malloc
    - JS_IsUndefined
    - JS_GetProperty
    - JS_SetOpaque
    - JS_IsString
    - JS_GetIterator2
    - JS_FreeValue
    - JS_IsNull
    - JS_DupValue
    - JS_IsException
    - JS_IsObject
    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:44180,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:44181,1
    - Dst: JS_ToNumber
      Src: /src/gpac/src/quickjs/quickjs.c:44191,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44192,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:44195,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44196,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:44199,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44200,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:44203,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44204,1
    - Dst: JS_ToIntegerFree
      Src: /src/gpac/src/quickjs/quickjs.c:44210,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44211,1
    - Dst: JS_ToInt64Free
      Src: /src/gpac/src/quickjs/quickjs.c:44213,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:44225,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:44230,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44234,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44235,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:44237,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44238,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44239,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:44242,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44244,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44245,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44249,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44250,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:44256,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:44259,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44261,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: 44263
      start: 44172
    functionDepth: 24
    functionLinenumber: 44172
    functionLinenumberEnd: 44263
    functionName: js_create_iterator_helper
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - isfinite
    - JS_IteratorClose
    - check_function
    - JS_IsObject
    - JS_ToInt64Free
    - JS_ToIntegerFree
    - JS_ToNumber
    - JS_NewObjectClass
    - js_malloc
    - JS_ThrowRangeError
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - JS_ToFloat64
    - JS_GetProperty
    - abort
    - JS_SetOpaque
    - JS_ThrowTypeErrorNotAnObject
    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:44273,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:44274,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:44278,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44280,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44281,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44282,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44292,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44293,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44297,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44300,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44300,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44301,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44302,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44303,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:44305,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44306,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44321,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44322,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44326,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44329,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44329,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44330,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44331,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44332,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:44335,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44336,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44337,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44344,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44354,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44355,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44359,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44362,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44362,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44363,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44364,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44365,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44367,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44378,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44379,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44383,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44386,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44386,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44387,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44388,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44389,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:44391,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44392,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:44405,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44409,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44410,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44413,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44415,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44416,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: 44418
      start: 44265
    functionDepth: 24
    functionLinenumber: 44265
    functionLinenumberEnd: 44418
    functionName: js_iterator_proto_func
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - countof
    - JS_GetProperty
    - JS_IteratorClose
    - JS_FreeValue
    - abort
    - JS_IteratorNext
    - JS_Call
    - check_function
    - JS_DupValue
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    - JS_ToBoolFree
    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:44428,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:44429,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:44433,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44435,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44436,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44437,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44440,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44443,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44444,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44447,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44453,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44454,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44458,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44462,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44462,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44463,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44464,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44465,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44467,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44473,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44474,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44477,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44479,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44480,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44481,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: 44483
      start: 44420
    functionDepth: 24
    functionLinenumber: 44420
    functionLinenumberEnd: 44483
    functionName: js_iterator_proto_reduce
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_ThrowTypeError
    - countof
    - JS_GetProperty
    - JS_IteratorClose
    - JS_FreeValue
    - JS_IteratorNext
    - JS_Call
    - check_function
    - JS_DupValue
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    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:44493,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:44494,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44495,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44496,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:44498,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44499,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44502,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44503,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44507,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44511,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:44511,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44513,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44516,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44517,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: 44519
      start: 44485
    functionDepth: 22
    functionLinenumber: 44485
    functionLinenumberEnd: 44519
    functionName: js_iterator_proto_toArray
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_NewUint32
    - JS_GetProperty
    - JS_NewArray
    - JS_FreeValue
    - JS_ThrowTypeErrorNotAnObject
    - JS_IteratorNext
    - JS_DefinePropertyValueInt64
    - JS_IsException
    - JS_IsObject
    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:44524,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: 44525
      start: 44521
    functionDepth: 1
    functionLinenumber: 44521
    functionLinenumberEnd: 44525
    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:44529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44530
      start: 44527
    functionDepth: 3
    functionLinenumber: 44527
    functionLinenumberEnd: 44530
    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:44536,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:44537,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:44538,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44539,1
    - Dst: JS_GetOwnProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44540,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44544,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44544,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:44547,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44547,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - this_val
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44551
      start: 44532
    functionDepth: 20
    functionLinenumber: 44532
    functionLinenumberEnd: 44551
    functionName: js_iterator_proto_set_toStringTag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_ThrowTypeError
    - JS_DefinePropertyValue
    - JS_GetOwnProperty
    - JS_DupValue
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    - js_same_value
    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:44557,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:44560,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:44561,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:44562,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:44563,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:44564,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44566
      start: 44555
    functionDepth: 4
    functionLinenumber: 44555
    functionLinenumberEnd: 44566
    functionName: js_iterator_helper_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:44571,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:44574,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:44575,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:44576,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:44577,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44579
      start: 44568
    functionDepth: 2
    functionLinenumber: 44568
    functionLinenumberEnd: 44579
    functionName: js_iterator_helper_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:44590,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44594,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44607,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44609,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44610,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44615,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44616,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44617,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44620,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44624,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44630,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44631,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44632,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44643,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44645,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44646,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44650,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44651,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44652,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44656,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44660,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44663,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44663,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44664,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44665,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44666,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44667,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:44670,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44671,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44675,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44684,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44686,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44688,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44689,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44692,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44693,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44694,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44700,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44703,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44703,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44704,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44705,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44706,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:44708,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44709,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:44710,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44713,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44714,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44715,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44718,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44718,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44719,1
    - Dst: JS_GetIterator2
      Src: /src/gpac/src/quickjs/quickjs.c:44722,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44723,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44724,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44725,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44733,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44735,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44736,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44738,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44739,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44743,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:44743,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44746,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44747,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44748,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44754,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44755,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44768,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44770,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44771,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44774,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44775,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44776,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44782,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:44785,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:44785,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44786,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44787,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44788,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44798,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:44800,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44801,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:44805,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44806,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44807,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44814,1
    - Dst: abort
      Src: /src/gpac/src/quickjs/quickjs.c:44822,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:44831,1
    CyclomaticComplexity: 86
    EdgeCount: 86
    ICount: 264
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - pdone
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44835
      start: 44581
    functionDepth: 24
    functionLinenumber: 44581
    functionLinenumberEnd: 44835
    functionName: js_iterator_helper_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_ThrowTypeError
    - JS_GetOpaque2
    - countof
    - JS_IsUndefined
    - JS_GetProperty
    - JS_IteratorClose
    - JS_FreeValue
    - JS_GetIterator2
    - JS_IteratorNext
    - JS_Call
    - JS_IsNull
    - abort
    - JS_DupValue
    - JS_IsException
    - JS_IsObject
    - JS_ToBoolFree
    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:44938,1
    - Dst: JS_ToNumeric
      Src: /src/gpac/src/quickjs/quickjs.c:44940,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44941,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:44943,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44945,1
    - Dst: JS_VALUE_GET_SHORT_BIG_INT
      Src: /src/gpac/src/quickjs/quickjs.c:44945,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44946,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:44951,1
    - Dst: js_bigint_to_float64
      Src: /src/gpac/src/quickjs/quickjs.c:44953,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:44954,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:44955,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:44962,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:44963,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:44964,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:44965,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: 44970
      start: 44933
    functionDepth: 22
    functionLinenumber: 44933
    functionLinenumberEnd: 44970
    functionName: js_number_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_NewFloat64
    - JS_VALUE_GET_PTR
    - JS_IsUndefined
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_bigint_to_float64
    - js_create_from_ctor
    - JS_ToNumeric
    - JS_IsException
    - JS_NewInt32
    - JS_SetObjectData
    - JS_VALUE_GET_SHORT_BIG_INT
    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:44976,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44976,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: 44977
      start: 44973
    functionDepth: 22
    functionLinenumber: 44973
    functionLinenumberEnd: 44977
    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:44983,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:44983,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:44985,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: 44986
      start: 44979
    functionDepth: 24
    functionLinenumber: 44979
    functionLinenumberEnd: 44986
    functionName: js_number___toLength
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_ToLengthFree
    - JS_DupValue
    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:44992,1
    - Dst: js_global_isNaN
      Src: /src/gpac/src/quickjs/quickjs.c:44994,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: 44995
      start: 44989
    functionDepth: 25
    functionLinenumber: 44989
    functionLinenumberEnd: 44995
    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:45000,1
    - Dst: js_global_isFinite
      Src: /src/gpac/src/quickjs/quickjs.c:45002,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: 45003
      start: 44997
    functionDepth: 25
    functionLinenumber: 44997
    functionLinenumberEnd: 45003
    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:45009,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:45013,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: 45014
      start: 45005
    functionDepth: 25
    functionLinenumber: 45005
    functionLinenumberEnd: 45014
    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:45020,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:45022,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45022,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:45024,1
    - Dst: is_safe_integer
      Src: /src/gpac/src/quickjs/quickjs.c:45024,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: 45025
      start: 45016
    functionDepth: 24
    functionLinenumber: 45016
    functionLinenumberEnd: 45025
    functionName: js_number_isSafeInteger
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ToFloat64
    - unlikely
    - JS_IsNumber
    - is_safe_integer
    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:45049,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:45050,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45052,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:45053,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:45055,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:45056,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45059,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45060
      start: 45047
    functionDepth: 14
    functionLinenumber: 45047
    functionLinenumberEnd: 45060
    functionName: js_thisNumberValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - JS_IsNumber
    - JS_VALUE_GET_TAG
    - JS_DupValue
    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:45065,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: 45066
      start: 45062
    functionDepth: 15
    functionLinenumber: 45062
    functionLinenumberEnd: 45066
    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:45071,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:45074,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ctx
    - val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45078
      start: 45068
    functionDepth: 23
    functionLinenumber: 45068
    functionLinenumberEnd: 45078
    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:45087,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45088,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45090,1
    - Dst: js_get_radix
      Src: /src/gpac/src/quickjs/quickjs.c:45093,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45097,1
    - Dst: i64toa_radix
      Src: /src/gpac/src/quickjs/quickjs.c:45100,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:45100,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:45101,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:45103,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:45108,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45110,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: 45112
      start: 45080
    functionDepth: 24
    functionLinenumber: 45080
    functionLinenumberEnd: 45112
    functionName: js_number_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_radix
    - JS_IsUndefined
    - js_thisNumberValue
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_ToFloat64Free
    - JS_IsException
    - JS_VALUE_GET_INT
    - js_new_string8_len
    - js_dtoa2
    - i64toa_radix
    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:45121,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45122,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:45124,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:45126,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:45129,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:45130,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:45134,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: 45135
      start: 45114
    functionDepth: 23
    functionLinenumber: 45114
    functionLinenumberEnd: 45135
    functionName: js_number_toFixed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - fabs
    - JS_ThrowRangeError
    - js_thisNumberValue
    - JS_IsException
    - JS_ToFloat64Free
    - js_dtoa2
    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:45144,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45145,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:45147,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:45149,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:45151,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:45152,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45152,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45154,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:45159,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:45163,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: 45164
      start: 45137
    functionDepth: 23
    functionLinenumber: 45137
    functionLinenumberEnd: 45164
    functionName: js_number_toExponential
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - isfinite
    - JS_IsUndefined
    - JS_ThrowRangeError
    - js_thisNumberValue
    - JS_ToStringFree
    - __JS_NewFloat64
    - JS_IsException
    - JS_ToFloat64Free
    - js_dtoa2
    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:45173,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45174,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:45176,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45178,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:45180,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:45182,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:45184,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45184,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:45187,1
    - Dst: js_dtoa2
      Src: /src/gpac/src/quickjs/quickjs.c:45188,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: 45189
      start: 45166
    functionDepth: 23
    functionLinenumber: 45166
    functionLinenumberEnd: 45189
    functionName: js_number_toPrecision
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - isfinite
    - JS_IsUndefined
    - JS_ThrowRangeError
    - js_thisNumberValue
    - JS_ToStringFree
    - __JS_NewFloat64
    - JS_IsException
    - JS_ToFloat64Free
    - js_dtoa2
    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:45207,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45210,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:45211,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:45218,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:45220,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:45222,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: 45224
      start: 45200
    functionDepth: 23
    functionLinenumber: 45200
    functionLinenumberEnd: 45224
    functionName: js_parseInt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - skip_spaces
    - js_atof
    - JS_FreeCString
    - JS_ToInt32
    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:45232,1
    - Dst: skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:45236,1
    - Dst: js_atof
      Src: /src/gpac/src/quickjs/quickjs.c:45237,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:45238,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: 45240
      start: 45226
    functionDepth: 19
    functionLinenumber: 45226
    functionLinenumberEnd: 45240
    functionName: js_parseFloat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCString
    - JS_FreeCString
    - skip_spaces
    - js_atof
    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:45247,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/quickjs/quickjs.c:45247,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45248,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:45249,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45250,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:45251,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: 45256
      start: 45243
    functionDepth: 12
    functionLinenumber: 45243
    functionLinenumberEnd: 45256
    functionName: js_boolean_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ToBool
    - JS_IsUndefined
    - js_create_from_ctor
    - JS_IsException
    - 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:45260,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:45261,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45263,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:45264,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45266,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45270,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45271
      start: 45258
    functionDepth: 14
    functionLinenumber: 45258
    functionLinenumberEnd: 45271
    functionName: js_thisBooleanValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_DupValue
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:45276,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45277,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:45279,1
    - Dst: JS_VALUE_GET_BOOL
      Src: /src/gpac/src/quickjs/quickjs.c:45279,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: 45281
      start: 45273
    functionDepth: 15
    functionLinenumber: 45273
    functionLinenumberEnd: 45281
    functionName: js_boolean_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_BOOL
    - js_thisBooleanValue
    - JS_AtomToString
    - JS_IsException
    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:45286,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: 45287
      start: 45283
    functionDepth: 15
    functionLinenumber: 45283
    functionLinenumberEnd: 45287
    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:45305,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:45306,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45307,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45308,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45309,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45312,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:45314,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - ctx
    - desc
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45323
      start: 45296
    functionDepth: 9
    functionLinenumber: 45296
    functionLinenumberEnd: 45323
    functionName: js_string_get_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - string_get
    - js_new_string_char
    - __JS_AtomToUInt32
    - __JS_AtomIsTaggedInt
    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:45335,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45336,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:45337,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45338,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45340,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:45343,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45347,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45349,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45352,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45352,1
    - Dst: JS_ThrowTypeErrorOrFalse
      Src: /src/gpac/src/quickjs/quickjs.c:45354,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:45360,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: 45363
      start: 45325
    functionDepth: 19
    functionLinenumber: 45325
    functionLinenumberEnd: 45363
    functionName: js_string_define_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - check_define_prop_flags
    - JS_DefineProperty
    - JS_VALUE_GET_TAG
    - string_get
    - __JS_AtomToUInt32
    - __JS_AtomIsTaggedInt
    - JS_ThrowTypeErrorOrFalse
    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:45370,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45371,1
    - Dst: js_string_obj_get_length
      Src: /src/gpac/src/quickjs/quickjs.c:45372,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45377
      start: 45365
    functionDepth: 2
    functionLinenumber: 45365
    functionLinenumberEnd: 45377
    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:45390,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45392,1
    - Dst: JS_IsSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:45392,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:45393,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:45394,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:45394,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:45394,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45396,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45398,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45401,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45402,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:45404,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45405,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45406,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:45408,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:45409,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45409,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: 45415
      start: 45385
    functionDepth: 21
    functionLinenumber: 45385
    functionLinenumberEnd: 45415
    functionName: js_string_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_VALUE_GET_PTR
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - js_get_atom_index
    - JS_AtomToString
    - JS_FreeValue
    - JS_ConcatString3
    - js_create_from_ctor
    - JS_IsSymbol
    - JS_ToString
    - JS_IsException
    - JS_NewInt32
    - 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:45419,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45420,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:45421,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45423,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:45424,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45426,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:45427,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45430,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45431
      start: 45417
    functionDepth: 14
    functionLinenumber: 45417
    functionLinenumberEnd: 45431
    functionName: js_thisStringValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_DupValue
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:45439,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45443,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:45443,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:45444,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45448,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: 45449
      start: 45433
    functionDepth: 23
    functionLinenumber: 45433
    functionLinenumberEnd: 45449
    functionName: js_string_fromCharCode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc16
    - string_buffer_end
    - string_buffer_free
    - string_buffer_init
    - JS_ToInt32
    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:45460,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:45463,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:45464,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45468,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:45470,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:45473,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45476,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:45479,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:45481,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: 45483
      start: 45451
    functionDepth: 24
    functionLinenumber: 45451
    functionLinenumberEnd: 45483
    functionName: js_string_fromCodePoint
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_ToFloat64
    - string_buffer_end
    - JS_ThrowRangeError
    - string_buffer_free
    - JS_VALUE_GET_TAG
    - JS_VALUE_GET_INT
    - string_buffer_init
    - 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:45493,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:45495,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45496,1
    - Dst: JS_ToObjectFree
      Src: /src/gpac/src/quickjs/quickjs.c:45498,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:45498,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45499,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:45501,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:45505,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:45505,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45506,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:45508,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:45510,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45514,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45515,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45516,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45519,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45520,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:45521,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: 45523
      start: 45485
    functionDepth: 25
    functionLinenumber: 45485
    functionLinenumberEnd: 45523
    functionName: js_string_raw
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - JS_GetProperty
    - string_buffer_free
    - string_buffer_concat_value_free
    - JS_FreeValue
    - JS_ToStringFree
    - JS_ToObject
    - JS_IsException
    - string_buffer_concat_value
    - string_buffer_init
    - JS_GetPropertyInt64
    - js_get_length64
    - JS_ToObjectFree
    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:45532,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:45533,1
    - Dst: min_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:45535,1
    - Dst: max_uint32
      Src: /src/gpac/src/quickjs/quickjs.c:45542,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:45544,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:45547,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:45549,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: 45550
      start: 45526
    functionDepth: 13
    functionLinenumber: 45526
    functionLinenumberEnd: 45550
    functionName: js_string_codePointRange
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - max_uint32
    - string_buffer_end
    - JS_ToUint32
    - min_uint32
    - string_buffer_putc
    - 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:45557,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:45559,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:45559,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: 45560
      start: 45553
    functionDepth: 23
    functionLinenumber: 45553
    functionLinenumberEnd: 45560
    functionName: js_string___isSpace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ToInt32
    - lre_is_space
    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:45570,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45571,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45573,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:45574,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45575,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45581,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45582,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45584,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: 45586
      start: 45563
    functionDepth: 23
    functionLinenumber: 45563
    functionLinenumberEnd: 45586
    functionName: js_string_charCodeAt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - string_get
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_NewInt32
    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:45595,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45596,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45598,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:45599,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45600,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:45609,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45611,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:45612,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45614,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: 45616
      start: 45588
    functionDepth: 23
    functionLinenumber: 45588
    functionLinenumberEnd: 45616
    functionName: js_string_charAt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - JS_VALUE_GET_STRING
    - JS_AtomToString
    - JS_FreeValue
    - string_get
    - js_new_string_char
    - JS_ToStringCheckObject
    - JS_IsException
    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:45625,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45626,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45628,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:45629,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45630,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:45636,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45637,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45639,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: 45641
      start: 45618
    functionDepth: 23
    functionLinenumber: 45618
    functionLinenumberEnd: 45641
    functionName: js_string_codePointAt
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - string_getc
    - JS_ToStringCheckObject
    - JS_IsException
    - JS_NewInt32
    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:45652,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45654,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:45656,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:45656,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: 45659
      start: 45643
    functionDepth: 22
    functionLinenumber: 45643
    functionLinenumberEnd: 45659
    functionName: js_string_concat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToStringCheckObject
    - JS_DupValue
    - JS_ConcatString
    - JS_IsException
    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:45665,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:45665,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: 45669
      start: 45661
    functionDepth: 1
    functionLinenumber: 45661
    functionLinenumberEnd: 45669
    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: 45689
      start: 45671
    functionDepth: 0
    functionLinenumber: 45671
    functionLinenumberEnd: 45689
    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:45697,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:45698,1
    - Dst: string_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:45701,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 3
    argNames:
    - p1
    - p2
    - from
    argTypes:
    - JSString*
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45705
      start: 45691
    functionDepth: 2
    functionLinenumber: 45691
    functionLinenumberEnd: 45705
    functionName: string_indexof
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get
    - string_cmp
    - string_indexof_char
    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:45713,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - p
    - index
    - unicode
    argTypes:
    - JSString*
    - int64_t
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45717
      start: 45707
    functionDepth: 2
    functionLinenumber: 45707
    functionLinenumberEnd: 45717
    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:45728,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45729,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45730,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - p
    argTypes:
    - JSString*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45738
      start: 45721
    functionDepth: 1
    functionLinenumber: 45721
    functionLinenumberEnd: 45738
    functionName: js_string_find_invalid_codepoint
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - is_surrogate
    - is_hi_surrogate
    - is_lo_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:45747,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45748,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45750,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:45751,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45752,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:45753,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: 45754
      start: 45740
    functionDepth: 22
    functionLinenumber: 45740
    functionLinenumberEnd: 45754
    functionName: js_string_isWellFormed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_ToStringCheckObject
    - JS_IsException
    - js_string_find_invalid_codepoint
    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:45763,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45764,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45767,1
    - Dst: js_string_find_invalid_codepoint
      Src: /src/gpac/src/quickjs/quickjs.c:45769,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:45773,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45774,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45775,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45778,1
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45781,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45782,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:45783,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: 45791
      start: 45756
    functionDepth: 22
    functionLinenumber: 45756
    functionLinenumberEnd: 45791
    functionName: js_string_toWellFormed
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - is_surrogate
    - JS_FreeValue
    - js_new_string16_len
    - is_lo_surrogate
    - JS_ToStringCheckObject
    - is_hi_surrogate
    - JS_IsException
    - js_string_find_invalid_codepoint
    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:45801,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45802,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45804,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45805,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45807,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45808,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:45815,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:45817,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:45830,1
    - Dst: string_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:45840,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45848,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45849,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:45850,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45853,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45854,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: 45856
      start: 45793
    functionDepth: 24
    functionLinenumber: 45793
    functionLinenumberEnd: 45856
    functionName: js_string_indexOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_ToFloat64
    - JS_ToInt32Clamp
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_ToStringCheckObject
    - JS_ToString
    - JS_IsException
    - JS_NewInt32
    - string_cmp
    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:45869,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45870,1
    - Dst: js_is_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:45872,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45875,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45878,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45879,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45881,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45882,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45886,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:45887,1
    - Dst: string_cmp
      Src: /src/gpac/src/quickjs/quickjs.c:45906,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45915,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45916,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:45917,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45920,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45921,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: 45923
      start: 45861
    functionDepth: 23
    functionLinenumber: 45861
    functionLinenumberEnd: 45923
    functionName: js_string_includes
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ThrowTypeError
    - JS_ToInt32Clamp
    - js_is_regexp
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_FreeValue
    - JS_ToStringCheckObject
    - JS_ToString
    - JS_IsException
    - string_cmp
    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:45930,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:45934,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45935,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45937,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:45937,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45938,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:45941,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45942,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:45944,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:45944,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45945,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45947,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 2
    argNames:
    - ctx
    - regexp
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45952
      start: 45925
    functionDepth: 22
    functionLinenumber: 45925
    functionLinenumberEnd: 45952
    functionName: check_regexp_g_flag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - js_is_regexp
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - JS_GetProperty
    - JS_FreeValue
    - string_indexof_char
    - JS_IsNull
    - JS_ToStringFree
    - JS_IsException
    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:45963,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:45963,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:45964,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:45966,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:45967,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45968,1
    - Dst: check_regexp_g_flag
      Src: /src/gpac/src/quickjs/quickjs.c:45971,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45972,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:45976,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:45976,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:45977,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:45980,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45981,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:45987,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45988,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:45997,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:45998,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:45999,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46001,1
    - Dst: JS_InvokeFree
      Src: /src/gpac/src/quickjs/quickjs.c:46004,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46005,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46007
      start: 45954
    functionDepth: 26
    functionLinenumber: 45954
    functionLinenumberEnd: 46007
    functionName: js_string_match
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - js_new_string8
    - JS_GetProperty
    - JS_CallConstructor
    - JS_FreeValue
    - JS_InvokeFree
    - JS_IsNull
    - check_regexp_g_flag
    - JS_ToString
    - JS_IsObject
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_string_match(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv, int atom)"
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:46028,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:46029,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46033,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46039,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:46040,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:46043,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:46050,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46053,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46055,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46057,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46060,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:46062,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46066,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46068,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46072,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46090,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:46093,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46094,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46096,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:46097,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46104,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:46105,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46108,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46109,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:46111,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46112,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46114,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:46115,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46121,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46125,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 114
    argCount: 10
    argNames:
    - ctx
    - b
    - matched
    - sp
    - position
    - captures_val
    - namedCaptures
    - rep
    - captures
    - captures_len
    argTypes:
    - JSContext*
    - StringBuffer*
    - JSValueConst
    - JSString*
    - uint32_t
    - JSValueConst
    - JSValueConst
    - JSValueConst
    - uint8_t**
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46129
      start: 46011
    functionDepth: 24
    functionLinenumber: 46011
    functionLinenumberEnd: 46129
    functionName: js_string_GetSubstitution
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - js_get_length32
    - js_sub_string
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - string_buffer_concat_value_free
    - JS_VALUE_GET_TAG
    - string_indexof_char
    - string_get
    - string_buffer_putc8
    - string_buffer_concat_value
    - JS_IsException
    - JS_GetPropertyValue
    - string_buffer_concat
    - JS_GetPropertyInt64
    linkageType: ''
    returnType: int
    signature: "int js_string_GetSubstitution(JSContext *ctx,\n                                     StringBuffer
      *b,\n                                     JSValueConst matched,\n                                     JSString
      *sp,\n                                     uint32_t position,\n                                     JSValueConst
      captures_val,\n                                     JSValueConst namedCaptures,\n
      \                                    JSValueConst rep,\n                                     uint8_t
      **captures,\n                                     uint32_t captures_len)"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46144,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:46144,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:46145,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:46151,1
    - Dst: check_regexp_g_flag
      Src: /src/gpac/src/quickjs/quickjs.c:46154,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46157,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46158,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46160,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:46160,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:46163,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:46166,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46168,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46169,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46171,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46172,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:46174,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46176,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46177,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46181,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46182,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:46186,1
    - Dst: string_indexof
      Src: /src/gpac/src/quickjs/quickjs.c:46194,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:46198,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46199,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46200,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46207,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46211,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:46213,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:46213,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46214,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:46216,1
    - Dst: js_string_GetSubstitution
      Src: /src/gpac/src/quickjs/quickjs.c:46218,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46230,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46231,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46232,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46233,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46234,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:46237,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46238,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46239,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46240,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 93
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - is_replaceAll
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46242
      start: 46131
    functionDepth: 25
    functionLinenumber: 46131
    functionLinenumberEnd: 46242
    functionName: js_string_replace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_GetSubstitution
    - string_buffer_concat_value_free
    - JS_Call
    - JS_IsNull
    - JS_IsObject
    - string_buffer_concat
    - string_buffer_init
    - JS_CallFree
    - JS_ThrowTypeError
    - string_buffer_end
    - JS_FreeValue
    - JS_IsFunction
    - JS_ToString
    - JS_IsException
    - unlikely
    - JS_GetProperty
    - string_buffer_free
    - check_regexp_g_flag
    - JS_ToStringFree
    - JS_NewInt32
    - string_indexof
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    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:46255,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:46255,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:46256,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:46262,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:46264,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46265,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46267,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:46267,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:46270,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46273,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46274,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:46276,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46277,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46280,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:46283,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46286,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46288,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46289,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46291,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46296,1
    - Dst: string_indexof
      Src: /src/gpac/src/quickjs/quickjs.c:46304,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46307,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46308,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:46310,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46316,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46317,1
    - Dst: JS_CreateDataPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:46319,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46322,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46323,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
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 89
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46331
      start: 46244
    functionDepth: 24
    functionLinenumber: 46244
    functionLinenumberEnd: 46331
    functionName: js_string_split
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - js_sub_string
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - JS_GetProperty
    - JS_NewArray
    - JS_FreeValue
    - JS_IsNull
    - JS_ToString
    - JS_IsObject
    - JS_IsException
    - JS_ToUint32
    - string_indexof
    - JS_CreateDataPropertyUint32
    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:46340,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46341,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46343,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:46344,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46345,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46349,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:46350,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46351,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46362,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46363,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: 46365
      start: 46333
    functionDepth: 23
    functionLinenumber: 46333
    functionLinenumberEnd: 46365
    functionName: js_string_substring
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Clamp
    - js_sub_string
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_FreeValue
    - JS_ToStringCheckObject
    - JS_IsException
    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:46374,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46375,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46377,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:46379,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46380,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46384,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:46385,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46386,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46390,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46391,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: 46393
      start: 46367
    functionDepth: 23
    functionLinenumber: 46367
    functionLinenumberEnd: 46393
    functionName: js_string_substr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Clamp
    - js_sub_string
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_FreeValue
    - JS_ToStringCheckObject
    - JS_IsException
    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:46402,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46403,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46405,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:46407,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46408,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46412,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:46413,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46414,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46418,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:46418,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46419,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: 46421
      start: 46395
    functionDepth: 23
    functionLinenumber: 46395
    functionLinenumberEnd: 46421
    functionName: js_string_slice
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Clamp
    - js_sub_string
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_FreeValue
    - JS_ToStringCheckObject
    - max_int
    - JS_IsException
    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:46431,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46432,1
    - Dst: JS_ToInt32Sat
      Src: /src/gpac/src/quickjs/quickjs.c:46434,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46436,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46440,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46441,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46442,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46444,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46446,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46450,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:46455,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:46458,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46462,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:46467,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46468,1
    - Dst: string_buffer_fill
      Src: /src/gpac/src/quickjs/quickjs.c:46473,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46477,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46480,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46481,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46482,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:46485,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46487,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46489,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: 46492
      start: 46423
    functionDepth: 23
    functionLinenumber: 46423
    functionLinenumberEnd: 46492
    functionName: js_string_pad
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Sat
    - string_buffer_end
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - JS_ThrowRangeError
    - string_buffer_free
    - JS_FreeValue
    - string_get
    - JS_ToStringCheckObject
    - JS_ToString
    - JS_IsException
    - min_int
    - string_buffer_concat
    - string_buffer_init
    - 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:46503,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46504,1
    - Dst: JS_ToInt64Sat
      Src: /src/gpac/src/quickjs/quickjs.c:46506,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:46509,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46513,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:46519,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:46522,1
    - Dst: string_buffer_fill
      Src: /src/gpac/src/quickjs/quickjs.c:46525,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46525,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:46528,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46531,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46532,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46535,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: 46537
      start: 46494
    functionDepth: 23
    functionLinenumber: 46494
    functionLinenumberEnd: 46537
    functionName: js_string_repeat
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - JS_ThrowRangeError
    - JS_FreeValue
    - JS_ToInt64Sat
    - string_get
    - JS_ToStringCheckObject
    - JS_IsException
    - string_buffer_concat
    - string_buffer_init2
    - string_buffer_fill
    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:46546,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46547,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46549,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:46553,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46553,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:46557,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46557,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:46560,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46561,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: 46563
      start: 46539
    functionDepth: 22
    functionLinenumber: 46539
    functionLinenumberEnd: 46563
    functionName: js_string_trim
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_sub_string
    - lre_is_space
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - string_get
    - JS_ToStringCheckObject
    - JS_IsException
    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:46576,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:46578,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:46579,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - p
    - pidx
    argTypes:
    - JSString*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46588
      start: 46566
    functionDepth: 1
    functionLinenumber: 46566
    functionLinenumberEnd: 46588
    functionName: string_prevc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - from_surrogate
    - is_hi_surrogate
    - is_lo_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:46598,1
    - Dst: lre_is_case_ignorable
      Src: /src/gpac/src/quickjs/quickjs.c:46599,1
    - Dst: lre_is_cased
      Src: /src/gpac/src/quickjs/quickjs.c:46602,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:46611,1
    - Dst: lre_is_case_ignorable
      Src: /src/gpac/src/quickjs/quickjs.c:46612,1
    - Dst: lre_is_cased
      Src: /src/gpac/src/quickjs/quickjs.c:46615,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 2
    argNames:
    - p
    - sigma_pos
    argTypes:
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46616
      start: 46590
    functionDepth: 4
    functionLinenumber: 46590
    functionLinenumberEnd: 46616
    functionName: test_final_sigma
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_prevc
    - lre_is_case_ignorable
    - string_getc
    - 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:46627,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46628,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46630,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:46633,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:46636,1
    - Dst: test_final_sigma
      Src: /src/gpac/src/quickjs/quickjs.c:46637,1
    - Dst: lre_case_conv
      Src: /src/gpac/src/quickjs/quickjs.c:46641,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:46644,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46648,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46649,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46651,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:46652,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: 46654
      start: 46618
    functionDepth: 22
    functionLinenumber: 46618
    functionLinenumberEnd: 46654
    functionName: js_string_toLowerCase
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - string_buffer_free
    - JS_FreeValue
    - string_getc
    - JS_ToStringCheckObject
    - JS_IsException
    - lre_case_conv
    - string_buffer_init
    - string_buffer_putc
    - test_final_sigma
    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:46666,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46667,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46669,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:46672,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:46672,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46674,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:46678,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46679,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - pbuf
    - val1
    argTypes:
    - JSContext*
    - uint32_t**
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46685
      start: 46659
    functionDepth: 21
    functionLinenumber: 46659
    functionLinenumberEnd: 46685
    functionName: JS_ToUTF32String
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_malloc
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - string_getc
    - max_int
    - JS_ToString
    - JS_IsException
    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:46691,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:46694,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46697,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:46699,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 3
    argNames:
    - ctx
    - buf
    - len
    argTypes:
    - JSContext*
    - uint32_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46701
      start: 46687
    functionDepth: 13
    functionLinenumber: 46687
    functionLinenumberEnd: 46701
    functionName: JS_NewUTF32String
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_free
    - string_buffer_init
    - string_buffer_putc
    - string_buffer_end
    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:46710,1
    - Dst: unicode_normalize
      Src: /src/gpac/src/quickjs/quickjs.c:46713,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:46715,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: 46720
      start: 46703
    functionDepth: 22
    functionLinenumber: 46703
    functionLinenumberEnd: 46720
    functionName: js_string_normalize1
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unicode_normalize
    - js_free
    - JS_ToUTF32String
    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:46732,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46733,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46736,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:46739,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:46757,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:46758,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46760,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:46763,1
    - Dst: js_string_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:46766,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46767,1
    - Dst: JS_NewUTF32String
      Src: /src/gpac/src/quickjs/quickjs.c:46770,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:46771,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: 46773
      start: 46722
    functionDepth: 23
    functionLinenumber: 46722
    functionLinenumberEnd: 46773
    functionName: js_string_normalize
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewUTF32String
    - JS_IsUndefined
    - js_string_normalize1
    - JS_ThrowRangeError
    - JS_FreeValue
    - JS_FreeCString
    - JS_ToStringCheckObject
    - js_free
    - JS_IsException
    - JS_ToCStringLen
    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:46780,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: 46794
      start: 46776
    functionDepth: 1
    functionLinenumber: 46776
    functionLinenumberEnd: 46794
    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:46803,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46804,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46806,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46807,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46808,1
    - Dst: js_string_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:46811,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46812,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46814,1
    - Dst: js_string_normalize1
      Src: /src/gpac/src/quickjs/quickjs.c:46818,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46819,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:46821,1
    - Dst: js_UTF32_compare
      Src: /src/gpac/src/quickjs/quickjs.c:46824,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:46825,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:46826,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46827,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: 46828
      start: 46796
    functionDepth: 23
    functionLinenumber: 46796
    functionLinenumberEnd: 46828
    functionName: js_string_localeCompare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_normalize1
    - JS_FreeValue
    - js_UTF32_compare
    - JS_ToStringCheckObject
    - js_free
    - JS_ToString
    - JS_IsException
    - JS_NewInt32
    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:46836,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46837,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:46839,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46840,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46841,1
    - Dst: js_string_compare
      Src: /src/gpac/src/quickjs/quickjs.c:46844,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46844,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46844,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46845,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46846,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:46847,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: 46848
      start: 46830
    functionDepth: 22
    functionLinenumber: 46830
    functionLinenumberEnd: 46848
    functionName: js_string_localeCompare
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_compare
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_ToStringCheckObject
    - JS_ToString
    - JS_IsException
    - JS_NewInt32
    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:46855,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: 46856
      start: 46852
    functionDepth: 15
    functionLinenumber: 46852
    functionLinenumberEnd: 46856
    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: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:46868,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:46873,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46875,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46878,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:46886,1
    - Dst: js_new_string_char
      Src: /src/gpac/src/quickjs/quickjs.c:46890,1
    - Dst: js_new_string16_len
      Src: /src/gpac/src/quickjs/quickjs.c:46892,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: 46894
      start: 46860
    functionDepth: 9
    functionLinenumber: 46860
    functionLinenumberEnd: 46894
    functionName: js_string_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_FreeValue
    - js_new_string16_len
    - js_new_string_char
    - string_getc
    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:46926,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46927,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:46929,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46930,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46931,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46937,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46938,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46939,1
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:46940,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:46941,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46942,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:46943,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:46946,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:46948,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46950,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:46952,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:46955,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46956,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46959,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:46960,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46961,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:46962,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:46963,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:46964,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: 46965
      start: 46913
    functionDepth: 22
    functionLinenumber: 46913
    functionLinenumberEnd: 46965
    functionName: js_string_CreateHTML
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc16
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - string_buffer_free
    - JS_FreeValue
    - string_buffer_concat_value_free
    - string_buffer_putc8
    - string_get
    - JS_ToStringCheckObject
    - string_buffer_puts8
    - JS_IsException
    - string_buffer_init
    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:47041,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:47042,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47043
      start: 47039
    functionDepth: 22
    functionLinenumber: 47039
    functionLinenumberEnd: 47043
    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:47057,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47059
      start: 47048
    functionDepth: 0
    functionLinenumber: 47048
    functionLinenumberEnd: 47059
    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:47071,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47073
      start: 47062
    functionDepth: 0
    functionLinenumber: 47062
    functionLinenumberEnd: 47073
    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:47083,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47086,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47088,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:47092,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:47094,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:47096,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:47101,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:47103,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:47105,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47108,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47110,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47115,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:47117,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:47118,1
    - Dst: js_fmax
      Src: /src/gpac/src/quickjs/quickjs.c:47122,1
    - Dst: js_fmin
      Src: /src/gpac/src/quickjs/quickjs.c:47124,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47129,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: 47131
      start: 47075
    functionDepth: 24
    functionLinenumber: 47075
    functionLinenumberEnd: 47131
    functionName: js_math_min_max
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - js_fmax
    - JS_ToFloat64
    - JS_NewFloat64
    - unlikely
    - JS_VALUE_GET_TAG
    - max_int
    - __JS_NewFloat64
    - min_int
    - JS_NewInt32
    - JS_VALUE_GET_INT
    - js_fmin
    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:47135,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - a
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47141
      start: 47133
    functionDepth: 0
    functionLinenumber: 47133
    functionLinenumberEnd: 47141
    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: 47169
      start: 47143
    functionDepth: 0
    functionLinenumber: 47143
    functionLinenumberEnd: 47169
    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:47179,1
    - Dst: fabs
      Src: /src/gpac/src/quickjs/quickjs.c:47182,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47186,1
    - Dst: hypot
      Src: /src/gpac/src/quickjs/quickjs.c:47188,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47192,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: 47193
      start: 47171
    functionDepth: 24
    functionLinenumber: 47171
    functionLinenumberEnd: 47193
    functionName: js_math_hypot
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToFloat64
    - hypot
    - 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:47197,1
    - Dst: tofp16
      Src: /src/gpac/src/quickjs/quickjs.c:47197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47198
      start: 47195
    functionDepth: 1
    functionLinenumber: 47195
    functionLinenumberEnd: 47198
    functionName: js_math_f16round
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - tofp16
    - fromfp16
    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: 47203
      start: 47200
    functionDepth: 0
    functionLinenumber: 47200
    functionLinenumberEnd: 47203
    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:47211,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:47213,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:47216,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47217,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: 47218
      start: 47205
    functionDepth: 1
    functionLinenumber: 47205
    functionLinenumberEnd: 47218
    functionName: js_math_imul
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memcpy
    - JS_ToUint32
    - JS_NewInt32
    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:47225,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:47230,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47231,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: 47232
      start: 47220
    functionDepth: 1
    functionLinenumber: 47220
    functionLinenumberEnd: 47232
    functionName: js_math_clz32
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - clz32
    - JS_ToUint32
    - JS_NewInt32
    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:47259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - s
    argTypes:
    - SumPreciseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47263
      start: 47257
    functionDepth: 0
    functionLinenumber: 47257
    functionLinenumberEnd: 47263
    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: 47280
      start: 47265
    functionDepth: 0
    functionLinenumber: 47265
    functionLinenumberEnd: 47280
    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:47288,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:47292,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:47307,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:47336,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:47338,1
    - Dst: sum_precise_renorm
      Src: /src/gpac/src/quickjs/quickjs.c:47340,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 48
    argCount: 2
    argNames:
    - s
    - d
    argTypes:
    - SumPreciseState*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47343
      start: 47282
    functionDepth: 1
    functionLinenumber: 47282
    functionLinenumberEnd: 47343
    functionName: sum_precise_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - likely
    - unlikely
    - sum_precise_renorm
    - max_int
    - float64_as_uint64
    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:47362,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:47368,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:47370,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:47371,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:47403,1
    - Dst: clz64
      Src: /src/gpac/src/quickjs/quickjs.c:47408,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:47437,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:47439,1
    - Dst: uint64_as_float64
      Src: /src/gpac/src/quickjs/quickjs.c:47442,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 72
    argCount: 1
    argNames:
    - s
    argTypes:
    - SumPreciseState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47444
      start: 47345
    functionDepth: 1
    functionLinenumber: 47345
    functionLinenumberEnd: 47444
    functionName: sum_precise_get_result
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - printf
    - clz64
    - 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:47455,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47456,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47459,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47460,1
    - Dst: sum_precise_init
      Src: /src/gpac/src/quickjs/quickjs.c:47462,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:47464,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47465,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:47469,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:47470,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:47471,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:47473,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47475,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:47476,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:47477,1
    - Dst: sum_precise_add
      Src: /src/gpac/src/quickjs/quickjs.c:47480,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47482,1
    - Dst: sum_precise_get_result
      Src: /src/gpac/src/quickjs/quickjs.c:47482,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47484,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47485,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: 47487
      start: 47446
    functionDepth: 17
    functionLinenumber: 47446
    functionLinenumberEnd: 47487
    functionName: js_math_sumPrecise
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_FLOAT64
    - JS_ThrowTypeError
    - sum_precise_add
    - JS_TAG_IS_FLOAT64
    - JS_GetProperty
    - sum_precise_init
    - JS_IteratorClose
    - JS_FreeValue
    - JS_GetIterator
    - JS_IteratorNext
    - JS_VALUE_GET_TAG
    - sum_precise_get_result
    - __JS_NewFloat64
    - JS_IsException
    - JS_VALUE_GET_INT
    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: 47499
      start: 47490
    functionDepth: 0
    functionLinenumber: 47490
    functionLinenumberEnd: 47499
    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:47510,1
    - Dst: gettimeofday
      Src: /src/gpac/src/quickjs/quickjs.c:47514,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47521
      start: 47506
    functionDepth: 1
    functionLinenumber: 47506
    functionLinenumberEnd: 47521
    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:47529,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47532,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: 47533
      start: 47523
    functionDepth: 1
    functionLinenumber: 47523
    functionLinenumberEnd: 47533
    functionName: js_math_random
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - xorshift64star
    - __JS_NewFloat64
    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:47536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47536
      start: 47536
    functionDepth: 0
    functionLinenumber: 47536
    functionLinenumberEnd: 47536
    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:47537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47537
      start: 47537
    functionDepth: 0
    functionLinenumber: 47537
    functionLinenumberEnd: 47537
    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:47538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47538
      start: 47538
    functionDepth: 0
    functionLinenumber: 47538
    functionLinenumberEnd: 47538
    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:47641,1
    - Dst: mktime
      Src: /src/gpac/src/quickjs/quickjs.c:47644,1
    - Dst: localtime
      Src: /src/gpac/src/quickjs/quickjs.c:47646,1
    - Dst: mktime
      Src: /src/gpac/src/quickjs/quickjs.c:47649,1
    - Dst: localtime_r
      Src: /src/gpac/src/quickjs/quickjs.c:47656,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 1
    argNames:
    - time
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47661
      start: 47609
    functionDepth: 0
    functionLinenumber: 47609
    functionLinenumberEnd: 47661
    functionName: getTimezoneOffset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - mktime
    - localtime_r
    - localtime
    - gmtime
    linkageType: ''
    returnType: int
    signature: int getTimezoneOffset(int64_t time)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47669,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:47671,1
    - Dst: __JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:47672,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47674,1
    - Dst: getTimezoneOffset
      Src: /src/gpac/src/quickjs/quickjs.c:47674,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: 47675
      start: 47664
    functionDepth: 24
    functionLinenumber: 47664
    functionLinenumberEnd: 47675
    functionName: js___date_getTimezoneOffset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_ToFloat64
    - getTimezoneOffset
    - __JS_NewFloat64
    - 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:47681,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47682,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:47684,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47685,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47686,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - ctor
    - def_proto
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47689
      start: 47677
    functionDepth: 1
    functionLinenumber: 47677
    functionLinenumberEnd: 47689
    functionName: js_get_prototype_from_ctor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetProperty
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - JS_IsObject
    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:47696,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47697,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:47699,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47700,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47701,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:47702,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47702,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: 47704
      start: 47692
    functionDepth: 11
    functionLinenumber: 47692
    functionLinenumberEnd: 47704
    functionName: js___date_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectProtoClass
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - 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:47711,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:47714,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47714,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:47716,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47716,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47717
      start: 47709
    functionDepth: 1
    functionLinenumber: 47709
    functionLinenumberEnd: 47717
    functionName: js_regexp_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValueRT
    - JS_MKPTR
    - JS_VALUE_GET_OBJ
    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:47732,1
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:47733,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:47768,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:47773,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:47779,1
    - Dst: JS_ToCStringLen2
      Src: /src/gpac/src/quickjs/quickjs.c:47782,1
    - Dst: lre_compile
      Src: /src/gpac/src/quickjs/quickjs.c:47785,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:47787,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:47789,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:47793,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:47794,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 64
    argCount: 3
    argNames:
    - ctx
    - pattern
    - flags
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47796
      start: 47720
    functionDepth: 14
    functionLinenumber: 47720
    functionLinenumberEnd: 47796
    functionName: js_compile_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToCStringLen2
    - JS_ThrowSyntaxError
    - JS_IsUndefined
    - lre_compile
    - JS_FreeCString
    - js_free
    - js_new_string8_len
    - JS_ToCStringLen
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_compile_regexp(JSContext *ctx, JSValueConst pattern,\n
      \                                JSValueConst flags)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:47807,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:47807,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:47808,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:47809,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47812,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:47813,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:47813,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47814,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:47816,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47818,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47819,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47822,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47823,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 3
    argNames:
    - ctx
    - pattern
    - bc
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47825
      start: 47799
    functionDepth: 14
    functionLinenumber: 47799
    functionLinenumberEnd: 47825
    functionName: JS_NewRegexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_ThrowTypeError
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - js_dup_shape
    - JS_NewInt32
    - JS_IsException
    - JS_NewObjectFromShape
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewRegexp(JSContext *ctx, JSValue pattern, JSValue bc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:47836,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:47836,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:47837,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:47838,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47839,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47840,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47841,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:47845,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47847,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47848,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:47850,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:47850,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - ctx
    - obj
    - pattern
    - bc
    argTypes:
    - JSContext*
    - JSValue
    - JSValue
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47853
      start: 47828
    functionDepth: 20
    functionLinenumber: 47828
    functionLinenumberEnd: 47853
    functionName: js_regexp_set_internal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_DefinePropertyValue
    - unlikely
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - 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:47857,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:47858,1
    - Dst: JS_ThrowTypeErrorInvalidClass
      Src: /src/gpac/src/quickjs/quickjs.c:47863,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - obj
    - throw_error
    argTypes:
    - JSContext*
    - JSValueConst
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47866
      start: 47855
    functionDepth: 2
    functionLinenumber: 47855
    functionLinenumberEnd: 47866
    functionName: js_get_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeErrorInvalidClass
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:47873,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47875,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47876,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47878,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:47879,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:47880,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47881
      start: 47869
    functionDepth: 3
    functionLinenumber: 47869
    functionLinenumberEnd: 47881
    functionName: js_is_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - js_get_regexp
    - JS_IsUndefined
    - JS_GetProperty
    - JS_IsException
    - JS_IsObject
    - JS_ToBoolFree
    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:47893,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47896,1
    - Dst: JS_GetActiveFunction
      Src: /src/gpac/src/quickjs/quickjs.c:47898,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47899,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47902,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47903,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:47905,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47906,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47908,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:47911,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47914,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47914,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47915,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47916,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47916,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:47917,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47918,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47922,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47926,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47927,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47929,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:47930,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47931,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47934,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47937,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47938,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47940,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:47941,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47944,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47945,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47946,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:47950,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47951,1
    - Dst: js_compile_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:47953,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47954,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47956,1
    - Dst: js_regexp_set_internal
      Src: /src/gpac/src/quickjs/quickjs.c:47958,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47960,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47961,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47962,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: 47964
      start: 47883
    functionDepth: 21
    functionLinenumber: 47883
    functionLinenumberEnd: 47964
    functionName: js_regexp_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_regexp
    - JS_MKPTR
    - js_compile_regexp
    - js_is_regexp
    - JS_IsUndefined
    - JS_GetProperty
    - JS_AtomToString
    - JS_FreeValue
    - js_create_from_ctor
    - JS_DupValue
    - JS_ToString
    - JS_IsException
    - JS_GetActiveFunction
    - js_same_value
    - js_regexp_set_internal
    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:47973,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:47978,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47980,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:47981,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47982,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47982,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:47983,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47983,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:47986,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:47987,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:47989,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47990,1
    - Dst: js_compile_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:47992,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:47993,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47996,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47996,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:47997,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:47997,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47998,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:47999,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48000,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48001,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48003,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48005,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48006,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: 48008
      start: 47966
    functionDepth: 21
    functionLinenumber: 47966
    functionLinenumberEnd: 48008
    functionName: js_regexp_compile
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_regexp
    - JS_SetProperty
    - JS_ThrowTypeError
    - JS_MKPTR
    - js_compile_regexp
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - JS_AtomToString
    - JS_FreeValue
    - JS_DupValue
    - JS_ToString
    - JS_IsException
    - JS_NewInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_compile(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48017,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48018,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:48020,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:48023,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:48031,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:48033,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:48039,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:48042,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:48049,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:48050,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:48069,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:48071,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:48073,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 54
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48074
      start: 48010
    functionDepth: 15
    functionLinenumber: 48010
    functionLinenumberEnd: 48074
    functionName: js_regexp_get_source
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_regexp
    - string_buffer_putc16
    - string_buffer_end
    - js_new_string8
    - JS_VALUE_GET_TAG
    - string_get
    - string_buffer_init2
    - JS_ThrowTypeErrorNotAnObject
    - js_same_value
    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:48081,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48082,1
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:48084,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:48086,1
    - Dst: JS_ThrowTypeErrorInvalidClass
      Src: /src/gpac/src/quickjs/quickjs.c:48089,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:48092,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:48093,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - ctx
    - this_val
    - mask
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48094
      start: 48076
    functionDepth: 15
    functionLinenumber: 48076
    functionLinenumberEnd: 48094
    functionName: js_regexp_get_flag
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_get_regexp
    - JS_ThrowTypeErrorInvalidClass
    - JS_NewBool
    - lre_get_flags
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorNotAnObject
    - js_same_value
    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:48114,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48115,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:48118,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48118,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:48124,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48128
      start: 48098
    functionDepth: 15
    functionLinenumber: 48098
    functionLinenumberEnd: 48128
    functionName: js_regexp_get_flags
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewStringLen
    - JS_GetProperty
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToBoolFree
    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:48136,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48137,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:48139,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48140,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48141,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:48142,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48144,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48145,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:48146,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:48148,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:48151,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: 48153
      start: 48130
    functionDepth: 15
    functionLinenumber: 48130
    functionLinenumberEnd: 48153
    functionName: js_regexp_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_end
    - JS_GetProperty
    - string_buffer_free
    - string_buffer_concat_value_free
    - string_buffer_putc8
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    - string_buffer_init
    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:48158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - opaque
    - alloca_size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48159
      start: 48155
    functionDepth: 1
    functionLinenumber: 48155
    functionLinenumberEnd: 48159
    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:48166,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - opaque
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48167
      start: 48161
    functionDepth: 1
    functionLinenumber: 48161
    functionLinenumberEnd: 48167
    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:48173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - opaque
    - ptr
    - size
    argTypes:
    - void*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48174
      start: 48169
    functionDepth: 6
    functionLinenumber: 48169
    functionLinenumberEnd: 48174
    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:48186,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48187,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:48188,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48189,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48191,1
    - Dst: string_buffer_init2
      Src: /src/gpac/src/quickjs/quickjs.c:48192,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:48195,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48198,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48199,1
    - Dst: strchr
      Src: /src/gpac/src/quickjs/quickjs.c:48209,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48212,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:48214,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:48217,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:48218,1
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:48219,1
    - Dst: lre_is_space
      Src: /src/gpac/src/quickjs/quickjs.c:48219,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:48220,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:48221,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:48223,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48226,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:48227,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 50
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48228
      start: 48176
    functionDepth: 21
    functionLinenumber: 48176
    functionLinenumberEnd: 48228
    functionName: js_regexp_escape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - strchr
    - lre_is_space
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - is_surrogate
    - JS_IsString
    - JS_FreeValue
    - string_buffer_putc8
    - string_getc
    - string_buffer_puts8
    - JS_ToString
    - JS_IsException
    - snprintf
    - string_buffer_putc
    - string_buffer_init2
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_escape(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:48234,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:48237,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48237,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:48238,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:48238,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:48241,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48241,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - plast_index
    - this_val
    argTypes:
    - JSContext*
    - int64_t*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48243
      start: 48231
    functionDepth: 24
    functionLinenumber: 48231
    functionLinenumberEnd: 48243
    functionName: js_regexp_get_lastIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - likely
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - max_int
    - JS_DupValue
    - JS_VALUE_GET_INT
    - JS_ToLengthFree
    linkageType: ''
    returnType: force_inline
    signature: "force_inline js_regexp_get_lastIndex(JSContext *ctx, int64_t *plast_index,\n
      \                                               JSValueConst this_val)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48249,1
    - Dst: likely
      Src: /src/gpac/src/quickjs/quickjs.c:48252,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48252,1
    - Dst: get_shape_prop
      Src: /src/gpac/src/quickjs/quickjs.c:48253,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:48254,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48254,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48256,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48257,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 3
    argNames:
    - ctx
    - this_val
    - last_index
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48261
      start: 48246
    functionDepth: 2
    functionLinenumber: 48246
    functionLinenumberEnd: 48261
    functionName: js_regexp_set_lastIndex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - likely
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - set_value
    - JS_NewInt32
    - get_shape_prop
    linkageType: ''
    returnType: force_inline
    signature: "force_inline js_regexp_set_lastIndex(JSContext *ctx, JSValueConst
      this_val,\n                                                int last_index)"
  - BBCount: 44
    BranchProfiles: []
    Callsites:
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:48266,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:48281,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48282,1
    - Dst: js_regexp_get_lastIndex
      Src: /src/gpac/src/quickjs/quickjs.c:48293,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:48297,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48301,1
    - Dst: lre_get_alloc_count
      Src: /src/gpac/src/quickjs/quickjs.c:48302,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:48304,1
    - Dst: lre_get_capture_count
      Src: /src/gpac/src/quickjs/quickjs.c:48308,1
    - Dst: lre_exec
      Src: /src/gpac/src/quickjs/quickjs.c:48314,1
    - Dst: js_regexp_set_lastIndex
      Src: /src/gpac/src/quickjs/quickjs.c:48321,1
    - Dst: JS_ThrowInterrupted
      Src: /src/gpac/src/quickjs/quickjs.c:48326,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:48328,1
    - Dst: js_regexp_set_lastIndex
      Src: /src/gpac/src/quickjs/quickjs.c:48337,1
    - Dst: lre_get_groupnames
      Src: /src/gpac/src/quickjs/quickjs.c:48342,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:48344,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48345,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:48349,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48350,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:48353,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48354,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48359,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48360,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48362,1
    - Dst: JS_NewObjectFromShape
      Src: /src/gpac/src/quickjs/quickjs.c:48365,1
    - Dst: js_dup_shape
      Src: /src/gpac/src/quickjs/quickjs.c:48365,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48367,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48370,1
    - Dst: expand_fast_array
      Src: /src/gpac/src/quickjs/quickjs.c:48371,1
    - Dst: JS_NewAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48384,1
    - Dst: strlen
      Src: /src/gpac/src/quickjs/quickjs.c:48388,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48396,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:48399,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48400,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:48402,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48403,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48405,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:48408,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48409,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48411,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48417,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48418,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48419,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48420,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48421,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:48426,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:48434,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48435,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48441,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48442,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48443,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:48444,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48446,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48450,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:48456,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48459,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:48465,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:48474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48475,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48476,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48477,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48478,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48479,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:48480,1
    CyclomaticComplexity: 69
    EdgeCount: 69
    ICount: 185
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48482
      start: 48263
    functionDepth: 25
    functionLinenumber: 48263
    functionLinenumberEnd: 48482
    functionName: js_regexp_exec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_ThrowInterrupted
    - JS_NewArray
    - js_dup_shape
    - JS_FreeAtom
    - js_malloc
    - JS_FreeValue
    - JS_DefinePropertyValueUint32
    - JS_DupValue
    - JS_ToString
    - JS_IsException
    - JS_NewObjectFromShape
    - js_regexp_set_lastIndex
    - lre_get_alloc_count
    - js_sub_string
    - lre_get_capture_count
    - JS_VALUE_GET_OBJ
    - JS_ThrowInternalError
    - lre_get_flags
    - JS_NewInt32
    - strlen
    - JS_NewObjectProto
    - js_get_regexp
    - JS_HasProperty
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - lre_exec
    - JS_NewAtom
    - expand_fast_array
    - js_free
    - lre_get_groupnames
    - js_regexp_get_lastIndex
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_exec(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: js_get_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:48488,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48498,1
    - Dst: lre_get_groupnames
      Src: /src/gpac/src/quickjs/quickjs.c:48505,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:48509,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:48512,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48513,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48515,1
    - Dst: lre_get_flags
      Src: /src/gpac/src/quickjs/quickjs.c:48516,1
    - Dst: js_regexp_set_lastIndex
      Src: /src/gpac/src/quickjs/quickjs.c:48519,1
    - Dst: js_regexp_get_lastIndex
      Src: /src/gpac/src/quickjs/quickjs.c:48525,1
    - Dst: lre_get_alloc_count
      Src: /src/gpac/src/quickjs/quickjs.c:48528,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:48530,1
    - Dst: lre_get_capture_count
      Src: /src/gpac/src/quickjs/quickjs.c:48534,1
    - Dst: lre_exec
      Src: /src/gpac/src/quickjs/quickjs.c:48543,1
    - Dst: js_regexp_set_lastIndex
      Src: /src/gpac/src/quickjs/quickjs.c:48549,1
    - Dst: JS_ThrowInterrupted
      Src: /src/gpac/src/quickjs/quickjs.c:48554,1
    - Dst: JS_ThrowInternalError
      Src: /src/gpac/src/quickjs/quickjs.c:48556,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:48566,1
    - Dst: js_string_GetSubstitution
      Src: /src/gpac/src/quickjs/quickjs.c:48570,1
    - Dst: js_regexp_set_lastIndex
      Src: /src/gpac/src/quickjs/quickjs.c:48579,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:48585,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:48589,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48591,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:48592,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:48593,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48595,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:48596,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:48597,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 103
    argCount: 4
    argNames:
    - ctx
    - this_val
    - arg
    - rep_val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48599
      start: 48485
    functionDepth: 25
    functionLinenumber: 48485
    functionLinenumberEnd: 48599
    functionName: js_regexp_replace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowInterrupted
    - js_string_GetSubstitution
    - string_buffer_concat
    - string_buffer_init
    - string_advance_index
    - js_malloc
    - string_buffer_end
    - JS_FreeValue
    - JS_ToString
    - JS_IsException
    - js_regexp_set_lastIndex
    - lre_get_alloc_count
    - lre_get_capture_count
    - string_buffer_free
    - JS_ThrowInternalError
    - lre_get_flags
    - js_get_regexp
    - JS_VALUE_GET_STRING
    - lre_exec
    - js_free
    - lre_get_groupnames
    - js_regexp_get_lastIndex
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_regexp_replace(JSContext *ctx, JSValueConst this_val, JSValueConst
      arg,\n                                 JSValueConst rep_val)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48605,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48606,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:48608,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:48609,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48610,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:48612,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:48612,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48613,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:48614,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48618,1
    - Dst: js_regexp_exec
      Src: /src/gpac/src/quickjs/quickjs.c:48619,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - r
    - s
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48620
      start: 48601
    functionDepth: 26
    functionLinenumber: 48601
    functionLinenumberEnd: 48620
    functionName: JS_RegExpExec
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsFunction
    - JS_IsNull
    - JS_IsException
    - JS_IsObject
    - js_regexp_exec
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_RegExpExec(JSContext *ctx, JSValueConst r, JSValueConst
      s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:48628,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48629,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:48631,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48632,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:48633,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: 48634
      start: 48622
    functionDepth: 27
    functionLinenumber: 48622
    functionLinenumberEnd: 48634
    functionName: js_regexp_test
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_RegExpExec
    - JS_FreeValue
    - JS_IsNull
    - JS_IsException
    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:48645,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48646,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:48652,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48653,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48656,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48657,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48659,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48660,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48662,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:48664,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:48666,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:48668,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:48669,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48671,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:48671,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:48673,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48674,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48678,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:48679,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48680,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:48682,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48684,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48684,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48685,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:48687,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48688,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:48692,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48693,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48695,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:48696,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48697,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48697,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48702,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48706,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48707,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48708,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48712,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48713,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48714,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48715,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: 48717
      start: 48636
    functionDepth: 27
    functionLinenumber: 48636
    functionLinenumberEnd: 48717
    functionName: js_regexp_Symbol_match
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_NewArray
    - string_indexof_char
    - JS_IsNull
    - JS_IsObject
    - string_advance_index
    - JS_FreeValue
    - JS_DefinePropertyValueInt64
    - JS_ToString
    - JS_IsException
    - JS_GetProperty
    - JS_RegExpExec
    - JS_ToStringFree
    - JS_IsEmptyString
    - JS_NewInt32
    - JS_VALUE_GET_STRING
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToLengthFree
    - JS_GetPropertyInt64
    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:48729,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:48732,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:48733,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:48734,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48736
      start: 48727
    functionDepth: 4
    functionLinenumber: 48727
    functionLinenumberEnd: 48736
    functionName: js_regexp_string_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:48741,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:48744,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:48745,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48747
      start: 48738
    functionDepth: 2
    functionLinenumber: 48738
    functionLinenumberEnd: 48747
    functionName: js_regexp_string_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:48759,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:48768,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48769,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:48771,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48776,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48776,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48777,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:48779,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:48781,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48782,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48784,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:48785,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48786,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48787,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48790,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48797,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48798,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: 48801
      start: 48749
    functionDepth: 27
    functionLinenumber: 48749
    functionLinenumberEnd: 48801
    functionName: js_regexp_string_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_GetOpaque2
    - string_advance_index
    - JS_VALUE_GET_STRING
    - JS_RegExpExec
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsNull
    - JS_ToStringFree
    - JS_IsEmptyString
    - JS_IsException
    - JS_ToLengthFree
    - JS_GetPropertyInt64
    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:48814,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:48815,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:48822,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48823,1
    - Dst: JS_SpeciesConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:48825,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48826,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:48828,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48828,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48829,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:48833,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48834,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:48836,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48837,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:48839,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:48840,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:48843,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:48844,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:48846,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:48851,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:48852,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:48853,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:48854,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:48856,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48858,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48859,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48862,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48863,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48864,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48865,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48866,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: 48868
      start: 48803
    functionDepth: 25
    functionLinenumber: 48803
    functionLinenumberEnd: 48868
    functionName: js_regexp_Symbol_matchAll
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - JS_NewObjectClass
    - js_malloc
    - JS_SpeciesConstructor
    - JS_CallConstructor
    - JS_GetProperty
    - JS_VALUE_GET_STRING
    - JS_SetOpaque
    - JS_FreeValue
    - JS_ThrowTypeErrorNotAnObject
    - string_indexof_char
    - JS_ToStringFree
    - JS_ToString
    - JS_IsException
    - JS_IsObject
    - JS_ToLengthFree
    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: 48887
      start: 48879
    functionDepth: 0
    functionLinenumber: 48879
    functionLinenumberEnd: 48887
    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:48892,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:48894,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - b
    argTypes:
    - ValueBuffer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48897
      start: 48889
    functionDepth: 5
    functionLinenumber: 48889
    functionLinenumberEnd: 48897
    functionName: value_buffer_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    - JS_FreeValue
    linkageType: ''
    returnType: void
    signature: void value_buffer_free(ValueBuffer *b)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:48910,1
    - Dst: memcpy
      Src: /src/gpac/src/quickjs/quickjs.c:48912,1
    - Dst: js_realloc2
      Src: /src/gpac/src/quickjs/quickjs.c:48914,1
    - Dst: value_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:48917,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:48918,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 2
    argNames:
    - b
    - val
    argTypes:
    - ValueBuffer*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48928
      start: 48899
    functionDepth: 7
    functionLinenumber: 48899
    functionLinenumberEnd: 48928
    functionName: value_buffer_append
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - value_buffer_free
    - memcpy
    - JS_FreeValue
    - js_realloc2
    linkageType: ''
    returnType: int
    signature: int value_buffer_append(ValueBuffer *b, JSValue val)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:48937,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 3
    argNames:
    - ppr
    - p
    - atom
    argTypes:
    - JSProperty**
    - JSObject*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48946
      start: 48931
    functionDepth: 0
    functionLinenumber: 48931
    functionLinenumberEnd: 48946
    functionName: find_property_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_own_property
    linkageType: ''
    returnType: JSShapeProperty
    signature: "JSShapeProperty *find_property_regexp(JSProperty **ppr,\n                                             JSObject
      *p, JSAtom atom)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: find_property_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:48955,1
    - Dst: JS_IsCFunction
      Src: /src/gpac/src/quickjs/quickjs.c:48962,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:48962,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 5
    argNames:
    - ctx
    - p
    - atom
    - func
    - magic
    argTypes:
    - JSContext*
    - JSObject*
    - JSAtom
    - JSCFunction*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48964
      start: 48948
    functionDepth: 2
    functionLinenumber: 48948
    functionLinenumberEnd: 48964
    functionName: check_regexp_getter
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsCFunction
    - find_property_regexp
    - JS_MKPTR
    linkageType: ''
    returnType: BOOL
    signature: "BOOL check_regexp_getter(JSContext *ctx,\n                                JSObject
      *p, JSAtom atom,\n                                JSCFunction *func, int magic)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:48973,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:48975,1
    - Dst: find_own_property
      Src: /src/gpac/src/quickjs/quickjs.c:48979,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:48982,1
    - Dst: find_property_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:48986,1
    - Dst: JS_IsCFunction
      Src: /src/gpac/src/quickjs/quickjs.c:48991,1
    - Dst: check_regexp_getter
      Src: /src/gpac/src/quickjs/quickjs.c:48995,1
    - Dst: check_regexp_getter
      Src: /src/gpac/src/quickjs/quickjs.c:48998,1
    - Dst: check_regexp_getter
      Src: /src/gpac/src/quickjs/quickjs.c:49000,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 27
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49004
      start: 48966
    functionDepth: 3
    functionLinenumber: 48966
    functionLinenumberEnd: 49004
    functionName: js_is_standard_regexp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsCFunction
    - find_own_property
    - JS_VALUE_GET_OBJ
    - JS_IsNumber
    - find_property_regexp
    - JS_VALUE_GET_TAG
    - check_regexp_getter
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_is_standard_regexp(JSContext *ctx, JSValueConst obj)
  - BBCount: 41
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:49020,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:49021,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:49023,1
    - Dst: value_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:49024,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:49033,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49034,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49037,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:49038,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:49040,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49041,1
    - Dst: js_is_standard_regexp
      Src: /src/gpac/src/quickjs/quickjs.c:49045,1
    - Dst: js_regexp_replace
      Src: /src/gpac/src/quickjs/quickjs.c:49047,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49048,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49052,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49053,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:49055,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49056,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49058,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:49061,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:49063,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:49064,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49065,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49065,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:49071,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49072,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:49074,1
    - Dst: value_buffer_append
      Src: /src/gpac/src/quickjs/quickjs.c:49076,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49080,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:49081,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49081,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49082,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:49084,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:49087,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49087,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:49089,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49090,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49090,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:49098,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49100,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:49101,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49101,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49102,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:49104,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49104,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49112,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:49113,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49114,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49116,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49116,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49121,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49122,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49124,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:49125,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49126,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49129,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49133,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49134,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49135,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49138,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49138,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49140,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49140,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49142,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49143,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49143,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49148,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:49149,1
    - Dst: js_function_apply
      Src: /src/gpac/src/quickjs/quickjs.c:49149,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49155,1
    - Dst: JS_ToObject
      Src: /src/gpac/src/quickjs/quickjs.c:49156,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49157,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49162,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:49164,1
    - Dst: js_string_GetSubstitution
      Src: /src/gpac/src/quickjs/quickjs.c:49165,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:49168,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49169,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49173,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:49176,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:49177,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49178,1
    - Dst: string_buffer_concat
      Src: /src/gpac/src/quickjs/quickjs.c:49181,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:49182,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:49188,1
    - Dst: value_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:49190,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49191,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49192,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49193,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49194,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49195,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49196,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49197,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 183
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49199
      start: 49006
    functionDepth: 27
    functionLinenumber: 49006
    functionLinenumberEnd: 49199
    functionName: js_regexp_Symbol_replace
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_SetProperty
    - value_buffer_init
    - js_function_apply
    - js_string_GetSubstitution
    - JS_NewArray
    - string_indexof_char
    - JS_IsNull
    - JS_IsObject
    - string_buffer_concat
    - string_buffer_concat_value
    - string_buffer_init
    - value_buffer_free
    - string_advance_index
    - js_get_length32
    - string_buffer_end
    - JS_FreeValue
    - JS_IsFunction
    - JS_DefinePropertyValueInt64
    - JS_DupValue
    - JS_ToString
    - JS_IsException
    - JS_ToObject
    - JS_GetProperty
    - JS_RegExpExec
    - string_buffer_free
    - JS_ToStringFree
    - JS_IsEmptyString
    - JS_NewInt32
    - value_buffer_append
    - js_regexp_replace
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - js_is_standard_regexp
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToLengthFree
    - JS_GetPropertyInt64
    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:49207,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:49208,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:49213,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49214,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49217,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49218,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49221,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49221,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49222,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49222,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:49226,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49227,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49229,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49230,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49232,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49233,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49235,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49240,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49241,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:49243,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49244,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49246,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49247,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49252,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49253,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49254,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49255,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: 49257
      start: 49201
    functionDepth: 27
    functionLinenumber: 49201
    functionLinenumberEnd: 49257
    functionName: js_regexp_Symbol_search
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_GetProperty
    - JS_RegExpExec
    - JS_FreeValue
    - JS_NewInt32
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsNull
    - JS_ToString
    - JS_IsException
    - JS_IsObject
    - js_same_value
    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:49271,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:49272,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:49279,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49280,1
    - Dst: JS_SpeciesConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:49282,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49283,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:49285,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49285,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49286,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49288,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:49289,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:49290,1
    - Dst: string_indexof_char
      Src: /src/gpac/src/quickjs/quickjs.c:49291,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:49292,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49293,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:49298,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49299,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:49301,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49302,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49305,1
    - Dst: JS_ToUint32
      Src: /src/gpac/src/quickjs/quickjs.c:49308,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:49313,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:49317,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49318,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:49320,1
    - Dst: JS_SetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49325,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49325,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49327,1
    - Dst: JS_RegExpExec
      Src: /src/gpac/src/quickjs/quickjs.c:49328,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49329,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:49331,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:49332,1
    - Dst: JS_ToLengthFree
      Src: /src/gpac/src/quickjs/quickjs.c:49334,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49334,1
    - Dst: string_advance_index
      Src: /src/gpac/src/quickjs/quickjs.c:49339,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:49341,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49342,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49344,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:49350,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49353,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49354,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49356,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:49368,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49369,1
    - Dst: JS_DefinePropertyValueInt64
      Src: /src/gpac/src/quickjs/quickjs.c:49371,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49375,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49378,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49379,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49380,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49381,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49382,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: 49384
      start: 49259
    functionDepth: 27
    functionLinenumber: 49259
    functionLinenumberEnd: 49384
    functionName: js_regexp_Symbol_split
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetProperty
    - JS_SpeciesConstructor
    - JS_NewArray
    - string_indexof_char
    - JS_IsNull
    - JS_IsObject
    - JS_ToUint32
    - string_advance_index
    - JS_FreeValue
    - JS_DefinePropertyValueInt64
    - JS_ToString
    - JS_IsException
    - js_get_length64
    - js_sub_string
    - JS_GetProperty
    - JS_RegExpExec
    - JS_ToStringFree
    - JS_NewInt32
    - JS_VALUE_GET_STRING
    - JS_CallConstructor
    - JS_IsUndefined
    - JS_ConcatString3
    - JS_ThrowTypeErrorNotAnObject
    - JS_ToLengthFree
    - JS_GetPropertyInt64
    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: 49421
      start: 49418
    functionDepth: 0
    functionLinenumber: 49418
    functionLinenumberEnd: 49421
    functionName: JS_AddIntrinsicRegExpCompiler
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JS_AddIntrinsicRegExpCompiler(JSContext *ctx)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_AddIntrinsicRegExpCompiler
      Src: /src/gpac/src/quickjs/quickjs.c:49427,1
    - Dst: JS_NewCConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:49429,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:49432,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:49433,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49435,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:49440,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:49442,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49443,1
    - Dst: js_new_shape2
      Src: /src/gpac/src/quickjs/quickjs.c:49446,1
    - Dst: get_proto_obj
      Src: /src/gpac/src/quickjs/quickjs.c:49446,1
    - Dst: add_shape_property
      Src: /src/gpac/src/quickjs/quickjs.c:49450,1
    - Dst: js_new_shape2
      Src: /src/gpac/src/quickjs/quickjs.c:49454,1
    - Dst: get_proto_obj
      Src: /src/gpac/src/quickjs/quickjs.c:49454,1
    - Dst: add_shape_property
      Src: /src/gpac/src/quickjs/quickjs.c:49458,1
    - Dst: add_shape_property
      Src: /src/gpac/src/quickjs/quickjs.c:49461,1
    - Dst: add_shape_property
      Src: /src/gpac/src/quickjs/quickjs.c:49464,1
    - Dst: add_shape_property
      Src: /src/gpac/src/quickjs/quickjs.c:49467,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49472
      start: 49423
    functionDepth: 23
    functionLinenumber: 49423
    functionLinenumberEnd: 49472
    functionName: JS_AddIntrinsicRegExp
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewObjectProtoList
    - js_new_shape2
    - JS_NewCConstructor
    - countof
    - JS_AddIntrinsicRegExpCompiler
    - add_shape_property
    - JS_IsException
    - get_proto_obj
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicRegExp(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:49480,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49482,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - s
    - tok
    argTypes:
    - JSParseState*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49483
      start: 49476
    functionDepth: 16
    functionLinenumber: 49476
    functionLinenumberEnd: 49483
    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: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - pr
    - val
    argTypes:
    - JSContext*
    - JSONParseRecord*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49521
      start: 49514
    functionDepth: 1
    functionLinenumber: 49514
    functionLinenumberEnd: 49521
    functionName: json_parse_record_init_obj
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void json_parse_record_init_obj(JSContext *ctx, JSONParseRecord *pr,
      JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - pr
    - val
    argTypes:
    - JSContext*
    - JSONParseRecord*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49528
      start: 49523
    functionDepth: 1
    functionLinenumber: 49523
    functionLinenumberEnd: 49528
    functionName: json_parse_record_init_array
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: void json_parse_record_init_array(JSContext *ctx, JSONParseRecord *pr,
      JSValueConst val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49533,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 5
    argNames:
    - ctx
    - pr
    - val
    - source_pos
    - source_len
    argTypes:
    - JSContext*
    - JSONParseRecord*
    - JSValueConst
    - uint32_t
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49536
      start: 49530
    functionDepth: 1
    functionLinenumber: 49530
    functionLinenumberEnd: 49536
    functionName: json_parse_record_init_primitive
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: void
    signature: "void json_parse_record_init_primitive(JSContext *ctx, JSONParseRecord
      *pr, JSValueConst val,\n                                             uint32_t
      source_pos, uint32_t source_len)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:49543,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:49546,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - ctx
    - po
    - new_hash_size
    argTypes:
    - JSContext*
    - JSONParseRecordObject*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49560
      start: 49538
    functionDepth: 6
    functionLinenumber: 49538
    functionLinenumberEnd: 49560
    functionName: json_parse_record_resize_hash
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free
    - js_malloc
    linkageType: ''
    returnType: int
    signature: int json_parse_record_resize_hash(JSContext *ctx, JSONParseRecordObject
      *po, uint32_t new_hash_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:49569,1
    - Dst: clz32
      Src: /src/gpac/src/quickjs/quickjs.c:49575,1
    - Dst: json_parse_record_resize_hash
      Src: /src/gpac/src/quickjs/quickjs.c:49576,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49581,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - ctx
    - pr
    - key
    - psize
    argTypes:
    - JSContext*
    - JSONParseRecord*
    - JSAtom
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49590
      start: 49562
    functionDepth: 9
    functionLinenumber: 49562
    functionLinenumberEnd: 49590
    functionName: json_parse_record_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupAtom
    - js_resize_array
    - clz32
    - json_parse_record_resize_hash
    linkageType: ''
    returnType: JSONParseRecord
    signature: JSONParseRecord *json_parse_record_add(JSContext *ctx, JSONParseRecord
      *pr, JSAtom key, int *psize)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 2
    argNames:
    - pr
    - key
    argTypes:
    - JSONParseRecord*
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49614
      start: 49592
    functionDepth: 0
    functionLinenumber: 49592
    functionLinenumberEnd: 49614
    functionName: json_parse_record_find
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSONParseRecord
    signature: JSONParseRecord *json_parse_record_find(JSONParseRecord *pr, JSAtom
      key)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:49621,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:49622,1
    - Dst: json_free_parse_record
      Src: /src/gpac/src/quickjs/quickjs.c:49624,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:49626,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49629,1
    - Dst: json_free_parse_record
      Src: /src/gpac/src/quickjs/quickjs.c:49630,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:49632,1
    - Dst: js_free
      Src: /src/gpac/src/quickjs/quickjs.c:49633,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49636,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - pr
    argTypes:
    - JSContext*
    - JSONParseRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49638
      start: 49616
    functionDepth: 7
    functionLinenumber: 49616
    functionLinenumberEnd: 49638
    functionName: json_free_parse_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_FreeValue
    - JS_IsArray
    - js_free
    - JS_IsObject
    - JS_FreeAtom
    - json_free_parse_record
    linkageType: ''
    returnType: void
    signature: void json_free_parse_record(JSContext *ctx, JSONParseRecord *pr)
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49659,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:49661,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49662,1
    - Dst: json_parse_record_init_obj
      Src: /src/gpac/src/quickjs/quickjs.c:49665,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49671,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49675,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:49677,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49680,1
    - Dst: json_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:49682,1
    - Dst: json_parse_record_add
      Src: /src/gpac/src/quickjs/quickjs.c:49685,1
    - Dst: json_parse_value
      Src: /src/gpac/src/quickjs/quickjs.c:49691,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49692,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49694,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49697,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49699,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49705,1
    - Dst: json_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:49711,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49722,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:49724,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49725,1
    - Dst: json_parse_record_init_array
      Src: /src/gpac/src/quickjs/quickjs.c:49728,1
    - Dst: js_resize_array
      Src: /src/gpac/src/quickjs/quickjs.c:49735,1
    - Dst: json_parse_value
      Src: /src/gpac/src/quickjs/quickjs.c:49743,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49744,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:49746,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49751,1
    - Dst: json_parse_expect
      Src: /src/gpac/src/quickjs/quickjs.c:49758,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:49763,1
    - Dst: json_parse_record_init_primitive
      Src: /src/gpac/src/quickjs/quickjs.c:49765,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49769,1
    - Dst: json_parse_record_init_primitive
      Src: /src/gpac/src/quickjs/quickjs.c:49775,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49779,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:49785,1
    - Dst: json_parse_record_init_primitive
      Src: /src/gpac/src/quickjs/quickjs.c:49787,1
    - Dst: json_parse_record_init_primitive
      Src: /src/gpac/src/quickjs/quickjs.c:49794,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:49801,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:49803,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49807,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:49813,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:49815,1
    - Dst: json_free_parse_record
      Src: /src/gpac/src/quickjs/quickjs.c:49822,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49823,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 181
    argCount: 2
    argNames:
    - s
    - pr
    argTypes:
    - JSParseState*
    - JSONParseRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49825
      start: 49641
    functionDepth: 22
    functionLinenumber: 49641
    functionLinenumberEnd: 49825
    functionName: json_parse_value
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DefinePropertyValue
    - JS_NewFloat64
    - JS_NewArray
    - JS_DupAtom
    - JS_FreeAtom
    - json_free_parse_record
    - JS_FreeValue
    - json_parse_record_add
    - JS_DefinePropertyValueUint32
    - JS_DupValue
    - JS_IsException
    - json_parse_expect
    - JS_NewObject
    - js_resize_array
    - json_parse_record_init_obj
    - JS_NewBool
    - json_parse_record_init_primitive
    - JS_ValueToAtom
    - js_parse_error
    - json_parse_value
    - json_parse_record_init_array
    - json_next_token
    linkageType: ''
    returnType: JSValue
    signature: JSValue json_parse_value(JSParseState *s, JSONParseRecord *pr)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_parse_init
      Src: /src/gpac/src/quickjs/quickjs.c:49833,1
    - Dst: json_next_token
      Src: /src/gpac/src/quickjs/quickjs.c:49835,1
    - Dst: json_parse_value
      Src: /src/gpac/src/quickjs/quickjs.c:49837,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49838,1
    - Dst: js_parse_error
      Src: /src/gpac/src/quickjs/quickjs.c:49841,1
    - Dst: json_free_parse_record
      Src: /src/gpac/src/quickjs/quickjs.c:49842,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49848,1
    - Dst: free_token
      Src: /src/gpac/src/quickjs/quickjs.c:49849,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 6
    argNames:
    - ctx
    - buf
    - buf_len
    - filename
    - flags
    - pr
    argTypes:
    - JSContext*
    - char*
    - size_t
    - char*
    - int
    - JSONParseRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49851
      start: 49827
    functionDepth: 23
    functionLinenumber: 49827
    functionLinenumberEnd: 49851
    functionName: JS_ParseJSON3
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_parse_error
    - JS_FreeValue
    - js_parse_init
    - json_parse_value
    - JS_IsException
    - free_token
    - json_free_parse_record
    - json_next_token
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ParseJSON3(JSContext *ctx, const char *buf, size_t buf_len,\n
      \                     const char *filename, int flags, JSONParseRecord *pr)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_ParseJSON3
      Src: /src/gpac/src/quickjs/quickjs.c:49856,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - ctx
    - buf
    - buf_len
    - filename
    - flags
    argTypes:
    - JSContext*
    - char*
    - size_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49857
      start: 49853
    functionDepth: 24
    functionLinenumber: 49853
    functionLinenumberEnd: 49857
    functionName: JS_ParseJSON2
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ParseJSON3
    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_ParseJSON3
      Src: /src/gpac/src/quickjs/quickjs.c:49862,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: 49863
      start: 49859
    functionDepth: 24
    functionLinenumber: 49859
    functionLinenumberEnd: 49863
    functionName: JS_ParseJSON
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ParseJSON3
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_ParseJSON(JSContext *ctx, const char *buf, size_t buf_len,\n
      \                    const char *filename)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:49877,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:49878,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49881,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49882,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:49886,1
    - Dst: __JS_AtomIsTaggedInt
      Src: /src/gpac/src/quickjs/quickjs.c:49887,1
    - Dst: __JS_AtomToUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49888,1
    - Dst: json_parse_record_find
      Src: /src/gpac/src/quickjs/quickjs.c:49896,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:49898,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:49903,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49904,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:49907,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:49908,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:49912,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:49915,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:49915,1
    - Dst: JS_NewAtomUInt32
      Src: /src/gpac/src/quickjs/quickjs.c:49921,1
    - Dst: JS_DupAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49925,1
    - Dst: internalize_json_property
      Src: /src/gpac/src/quickjs/quickjs.c:49927,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49928,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49929,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:49932,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:49933,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49935,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:49937,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:49943,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49945,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:49947,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:49951,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:49953,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49954,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:49959,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49960,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49961,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49962,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:49965,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49966,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:49967,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 98
    argCount: 6
    argNames:
    - ctx
    - holder
    - name
    - reviver
    - text_str
    - pr
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    - char*
    - JSONParseRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49969
      start: 49866
    functionDepth: 24
    functionLinenumber: 49866
    functionLinenumberEnd: 49969
    functionName: internalize_json_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DefinePropertyValue
    - JS_Call
    - __JS_AtomToUInt32
    - JS_NewAtomUInt32
    - JS_IsObject
    - JS_DupAtom
    - js_check_stack_overflow
    - JS_FreeAtom
    - internalize_json_property
    - js_get_length32
    - JS_AtomToValue
    - JS_GetOwnPropertyNamesInternal
    - JS_FreeValue
    - json_parse_record_find
    - JS_IsArray
    - JS_IsException
    - __JS_AtomIsTaggedInt
    - JS_ThrowStackOverflow
    - JS_VALUE_GET_OBJ
    - JS_NewObject
    - JS_GetProperty
    - JS_NewStringLen
    - JS_FreePropertyEnum
    - JS_IsUndefined
    - JS_DeleteProperty
    - js_same_value
    linkageType: ''
    returnType: JSValue
    signature: "JSValue internalize_json_property(JSContext *ctx, JSValueConst holder,\n
      \                                        JSAtom name, JSValueConst reviver,\n
      \                                        const char *text_str, JSONParseRecord
      *pr)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToCStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:49978,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:49981,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:49988,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49989,1
    - Dst: json_parse_record_init_obj
      Src: /src/gpac/src/quickjs/quickjs.c:49991,1
    - Dst: json_parse_record_add
      Src: /src/gpac/src/quickjs/quickjs.c:49993,1
    - Dst: JS_ParseJSON3
      Src: /src/gpac/src/quickjs/quickjs.c:49997,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:49998,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:50001,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50003,1
    - Dst: json_free_parse_record
      Src: /src/gpac/src/quickjs/quickjs.c:50005,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50006,1
    - Dst: internalize_json_property
      Src: /src/gpac/src/quickjs/quickjs.c:50010,1
    - Dst: json_free_parse_record
      Src: /src/gpac/src/quickjs/quickjs.c:50012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50013,1
    - Dst: JS_ParseJSON3
      Src: /src/gpac/src/quickjs/quickjs.c:50015,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:50017,1
    - Dst: JS_FreeCString
      Src: /src/gpac/src/quickjs/quickjs.c:50020,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 41
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50022
      start: 49971
    functionDepth: 25
    functionLinenumber: 49971
    functionLinenumberEnd: 50022
    functionName: js_json_parse
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - internalize_json_property
    - JS_NewObject
    - json_free_parse_record
    - JS_FreeValue
    - JS_IsFunction
    - json_parse_record_add
    - JS_FreeCString
    - JS_ParseJSON3
    - JS_IsException
    - json_parse_record_init_obj
    - JS_ToCStringLen
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_json_parse(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:50028,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50029,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:50030,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: 50034
      start: 50024
    functionDepth: 1
    functionLinenumber: 50024
    functionLinenumberEnd: 50034
    functionName: js_json_isRawJSON
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_json_isRawJSON(JSContext *ctx, JSValueConst this_val,\n
      \                                int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50042
      start: 50036
    functionDepth: 0
    functionLinenumber: 50036
    functionLinenumberEnd: 50042
    functionName: is_valid_raw_json_char
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL is_valid_raw_json_char(int c)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:50049,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50050,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:50052,1
    - Dst: is_valid_raw_json_char
      Src: /src/gpac/src/quickjs/quickjs.c:50054,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:50054,1
    - Dst: is_valid_raw_json_char
      Src: /src/gpac/src/quickjs/quickjs.c:50055,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:50055,1
    - Dst: js_json_parse
      Src: /src/gpac/src/quickjs/quickjs.c:50058,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50059,1
    - Dst: JS_ThrowSyntaxError
      Src: /src/gpac/src/quickjs/quickjs.c:50061,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50064,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:50066,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50067,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:50069,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50070,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:50073,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50076,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50078
      start: 50044
    functionDepth: 26
    functionLinenumber: 50044
    functionLinenumberEnd: 50078
    functionName: js_json_rawJSON
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_ThrowSyntaxError
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - string_get
    - JS_PreventExtensions
    - JS_ToString
    - JS_IsException
    - js_json_parse
    - is_valid_raw_json_char
    - JS_NewObjectProtoClass
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_json_rawJSON(JSContext *ctx, JSValueConst this_val,\n                                 int
      argc, JSValueConst *argv)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToStringCheckObject
      Src: /src/gpac/src/quickjs/quickjs.c:50098,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50099,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:50101,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50103,1
    - Dst: string_getc
      Src: /src/gpac/src/quickjs/quickjs.c:50106,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50126,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50128,1
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:50132,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:50133,1
    - Dst: string_buffer_puts8
      Src: /src/gpac/src/quickjs/quickjs.c:50134,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:50137,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50143,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50145,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50148,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 65
    argCount: 3
    argNames:
    - ctx
    - b
    - val1
    argTypes:
    - JSContext*
    - StringBuffer*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50150
      start: 50090
    functionDepth: 22
    functionLinenumber: 50090
    functionLinenumberEnd: 50150
    functionName: JS_ToQuotedString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - is_surrogate
    - JS_FreeValue
    - string_buffer_putc8
    - string_getc
    - JS_ToStringCheckObject
    - string_buffer_puts8
    - snprintf
    - JS_IsException
    - string_buffer_putc
    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:50153,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - ctx
    - b
    - val
    argTypes:
    - JSContext*
    - StringBuffer*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50156
      start: 50152
    functionDepth: 23
    functionLinenumber: 50152
    functionLinenumberEnd: 50156
    functionName: JS_ToQuotedStringFree
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToQuotedString
    - JS_FreeValue
    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:50166,1
    - Dst: JS_IsBigInt
      Src: /src/gpac/src/quickjs/quickjs.c:50166,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50167,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50168,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:50170,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:50171,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50172,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50174,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50177,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50181,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:50184,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50185,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50187,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:50191,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:50193,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50208,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50212,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: 50214
      start: 50158
    functionDepth: 24
    functionLinenumber: 50158
    functionLinenumberEnd: 50214
    functionName: js_json_check
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_IsBigInt
    - JS_IsUndefined
    - JS_GetProperty
    - JS_FreeValue
    - JS_IsFunction
    - JS_Call
    - JS_VALUE_GET_NORM_TAG
    - JS_IsException
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_json_check(JSContext *ctx, JSONStringifyContext *jsc,\n
      \                            JSValueConst holder, JSValue val, JSValueConst
      key)"
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:50232,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:50233,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:50237,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50238,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:50241,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50242,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:50246,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50247,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:50252,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50252,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50256,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50259,1
    - Dst: js_array_includes
      Src: /src/gpac/src/quickjs/quickjs.c:50263,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50264,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:50266,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50267,1
    - Dst: JS_ConcatString
      Src: /src/gpac/src/quickjs/quickjs.c:50270,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50270,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50270,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50271,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:50273,1
    - Dst: JS_ConcatString3
      Src: /src/gpac/src/quickjs/quickjs.c:50274,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50274,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50275,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:50277,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50278,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50281,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50282,1
    - Dst: js_array_push
      Src: /src/gpac/src/quickjs/quickjs.c:50284,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:50285,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:50287,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:50291,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50293,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50296,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:50297,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:50298,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50299,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:50302,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:50302,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50303,1
    - Dst: js_json_check
      Src: /src/gpac/src/quickjs/quickjs.c:50305,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50306,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50308,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50310,1
    - Dst: js_json_to_str
      Src: /src/gpac/src/quickjs/quickjs.c:50312,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:50315,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50316,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:50317,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50319,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50321,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50322,1
    - Dst: js_object_keys
      Src: /src/gpac/src/quickjs/quickjs.c:50324,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50325,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:50327,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50329,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50332,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:50333,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50334,1
    - Dst: JS_GetPropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:50336,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50336,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50337,1
    - Dst: js_json_check
      Src: /src/gpac/src/quickjs/quickjs.c:50339,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50340,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50342,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50344,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:50345,1
    - Dst: JS_ToQuotedString
      Src: /src/gpac/src/quickjs/quickjs.c:50346,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50347,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50350,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:50351,1
    - Dst: js_json_to_str
      Src: /src/gpac/src/quickjs/quickjs.c:50352,1
    - Dst: JS_IsEmptyString
      Src: /src/gpac/src/quickjs/quickjs.c:50357,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50358,1
    - Dst: string_buffer_concat_value
      Src: /src/gpac/src/quickjs/quickjs.c:50359,1
    - Dst: string_buffer_putc8
      Src: /src/gpac/src/quickjs/quickjs.c:50361,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:50363,1
    - Dst: js_array_pop
      Src: /src/gpac/src/quickjs/quickjs.c:50363,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50365,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50366,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50367,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50368,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50369,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50370,1
    - Dst: JS_VALUE_GET_NORM_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:50374,1
    - Dst: JS_ToQuotedStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:50377,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:50379,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:50379,1
    - Dst: string_buffer_concat_value_free
      Src: /src/gpac/src/quickjs/quickjs.c:50387,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50391,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50394,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50399,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50400,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50401,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50402,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50403,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50404,1
    CyclomaticComplexity: 75
    EdgeCount: 75
    ICount: 209
    argCount: 5
    argNames:
    - ctx
    - jsc
    - holder
    - val
    - indent
    argTypes:
    - JSContext*
    - JSONStringifyContext*
    - JSValueConst
    - JSValue
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50406
      start: 50216
    functionDepth: 26
    functionLinenumber: 50216
    functionLinenumberEnd: 50406
    functionName: js_json_to_str
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewInt64
    - isfinite
    - js_new_string8
    - string_buffer_concat_value_free
    - string_buffer_putc8
    - set_value
    - js_json_check
    - JS_VALUE_GET_NORM_TAG
    - JS_IsObject
    - js_check_stack_overflow
    - string_buffer_concat_value
    - js_array_pop
    - JS_ThrowTypeError
    - JS_GetPropertyInt64
    - JS_ToNumberFree
    - JS_FreeValue
    - JS_ConcatString
    - JS_IsArray
    - JS_DupValue
    - JS_GetPropertyValue
    - JS_IsException
    - JS_ToQuotedString
    - check_exception_free
    - js_get_length64
    - JS_ThrowStackOverflow
    - js_array_includes
    - JS_VALUE_GET_FLOAT64
    - JS_VALUE_GET_OBJ
    - JS_GetProperty
    - JS_ToQuotedStringFree
    - JS_ToStringFree
    - JS_IsEmptyString
    - js_json_to_str
    - js_object_keys
    - JS_IsUndefined
    - JS_ConcatString3
    - js_array_push
    - JS_ToBoolFree
    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:50422,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:50426,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:50427,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50428,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:50430,1
    - Dst: JS_IsArray
      Src: /src/gpac/src/quickjs/quickjs.c:50433,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:50438,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50439,1
    - Dst: js_get_length64
      Src: /src/gpac/src/quickjs/quickjs.c:50441,1
    - Dst: JS_GetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:50445,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50446,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:50448,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50449,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:50452,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50453,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50456,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:50459,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:50460,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50461,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:50463,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50464,1
    - Dst: js_array_includes
      Src: /src/gpac/src/quickjs/quickjs.c:50467,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50469,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50470,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:50473,1
    - Dst: JS_SetPropertyInt64
      Src: /src/gpac/src/quickjs/quickjs.c:50474,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50476,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50481,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:50482,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50483,1
    - Dst: JS_ToNumberFree
      Src: /src/gpac/src/quickjs/quickjs.c:50485,1
    - Dst: JS_ToStringFree
      Src: /src/gpac/src/quickjs/quickjs.c:50487,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50489,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50490,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:50494,1
    - Dst: JS_ToInt32Clamp
      Src: /src/gpac/src/quickjs/quickjs.c:50496,1
    - Dst: js_new_string8_len
      Src: /src/gpac/src/quickjs/quickjs.c:50498,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:50499,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:50500,1
    - Dst: js_sub_string
      Src: /src/gpac/src/quickjs/quickjs.c:50501,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:50501,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50503,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50505,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50506,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:50508,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50509,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:50511,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50512,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50514,1
    - Dst: js_json_check
      Src: /src/gpac/src/quickjs/quickjs.c:50516,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50517,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50519,1
    - Dst: js_json_to_str
      Src: /src/gpac/src/quickjs/quickjs.c:50523,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:50526,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:50532,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50534,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50535,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50536,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50537,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50538,1
    CyclomaticComplexity: 49
    EdgeCount: 49
    ICount: 135
    argCount: 4
    argNames:
    - ctx
    - obj
    - replacer
    - space0
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50540
      start: 50408
    functionDepth: 27
    functionLinenumber: 50408
    functionLinenumberEnd: 50540
    functionName: JS_JSONStringify
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_AtomToString
    - JS_NewArray
    - JS_IsString
    - js_json_check
    - JS_IsObject
    - min_int
    - string_buffer_init
    - JS_GetPropertyInt64
    - string_buffer_end
    - JS_ToNumberFree
    - JS_FreeValue
    - JS_IsFunction
    - JS_IsArray
    - JS_DupValue
    - JS_IsException
    - js_get_length64
    - js_array_includes
    - JS_ToInt32Clamp
    - js_sub_string
    - JS_VALUE_GET_OBJ
    - JS_NewObject
    - string_buffer_free
    - JS_IsNumber
    - JS_ToStringFree
    - js_json_to_str
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_SetPropertyInt64
    - js_new_string8_len
    - JS_ToBoolFree
    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:50546,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: 50547
      start: 50542
    functionDepth: 28
    functionLinenumber: 50542
    functionLinenumberEnd: 50547
    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:50564,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:50564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50565
      start: 50561
    functionDepth: 22
    functionLinenumber: 50561
    functionLinenumberEnd: 50565
    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:50572,1
    - Dst: max_int
      Src: /src/gpac/src/quickjs/quickjs.c:50572,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: 50573
      start: 50569
    functionDepth: 27
    functionLinenumber: 50569
    functionLinenumberEnd: 50573
    functionName: js_reflect_apply
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_function_apply
    - max_int
    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:50586,1
    - Dst: JS_ThrowTypeErrorNotAConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:50587,1
    - Dst: build_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:50591,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:50594,1
    - Dst: free_arg_list
      Src: /src/gpac/src/quickjs/quickjs.c:50595,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: 50597
      start: 50575
    functionDepth: 26
    functionLinenumber: 50575
    functionLinenumberEnd: 50597
    functionName: js_reflect_construct
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - free_arg_list
    - JS_ThrowTypeErrorNotAConstructor
    - JS_IsConstructor
    - build_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:50607,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:50608,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50609,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:50610,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50612,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50613,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:50617,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: 50618
      start: 50599
    functionDepth: 15
    functionLinenumber: 50599
    functionLinenumberEnd: 50618
    functionName: js_reflect_deleteProperty
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_ValueToAtom
    - JS_VALUE_GET_TAG
    - JS_DeleteProperty
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    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:50629,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:50630,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50635,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:50636,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:50638,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50639,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: 50641
      start: 50620
    functionDepth: 16
    functionLinenumber: 50620
    functionLinenumberEnd: 50641
    functionName: js_reflect_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - unlikely
    - JS_ValueToAtom
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    - JS_GetPropertyInternal
    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:50652,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:50653,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50654,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:50655,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50657,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50658,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:50662,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: 50663
      start: 50643
    functionDepth: 17
    functionLinenumber: 50643
    functionLinenumberEnd: 50663
    functionName: js_reflect_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - JS_NewBool
    - unlikely
    - JS_ValueToAtom
    - JS_VALUE_GET_TAG
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    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:50679,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:50680,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50681,1
    - Dst: unlikely
      Src: /src/gpac/src/quickjs/quickjs.c:50682,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:50684,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:50685,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:50686,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:50690,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: 50691
      start: 50665
    functionDepth: 17
    functionLinenumber: 50665
    functionLinenumberEnd: 50691
    functionName: js_reflect_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - unlikely
    - JS_SetPropertyInternal
    - JS_ValueToAtom
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    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:50697,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:50701,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: 50702
      start: 50693
    functionDepth: 16
    functionLinenumber: 50693
    functionLinenumberEnd: 50702
    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:50707,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:50708,1
    - Dst: JS_GetOwnPropertyNames2
      Src: /src/gpac/src/quickjs/quickjs.c:50709,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: 50712
      start: 50704
    functionDepth: 23
    functionLinenumber: 50704
    functionLinenumberEnd: 50712
    functionName: js_reflect_ownKeys
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOwnPropertyNames2
    - JS_ThrowTypeErrorNotAnObject
    - 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:50739,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:50741,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:50742,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:50743,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50745
      start: 50737
    functionDepth: 4
    functionLinenumber: 50737
    functionLinenumberEnd: 50745
    functionName: js_proxy_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_GetOpaque
    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:50750,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:50752,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:50753,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50755
      start: 50747
    functionDepth: 2
    functionLinenumber: 50747
    functionLinenumberEnd: 50755
    functionName: js_proxy_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_GetOpaque
    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:50759,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50760
      start: 50757
    functionDepth: 14
    functionLinenumber: 50757
    functionLinenumberEnd: 50760
    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:50765,1
    - Dst: js_check_stack_overflow
      Src: /src/gpac/src/quickjs/quickjs.c:50769,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:50770,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:50776,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50779,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50780,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:50782,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - ctx
    - pmethod
    - obj
    - name
    argTypes:
    - JSContext*
    - JSValue*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50786
      start: 50762
    functionDepth: 15
    functionLinenumber: 50762
    functionLinenumberEnd: 50786
    functionName: get_proxy_method
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowStackOverflow
    - JS_GetProperty
    - JS_GetOpaque
    - JS_IsNull
    - JS_ThrowTypeErrorRevokedProxy
    - JS_IsException
    - js_check_stack_overflow
    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:50794,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50797,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:50798,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:50799,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50800,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:50802,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:50803,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:50806,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50808,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:50813,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50814,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50815,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:50818,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50819,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50821,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50822,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50824,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 34
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50827
      start: 50788
    functionDepth: 24
    functionLinenumber: 50788
    functionLinenumberEnd: 50827
    functionName: js_proxy_get_prototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_GetPrototype
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - get_proxy_method
    - JS_IsException
    - js_same_value
    - 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:50838,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50841,1
    - Dst: JS_SetPrototypeInternal
      Src: /src/gpac/src/quickjs/quickjs.c:50842,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:50845,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50846,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:50848,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:50851,1
    - Dst: JS_GetPrototype
      Src: /src/gpac/src/quickjs/quickjs.c:50855,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50856,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:50858,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50859,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50860,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50863,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - ctx
    - obj
    - proto_val
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50866
      start: 50829
    functionDepth: 24
    functionLinenumber: 50829
    functionLinenumberEnd: 50866
    functionName: js_proxy_set_prototype
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_GetPrototype
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_FreeValue
    - JS_SetPrototypeInternal
    - get_proxy_method
    - JS_IsException
    - JS_ToBoolFree
    - js_same_value
    - JS_IsExtensible
    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:50875,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50878,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:50879,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:50880,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50881,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:50883,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:50884,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50888,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50892
      start: 50868
    functionDepth: 24
    functionLinenumber: 50868
    functionLinenumberEnd: 50892
    functionName: js_proxy_is_extensible
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - get_proxy_method
    - JS_IsException
    - JS_ToBoolFree
    - 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:50901,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50904,1
    - Dst: JS_PreventExtensions
      Src: /src/gpac/src/quickjs/quickjs.c:50905,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:50906,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50907,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:50909,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:50911,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50915,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50920
      start: 50894
    functionDepth: 24
    functionLinenumber: 50894
    functionLinenumberEnd: 50920
    functionName: js_proxy_prevent_extensions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - get_proxy_method
    - JS_PreventExtensions
    - JS_IsException
    - JS_ToBoolFree
    - JS_IsExtensible
    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:50931,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50934,1
    - Dst: JS_HasProperty
      Src: /src/gpac/src/quickjs/quickjs.c:50935,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:50936,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50937,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50938,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:50943,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50944,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50945,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:50947,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50950,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:50951,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:50956,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:50958,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50964
      start: 50922
    functionDepth: 24
    functionLinenumber: 50922
    functionLinenumberEnd: 50964
    functionName: js_proxy_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_HasProperty
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - JS_AtomToValue
    - JS_FreeValue
    - get_proxy_method
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - js_free_desc
    - JS_ToBoolFree
    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:50975,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:50979,1
    - Dst: JS_GetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:50980,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:50981,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50982,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50983,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:50989,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50990,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:50991,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:50993,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:50993,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:50995,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:51000,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51004,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51004,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51006,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51007,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51008,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51011,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 42
    argCount: 4
    argNames:
    - ctx
    - obj
    - atom
    - receiver
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51014
      start: 50966
    functionDepth: 24
    functionLinenumber: 50966
    functionLinenumberEnd: 51014
    functionName: js_proxy_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - JS_AtomToValue
    - JS_FreeValue
    - get_proxy_method
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - js_free_desc
    - js_same_value
    - JS_GetPropertyInternal
    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:51024,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51027,1
    - Dst: JS_SetPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51028,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51029,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:51032,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51033,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51034,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:51041,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51042,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51043,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:51045,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51048,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51048,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:51053,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51056,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51058,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51059,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51062,1
    - Dst: is_strict_mode
      Src: /src/gpac/src/quickjs/quickjs.c:51066,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51067,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: 51072
      start: 51016
    functionDepth: 24
    functionLinenumber: 51016
    functionLinenumberEnd: 51072
    functionName: js_proxy_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - JS_SetPropertyInternal
    - JS_AtomToValue
    - JS_FreeValue
    - get_proxy_method
    - JS_DupValue
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - js_free_desc
    - JS_ToBoolFree
    - js_same_value
    - is_strict_mode
    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:51079,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51080,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51083,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51083,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51087,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51087,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51091,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51091,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51095,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:51096,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51100,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:51101,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51105,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:51106,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: 51110
      start: 51074
    functionDepth: 20
    functionLinenumber: 51074
    functionLinenumberEnd: 51110
    functionName: js_create_desc
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_DefinePropertyValue
    - JS_NewObject
    - JS_DupValue
    - JS_IsException
    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:51122,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51125,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51126,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51127,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:51129,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51130,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51131,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:51136,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51137,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51138,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:51140,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51140,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51141,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51144,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51146,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51150,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51151,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:51159,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51161,1
    - Dst: js_obj_to_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51164,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51165,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:51186,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51201,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51203,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51211,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 89
    argCount: 4
    argNames:
    - ctx
    - pdesc
    - obj
    - prop
    argTypes:
    - JSContext*
    - JSPropertyDescriptor*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51215
      start: 51112
    functionDepth: 24
    functionLinenumber: 51112
    functionLinenumberEnd: 51215
    functionName: js_proxy_get_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - JS_AtomToValue
    - js_obj_to_desc
    - JS_FreeValue
    - get_proxy_method
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_IsObject
    - check_define_prop_flags
    - js_free_desc
    - JS_IsExtensible
    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:51230,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51233,1
    - Dst: JS_DefineProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51234,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:51236,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51237,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51238,1
    - Dst: js_create_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51241,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51242,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51243,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51244,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:51250,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51251,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51252,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51253,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:51255,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51258,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51264,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51265,1
    - Dst: check_define_prop_flags
      Src: /src/gpac/src/quickjs/quickjs.c:51275,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:51281,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:51285,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:51290,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51304,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51306,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51309,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: 51312
      start: 51217
    functionDepth: 24
    functionLinenumber: 51217
    functionLinenumberEnd: 51312
    functionName: js_proxy_define_own_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_DefineProperty
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - JS_AtomToValue
    - JS_FreeValue
    - get_proxy_method
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - check_define_prop_flags
    - js_free_desc
    - JS_ToBoolFree
    - js_same_value
    - js_create_desc
    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:51322,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51325,1
    - Dst: JS_DeleteProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51326,1
    - Dst: JS_AtomToValue
      Src: /src/gpac/src/quickjs/quickjs.c:51328,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51329,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51330,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:51335,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51336,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51337,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:51339,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51342,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51342,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:51348,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51354,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51356,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51359,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 3
    argNames:
    - ctx
    - obj
    - atom
    argTypes:
    - JSContext*
    - JSValueConst
    - JSAtom
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51363
      start: 51314
    functionDepth: 24
    functionLinenumber: 51314
    functionLinenumberEnd: 51363
    functionName: js_proxy_delete_property
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_CallFree
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_VALUE_GET_OBJ
    - JS_AtomToValue
    - JS_FreeValue
    - get_proxy_method
    - JS_GetOwnPropertyInternal
    - JS_DeleteProperty
    - JS_IsException
    - js_free_desc
    - JS_ToBoolFree
    - JS_IsExtensible
    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: 51374
      start: 51366
    functionDepth: 0
    functionLinenumber: 51366
    functionLinenumberEnd: 51374
    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:51389,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51392,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51393,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51394,1
    - Dst: JS_CallFree
      Src: /src/gpac/src/quickjs/quickjs.c:51397,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51398,1
    - Dst: js_get_length32
      Src: /src/gpac/src/quickjs/quickjs.c:51404,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:51407,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:51412,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51413,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:51415,1
    - Dst: JS_IsSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:51415,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51416,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51417,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:51420,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51421,1
    - Dst: find_prop_key
      Src: /src/gpac/src/quickjs/quickjs.c:51431,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51432,1
    - Dst: JS_IsExtensible
      Src: /src/gpac/src/quickjs/quickjs.c:51437,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:51443,1
    - Dst: JS_GetOwnPropertyNamesInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51446,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51446,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:51451,1
    - Dst: JS_GetOwnPropertyInternal
      Src: /src/gpac/src/quickjs/quickjs.c:51454,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51454,1
    - Dst: js_free_desc
      Src: /src/gpac/src/quickjs/quickjs.c:51459,1
    - Dst: find_prop_key
      Src: /src/gpac/src/quickjs/quickjs.c:51461,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51463,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51476,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:51482,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51483,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:51488,1
    - Dst: JS_FreePropertyEnum
      Src: /src/gpac/src/quickjs/quickjs.c:51489,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51490,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: 51492
      start: 51376
    functionDepth: 24
    functionLinenumber: 51376
    functionLinenumberEnd: 51492
    functionName: js_proxy_get_own_property_names
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsString
    - JS_ThrowTypeErrorRevokedProxy
    - JS_GetPropertyUint32
    - JS_CallFree
    - JS_ThrowTypeError
    - js_get_length32
    - JS_GetOwnPropertyNamesInternal
    - JS_FreeValue
    - JS_GetOwnPropertyInternal
    - JS_IsException
    - JS_VALUE_GET_OBJ
    - js_mallocz
    - JS_IsSymbol
    - get_proxy_method
    - JS_FreePropertyEnum
    - js_free_desc
    - JS_IsExtensible
    - find_prop_key
    - JS_IsUndefined
    - JS_ValueToAtom
    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:51502,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:51505,1
    - Dst: JS_ThrowTypeErrorNotAConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:51506,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51507,1
    - Dst: JS_CallConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:51508,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:51509,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51510,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51517,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51518,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:51518,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51519,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:51520,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51523,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51524,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: 51526
      start: 51494
    functionDepth: 25
    functionLinenumber: 51494
    functionLinenumberEnd: 51526
    functionName: js_proxy_call_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_create_array
    - JS_IsUndefined
    - JS_ThrowTypeErrorNotAConstructor
    - JS_FreeValue
    - JS_Call
    - JS_VALUE_GET_TAG
    - get_proxy_method
    - JS_IsException
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsConstructor
    - 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:51537,1
    - Dst: get_proxy_method
      Src: /src/gpac/src/quickjs/quickjs.c:51539,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51543,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51544,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51546,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51547,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:51548,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51549,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51556,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51558,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51559,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: 51561
      start: 51528
    functionDepth: 26
    functionLinenumber: 51528
    functionLinenumberEnd: 51561
    functionName: js_proxy_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_create_array
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_FreeValue
    - JS_Call
    - get_proxy_method
    - js_proxy_call_constructor
    - JS_IsException
    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:51574,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51575,1
    - Dst: JS_ThrowStackOverflow
      Src: /src/gpac/src/quickjs/quickjs.c:51580,1
    - Dst: JS_ThrowTypeErrorRevokedProxy
      Src: /src/gpac/src/quickjs/quickjs.c:51586,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 3
    argNames:
    - ctx
    - pval
    - throw_exception
    argTypes:
    - JSContext*
    - JSValueConst*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51592
      start: 51569
    functionDepth: 15
    functionLinenumber: 51569
    functionLinenumberEnd: 51592
    functionName: js_resolve_proxy
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_ThrowStackOverflow
    - JS_ThrowTypeErrorRevokedProxy
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:51617,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:51618,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:51619,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:51621,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51622,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:51624,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51626,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51629,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51630,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:51631,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51633,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:51634,1
    - Dst: JS_IsConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:51634,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: 51636
      start: 51608
    functionDepth: 15
    functionLinenumber: 51608
    functionLinenumberEnd: 51636
    functionName: js_proxy_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_SetConstructorBit
    - js_malloc
    - JS_SetOpaque
    - JS_FreeValue
    - JS_IsFunction
    - JS_VALUE_GET_TAG
    - JS_DupValue
    - JS_IsException
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsConstructor
    - JS_NewObjectProtoClass
    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:51642,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51647,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: 51651
      start: 51638
    functionDepth: 2
    functionLinenumber: 51638
    functionLinenumberEnd: 51651
    functionName: js_proxy_revoke
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_FreeValue
    - JS_GetOpaque
    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:51656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - proxy_obj
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51657
      start: 51653
    functionDepth: 12
    functionLinenumber: 51653
    functionLinenumberEnd: 51657
    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:51664,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51665,1
    - Dst: js_proxy_revoke_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:51667,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51668,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:51670,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51671,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51674,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:51675,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51678,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51679,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: 51681
      start: 51659
    functionDepth: 20
    functionLinenumber: 51659
    functionLinenumberEnd: 51681
    functionName: js_proxy_revocable
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - JS_NewObject
    - js_proxy_constructor
    - js_proxy_revoke_constructor
    - JS_FreeValue
    - JS_IsException
    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:51696,1
    - Dst: init_class_range
      Src: /src/gpac/src/quickjs/quickjs.c:51697,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:51698,1
    - Dst: JS_NewCFunction3
      Src: /src/gpac/src/quickjs/quickjs.c:51705,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:51707,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51708,1
    - Dst: JS_SetConstructorBit
      Src: /src/gpac/src/quickjs/quickjs.c:51710,1
    - Dst: JS_SetPropertyFunctionList
      Src: /src/gpac/src/quickjs/quickjs.c:51711,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:51712,1
    - Dst: JS_DefinePropertyValueStr
      Src: /src/gpac/src/quickjs/quickjs.c:51714,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51719,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51721
      start: 51691
    functionDepth: 22
    functionLinenumber: 51691
    functionLinenumberEnd: 51721
    functionName: JS_AddIntrinsicProxy
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_SetConstructorBit
    - countof
    - JS_FreeValue
    - JS_NewCFunction3
    - JS_IsRegisteredClass
    - init_class_range
    - JS_DefinePropertyValueStr
    - JS_IsException
    - JS_SetPropertyFunctionList
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicProxy(JSContext *ctx)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51731,1
    - Dst: JS_ThrowTypeErrorNotAConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:51732,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51733,1
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:51736,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51737,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:51739,1
    - Dst: JS_NewSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:51741,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: 51742
      start: 51725
    functionDepth: 21
    functionLinenumber: 51725
    functionLinenumberEnd: 51742
    functionName: js_symbol_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_STRING
    - JS_IsUndefined
    - JS_ThrowTypeErrorNotAConstructor
    - JS_NewSymbol
    - JS_ToString
    - JS_IsException
    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:51746,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51747,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:51749,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51750,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:51752,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51753,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51756,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51757
      start: 51744
    functionDepth: 14
    functionLinenumber: 51744
    functionLinenumberEnd: 51757
    functionName: js_thisSymbolValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_DupValue
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    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:51763,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51764,1
    - Dst: js_string_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:51767,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51768,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: 51770
      start: 51759
    functionDepth: 22
    functionLinenumber: 51759
    functionLinenumberEnd: 51770
    functionName: js_symbol_toString
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_string_constructor
    - js_thisSymbolValue
    - JS_IsException
    - JS_FreeValue
    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:51775,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: 51776
      start: 51772
    functionDepth: 15
    functionLinenumber: 51772
    functionLinenumberEnd: 51776
    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:51783,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51784,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:51786,1
    - Dst: JS_AtomToString
      Src: /src/gpac/src/quickjs/quickjs.c:51790,1
    - Dst: js_get_atom_index
      Src: /src/gpac/src/quickjs/quickjs.c:51790,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51792,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51794
      start: 51778
    functionDepth: 15
    functionLinenumber: 51778
    functionLinenumberEnd: 51794
    functionName: js_symbol_get_description
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_PTR
    - js_get_atom_index
    - JS_AtomToString
    - JS_FreeValue
    - js_thisSymbolValue
    - JS_IsException
    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:51810,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51811,1
    - Dst: JS_NewSymbol
      Src: /src/gpac/src/quickjs/quickjs.c:51813,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:51813,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: 51814
      start: 51805
    functionDepth: 21
    functionLinenumber: 51805
    functionLinenumberEnd: 51814
    functionName: js_symbol_for
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewSymbol
    - JS_ToString
    - JS_IsException
    - JS_VALUE_GET_STRING
    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:51821,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51822,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:51823,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:51826,1
    - Dst: JS_MKPTR
      Src: /src/gpac/src/quickjs/quickjs.c:51826,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: 51827
      start: 51816
    functionDepth: 14
    functionLinenumber: 51816
    functionLinenumberEnd: 51827
    functionName: js_symbol_keyFor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_MKPTR
    - JS_VALUE_GET_PTR
    - JS_IsSymbol
    - JS_DupValue
    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:51851,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:51856,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51866
      start: 51849
    functionDepth: 1
    functionLinenumber: 51849
    functionLinenumberEnd: 51866
    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:51873,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:51875,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:51876,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - val
    argTypes:
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51877
      start: 51870
    functionDepth: 2
    functionLinenumber: 51870
    functionLinenumberEnd: 51877
    functionName: js_weakref_is_live
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_rc
    - 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:51882,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51883,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:51884,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:51889,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:51890,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:51891,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:51893,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:51894,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:51895,1
    - Dst: js_rc
      Src: /src/gpac/src/quickjs/quickjs.c:51897,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:51899,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts:
    - condition: (p->weakref_count >= 1)
      pos:
        line_end: 51883
        line_start: 51883
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (p->hash >= 1)
      pos:
        line_end: 51894
        line_start: 51894
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 51902
      start: 51880
    functionDepth: 4
    functionLinenumber: 51880
    functionLinenumberEnd: 51902
    functionName: js_weakref_free
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - js_rc
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_TAG
    - js_free_rt
    - assert
    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:51908,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:51909,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:51911,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:51912,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:51914,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:51917,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51917,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: 51913
        line_start: 51913
        source_file: /src/gpac/src/quickjs/quickjs.c
    - condition: (JS_IsUndefined(val))
      pos:
        line_end: 51916
        line_start: 51916
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 51924
      start: 51906
    functionDepth: 1
    functionLinenumber: 51906
    functionLinenumberEnd: 51924
    functionName: js_weakref_new
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_IsUndefined
    - JS_VALUE_GET_STRING
    - JS_VALUE_GET_OBJ
    - JS_VALUE_GET_TAG
    - assert
    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:51939,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51940,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:51942,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:51945,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:51949,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:51951,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:51954,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:51962,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:51962,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51966,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51967,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:51969,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:51970,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:51974,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51975,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:51977,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51978,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:51982,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51983,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:51988,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:51989,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:51990,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:51998,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:51999,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:52002,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52003,1
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:52005,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52006,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:52010,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52011,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52013,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52014,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52015,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52018,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52019,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52021,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52022,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52024,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52025,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52026,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:52031,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52033,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52034,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52035,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52036,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: 52038
      start: 51929
    functionDepth: 24
    functionLinenumber: 51929
    functionLinenumberEnd: 52038
    functionName: js_map_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - init_list_head
    - JS_IteratorClose
    - js_create_from_ctor
    - JS_Call
    - JS_IsNull
    - JS_IsObject
    - JS_GetPropertyUint32
    - list_add_tail
    - JS_ThrowTypeError
    - JS_FreeValue
    - JS_IsFunction
    - JS_IsException
    - js_mallocz
    - JS_GetProperty
    - JS_GetIterator
    - JS_IteratorNext
    - JS_IsUndefined
    - JS_SetOpaque
    - JS_ThrowTypeErrorNotAnObject
    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:52043,1
    - Dst: JS_TAG_IS_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:52045,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:52045,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:52046,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - key
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52049
      start: 52041
    functionDepth: 1
    functionLinenumber: 52041
    functionLinenumberEnd: 52049
    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:52054,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:52056,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ctx
    - key
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52058
      start: 52051
    functionDepth: 2
    functionLinenumber: 52051
    functionLinenumberEnd: 52058
    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: 52068
      start: 52065
    functionDepth: 0
    functionLinenumber: 52065
    functionLinenumberEnd: 52068
    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: 52073
      start: 52070
    functionDepth: 0
    functionLinenumber: 52070
    functionLinenumberEnd: 52073
    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:52078,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:52080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - hash_bits
    argTypes:
    - uintptr_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52082
      start: 52075
    functionDepth: 1
    functionLinenumber: 52075
    functionLinenumberEnd: 52082
    functionName: map_hash_pointer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_hash32
    - map_hash64
    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:52088,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:52096,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:52096,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:52099,1
    - Dst: hash_string
      Src: /src/gpac/src/quickjs/quickjs.c:52099,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:52099,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:52102,1
    - Dst: hash_string_rope
      Src: /src/gpac/src/quickjs/quickjs.c:52102,1
    - Dst: map_hash_pointer
      Src: /src/gpac/src/quickjs/quickjs.c:52106,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:52106,1
    - Dst: JS_VALUE_GET_INT
      Src: /src/gpac/src/quickjs/quickjs.c:52109,1
    - Dst: JS_VALUE_GET_FLOAT64
      Src: /src/gpac/src/quickjs/quickjs.c:52112,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:52114,1
    - Dst: map_hash64
      Src: /src/gpac/src/quickjs/quickjs.c:52117,1
    - Dst: float64_as_uint64
      Src: /src/gpac/src/quickjs/quickjs.c:52117,1
    - Dst: js_bigint_set_short
      Src: /src/gpac/src/quickjs/quickjs.c:52120,1
    - Dst: JS_VALUE_GET_PTR
      Src: /src/gpac/src/quickjs/quickjs.c:52123,1
    - Dst: map_hash32
      Src: /src/gpac/src/quickjs/quickjs.c:52133,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 2
    argNames:
    - key
    - hash_bits
    argTypes:
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52141
      start: 52086
    functionDepth: 3
    functionLinenumber: 52086
    functionLinenumberEnd: 52141
    functionName: map_hash_key
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_VALUE_GET_FLOAT64
    - map_hash_pointer
    - hash_string
    - JS_VALUE_GET_STRING
    - map_hash32
    - hash_string_rope
    - JS_VALUE_GET_PTR
    - map_hash64
    - js_bigint_set_short
    - JS_VALUE_GET_NORM_TAG
    - JS_VALUE_GET_INT
    - float64_as_uint64
    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:52148,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:52150,1
    - Dst: js_same_value_zero
      Src: /src/gpac/src/quickjs/quickjs.c:52153,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52158
      start: 52143
    functionDepth: 5
    functionLinenumber: 52143
    functionLinenumberEnd: 52158
    functionName: map_find_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_hash_key
    - js_same_value_zero
    - js_weakref_is_live
    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:52168,1
    - Dst: js_realloc
      Src: /src/gpac/src/quickjs/quickjs.c:52170,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:52175,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:52177,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52178,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:52179,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:52181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - ctx
    - s
    argTypes:
    - JSContext*
    - JSMapState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52190
      start: 52160
    functionDepth: 7
    functionLinenumber: 52160
    functionLinenumberEnd: 52190
    functionName: map_hash_resize
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_hash_key
    - js_weakref_is_live
    - list_entry
    - list_for_each
    - js_realloc
    - min_int
    - memset
    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:52198,1
    - Dst: js_weakref_new
      Src: /src/gpac/src/quickjs/quickjs.c:52204,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52206,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:52208,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:52211,1
    - Dst: map_hash_resize
      Src: /src/gpac/src/quickjs/quickjs.c:52214,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52217
      start: 52192
    functionDepth: 8
    functionLinenumber: 52192
    functionLinenumberEnd: 52217
    functionName: map_add_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_hash_key
    - list_add_tail
    - js_weakref_new
    - js_malloc
    - JS_DupValue
    - 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:52223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52228
      start: 52219
    functionDepth: 9
    functionLinenumber: 52219
    functionLinenumberEnd: 52228
    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:52237,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:52239,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:52241,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:52243,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:52244,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - rt
    - s
    - mr
    argTypes:
    - JSRuntime*
    - JSMapState*
    - JSMapRecord*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52252
      start: 52231
    functionDepth: 5
    functionLinenumber: 52231
    functionLinenumberEnd: 52252
    functionName: map_delete_record_internal
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_del
    - js_weakref_free
    - js_free_rt
    - 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:52258,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:52259,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:52260,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - mr
    argTypes:
    - JSRuntime*
    - JSMapRecord*
    assertStmts:
    - condition: (mr->empty)
      pos:
        line_end: 52257
        line_start: 52257
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 52262
      start: 52254
    functionDepth: 4
    functionLinenumber: 52254
    functionLinenumberEnd: 52262
    functionName: map_decref_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - assert
    - js_free_rt
    - 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:52266,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:52271,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52272,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:52273,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:52276,1
    - Dst: map_delete_record_internal
      Src: /src/gpac/src/quickjs/quickjs.c:52291,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - rt
    - wh
    argTypes:
    - JSRuntime*
    - JSWeakRefHeader*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52294
      start: 52264
    functionDepth: 6
    functionLinenumber: 52264
    functionLinenumberEnd: 52294
    functionName: map_delete_weakrefs
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - map_hash_key
    - js_weakref_is_live
    - list_entry
    - container_of
    - map_delete_record_internal
    - list_for_each_safe
    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:52299,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:52305,1
    - Dst: js_weakref_is_target
      Src: /src/gpac/src/quickjs/quickjs.c:52306,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52307,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:52312,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52314,1
    - Dst: map_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:52316,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52320,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52321,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: 52322
      start: 52296
    functionDepth: 14
    functionLinenumber: 52296
    functionLinenumberEnd: 52322
    functionName: js_map_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - map_normalize_key_const
    - JS_GetOpaque2
    - JS_FreeValue
    - map_add_record
    - js_weakref_is_target
    - map_find_record
    - JS_DupValue
    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:52327,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:52333,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:52334,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52338,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: 52339
      start: 52324
    functionDepth: 6
    functionLinenumber: 52324
    functionLinenumberEnd: 52339
    functionName: js_map_get
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_normalize_key_const
    - JS_GetOpaque2
    - JS_DupValue
    - 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:52347,1
    - Dst: map_hash_key
      Src: /src/gpac/src/quickjs/quickjs.c:52349,1
    - Dst: js_weakref_is_live
      Src: /src/gpac/src/quickjs/quickjs.c:52355,1
    - Dst: js_same_value_zero
      Src: /src/gpac/src/quickjs/quickjs.c:52358,1
    - Dst: map_delete_record_internal
      Src: /src/gpac/src/quickjs/quickjs.c:52367,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - ctx
    - s
    - key
    argTypes:
    - JSContext*
    - JSMapState*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52369
      start: 52342
    functionDepth: 6
    functionLinenumber: 52342
    functionLinenumberEnd: 52369
    functionName: map_delete_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_hash_key
    - map_normalize_key_const
    - js_weakref_is_live
    - 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:52376,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:52383,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52384,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:52385,1
    - Dst: js_weakref_is_target
      Src: /src/gpac/src/quickjs/quickjs.c:52386,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52387,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:52388,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:52391,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52392,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:52394,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52396,1
    - Dst: map_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:52398,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52400,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52405,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: 52406
      start: 52371
    functionDepth: 24
    functionLinenumber: 52371
    functionLinenumberEnd: 52406
    functionName: js_map_getOrInsert
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - map_normalize_key_const
    - JS_GetOpaque2
    - JS_FreeValue
    - JS_IsFunction
    - JS_Call
    - map_add_record
    - js_weakref_is_target
    - map_find_record
    - JS_IsException
    - JS_DupValue
    - map_delete_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:52411,1
    - Dst: map_normalize_key_const
      Src: /src/gpac/src/quickjs/quickjs.c:52417,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:52418,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:52419,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: 52420
      start: 52408
    functionDepth: 6
    functionLinenumber: 52408
    functionLinenumberEnd: 52420
    functionName: js_map_has
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - map_normalize_key_const
    - JS_GetOpaque2
    - 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:52425,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:52428,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: 52429
      start: 52422
    functionDepth: 7
    functionLinenumber: 52422
    functionLinenumberEnd: 52429
    functionName: js_map_delete
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - map_delete_record
    - JS_GetOpaque2
    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:52434,1
    - Dst: memset
      Src: /src/gpac/src/quickjs/quickjs.c:52442,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:52444,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52445,1
    - Dst: map_delete_record_internal
      Src: /src/gpac/src/quickjs/quickjs.c:52446,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: 52449
      start: 52431
    functionDepth: 6
    functionLinenumber: 52431
    functionLinenumberEnd: 52449
    functionName: js_map_clear
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - list_entry
    - map_delete_record_internal
    - memset
    - list_for_each_safe
    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:52453,1
    - Dst: JS_NewUint32
      Src: /src/gpac/src/quickjs/quickjs.c:52456,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ctx
    - this_val
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52457
      start: 52451
    functionDepth: 3
    functionLinenumber: 52451
    functionLinenumberEnd: 52457
    functionName: js_map_get_size
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewUint32
    - JS_GetOpaque2
    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:52462,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:52475,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52481,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52485,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52489,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:52495,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52496,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52498,1
    - Dst: map_decref_record
      Src: /src/gpac/src/quickjs/quickjs.c:52500,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52501,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52503,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: 52509
      start: 52459
    functionDepth: 24
    functionLinenumber: 52459
    functionLinenumberEnd: 52509
    functionName: js_map_forEach
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - list_entry
    - map_decref_record
    - JS_FreeValue
    - JS_Call
    - check_function
    - JS_DupValue
    - JS_IsException
    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:52522,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:52525,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52526,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:52535,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52536,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:52540,1
    - Dst: JS_NewObjectProto
      Src: /src/gpac/src/quickjs/quickjs.c:52542,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52544,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52549,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:52552,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52553,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:52559,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:52560,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52561,1
    - Dst: js_map_get
      Src: /src/gpac/src/quickjs/quickjs.c:52565,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:52567,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52568,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:52572,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52574,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:52577,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:52578,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52579,1
    - Dst: js_map_set
      Src: /src/gpac/src/quickjs/quickjs.c:52584,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52585,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52587,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52589,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:52590,1
    - Dst: js_array_push
      Src: /src/gpac/src/quickjs/quickjs.c:52596,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52597,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52601,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52602,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:52603,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52604,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52611,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52612,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:52616,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:52618,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52619,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52620,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52621,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52622,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52623,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52624,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: 52626
      start: 52511
    functionDepth: 26
    functionLinenumber: 52511
    functionLinenumberEnd: 52626
    functionName: js_object_groupBy
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - JS_DefinePropertyValue
    - JS_IteratorClose
    - JS_NewArray
    - JS_Call
    - check_function
    - JS_FreeAtom
    - JS_ThrowTypeError
    - js_map_get
    - js_map_constructor
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - JS_GetProperty
    - js_map_set
    - JS_GetIterator
    - JS_IteratorNext
    - JS_NewObjectProto
    - JS_IsUndefined
    - JS_ValueToAtom
    - 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:52635,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:52640,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52641,1
    - Dst: js_weakref_free
      Src: /src/gpac/src/quickjs/quickjs.c:52644,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:52646,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:52647,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:52649,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:52651,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:52653,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:52655,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52657
      start: 52628
    functionDepth: 5
    functionLinenumber: 52628
    functionLinenumberEnd: 52657
    functionName: js_map_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_weakref_free
    - JS_VALUE_GET_OBJ
    - list_entry
    - list_del
    - js_free_rt
    - JS_FreeValueRT
    - list_for_each_safe
    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:52661,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:52668,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52669,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:52671,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:52672,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52675
      start: 52659
    functionDepth: 2
    functionLinenumber: 52659
    functionLinenumberEnd: 52675
    functionName: js_map_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - JS_MarkValue
    - list_for_each
    - JS_VALUE_GET_OBJ
    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:52690,1
    - Dst: JS_IsLiveObject
      Src: /src/gpac/src/quickjs/quickjs.c:52695,1
    - Dst: map_decref_record
      Src: /src/gpac/src/quickjs/quickjs.c:52696,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:52698,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:52699,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52701
      start: 52685
    functionDepth: 5
    functionLinenumber: 52685
    functionLinenumberEnd: 52701
    functionName: js_map_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_VALUE_GET_OBJ
    - map_decref_record
    - js_free_rt
    - JS_FreeValueRT
    - JS_IsLiveObject
    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:52706,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:52711,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52713
      start: 52703
    functionDepth: 2
    functionLinenumber: 52703
    functionLinenumberEnd: 52713
    functionName: js_map_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:52725,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:52728,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52729,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:52731,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52733,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52736,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:52739,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: 52743
      start: 52715
    functionDepth: 12
    functionLinenumber: 52715
    functionLinenumberEnd: 52743
    functionName: js_create_map_iterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewObjectClass
    - JS_GetOpaque2
    - js_malloc
    - JS_SetOpaque
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    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:52754,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:52759,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:52761,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:52762,1
    - Dst: map_decref_record
      Src: /src/gpac/src/quickjs/quickjs.c:52768,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52774,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52781,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52794,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:52803,1
    - Dst: js_create_array
      Src: /src/gpac/src/quickjs/quickjs.c:52805,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: 52761
        line_start: 52761
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 52808
      start: 52745
    functionDepth: 12
    functionLinenumber: 52745
    functionLinenumberEnd: 52808
    functionName: js_map_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_create_array
    - JS_GetOpaque2
    - JS_IsUndefined
    - list_entry
    - map_decref_record
    - JS_FreeValue
    - JS_GetOpaque
    - JS_DupValue
    - assert
    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:52817,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:52824,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52825,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:52827,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:52829,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52830,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:52840,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:52845,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52846,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:52848,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52849,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:52852,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52853,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:52857,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52858,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:52860,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52861,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:52864,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:52865,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52874,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52875,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: 52880
      start: 52810
    functionDepth: 23
    functionLinenumber: 52810
    functionLinenumberEnd: 52880
    functionName: get_set_record
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_ThrowTypeError
    - JS_IsUndefined
    - JS_GetProperty
    - JS_ThrowRangeError
    - JS_FreeValue
    - JS_IsFunction
    - JS_GetOpaque
    - JS_IsException
    - JS_ToFloat64Free
    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:52890,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:52894,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52895,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:52897,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:52901,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:52902,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:52905,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52910,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 2
    argNames:
    - ctx
    - this_val
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52912
      start: 52883
    functionDepth: 25
    functionLinenumber: 52883
    functionLinenumberEnd: 52912
    functionName: js_copy_set
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - list_entry
    - list_for_each
    - js_map_constructor
    - JS_FreeValue
    - JS_GetOpaque
    - JS_IsException
    - set_add_record
    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:52927,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:52930,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:52933,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52934,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:52938,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52939,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:52943,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52944,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:52945,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:52951,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52952,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:52954,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52955,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:52959,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:52960,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:52964,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:52965,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52966,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:52968,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52975,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52976,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52977,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:52978,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: 52980
      start: 52914
    functionDepth: 24
    functionLinenumber: 52914
    functionLinenumberEnd: 52980
    functionName: js_set_isDisjointFrom
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_map_iterator_next
    - JS_GetOpaque2
    - map_normalize_key
    - JS_GetProperty
    - JS_IteratorClose
    - JS_FreeValue
    - js_create_map_iterator
    - JS_Call
    - JS_IteratorNext
    - map_find_record
    - JS_IsException
    - JS_ToBoolFree
    - get_set_record
    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:52994,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:52997,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:53002,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53003,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:53007,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53008,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53012,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53013,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:53014,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53022,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53023,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53024,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53025,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: 53027
      start: 52982
    functionDepth: 24
    functionLinenumber: 52982
    functionLinenumberEnd: 53027
    functionName: js_set_isSubsetOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_map_iterator_next
    - JS_GetOpaque2
    - JS_FreeValue
    - js_create_map_iterator
    - JS_Call
    - JS_IsException
    - JS_ToBoolFree
    - 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:53041,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:53044,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53049,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53050,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:53052,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53053,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:53057,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53058,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:53062,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:53063,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53064,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:53066,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53073,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53074,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53075,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53076,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: 53078
      start: 53029
    functionDepth: 24
    functionLinenumber: 53029
    functionLinenumberEnd: 53078
    functionName: js_set_isSupersetOf
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - map_normalize_key
    - JS_GetProperty
    - JS_IteratorClose
    - JS_FreeValue
    - JS_Call
    - JS_IteratorNext
    - map_find_record
    - JS_IsException
    - get_set_record
    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:53092,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:53095,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53098,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53099,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:53101,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53102,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:53104,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53105,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53107,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:53109,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53110,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:53114,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:53115,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53116,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:53117,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53118,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:53120,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53121,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:53127,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53128,1
    - Dst: js_map_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:53130,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53131,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53133,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:53135,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53136,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53140,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:53141,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:53143,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:53144,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53145,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:53147,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53148,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53153,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53161,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53164,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53165,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53166,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53167,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: 53169
      start: 53080
    functionDepth: 25
    functionLinenumber: 53080
    functionLinenumberEnd: 53169
    functionName: js_set_intersection
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - map_normalize_key
    - js_map_iterator_next
    - JS_GetProperty
    - js_map_constructor
    - JS_FreeValue
    - JS_Call
    - JS_GetOpaque
    - JS_IteratorNext
    - js_create_map_iterator
    - map_find_record
    - JS_IsException
    - set_add_record
    - JS_ToBoolFree
    - get_set_record
    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:53183,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:53186,1
    - Dst: js_copy_set
      Src: /src/gpac/src/quickjs/quickjs.c:53189,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53190,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53192,1
    - Dst: js_create_map_iterator
      Src: /src/gpac/src/quickjs/quickjs.c:53195,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53196,1
    - Dst: js_map_iterator_next
      Src: /src/gpac/src/quickjs/quickjs.c:53199,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53200,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53204,1
    - Dst: JS_ToBoolFree
      Src: /src/gpac/src/quickjs/quickjs.c:53205,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53207,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:53211,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53213,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53216,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53217,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:53219,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53220,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:53223,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53224,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:53228,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53229,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53234,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53237,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53238,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53239,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53240,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: 53242
      start: 53171
    functionDepth: 26
    functionLinenumber: 53171
    functionLinenumberEnd: 53242
    functionName: js_set_difference
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_copy_set
    - JS_GetOpaque2
    - js_map_iterator_next
    - JS_GetProperty
    - JS_FreeValue
    - JS_GetOpaque
    - js_create_map_iterator
    - JS_Call
    - JS_IteratorNext
    - JS_IsException
    - map_delete_record
    - JS_ToBoolFree
    - get_set_record
    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:53254,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:53257,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53259,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53263,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53264,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:53266,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53267,1
    - Dst: js_copy_set
      Src: /src/gpac/src/quickjs/quickjs.c:53269,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53270,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53272,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:53274,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53275,1
    - Dst: map_normalize_key
      Src: /src/gpac/src/quickjs/quickjs.c:53287,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:53288,1
    - Dst: map_find_record
      Src: /src/gpac/src/quickjs/quickjs.c:53289,1
    - Dst: map_delete_record
      Src: /src/gpac/src/quickjs/quickjs.c:53291,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53292,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53294,1
    - Dst: set_add_record
      Src: /src/gpac/src/quickjs/quickjs.c:53296,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53297,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53304,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53307,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53308,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53309,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: 53311
      start: 53244
    functionDepth: 26
    functionLinenumber: 53244
    functionLinenumberEnd: 53311
    functionName: js_set_symmetricDifference
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - js_copy_set
    - map_normalize_key
    - JS_GetProperty
    - JS_FreeValue
    - JS_Call
    - JS_GetOpaque
    - JS_IteratorNext
    - map_find_record
    - JS_IsException
    - set_add_record
    - map_delete_record
    - get_set_record
    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:53321,1
    - Dst: get_set_record
      Src: /src/gpac/src/quickjs/quickjs.c:53324,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53326,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53330,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53331,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:53333,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53334,1
    - Dst: js_copy_set
      Src: /src/gpac/src/quickjs/quickjs.c:53337,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53338,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:53342,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53343,1
    - Dst: js_map_set
      Src: /src/gpac/src/quickjs/quickjs.c:53347,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53348,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53349,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53351,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53355,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53358,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53359,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53360,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: 53362
      start: 53313
    functionDepth: 26
    functionLinenumber: 53313
    functionLinenumberEnd: 53362
    functionName: js_set_union
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_GetOpaque2
    - js_copy_set
    - JS_GetProperty
    - JS_FreeValue
    - js_map_set
    - JS_Call
    - JS_IteratorNext
    - JS_IsException
    - get_set_record
    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:53464,1
    - Dst: JS_NewCConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:53467,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:53470,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53473,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53475,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:53480,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53483,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53487
      start: 53456
    functionDepth: 23
    functionLinenumber: 53456
    functionLinenumberEnd: 53487
    functionName: JS_AddIntrinsicMapSet
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewObjectProtoList
    - JS_NewCConstructor
    - countof
    - JS_FreeValue
    - JS_IsException
    - 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:53529,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - promise
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53533
      start: 53527
    functionDepth: 2
    functionLinenumber: 53527
    functionLinenumberEnd: 53533
    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:53537,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53540,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - promise
    argTypes:
    - JSContext*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53541
      start: 53535
    functionDepth: 2
    functionLinenumber: 53535
    functionLinenumberEnd: 53541
    functionName: JS_PromiseResult
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_DupValue
    - JS_GetOpaque
    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:53549,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:53550,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:53551,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:53552,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - rt
    - rd
    argTypes:
    - JSRuntime*
    - JSPromiseReactionData*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53553
      start: 53546
    functionDepth: 4
    functionLinenumber: 53546
    functionLinenumberEnd: 53553
    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:53562,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/quickjs/quickjs.c:53564,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:53567,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:53570,1
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:53572,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53572,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53574,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53577,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53579,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:53581,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:53586,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53587,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53592,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 26
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts:
    - condition: (argc == 5)
      pos:
        line_end: 53561
        line_start: 53561
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 53595
      start: 53555
    functionDepth: 24
    functionLinenumber: 53555
    functionLinenumberEnd: 53595
    functionName: promise_reaction_job
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBool
    - JS_IsUndefined
    - printf
    - JS_FreeValue
    - JS_Call
    - JS_DupValue
    - JS_IsException
    - JS_GetException
    - JS_Throw
    - assert
    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: 53603
      start: 53597
    functionDepth: 0
    functionLinenumber: 53597
    functionLinenumberEnd: 53603
    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:53608,1
    - Dst: set_value
      Src: /src/gpac/src/quickjs/quickjs.c:53615,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53615,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:53618,1
    - Dst: JSRuntime*::host_promise_rejection_tracker
      Src: /src/gpac/src/quickjs/quickjs.c:53623,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:53628,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:53629,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:53633,1
    - Dst: JS_EnqueueJob
      Src: /src/gpac/src/quickjs/quickjs.c:53635,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:53636,1
    - Dst: promise_reaction_data_free
      Src: /src/gpac/src/quickjs/quickjs.c:53637,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:53640,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:53641,1
    - Dst: list_del
      Src: /src/gpac/src/quickjs/quickjs.c:53642,1
    - Dst: promise_reaction_data_free
      Src: /src/gpac/src/quickjs/quickjs.c:53643,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: 53645
      start: 53605
    functionDepth: 8
    functionLinenumber: 53605
    functionLinenumberEnd: 53645
    functionName: fulfill_or_reject_promise
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JSRuntime*::host_promise_rejection_tracker
    - promise_reaction_data_free
    - printf
    - list_entry
    - list_del
    - JS_GetOpaque
    - set_value
    - JS_DupValue
    - JS_EnqueueJob
    - list_for_each_safe
    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:53650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ctx
    - promise
    - value
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53651
      start: 53647
    functionDepth: 9
    functionLinenumber: 53647
    functionLinenumberEnd: 53651
    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:53660,1
    - Dst: assert
      Src: /src/gpac/src/quickjs/quickjs.c:53662,1
    - Dst: js_create_resolving_functions
      Src: /src/gpac/src/quickjs/quickjs.c:53666,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53668,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53669,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:53670,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53671,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53672,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53674,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53675,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - ctx
    - argc
    - argv
    argTypes:
    - JSContext*
    - int
    - JSValueConst*
    assertStmts:
    - condition: (argc == 3)
      pos:
        line_end: 53661
        line_start: 53661
        source_file: /src/gpac/src/quickjs/quickjs.c
    constantsTouched: []
    func_position:
      end: 53677
      start: 53653
    functionDepth: 24
    functionLinenumber: 53653
    functionLinenumberEnd: 53677
    functionName: js_promise_resolve_thenable_job
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - printf
    - JS_FreeValue
    - JS_Call
    - JS_IsException
    - JS_GetException
    - assert
    - js_create_resolving_functions
    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:53683,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - rt
    - sr
    argTypes:
    - JSRuntime*
    - JSPromiseFunctionDataResolved*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53685
      start: 53679
    functionDepth: 4
    functionLinenumber: 53679
    functionLinenumberEnd: 53685
    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:53697,1
    - Dst: JS_NewObjectProtoClass
      Src: /src/gpac/src/quickjs/quickjs.c:53704,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53706,1
    - Dst: js_malloc
      Src: /src/gpac/src/quickjs/quickjs.c:53708,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53710,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53714,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53720,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53721,1
    - Dst: js_function_set_properties
      Src: /src/gpac/src/quickjs/quickjs.c:53722,1
    - Dst: js_promise_resolve_function_free_resolved
      Src: /src/gpac/src/quickjs/quickjs.c:53725,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 3
    argNames:
    - ctx
    - resolving_funcs
    - promise
    argTypes:
    - JSContext*
    - JSValue*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53727
      start: 53687
    functionDepth: 11
    functionLinenumber: 53687
    functionLinenumberEnd: 53727
    functionName: js_create_resolving_functions
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_promise_resolve_function_free_resolved
    - js_function_set_properties
    - js_malloc
    - JS_SetOpaque
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - JS_NewObjectProtoClass
    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:53731,1
    - Dst: js_promise_resolve_function_free_resolved
      Src: /src/gpac/src/quickjs/quickjs.c:53733,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:53734,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:53735,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53737
      start: 53729
    functionDepth: 5
    functionLinenumber: 53729
    functionLinenumberEnd: 53737
    functionName: js_promise_resolve_function_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_promise_resolve_function_free_resolved
    - js_free_rt
    - JS_FreeValueRT
    - JS_VALUE_GET_OBJ
    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:53742,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:53744,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53746
      start: 53739
    functionDepth: 2
    functionLinenumber: 53739
    functionLinenumberEnd: 53746
    functionName: js_promise_resolve_function_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_VALUE_GET_OBJ
    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:53754,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:53770,1
    - Dst: JS_DumpValue
      Src: /src/gpac/src/quickjs/quickjs.c:53771,1
    - Dst: printf
      Src: /src/gpac/src/quickjs/quickjs.c:53772,1
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:53774,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:53776,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:53777,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:53780,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53781,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:53784,1
    - Dst: reject_promise
      Src: /src/gpac/src/quickjs/quickjs.c:53785,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53786,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:53787,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53788,1
    - Dst: fulfill_or_reject_promise
      Src: /src/gpac/src/quickjs/quickjs.c:53790,1
    - Dst: JS_EnqueueJob
      Src: /src/gpac/src/quickjs/quickjs.c:53795,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53796,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: 53799
      start: 53748
    functionDepth: 23
    functionLinenumber: 53748
    functionLinenumberEnd: 53799
    functionName: js_promise_resolve_function_call
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - printf
    - JS_GetProperty
    - fulfill_or_reject_promise
    - JS_FreeValue
    - JS_IsFunction
    - JS_EnqueueJob
    - reject_promise
    - JS_IsObject
    - JS_IsException
    - JS_GetException
    - js_same_value
    - JS_DumpValue
    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,\n
      \                                               int flags)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53803,1
    - Dst: list_for_each_safe
      Src: /src/gpac/src/quickjs/quickjs.c:53810,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:53812,1
    - Dst: promise_reaction_data_free
      Src: /src/gpac/src/quickjs/quickjs.c:53813,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:53816,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:53817,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53818
      start: 53801
    functionDepth: 5
    functionLinenumber: 53801
    functionLinenumberEnd: 53818
    functionName: js_promise_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - promise_reaction_data_free
    - list_entry
    - JS_GetOpaque
    - js_free_rt
    - JS_FreeValueRT
    - list_for_each_safe
    linkageType: ''
    returnType: void
    signature: void js_promise_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53823,1
    - Dst: list_for_each
      Src: /src/gpac/src/quickjs/quickjs.c:53830,1
    - Dst: list_entry
      Src: /src/gpac/src/quickjs/quickjs.c:53832,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:53833,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:53834,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:53835,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:53838,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53839
      start: 53820
    functionDepth: 2
    functionLinenumber: 53820
    functionLinenumberEnd: 53839
    functionName: js_promise_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - list_entry
    - JS_MarkValue
    - list_for_each
    - JS_GetOpaque
    linkageType: ''
    returnType: void
    signature: "void js_promise_mark(JSRuntime *rt, JSValueConst val,\n                            JS_MarkFunc
      *mark_func)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:53851,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:53853,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53854,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:53856,1
    - Dst: init_list_head
      Src: /src/gpac/src/quickjs/quickjs.c:53862,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53864,1
    - Dst: js_create_resolving_functions
      Src: /src/gpac/src/quickjs/quickjs.c:53865,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53867,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53868,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:53870,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53871,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53872,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53873,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53875,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53877,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53878,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53879,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53882,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53883,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53885,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53887
      start: 53841
    functionDepth: 24
    functionLinenumber: 53841
    functionLinenumberEnd: 53887
    functionName: js_promise_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - init_list_head
    - js_mallocz
    - JS_SetOpaque
    - JS_FreeValue
    - js_create_from_ctor
    - JS_Call
    - check_function
    - JS_IsException
    - JS_GetException
    - js_create_resolving_functions
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                     int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:53897,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:53898,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    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: 53902
      start: 53889
    functionDepth: 14
    functionLinenumber: 53889
    functionLinenumberEnd: 53902
    functionName: js_promise_executor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_DupValue
    - JS_IsUndefined
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_executor(JSContext *ctx,\n                                   JSValueConst
      this_val,\n                                   int argc, JSValueConst *argv,\n
      \                                  int magic, JSValue *func_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:53910,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53912
      start: 53904
    functionDepth: 12
    functionLinenumber: 53904
    functionLinenumberEnd: 53912
    functionName: js_promise_executor_new
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewCFunctionData
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_promise_executor_new(JSContext *ctx)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: js_promise_executor_new
      Src: /src/gpac/src/quickjs/quickjs.c:53922,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53923,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:53926,1
    - Dst: js_promise_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:53927,1
    - Dst: JS_CallConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:53930,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53933,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53935,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:53937,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53941,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53942,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53945,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53946,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - ctx
    - resolving_funcs
    - ctor
    argTypes:
    - JSContext*
    - JSValue*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53948
      start: 53914
    functionDepth: 25
    functionLinenumber: 53914
    functionLinenumberEnd: 53948
    functionName: js_new_promise_capability
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_promise_executor_new
    - JS_CallConstructor
    - JS_IsUndefined
    - JS_FreeValue
    - JS_GetOpaque
    - check_function
    - JS_DupValue
    - JS_IsException
    - js_promise_constructor
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_new_promise_capability(JSContext *ctx,\n                                         JSValue
      *resolving_funcs,\n                                         JSValueConst ctor)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_new_promise_capability
      Src: /src/gpac/src/quickjs/quickjs.c:53952,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - resolving_funcs
    argTypes:
    - JSContext*
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53953
      start: 53950
    functionDepth: 26
    functionLinenumber: 53950
    functionLinenumberEnd: 53953
    functionName: JS_NewPromiseCapability
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 5
    functionsReached:
    - js_new_promise_capability
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_NewPromiseCapability(JSContext *ctx, JSValue *resolving_funcs)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:53961,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:53962,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:53963,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:53966,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53967,1
    - Dst: js_same_value
      Src: /src/gpac/src/quickjs/quickjs.c:53969,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53970,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:53972,1
    - Dst: js_new_promise_capability
      Src: /src/gpac/src/quickjs/quickjs.c:53974,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53975,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:53977,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53978,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53979,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53980,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53981,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:53984,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53986
      start: 53955
    functionDepth: 26
    functionLinenumber: 53955
    functionLinenumberEnd: 53986
    functionName: js_promise_resolve
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - js_new_promise_capability
    - JS_GetProperty
    - JS_FreeValue
    - JS_GetOpaque
    - JS_ThrowTypeErrorNotAnObject
    - JS_Call
    - JS_DupValue
    - JS_IsException
    - JS_IsObject
    - js_same_value
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_resolve(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv, int magic)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:53993,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:53994,1
    - Dst: js_new_promise_capability
      Src: /src/gpac/src/quickjs/quickjs.c:53995,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53996,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:53998,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:53999,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:54001,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:54006,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:54011,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54017,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54018,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54019,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54020,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54022
      start: 53988
    functionDepth: 26
    functionLinenumber: 53988
    functionLinenumberEnd: 54022
    functionName: js_promise_withResolvers
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DefinePropertyValue
    - js_new_promise_capability
    - JS_NewObject
    - JS_FreeValue
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    - JS_IsObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_withResolvers(JSContext *ctx,\n                                        JSValueConst
      this_val,\n                                        int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:54030,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:54031,1
    - Dst: js_new_promise_capability
      Src: /src/gpac/src/quickjs/quickjs.c:54032,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54033,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54035,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54036,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:54038,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54040,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54041,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54042,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54043,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54044,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54045,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54048,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54050
      start: 54024
    functionDepth: 26
    functionLinenumber: 54024
    functionLinenumberEnd: 54050
    functionName: js_promise_try
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_promise_capability
    - JS_FreeValue
    - JS_Call
    - JS_ThrowTypeErrorNotAnObject
    - JS_IsException
    - JS_IsObject
    - JS_GetException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_try(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:54059,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54060,1
    - Dst: JS_ToInt32Free
      Src: /src/gpac/src/quickjs/quickjs.c:54062,1
    - Dst: JS_SetPropertyUint32
      Src: /src/gpac/src/quickjs/quickjs.c:54065,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:54066,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - ctx
    - resolve_element_env
    - addend
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54069
      start: 54052
    functionDepth: 22
    functionLinenumber: 54052
    functionLinenumberEnd: 54069
    functionName: remainingElementsCount_add
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToInt32Free
    - JS_SetPropertyUint32
    - JS_IsException
    - JS_NewInt32
    - JS_GetPropertyUint32
    linkageType: ''
    returnType: __exception
    signature: "__exception remainingElementsCount_add(JSContext *ctx,\n                                                  JSValueConst
      resolve_element_env,\n                                                  int
      addend)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToBool
      Src: /src/gpac/src/quickjs/quickjs.c:54083,1
    - Dst: JS_ToInt32
      Src: /src/gpac/src/quickjs/quickjs.c:54090,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:54094,1
    - Dst: JS_NewObject
      Src: /src/gpac/src/quickjs/quickjs.c:54099,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54100,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:54102,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54103,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:54105,1
    - Dst: JS_DefinePropertyValue
      Src: /src/gpac/src/quickjs/quickjs.c:54109,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54111,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54114,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54118,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:54120,1
    - Dst: remainingElementsCount_add
      Src: /src/gpac/src/quickjs/quickjs.c:54124,1
    - Dst: js_aggregate_error_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:54130,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54131,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54133,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54134,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54136,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54138,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54140,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 46
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54143
      start: 54075
    functionDepth: 24
    functionLinenumber: 54075
    functionLinenumberEnd: 54143
    functionName: js_promise_all_resolve_element
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_ToBool
    - JS_DefinePropertyValue
    - js_new_string8
    - JS_NewObject
    - js_aggregate_error_constructor
    - JS_FreeValue
    - remainingElementsCount_add
    - JS_Call
    - JS_DefinePropertyValueUint32
    - JS_DupValue
    - JS_IsException
    - JS_ToInt32
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_all_resolve_element(JSContext *ctx,\n                                              JSValueConst
      this_val,\n                                              int argc, JSValueConst
      *argv,\n                                              int magic,\n                                              JSValue
      *func_data)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:54157,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:54158,1
    - Dst: js_new_promise_capability
      Src: /src/gpac/src/quickjs/quickjs.c:54159,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54160,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:54162,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54163,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:54164,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:54166,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54167,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:54170,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54171,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54173,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54174,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54176,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:54178,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54179,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:54181,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54182,1
    - Dst: JS_NewArray
      Src: /src/gpac/src/quickjs/quickjs.c:54184,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54185,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:54188,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:54189,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:54197,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54198,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54202,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54204,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54205,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:54207,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:54210,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:54212,1
    - Dst: JS_NewInt32
      Src: /src/gpac/src/quickjs/quickjs.c:54214,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:54220,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54222,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54223,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:54229,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54231,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54232,1
    - Dst: JS_DefinePropertyValueUint32
      Src: /src/gpac/src/quickjs/quickjs.c:54236,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54240,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54242,1
    - Dst: remainingElementsCount_add
      Src: /src/gpac/src/quickjs/quickjs.c:54245,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54246,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54247,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54248,1
    - Dst: JS_InvokeFree
      Src: /src/gpac/src/quickjs/quickjs.c:54254,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54255,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54256,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:54257,1
    - Dst: remainingElementsCount_add
      Src: /src/gpac/src/quickjs/quickjs.c:54262,1
    - Dst: js_aggregate_error_constructor
      Src: /src/gpac/src/quickjs/quickjs.c:54268,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54269,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54271,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54274,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:54276,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54281,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54282,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54283,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54284,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54285,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54286,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54287,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54290,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 135
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54293
      start: 54146
    functionDepth: 26
    functionLinenumber: 54146
    functionLinenumberEnd: 54293
    functionName: js_promise_all
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_promise_capability
    - JS_IteratorClose
    - JS_NewArray
    - JS_InvokeFree
    - JS_Call
    - check_function
    - JS_IsObject
    - JS_GetException
    - JS_FreeValue
    - JS_DefinePropertyValueUint32
    - JS_DupValue
    - JS_IsException
    - check_exception_free
    - JS_NewCFunctionData
    - JS_GetProperty
    - js_aggregate_error_constructor
    - JS_GetIterator
    - JS_IteratorNext
    - remainingElementsCount_add
    - JS_NewInt32
    - JS_NewBool
    - JS_ThrowTypeErrorNotAnObject
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_all(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:54303,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:54304,1
    - Dst: js_new_promise_capability
      Src: /src/gpac/src/quickjs/quickjs.c:54305,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54306,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:54308,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54309,1
    - Dst: check_function
      Src: /src/gpac/src/quickjs/quickjs.c:54310,1
    - Dst: JS_GetIterator
      Src: /src/gpac/src/quickjs/quickjs.c:54312,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54313,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:54316,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54317,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54319,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54320,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54322,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:54324,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54325,1
    - Dst: JS_IteratorNext
      Src: /src/gpac/src/quickjs/quickjs.c:54331,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54332,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54336,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54338,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54339,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:54341,1
    - Dst: JS_InvokeFree
      Src: /src/gpac/src/quickjs/quickjs.c:54344,1
    - Dst: check_exception_free
      Src: /src/gpac/src/quickjs/quickjs.c:54346,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54351,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54352,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54353,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54354,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54355,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54359,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 62
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54362
      start: 54295
    functionDepth: 26
    functionLinenumber: 54295
    functionLinenumberEnd: 54362
    functionName: js_promise_race
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_new_promise_capability
    - JS_GetProperty
    - JS_IteratorClose
    - JS_FreeValue
    - JS_GetIterator
    - JS_ThrowTypeErrorNotAnObject
    - JS_Call
    - JS_IteratorNext
    - check_function
    - JS_InvokeFree
    - JS_IsException
    - JS_IsObject
    - JS_GetException
    - check_exception_free
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_race(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:54369,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:54377,1
    - Dst: promise_reaction_data_free
      Src: /src/gpac/src/quickjs/quickjs.c:54380,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54384,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:54386,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54388,1
    - Dst: list_add_tail
      Src: /src/gpac/src/quickjs/quickjs.c:54394,1
    - Dst: JSRuntime*::host_promise_rejection_tracker
      Src: /src/gpac/src/quickjs/quickjs.c:54400,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:54409,1
    - Dst: JS_EnqueueJob
      Src: /src/gpac/src/quickjs/quickjs.c:54411,1
    - Dst: promise_reaction_data_free
      Src: /src/gpac/src/quickjs/quickjs.c:54413,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 4
    argNames:
    - ctx
    - promise
    - resolve_reject
    - cap_resolving_funcs
    argTypes:
    - JSContext*
    - JSValueConst
    - JSValueConst*
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54417
      start: 54364
    functionDepth: 8
    functionLinenumber: 54364
    functionLinenumberEnd: 54417
    functionName: perform_promise_then
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 3
    functionsReached:
    - JS_NewBool
    - list_add_tail
    - JSRuntime*::host_promise_rejection_tracker
    - promise_reaction_data_free
    - js_mallocz
    - JS_IsFunction
    - JS_GetOpaque
    - JS_DupValue
    - JS_EnqueueJob
    linkageType: ''
    returnType: __exception
    signature: "__exception perform_promise_then(JSContext *ctx,\n                                            JSValueConst
      promise,\n                                            JSValueConst *resolve_reject,\n
      \                                           JSValueConst *cap_resolving_funcs)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque2
      Src: /src/gpac/src/quickjs/quickjs.c:54426,1
    - Dst: JS_SpeciesConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:54430,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54431,1
    - Dst: js_new_promise_capability
      Src: /src/gpac/src/quickjs/quickjs.c:54433,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54434,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54435,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:54437,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54440,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54442,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: 54446
      start: 54419
    functionDepth: 26
    functionLinenumber: 54419
    functionLinenumberEnd: 54446
    functionName: js_promise_then
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 2
    functionsReached:
    - JS_GetOpaque2
    - js_new_promise_capability
    - JS_SpeciesConstructor
    - JS_FreeValue
    - perform_promise_then
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_then(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_Invoke
      Src: /src/gpac/src/quickjs/quickjs.c:54454,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: 54455
      start: 54448
    functionDepth: 25
    functionLinenumber: 54448
    functionLinenumberEnd: 54455
    functionName: js_promise_catch
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Invoke
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_catch(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54462
      start: 54457
    functionDepth: 1
    functionLinenumber: 54457
    functionLinenumberEnd: 54462
    functionName: js_promise_finally_value_thunk
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_finally_value_thunk(JSContext *ctx, JSValueConst
      this_val,\n                                              int argc, JSValueConst
      *argv,\n                                              int magic, JSValue *func_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:54468,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54468,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54469
      start: 54464
    functionDepth: 2
    functionLinenumber: 54464
    functionLinenumberEnd: 54469
    functionName: js_promise_finally_thrower
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Throw
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_finally_thrower(JSContext *ctx, JSValueConst this_val,\n
      \                                         int argc, JSValueConst *argv,\n                                          int
      magic, JSValue *func_data)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54479,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54480,1
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:54482,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54483,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54484,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:54487,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:54490,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54493,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54494,1
    - Dst: JS_InvokeFree
      Src: /src/gpac/src/quickjs/quickjs.c:54497,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54498,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54500
      start: 54471
    functionDepth: 27
    functionLinenumber: 54471
    functionLinenumberEnd: 54500
    functionName: js_promise_then_finally_func
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewCFunctionData
    - js_promise_resolve
    - JS_FreeValue
    - JS_InvokeFree
    - JS_Call
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_then_finally_func(JSContext *ctx, JSValueConst
      this_val,\n                                            int argc, JSValueConst
      *argv,\n                                            int magic, JSValue *func_data)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_SpeciesConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:54511,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54512,1
    - Dst: JS_IsFunction
      Src: /src/gpac/src/quickjs/quickjs.c:54514,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54515,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54516,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:54521,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54522,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54524,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54525,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54530,1
    - Dst: JS_Invoke
      Src: /src/gpac/src/quickjs/quickjs.c:54531,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54532,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54533,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54535
      start: 54502
    functionDepth: 25
    functionLinenumber: 54502
    functionLinenumberEnd: 54535
    functionName: js_promise_finally
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewCFunctionData
    - JS_SpeciesConstructor
    - JS_FreeValue
    - JS_IsFunction
    - JS_Invoke
    - JS_DupValue
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_promise_finally(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:54577,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:54579,1
    - Dst: JS_FreeValueRT
      Src: /src/gpac/src/quickjs/quickjs.c:54580,1
    - Dst: js_free_rt
      Src: /src/gpac/src/quickjs/quickjs.c:54581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - rt
    - val
    argTypes:
    - JSRuntime*
    - JSValue
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54583
      start: 54574
    functionDepth: 4
    functionLinenumber: 54574
    functionLinenumberEnd: 54583
    functionName: js_async_from_sync_iterator_finalizer
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_free_rt
    - JS_FreeValueRT
    - JS_GetOpaque
    linkageType: ''
    returnType: void
    signature: void js_async_from_sync_iterator_finalizer(JSRuntime *rt, JSValue val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:54589,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:54591,1
    - Dst: JS_MarkValue
      Src: /src/gpac/src/quickjs/quickjs.c:54592,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - rt
    - val
    - mark_func
    argTypes:
    - JSRuntime*
    - JSValueConst
    - JS_MarkFunc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54594
      start: 54585
    functionDepth: 2
    functionLinenumber: 54585
    functionLinenumberEnd: 54594
    functionName: js_async_from_sync_iterator_mark
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_MarkValue
    - JS_GetOpaque
    linkageType: ''
    returnType: void
    signature: "void js_async_from_sync_iterator_mark(JSRuntime *rt, JSValueConst
      val,\n                                             JS_MarkFunc *mark_func)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:54602,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54603,1
    - Dst: JS_NewObjectClass
      Src: /src/gpac/src/quickjs/quickjs.c:54605,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54606,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54607,1
    - Dst: js_mallocz
      Src: /src/gpac/src/quickjs/quickjs.c:54610,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54612,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54613,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54616,1
    - Dst: JS_SetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:54618,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - ctx
    - sync_iter
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54620
      start: 54596
    functionDepth: 12
    functionLinenumber: 54596
    functionLinenumberEnd: 54620
    functionName: JS_CreateAsyncFromSyncIterator
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewObjectClass
    - js_mallocz
    - JS_GetProperty
    - JS_SetOpaque
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    linkageType: ''
    returnType: JSValue
    signature: "JSValue JS_CreateAsyncFromSyncIterator(JSContext *ctx,\n                                              JSValueConst
      sync_iter)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: js_create_iterator_result
      Src: /src/gpac/src/quickjs/quickjs.c:54627,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54627,1
    - Dst: JS_ToBool
      Src: /src/gpac/src/quickjs/quickjs.c:54628,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54629
      start: 54622
    functionDepth: 21
    functionLinenumber: 54622
    functionLinenumberEnd: 54629
    functionName: js_async_from_sync_iterator_unwrap
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToBool
    - js_create_iterator_result
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_from_sync_iterator_unwrap(JSContext *ctx,\n                                                  JSValueConst
      this_val,\n                                                  int argc, JSValueConst
      *argv,\n                                                  int magic, JSValue
      *func_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:54637,1
    - Dst: JS_NewBool
      Src: /src/gpac/src/quickjs/quickjs.c:54639,1
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:54641,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ctx
    - done
    argTypes:
    - JSContext*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54643
      start: 54631
    functionDepth: 12
    functionLinenumber: 54631
    functionLinenumberEnd: 54643
    functionName: js_async_from_sync_iterator_unwrap_func_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewBool
    - JS_NewCFunctionData
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_from_sync_iterator_unwrap_func_create(JSContext *ctx,\n
      \                                                             BOOL done)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_Throw
      Src: /src/gpac/src/quickjs/quickjs.c:54650,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54650,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:54651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 6
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    - func_data
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    - JSValue*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54653
      start: 54645
    functionDepth: 16
    functionLinenumber: 54645
    functionLinenumberEnd: 54653
    functionName: js_async_from_sync_iterator_close_wrap
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_Throw
    - JS_IteratorClose
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_from_sync_iterator_close_wrap(JSContext *ctx,\n                                                      JSValueConst
      this_val,\n                                                      int argc, JSValueConst
      *argv,\n                                                      int magic, JSValue
      *func_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewCFunctionData
      Src: /src/gpac/src/quickjs/quickjs.c:54657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ctx
    - sync_iter
    argTypes:
    - JSContext*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54659
      start: 54655
    functionDepth: 12
    functionLinenumber: 54655
    functionLinenumberEnd: 54659
    functionName: js_async_from_sync_iterator_close_wrap_func_create
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewCFunctionData
    linkageType: ''
    returnType: JSValue
    signature: JSValue js_async_from_sync_iterator_close_wrap_func_create(JSContext
      *ctx, JSValueConst sync_iter)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewPromiseCapability
      Src: /src/gpac/src/quickjs/quickjs.c:54670,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54671,1
    - Dst: JS_GetOpaque
      Src: /src/gpac/src/quickjs/quickjs.c:54673,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:54675,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54680,1
    - Dst: JS_GetProperty
      Src: /src/gpac/src/quickjs/quickjs.c:54682,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54685,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:54687,1
    - Dst: JS_IsNull
      Src: /src/gpac/src/quickjs/quickjs.c:54687,1
    - Dst: js_create_iterator_result
      Src: /src/gpac/src/quickjs/quickjs.c:54689,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:54689,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:54693,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:54695,1
    - Dst: JS_IteratorNext2
      Src: /src/gpac/src/quickjs/quickjs.c:54700,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54702,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54703,1
    - Dst: JS_IteratorGetCompleteValue
      Src: /src/gpac/src/quickjs/quickjs.c:54707,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54708,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54709,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54713,1
    - Dst: js_promise_resolve
      Src: /src/gpac/src/quickjs/quickjs.c:54719,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54721,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54723,1
    - Dst: JS_IteratorClose
      Src: /src/gpac/src/quickjs/quickjs.c:54725,1
    - Dst: JS_GetException
      Src: /src/gpac/src/quickjs/quickjs.c:54728,1
    - Dst: JS_Call
      Src: /src/gpac/src/quickjs/quickjs.c:54731,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54733,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54734,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54735,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54736,1
    - Dst: js_async_from_sync_iterator_unwrap_func_create
      Src: /src/gpac/src/quickjs/quickjs.c:54741,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54742,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54743,1
    - Dst: js_async_from_sync_iterator_close_wrap_func_create
      Src: /src/gpac/src/quickjs/quickjs.c:54750,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54751,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54752,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54753,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54757,1
    - Dst: perform_promise_then
      Src: /src/gpac/src/quickjs/quickjs.c:54758,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54761,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54762,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54763,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54764,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54765,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54767,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54773,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54774,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54775,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54776,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 104
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54778
      start: 54661
    functionDepth: 27
    functionLinenumber: 54661
    functionLinenumberEnd: 54778
    functionName: js_async_from_sync_iterator_next
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewPromiseCapability
    - JS_IteratorClose
    - JS_Call
    - JS_IsNull
    - JS_GetException
    - JS_IteratorNext2
    - JS_IteratorGetCompleteValue
    - JS_ThrowTypeError
    - js_async_from_sync_iterator_unwrap_func_create
    - JS_FreeValue
    - JS_DupValue
    - JS_IsException
    - js_promise_resolve
    - JS_GetProperty
    - js_create_iterator_result
    - JS_IsUndefined
    - js_async_from_sync_iterator_close_wrap_func_create
    - perform_promise_then
    - JS_GetOpaque
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_async_from_sync_iterator_next(JSContext *ctx, JSValueConst
      this_val,\n                                                int argc, JSValueConst
      *argv,\n                                                int magic)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsRegisteredClass
      Src: /src/gpac/src/quickjs/quickjs.c:54819,1
    - Dst: init_class_range
      Src: /src/gpac/src/quickjs/quickjs.c:54820,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54821,1
    - Dst: JS_NewCConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:54832,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54835,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54836,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54838,1
    - Dst: JS_NewCConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:54844,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54848,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54850,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54852,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:54856,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54858,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54859,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:54864,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54866,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54867,1
    - Dst: JS_NewObjectProtoList
      Src: /src/gpac/src/quickjs/quickjs.c:54872,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54874,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54875,1
    - Dst: JS_NewCConstructor
      Src: /src/gpac/src/quickjs/quickjs.c:54880,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:54884,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54886,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:54888,1
    - Dst: JS_SetConstructor2
      Src: /src/gpac/src/quickjs/quickjs.c:54890,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 1
    argNames:
    - ctx
    argTypes:
    - JSContext*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54893
      start: 54813
    functionDepth: 23
    functionLinenumber: 54813
    functionLinenumberEnd: 54893
    functionName: JS_AddIntrinsicPromise
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - JS_NewObjectProtoList
    - JS_NewCConstructor
    - countof
    - JS_SetConstructor2
    - JS_FreeValue
    - JS_IsRegisteredClass
    - init_class_range
    - JS_IsException
    linkageType: ''
    returnType: int
    signature: int JS_AddIntrinsicPromise(JSContext *ctx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: from_hex
      Src: /src/gpac/src/quickjs/quickjs.c:54900,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:54900,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - p
    - k
    - n
    argTypes:
    - JSString*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54905
      start: 54897
    functionDepth: 1
    functionLinenumber: 54897
    functionLinenumberEnd: 54905
    functionName: string_get_hex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get
    - from_hex
    linkageType: ''
    returnType: int
    signature: int string_get_hex(JSString *p, int k, int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/quickjs/quickjs.c:54908,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54909
      start: 54907
    functionDepth: 0
    functionLinenumber: 54907
    functionLinenumberEnd: 54909
    functionName: isURIReserved
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memchr
    linkageType: ''
    returnType: int
    signature: int isURIReserved(int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: format
      Src: /src/gpac/src/quickjs/quickjs.c:54914,1
    - Dst: va_start
      Src: /src/gpac/src/quickjs/quickjs.c:54919,1
    - Dst: JS_ThrowError
      Src: /src/gpac/src/quickjs/quickjs.c:54920,1
    - Dst: va_end
      Src: /src/gpac/src/quickjs/quickjs.c:54921,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ctx
    - fmt
    argTypes:
    - JSContext*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54923
      start: 54914
    functionDepth: 13
    functionLinenumber: 54914
    functionLinenumberEnd: 54923
    functionName: js_throw_URIError
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowError
    - va_end
    - format
    - va_start
    linkageType: ''
    returnType: int
    signature: int js_throw_URIError(JSContext *ctx, const char *fmt, ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:54928,1
    - Dst: js_throw_URIError
      Src: /src/gpac/src/quickjs/quickjs.c:54929,1
    - Dst: string_get_hex
      Src: /src/gpac/src/quickjs/quickjs.c:54930,1
    - Dst: js_throw_URIError
      Src: /src/gpac/src/quickjs/quickjs.c:54931,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - ctx
    - p
    - k
    argTypes:
    - JSContext*
    - JSString*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54934
      start: 54925
    functionDepth: 14
    functionLinenumber: 54925
    functionLinenumberEnd: 54934
    functionName: hex_decode
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get
    - string_get_hex
    - js_throw_URIError
    linkageType: ''
    returnType: int
    signature: int hex_decode(JSContext *ctx, JSString *p, int k)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:54944,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:54945,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:54948,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:54950,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:54952,1
    - Dst: hex_decode
      Src: /src/gpac/src/quickjs/quickjs.c:54954,1
    - Dst: isURIReserved
      Src: /src/gpac/src/quickjs/quickjs.c:54959,1
    - Dst: hex_decode
      Src: /src/gpac/src/quickjs/quickjs.c:54983,1
    - Dst: is_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:54993,1
    - Dst: js_throw_URIError
      Src: /src/gpac/src/quickjs/quickjs.c:54994,1
    - Dst: string_buffer_putc
      Src: /src/gpac/src/quickjs/quickjs.c:55001,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55003,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:55004,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55007,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:55008,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 69
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - isComponent
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55010
      start: 54936
    functionDepth: 21
    functionLinenumber: 54936
    functionLinenumberEnd: 55010
    functionName: js_global_decodeURI
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - js_throw_URIError
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - is_surrogate
    - string_buffer_free
    - hex_decode
    - JS_FreeValue
    - string_get
    - JS_ToString
    - JS_IsException
    - isURIReserved
    - string_buffer_init
    - string_buffer_putc
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_global_decodeURI(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv, int isComponent)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/quickjs/quickjs.c:55019,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55020
      start: 55012
    functionDepth: 0
    functionLinenumber: 55012
    functionLinenumberEnd: 55020
    functionName: isUnescaped
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memchr
    linkageType: ''
    returnType: int
    signature: int isUnescaped(int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memchr
      Src: /src/gpac/src/quickjs/quickjs.c:55027,1
    - Dst: isURIReserved
      Src: /src/gpac/src/quickjs/quickjs.c:55028,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 2
    argCount: 2
    argNames:
    - c
    - isComponent
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55029
      start: 55022
    functionDepth: 1
    functionLinenumber: 55022
    functionLinenumberEnd: 55029
    functionName: isURIUnescaped
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - memchr
    - isURIReserved
    linkageType: ''
    returnType: int
    signature: int isURIUnescaped(int c, int isComponent)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: string_buffer_write8
      Src: /src/gpac/src/quickjs/quickjs.c:55044,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - b
    - c
    argTypes:
    - StringBuffer*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55045
      start: 55031
    functionDepth: 10
    functionLinenumber: 55031
    functionLinenumberEnd: 55045
    functionName: encodeURI_hex
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_write8
    linkageType: ''
    returnType: int
    signature: int encodeURI_hex(StringBuffer *b, int c)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:55056,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:55057,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:55060,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:55061,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:55063,1
    - Dst: isURIUnescaped
      Src: /src/gpac/src/quickjs/quickjs.c:55065,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:55066,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:55068,1
    - Dst: js_throw_URIError
      Src: /src/gpac/src/quickjs/quickjs.c:55069,1
    - Dst: is_hi_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:55071,1
    - Dst: js_throw_URIError
      Src: /src/gpac/src/quickjs/quickjs.c:55073,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:55076,1
    - Dst: is_lo_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:55078,1
    - Dst: js_throw_URIError
      Src: /src/gpac/src/quickjs/quickjs.c:55079,1
    - Dst: from_surrogate
      Src: /src/gpac/src/quickjs/quickjs.c:55082,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55085,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55089,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55092,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55094,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55095,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55097,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55099,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55103,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:55104,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55107,1
    - Dst: string_buffer_free
      Src: /src/gpac/src/quickjs/quickjs.c:55108,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 57
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - isComponent
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55110
      start: 55047
    functionDepth: 21
    functionLinenumber: 55047
    functionLinenumberEnd: 55110
    functionName: js_global_encodeURI
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc16
    - js_throw_URIError
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - string_buffer_free
    - JS_FreeValue
    - is_lo_surrogate
    - string_get
    - from_surrogate
    - is_hi_surrogate
    - JS_ToString
    - JS_IsException
    - isURIUnescaped
    - encodeURI_hex
    - string_buffer_init
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_global_encodeURI(JSContext *ctx, JSValueConst this_val,\n
      \                                  int argc, JSValueConst *argv,\n                                   int
      isComponent)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:55120,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:55121,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:55124,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:55125,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:55127,1
    - Dst: isUnescaped
      Src: /src/gpac/src/quickjs/quickjs.c:55128,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:55129,1
    - Dst: encodeURI_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55131,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55134,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:55135,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: 55136
      start: 55112
    functionDepth: 21
    functionLinenumber: 55112
    functionLinenumberEnd: 55136
    functionName: js_global_escape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_buffer_putc16
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - isUnescaped
    - JS_FreeValue
    - string_get
    - encodeURI_hex
    - JS_ToString
    - JS_IsException
    - string_buffer_init
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_global_escape(JSContext *ctx, JSValueConst this_val,\n
      \                               int argc, JSValueConst *argv)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:55146,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:55147,1
    - Dst: string_buffer_init
      Src: /src/gpac/src/quickjs/quickjs.c:55150,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:55151,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:55153,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:55156,1
    - Dst: string_get_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55157,1
    - Dst: string_get_hex
      Src: /src/gpac/src/quickjs/quickjs.c:55162,1
    - Dst: string_buffer_putc16
      Src: /src/gpac/src/quickjs/quickjs.c:55167,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55169,1
    - Dst: string_buffer_end
      Src: /src/gpac/src/quickjs/quickjs.c:55170,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55171
      start: 55138
    functionDepth: 21
    functionLinenumber: 55138
    functionLinenumberEnd: 55171
    functionName: js_global_unescape
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get_hex
    - string_buffer_putc16
    - string_buffer_end
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - string_get
    - JS_ToString
    - JS_IsException
    - string_buffer_init
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_global_unescape(JSContext *ctx, JSValueConst this_val,\n
      \                                 int argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int64_t
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55200
      start: 55196
    functionDepth: 0
    functionLinenumber: 55196
    functionLinenumberEnd: 55200
    functionName: math_mod
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int64_t
    signature: int64_t math_mod(int64_t a, int64_t b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int64_t
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55206
      start: 55202
    functionDepth: 0
    functionLinenumber: 55202
    functionLinenumberEnd: 55206
    functionName: floor_div
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int64_t
    signature: int64_t floor_div(int64_t a, int64_t b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:55213,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:55214,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:55215,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55216,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:55218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 3
    argNames:
    - ctx
    - valp
    - this_val
    argTypes:
    - JSContext*
    - double*
    - JSValueConst
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55220
      start: 55211
    functionDepth: 24
    functionLinenumber: 55211
    functionLinenumberEnd: 55220
    functionName: JS_ThisTimeValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_ToFloat64
    - JS_VALUE_GET_OBJ
    - JS_IsNumber
    - JS_VALUE_GET_TAG
    linkageType: ''
    returnType: __exception
    signature: __exception JS_ThisTimeValue(JSContext *ctx, double *valp, JSValueConst
      this_val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:55224,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:55225,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55227,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55228,1
    - Dst: JS_DupValue
      Src: /src/gpac/src/quickjs/quickjs.c:55229,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:55232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - ctx
    - this_val
    - v
    argTypes:
    - JSContext*
    - JSValueConst
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55233
      start: 55222
    functionDepth: 14
    functionLinenumber: 55222
    functionLinenumberEnd: 55233
    functionName: JS_SetThisTimeValue
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - JS_ThrowTypeError
    - JS_VALUE_GET_OBJ
    - JS_FreeValue
    - JS_VALUE_GET_TAG
    - JS_DupValue
    linkageType: ''
    returnType: JSValue
    signature: JSValue JS_SetThisTimeValue(JSContext *ctx, JSValueConst this_val,
      double v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor_div
      Src: /src/gpac/src/quickjs/quickjs.c:55236,1
    - Dst: floor_div
      Src: /src/gpac/src/quickjs/quickjs.c:55237,1
    - Dst: floor_div
      Src: /src/gpac/src/quickjs/quickjs.c:55237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55238
      start: 55235
    functionDepth: 1
    functionLinenumber: 55235
    functionLinenumberEnd: 55238
    functionName: days_from_year
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - floor_div
    linkageType: ''
    returnType: int64_t
    signature: int64_t days_from_year(int64_t y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - y
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55242
      start: 55240
    functionDepth: 0
    functionLinenumber: 55240
    functionLinenumberEnd: 55242
    functionName: days_in_year
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int64_t
    signature: int64_t days_in_year(int64_t y)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: floor_div
      Src: /src/gpac/src/quickjs/quickjs.c:55247,1
    - Dst: days_from_year
      Src: /src/gpac/src/quickjs/quickjs.c:55251,1
    - Dst: days_in_year
      Src: /src/gpac/src/quickjs/quickjs.c:55254,1
    - Dst: days_in_year
      Src: /src/gpac/src/quickjs/quickjs.c:55256,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 1
    argNames:
    - days
    argTypes:
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55265
      start: 55245
    functionDepth: 2
    functionLinenumber: 55245
    functionLinenumberEnd: 55265
    functionName: year_from_days
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - days_from_year
    - days_in_year
    - floor_div
    linkageType: ''
    returnType: int64_t
    signature: int64_t year_from_days(int64_t *days)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: minimum_length
      Src: /src/gpac/src/quickjs/quickjs.c:55272,1
    - Dst: JS_ThisTimeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55277,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:55280,1
    - Dst: getTimezoneOffset
      Src: /src/gpac/src/quickjs/quickjs.c:55287,1
    - Dst: math_mod
      Src: /src/gpac/src/quickjs/quickjs.c:55293,1
    - Dst: math_mod
      Src: /src/gpac/src/quickjs/quickjs.c:55301,1
    - Dst: year_from_days
      Src: /src/gpac/src/quickjs/quickjs.c:55302,1
    - Dst: days_in_year
      Src: /src/gpac/src/quickjs/quickjs.c:55307,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 5
    argNames:
    - ctx
    - obj
    - fields
    - is_local
    - force
    argTypes:
    - JSContext*
    - JSValueConst
    - double[]
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55322
      start: 55271
    functionDepth: 25
    functionLinenumber: 55271
    functionLinenumberEnd: 55322
    functionName: get_date_fields
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_ThisTimeValue
    - days_in_year
    - getTimezoneOffset
    - minimum_length
    - math_mod
    - year_from_days
    linkageType: ''
    returnType: __exception
    signature: "__exception get_date_fields(JSContext *ctx, JSValueConst obj,\n                                       double
      fields[minimum_length(9)], int is_local, int force)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:55326,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - t
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55329
      start: 55324
    functionDepth: 0
    functionLinenumber: 55324
    functionLinenumberEnd: 55329
    functionName: time_clip
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - trunc
    linkageType: ''
    returnType: double
    signature: double time_clip(double t)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: minimum_length
      Src: /src/gpac/src/quickjs/quickjs.c:55333,1
    - Dst: floor
      Src: /src/gpac/src/quickjs/quickjs.c:55343,1
    - Dst: fmod
      Src: /src/gpac/src/quickjs/quickjs.c:55344,1
    - Dst: days_from_year
      Src: /src/gpac/src/quickjs/quickjs.c:55352,1
    - Dst: days_in_year
      Src: /src/gpac/src/quickjs/quickjs.c:55356,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:55379,1
    - Dst: getTimezoneOffset
      Src: /src/gpac/src/quickjs/quickjs.c:55385,1
    - Dst: time_clip
      Src: /src/gpac/src/quickjs/quickjs.c:55387,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 34
    argCount: 2
    argNames:
    - fields
    - is_local
    argTypes:
    - double[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55388
      start: 55333
    functionDepth: 2
    functionLinenumber: 55333
    functionLinenumberEnd: 55388
    functionName: set_date_fields
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - days_in_year
    - isfinite
    - time_clip
    - days_from_year
    - getTimezoneOffset
    - fmod
    - minimum_length
    - floor
    linkageType: ''
    returnType: double
    signature: double set_date_fields(double fields[minimum_length(7)], int is_local)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: minimum_length
      Src: /src/gpac/src/quickjs/quickjs.c:55390,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:55396,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:55398,1
    - Dst: set_date_fields
      Src: /src/gpac/src/quickjs/quickjs.c:55402,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 2
    argNames:
    - fields
    - is_local
    argTypes:
    - double[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55403
      start: 55390
    functionDepth: 3
    functionLinenumber: 55390
    functionLinenumberEnd: 55403
    functionName: set_date_fields_checked
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - minimum_length
    - trunc
    - isfinite
    - set_date_fields
    linkageType: ''
    returnType: double
    signature: double set_date_fields_checked(double fields[minimum_length(7)], int
      is_local)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_date_fields
      Src: /src/gpac/src/quickjs/quickjs.c:55414,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55423,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55424
      start: 55405
    functionDepth: 26
    functionLinenumber: 55405
    functionLinenumberEnd: 55424
    functionName: get_date_field
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - get_date_fields
    linkageType: ''
    returnType: JSValue
    signature: "JSValue get_date_field(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: get_date_fields
      Src: /src/gpac/src/quickjs/quickjs.c:55439,1
    - Dst: min_int
      Src: /src/gpac/src/quickjs/quickjs.c:55445,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55447,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:55449,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:55451,1
    - Dst: set_date_fields
      Src: /src/gpac/src/quickjs/quickjs.c:55458,1
    - Dst: JS_SetThisTimeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55460,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55461
      start: 55426
    functionDepth: 26
    functionLinenumber: 55426
    functionLinenumberEnd: 55461
    functionName: set_date_field
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToFloat64
    - isfinite
    - trunc
    - JS_SetThisTimeValue
    - min_int
    - set_date_fields
    - get_date_fields
    linkageType: ''
    returnType: JSValue
    signature: "JSValue set_date_field(JSContext *ctx, JSValueConst this_val,\n                              int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: get_date_fields
      Src: /src/gpac/src/quickjs/quickjs.c:55483,1
    - Dst: JS_ThrowRangeError
      Src: /src/gpac/src/quickjs/quickjs.c:55488,1
    - Dst: js_new_string8
      Src: /src/gpac/src/quickjs/quickjs.c:55490,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55508,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55514,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55524,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55527,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55530,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55534,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55546,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55550,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55559,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55564,1
    - Dst: snprintf
      Src: /src/gpac/src/quickjs/quickjs.c:55568,1
    - Dst: JS_NewStringLen
      Src: /src/gpac/src/quickjs/quickjs.c:55574,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 73
    argCount: 5
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    - magic
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55575
      start: 55471
    functionDepth: 26
    functionLinenumber: 55471
    functionLinenumberEnd: 55575
    functionName: get_date_string
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_new_string8
    - JS_NewStringLen
    - JS_ThrowRangeError
    - snprintf
    - get_date_fields
    linkageType: ''
    returnType: JSValue
    signature: "JSValue get_date_string(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv, int magic)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _ftime
      Src: /src/gpac/src/quickjs/quickjs.c:55581,1
    - Dst: gettimeofday
      Src: /src/gpac/src/quickjs/quickjs.c:55585,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55589
      start: 55578
    functionDepth: 1
    functionLinenumber: 55578
    functionLinenumberEnd: 55589
    functionName: date_now
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - gettimeofday
    - _ftime
    linkageType: ''
    returnType: int64_t
    signature: int64_t date_now(void)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:55599,1
    - Dst: date_now
      Src: /src/gpac/src/quickjs/quickjs.c:55605,1
    - Dst: JS_VALUE_GET_TAG
      Src: /src/gpac/src/quickjs/quickjs.c:55608,1
    - Dst: JS_VALUE_GET_OBJ
      Src: /src/gpac/src/quickjs/quickjs.c:55609,1
    - Dst: JS_IsNumber
      Src: /src/gpac/src/quickjs/quickjs.c:55610,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55611,1
    - Dst: time_clip
      Src: /src/gpac/src/quickjs/quickjs.c:55613,1
    - Dst: JS_ToPrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:55617,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:55618,1
    - Dst: js_Date_parse
      Src: /src/gpac/src/quickjs/quickjs.c:55619,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55620,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:55621,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:55623,1
    - Dst: JS_ToFloat64Free
      Src: /src/gpac/src/quickjs/quickjs.c:55626,1
    - Dst: time_clip
      Src: /src/gpac/src/quickjs/quickjs.c:55629,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55635,1
    - Dst: set_date_fields_checked
      Src: /src/gpac/src/quickjs/quickjs.c:55638,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55645,1
    - Dst: js___date_create
      Src: /src/gpac/src/quickjs/quickjs.c:55646,1
    - Dst: js_create_from_ctor
      Src: /src/gpac/src/quickjs/quickjs.c:55648,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:55649,1
    - Dst: JS_SetObjectData
      Src: /src/gpac/src/quickjs/quickjs.c:55650,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55650,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:55652,1
    - Dst: JS_IsUndefined
      Src: /src/gpac/src/quickjs/quickjs.c:55652,1
    - Dst: get_date_string
      Src: /src/gpac/src/quickjs/quickjs.c:55655,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:55656,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 56
    argCount: 4
    argNames:
    - ctx
    - new_target
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55660
      start: 55591
    functionDepth: 27
    functionLinenumber: 55591
    functionLinenumberEnd: 55660
    functionName: js_date_constructor
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewFloat64
    - time_clip
    - JS_IsString
    - js_create_from_ctor
    - JS_ToPrimitive
    - JS_FreeValue
    - get_date_string
    - JS_IsException
    - set_date_fields_checked
    - JS_ToFloat64
    - JS_VALUE_GET_OBJ
    - JS_IsNumber
    - js___date_create
    - js_Date_parse
    - JS_IsUndefined
    - JS_VALUE_GET_TAG
    - date_now
    - JS_ToFloat64Free
    - JS_SetObjectData
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_date_constructor(JSContext *ctx, JSValueConst new_target,\n
      \                                  int argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55675,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:55678,1
    - Dst: set_date_fields_checked
      Src: /src/gpac/src/quickjs/quickjs.c:55678,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: 55679
      start: 55662
    functionDepth: 24
    functionLinenumber: 55662
    functionLinenumberEnd: 55679
    functionName: js_Date_UTC
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ToFloat64
    - set_date_fields_checked
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_Date_UTC(JSContext *ctx, JSValueConst this_val,\n                           int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - sp
    - pp
    - c
    argTypes:
    - uint8_t*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55690
      start: 55683
    functionDepth: 0
    functionLinenumber: 55683
    functionLinenumberEnd: 55690
    functionName: string_skip_char
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL string_skip_char(const uint8_t *sp, int *pp, int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - sp
    - pp
    argTypes:
    - uint8_t*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55698
      start: 55693
    functionDepth: 0
    functionLinenumber: 55693
    functionLinenumberEnd: 55698
    functionName: string_skip_spaces
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int string_skip_spaces(const uint8_t *sp, int *pp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 2
    argNames:
    - sp
    - pp
    argTypes:
    - uint8_t*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55706
      start: 55701
    functionDepth: 0
    functionLinenumber: 55701
    functionLinenumberEnd: 55706
    functionName: string_skip_separators
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int string_skip_separators(const uint8_t *sp, int *pp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/gpac/src/quickjs/quickjs.c:55711,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - sp
    - pp
    - stoplist
    argTypes:
    - uint8_t*
    - int*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55714
      start: 55709
    functionDepth: 0
    functionLinenumber: 55709
    functionLinenumberEnd: 55714
    functionName: string_skip_until
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - strchr
    linkageType: ''
    returnType: int
    signature: int string_skip_until(const uint8_t *sp, int *pp, const char *stoplist)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 5
    argNames:
    - sp
    - pp
    - pval
    - min_digits
    - max_digits
    argTypes:
    - uint8_t*
    - int*
    - int*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55738
      start: 55717
    functionDepth: 0
    functionLinenumber: 55717
    functionLinenumberEnd: 55738
    functionName: string_get_digits
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: "BOOL string_get_digits(const uint8_t *sp, int *pp, int *pval,\n                              int
      min_digits, int max_digits)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 3
    argNames:
    - sp
    - pp
    - pval
    argTypes:
    - uint8_t*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55763
      start: 55740
    functionDepth: 0
    functionLinenumber: 55740
    functionLinenumberEnd: 55763
    functionName: string_get_milliseconds
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BOOL
    signature: BOOL string_get_milliseconds(const uint8_t *sp, int *pp, int *pval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55767
      start: 55765
    functionDepth: 0
    functionLinenumber: 55765
    functionLinenumberEnd: 55767
    functionName: upper_ascii
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t upper_ascii(uint8_t c)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55775,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55789,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55791,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 37
    argCount: 4
    argNames:
    - sp
    - pp
    - tzp
    - strict
    argTypes:
    - uint8_t*
    - int*
    - int*
    - BOOL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55810
      start: 55769
    functionDepth: 1
    functionLinenumber: 55769
    functionLinenumberEnd: 55810
    functionName: string_get_tzoffset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get_digits
    - string_skip_char
    linkageType: ''
    returnType: BOOL
    signature: BOOL string_get_tzoffset(const uint8_t *sp, int *pp, int *tzp, BOOL
      strict)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: upper_ascii
      Src: /src/gpac/src/quickjs/quickjs.c:55815,1
    - Dst: upper_ascii
      Src: /src/gpac/src/quickjs/quickjs.c:55815,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - sp
    - pp
    - s
    argTypes:
    - uint8_t*
    - int*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55821
      start: 55812
    functionDepth: 1
    functionLinenumber: 55812
    functionLinenumberEnd: 55821
    functionName: string_match
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - upper_ascii
    linkageType: ''
    returnType: BOOL
    signature: BOOL string_match(const uint8_t *sp, int *pp, const char *s)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: upper_ascii
      Src: /src/gpac/src/quickjs/quickjs.c:55828,1
    - Dst: upper_ascii
      Src: /src/gpac/src/quickjs/quickjs.c:55828,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 10
    argCount: 4
    argNames:
    - sp
    - p
    - list
    - count
    argTypes:
    - uint8_t*
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55835
      start: 55823
    functionDepth: 1
    functionLinenumber: 55823
    functionLinenumberEnd: 55835
    functionName: find_abbrev
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - upper_ascii
    linkageType: ''
    returnType: int
    signature: int find_abbrev(const uint8_t *sp, int p, const char *list, int count)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find_abbrev
      Src: /src/gpac/src/quickjs/quickjs.c:55840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - sp
    - pp
    - pval
    argTypes:
    - uint8_t*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55847
      start: 55837
    functionDepth: 2
    functionLinenumber: 55837
    functionLinenumberEnd: 55847
    functionName: string_get_month
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - find_abbrev
    linkageType: ''
    returnType: BOOL
    signature: BOOL string_get_month(const uint8_t *sp, int *pp, int *pval)
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55863,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55871,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55874,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55875,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55880,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55881,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55887,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55889,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55890,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55891,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55895,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55896,1
    - Dst: string_get_milliseconds
      Src: /src/gpac/src/quickjs/quickjs.c:55898,1
    - Dst: string_get_tzoffset
      Src: /src/gpac/src/quickjs/quickjs.c:55904,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 50
    argCount: 3
    argNames:
    - sp
    - fields
    - is_local
    argTypes:
    - uint8_t*
    - int[]
    - BOOL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55909
      start: 55850
    functionDepth: 2
    functionLinenumber: 55850
    functionLinenumberEnd: 55909
    functionName: js_date_parse_isostring
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get_milliseconds
    - string_get_tzoffset
    - string_get_digits
    - string_skip_char
    linkageType: ''
    returnType: BOOL
    signature: BOOL js_date_parse_isostring(const uint8_t *sp, int fields[9], BOOL
      *is_local)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:55936,1
    - Dst: string_match
      Src: /src/gpac/src/quickjs/quickjs.c:55937,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - sp
    - pp
    - offset
    argTypes:
    - uint8_t*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55943
      start: 55935
    functionDepth: 2
    functionLinenumber: 55935
    functionLinenumberEnd: 55943
    functionName: string_get_tzabbr
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_match
    - countof
    linkageType: ''
    returnType: BOOL
    signature: BOOL string_get_tzabbr(const uint8_t *sp, int *pp, int *offset)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: minimum_length
      Src: /src/gpac/src/quickjs/quickjs.c:55947,1
    - Dst: string_skip_spaces
      Src: /src/gpac/src/quickjs/quickjs.c:55965,1
    - Dst: string_get_tzoffset
      Src: /src/gpac/src/quickjs/quickjs.c:55968,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55972,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55983,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55984,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55987,1
    - Dst: string_skip_char
      Src: /src/gpac/src/quickjs/quickjs.c:55989,1
    - Dst: string_get_digits
      Src: /src/gpac/src/quickjs/quickjs.c:55990,1
    - Dst: string_get_milliseconds
      Src: /src/gpac/src/quickjs/quickjs.c:55992,1
    - Dst: string_get_tzoffset
      Src: /src/gpac/src/quickjs/quickjs.c:55996,1
    - Dst: string_get_month
      Src: /src/gpac/src/quickjs/quickjs.c:56014,1
    - Dst: string_skip_until
      Src: /src/gpac/src/quickjs/quickjs.c:56016,1
    - Dst: string_match
      Src: /src/gpac/src/quickjs/quickjs.c:56018,1
    - Dst: string_match
      Src: /src/gpac/src/quickjs/quickjs.c:56023,1
    - Dst: string_get_tzabbr
      Src: /src/gpac/src/quickjs/quickjs.c:56028,1
    - Dst: string_skip_until
      Src: /src/gpac/src/quickjs/quickjs.c:56050,1
    - Dst: string_skip_separators
      Src: /src/gpac/src/quickjs/quickjs.c:56052,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 130
    argCount: 3
    argNames:
    - sp
    - fields
    - is_local
    argTypes:
    - uint8_t*
    - int[]
    - BOOL*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56093
      start: 55946
    functionDepth: 3
    functionLinenumber: 55946
    functionLinenumberEnd: 56093
    functionName: js_date_parse_otherstring
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - string_get_tzabbr
    - string_skip_spaces
    - string_skip_until
    - string_get_month
    - string_match
    - string_get_tzoffset
    - string_skip_char
    - minimum_length
    - string_skip_separators
    - string_get_milliseconds
    - string_get_digits
    linkageType: ''
    returnType: BOOL
    signature: "BOOL js_date_parse_otherstring(const uint8_t *sp,\n                                      int
      fields[minimum_length(9)],\n                                      BOOL *is_local)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JS_ToString
      Src: /src/gpac/src/quickjs/quickjs.c:56109,1
    - Dst: JS_IsException
      Src: /src/gpac/src/quickjs/quickjs.c:56110,1
    - Dst: JS_VALUE_GET_STRING
      Src: /src/gpac/src/quickjs/quickjs.c:56113,1
    - Dst: countof
      Src: /src/gpac/src/quickjs/quickjs.c:56115,1
    - Dst: string_get
      Src: /src/gpac/src/quickjs/quickjs.c:56116,1
    - Dst: js_date_parse_isostring
      Src: /src/gpac/src/quickjs/quickjs.c:56122,1
    - Dst: js_date_parse_otherstring
      Src: /src/gpac/src/quickjs/quickjs.c:56123,1
    - Dst: set_date_fields
      Src: /src/gpac/src/quickjs/quickjs.c:56137,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:56138,1
    - Dst: JS_FreeValue
      Src: /src/gpac/src/quickjs/quickjs.c:56141,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 29
    argCount: 4
    argNames:
    - ctx
    - this_val
    - argc
    - argv
    argTypes:
    - JSContext*
    - JSValueConst
    - int
    - JSValueConst*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56143
      start: 56095
    functionDepth: 21
    functionLinenumber: 56095
    functionLinenumberEnd: 56143
    functionName: js_Date_parse
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 1
    functionsReached:
    - js_date_parse_isostring
    - JS_NewFloat64
    - countof
    - JS_VALUE_GET_STRING
    - JS_FreeValue
    - string_get
    - js_date_parse_otherstring
    - JS_ToString
    - JS_IsException
    - set_date_fields
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_Date_parse(JSContext *ctx, JSValueConst this_val,\n                             int
      argc, JSValueConst *argv)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:56149,1
    - Dst: date_now
      Src: /src/gpac/src/quickjs/quickjs.c:56149,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: 56150
      start: 56145
    functionDepth: 2
    functionLinenumber: 56145
    functionLinenumberEnd: 56150
    functionName: js_Date_now
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_NewInt64
    - date_now
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_Date_now(JSContext *ctx, JSValueConst this_val,\n                           int
      argc, JSValueConst *argv)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: JS_IsObject
      Src: /src/gpac/src/quickjs/quickjs.c:56160,1
    - Dst: JS_ThrowTypeErrorNotAnObject
      Src: /src/gpac/src/quickjs/quickjs.c:56161,1
    - Dst: JS_IsString
      Src: /src/gpac/src/quickjs/quickjs.c:56163,1
    - Dst: JS_ValueToAtom
      Src: /src/gpac/src/quickjs/quickjs.c:56164,1
    - Dst: JS_FreeAtom
      Src: /src/gpac/src/quickjs/quickjs.c:56167,1
    - Dst: JS_ThrowTypeError
      Src: /src/gpac/src/quickjs/quickjs.c:56179,1
    - Dst: JS_ToPrimitive
      Src: /src/gpac/src/quickjs/quickjs.c:56181,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: 56182
      start: 56152
    functionDepth: 16
    functionLinenumber: 56152
    functionLinenumberEnd: 56182
    functionName: js_date_Symbol_toPrimitive
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThrowTypeError
    - JS_ToPrimitive
    - JS_ValueToAtom
    - JS_IsString
    - JS_IsObject
    - JS_ThrowTypeErrorNotAnObject
    - JS_FreeAtom
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_date_Symbol_toPrimitive(JSContext *ctx, JSValueConst this_val,\n
      \                                         int argc, JSValueConst *argv)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThisTimeValue
      Src: /src/gpac/src/quickjs/quickjs.c:56190,1
    - Dst: isnan
      Src: /src/gpac/src/quickjs/quickjs.c:56192,1
    - Dst: JS_NewInt64
      Src: /src/gpac/src/quickjs/quickjs.c:56196,1
    - Dst: getTimezoneOffset
      Src: /src/gpac/src/quickjs/quickjs.c:56196,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:56196,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: 56197
      start: 56184
    functionDepth: 25
    functionLinenumber: 56184
    functionLinenumberEnd: 56197
    functionName: js_date_getTimezoneOffset
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - isnan
    - JS_ThisTimeValue
    - JS_NewInt64
    - trunc
    - getTimezoneOffset
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_date_getTimezoneOffset(JSContext *ctx, JSValueConst this_val,\n
      \                                        int argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThisTimeValue
      Src: /src/gpac/src/quickjs/quickjs.c:56205,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:56207,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: 56208
      start: 56199
    functionDepth: 25
    functionLinenumber: 56199
    functionLinenumberEnd: 56208
    functionName: js_date_getTime
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThisTimeValue
    - JS_NewFloat64
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_date_getTime(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThisTimeValue
      Src: /src/gpac/src/quickjs/quickjs.c:56216,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:56216,1
    - Dst: JS_SetThisTimeValue
      Src: /src/gpac/src/quickjs/quickjs.c:56218,1
    - Dst: time_clip
      Src: /src/gpac/src/quickjs/quickjs.c:56218,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: 56219
      start: 56210
    functionDepth: 25
    functionLinenumber: 56210
    functionLinenumberEnd: 56219
    functionName: js_date_setTime
    functionSourceFile: /src/gpac/src/quickjs/quickjs.c
    functionUses: 0
    functionsReached:
    - JS_ThisTimeValue
    - JS_ToFloat64
    - time_clip
    - JS_SetThisTimeValue
    linkageType: ''
    returnType: JSValue
    signature: "JSValue js_date_setTime(JSContext *ctx, JSValueConst this_val,\n                               int
      argc, JSValueConst *argv)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JS_ThisTimeValue
      Src: /src/gpac/src/quickjs/quickjs.c:56228,1
    - Dst: JS_ToFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:56228,1
    - Dst: isfinite
      Src: /src/gpac/src/quickjs/quickjs.c:56231,1
    - Dst: trunc
      Src: /src/gpac/src/quickjs/quickjs.c:56232,1
    - Dst: JS_NewFloat64
      Src: /src/gpac/src/quickjs/quickjs.c:56236,1
    - Dst: set_date_field
      Src: /src/gpac/src/quickjs/quickjs.c:56237,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCoun